/* General warning: Beta-ish. Code could be a bit cleaner. */

.ui360, /* entire UI */
.sm2-360ui {
  /* canvas container */
  position: relative;
}

.ui360 {
  margin-bottom: 5px;
  margin-right: 5px;
}

.ui360,
.sm2-360ui {
  min-width: 50px; /* should always be at least this. */
  min-height: 50px;
}

.sm2-360ui {
  width: 50px;
  height: 50px;
}

.fa-play {
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  margin-left: 4px;
  margin-bottom: 4px;
}
.fa-play:hover {
  color: #e6b804;
  text-shadow: 0 0 4px #e6b804;
}

.sm2-360ui {
  /* slight inner shadow + BG color + border */
  /*background-color: #f9f9f9;
  background-color: rgba(0, 0, 0, 0.025);
  box-shadow: inset 0px 0px 8px rgba(0, 0, 0, 0.15);
  /* a little radii, modern browsers only */
  /*border-radius: 100%;
  transition: all 0.1s ease-in-out;
  /* specifics */
  /*transition-property: background, border, box-shadow;*/

  position: relative;
  float: right;
  width: 176px;
  height: 176px;
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(#222),
    to(#111)
  );
  background: linear-gradient(0deg, #222, #111);
  border-radius: 100%;
  border: solid 2px #000;
  box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.2),
    0 4px 2px rgba(0, 0, 0, 0.2);
}

.ui360,
.ui360 * {
  vertical-align: middle;
}

.sm2-360ui {
  position: relative;
  display: inline-block; /* firefox 3 et al */
  float: left; /* IE 6+7, firefox 2 needs this, inline-block would work with fx3 and others */
  *display: inline;
  clear: left;
}

.sm2-360ui.sm2_playing,
.sm2-360ui.sm2_paused {
  /* bump on top when active */
  z-index: 10;
}

.ui360 a {
  /* .sm2_link class added to playable links by SM2 */
  float: left;
  display: inline;
  position: relative;
  color: #000;
  text-decoration: none;
  left: 3px; /* slight spacing on left UI */
  top: 18px; /* vertical align */
  text-indent: 50px; /* make room for UI at left */
}

.ui360 a.sm2_link {
  /* SM2 has now started */
  text-indent: -150px; /* UI now in place. */
  margin-top: 10px;
}

.ui360 a,
.ui360 a:hover,
.ui360 a:focus {
  padding: 2px;
  margin-top: 8px;
}

.ui360 a:hover,
.ui360 a:focus {
  /*background: #eee;*/
  border-radius: 3px;
  outline: none;
}

.ui360 .sm2-canvas {
  position: absolute;
  left: 0px;
  top: 0px;
  margin-left:-4px;
  margin-top:-4px;
}

.ui360 .sm2-canvas.hi-dpi {
  /* hi-dpi / "retina" screens */
  top: -50%;
  left: -50%;
  transform: scale(0.5);
  margin-left:-4px;
  margin-top:-4px;
}

.ui360 .sm2-timing {
  position: absolute;
  display: block;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  margin: 0px;
  font: 11px "times";
  color: rgb(0, 0, 0);
  text-align: center;
  line-height: 50px;
}

.ui360 .sm2-timing.alignTweak {
  /* devious center-alignment tweak for Safari (might break things for others.) */
  /* no longer applies. */
  /*
 text-indent:1px;
 */
}

.ui360 .sm2-cover {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: none;
  background-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==); /* old-skool bug: IE 9 won't catch mouse events otherwise. /smash */
}

.ui360 .sm2-360btn {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  /*
 width:22px;
 height:22px;
 margin-left:-11px;
 margin-top:-11px;
*/
  /* by default, cover whole space. make smaller when playing. */
  width: 50px;
  height: 50px;
  margin-left: -25px;
  margin-top: -25px;
  border-radius: 25px;
  cursor: pointer;
  z-index: 3;
}

.ui360 .sm2-360data {
  display: inline-block;
  font-family: helvetica;
}

.sm2-inline-block .ui360 .sm2-360btn,
.ui360 .sm2-360ui.sm2_playing .sm2-360btn,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn {
  /* smaller clickable button, in center */
  width: 22px;
  height: 22px;
  margin-left: -11px;
  margin-top: -11px;
}

.ui360 .sm2-360ui.sm2_playing .sm2-cover,
.ui360 .sm2-360ui.sm2_paused .sm2-cover {
  display: block;
}

/* this could be optimized a fair bit. */

.ui360,
.ui360 .sm2-360btn-default,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn {
  /* background: transparent url(360-button-play.png) no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAABoUlEQVR42sWVu2oCQRhGU/s8gpVYJeQJNkZSbiH4QNuLlQZS21sJayGYaOEFVFDxNiremj9zig2uzk5YQpKFg8PMd75ZZle9E5Ff4e+Ll8tlQuNoPI2vUcCYOdbIxCmm9F5T0YgNMmS/LebSwWdNa7VayXq9ls1mI9vtVna7nQBj5lgjQxYHN7KY3QkiUbDf7+V4PMrpdArBHGtkyOJc3/n1mVaUUl+F5/PZSrABDi4dpmKH3QkixQEHlw5TsccZmsRCoSD1et1ajkuHqdg/HA5GKZPJCOTzeanVasYMLh2mYsXDIGAoDuG6rlSr1WCdBxrcsTIWazgrQiHS6bSRYJ3XDzeq2O/3+9Ltdm9IpVIhstmslEqlUAY36ii8ZrMpjUbjhmQyKeA4jhSLRWMGN+rhOZ1Oh8ANuVxOyuUy40hwo163RK/XeyPQbrdjgYNr/ILAYDB41Gf1wZnFAQfX+iM0HA5fxuPx+2g0Ej22QoYsDq61mGsymTxMp9NX/Sk2yJDFsRZfXpzXbDZ7WiwW3nw+9zUKGDPHGpkL5V//mn7OJyJZApyzeUS5AAAAAElFTkSuQmCC);
  background-image: none, url(360-button-play-2x.png);
  background-size: 22px 22px;
  *background-image: url(360-button-play.png);
  background-repeat: no-repeat; */
}

.ui360 {
  /*
  "fake" button shown before SM2 has started, non-JS/non-SM2 case etc.
  background image will be removed via JS, in threeSixyPlayer.init()
 */
  /* background-position: 14px 50%;
  _background: transparent url(360-button-play.gif) no-repeat 14px 50%; IE 6-only: special crap GIF */
}

.ui360 .sm2-360btn-default,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn {
   background-position: 50% 50%;
  /* _background: transparent url(360-button-play.gif) no-repeat 50% 50%; IE 6-only: special crap GIF */ */
}

.ui360 .sm2-360btn-default,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn {
  position: absolute;
  -webkit-transform: translate(-27, -27%);
  transform: translate(-27%, -27%);
  width: 88px;
  height: 88px;
  border: solid 2px #000;
  box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.2),
    0 0 8px rgba(0, 0, 0, 0.6);
  border-radius: 100%;
  line-height: 88px;
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(#111),
    to(#222)
  );
  background: linear-gradient(0deg, #111, #222);
  cursor: pointer;
}

.ui360 .sm2-360btn-default:hover,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn:hover {
  /* background: transparent url(360-button-play-light.png) no-repeat 50% 50%;
  /* hi-dpi, we presume */
  /* background-image: none, url(360-button-play-light-2x.png);
  background-size: 22px 22px;
  _background: transparent url(360-button-play.gif) no-repeat 50% 50%; */
  position: absolute;
  -webkit-transform: translate(-27, -27%);
  transform: translate(-27%, -27%);
  width: 88px;
  height: 88px;
  border: solid 2px #000;
  box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.2),
    0 0 8px rgba(0, 0, 0, 0.6);
  border-radius: 100%;
  line-height: 88px;
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(#111),
    to(#222)
  );
  background: linear-gradient(0deg, #111, #222);
  cursor: pointer;
}

.ui360 .sm2-360ui.sm2_playing .sm2-360btn:hover,
.ui360 .sm2-360btn-playing:hover {
  /* background: transparent url(360-button-pause-light.png) no-repeat 50% 50%;
  background-image: none, url(360-button-pause-light-2x.png); */
  /* background-size: 22px 22px;
  _background: transparent url(360-button-pause-light.gif) no-repeat 50% 50%; */
  cursor: pointer;
}

.ui360 .sm2-360ui.sm2_playing .sm2-timing {
  visibility: visible;
}

.ui360 .sm2-360ui.sm2_buffering .sm2-timing {
  visibility: hidden;
}

.ui360 .sm2-360ui .sm2-timing,
.ui360 .sm2-360ui .sm2-360btn:hover + .sm2-timing,
.ui360 .sm2-360ui.sm2_paused .sm2-timing {
  visibility: hidden;
}

.ui360 .sm2-360ui.sm2_dragging .sm2-timing,
.ui360 .sm2-360ui.sm2_dragging .sm2-360btn:hover + .sm2-timing {
  /* paused + dragging */
  visibility: visible;
}

.ui360 .sm2-360ui.sm2_playing .sm2-360btn,
.ui360 .sm2-360ui.sm2_dragging .sm2-360btn,
.ui360 .sm2-360ui.sm2_dragging .sm2-360btn:hover,
.ui360 .sm2-360ui.sm2_dragging .sm2-360btn-playing:hover {
  /* don't let pause button show on hover when dragging (or paused and dragging) */
  background: transparent;
  cursor: auto;
}

.ui360 .sm2-360ui.sm2_buffering .sm2-360btn,
.ui360 .sm2-360ui.sm2_buffering .sm2-360btn:hover {
  background: transparent url(icon_loading_spinner.gif) no-repeat 50% 50%;
  opacity: 0.5;
  visibility: visible;
}

/* inline list style */

.sm2-inline-list .ui360,
.sm2-inline-block .ui360 {
  position: relative;
  display: inline-block;
  float: left;
  _display: inline;
  /*
 margin-bottom:-15px;
 */
}

.sm2-inline-block .ui360 {
  margin-right: 8px;
}

.sm2-inline-list .ui360 a {
  display: none;
}

/* annotations */

ul.ui360playlist {
  list-style-type: none;
}

ul.ui360playlist,
ul.ui360playlist li {
  margin: 0px;
  padding: 0px;
}

div.ui360 div.metadata {
  display: none;
}

div.ui360 a span.metadata,
div.ui360 a span.metadata * {
  /* name of track, note etc. */
  vertical-align: baseline;
}
