/* General warning: Beta-ish. Code could be a bit cleaner. */

.ui360, /* entire UI */
.sm2-360ui { /* canvas container */
    position:relative;
}

.ui360,
.sm2-360ui {
    min-width:50px; /* should always be at least this. */
    min-height:50px;
}

.sm2-360ui {
    width:50px;
    height:50px;
}

.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:0px; /* UI now in place. */
}

.ui360 a,
.ui360 a:hover,
.ui360 a:focus {
    padding:2px;
    margin-left:-2px;
    margin-top:-2px;
}

.ui360 a:hover,
.ui360 a:focus {
    /*background:#eee;
    border-radius:3px;
    outline:none;color:#555*/color:#fff !important
}

.ui360 .sm2-canvas {
    position:absolute;
    left:0px;
    top:0px;
}

.ui360 .sm2-timing {
    position:absolute;
    display:block;
    left:0px;
    top:0px;
    width:100%;
    height:100%;
    margin:0px;
    font:11px "helvetica neue",helvetica,monaco,lucida,terminal,monospace;
    color:#666;
    text-align:center;
    line-height:50px;
}

.ui360 .sm2-timing.alignTweak {
    text-indent:1px; /* devious center-alignment tweak for Safari (might break things for others.) */
}

.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:#3dafa8 url(360-button-play.png) no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAfklEQVRIie3UsQ3CQBBEUeOAkAKowNRAFVQBXUAVuAuacA90QO7UCY/oEuTAQp4A6X6++6XZ1TRNpYIH9kkBjLhgkxIUBhySAphwwzYlKDxxTArgjR67lKDwwmluvv3ZvBYLIrqnIoodecJV6E0HdKss/hKMOAtVRbbsKv/PB/ZjOpj1T4M/AAAAAElFTkSuQmCC);
    *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 {
    cursor:pointer;
}

.ui360 .sm2-360btn-default:hover,
.ui360 .sm2-360ui.sm2_paused .sm2-360btn:hover {
    background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA20lEQVRIie2UMW7CQBBF/8RoyxyAem2Ljj65BIcAcQNKuAUShwiHgPQ0jq2duQStm08DBRJibRxX+FVb/D9vpxlgYCCE8FNV1fjV/kcsICKzJEn+QghLktJWEC2oKm9vkkcAiyzLyqaC6AZ3vxH5FpGTqm6KonD/LrjiAKydcycz++pDcGNC8mBmW1X97EMAAEJyCaA0s1kfgihdBQSwBTDx3u8fBUYdhpciMvfe/z4LvbJBDWBT1/U0NhxouQHJI8l5nudV005TwZnkKk3TnYgwHm9B12M38AZcAJ8sUafpiQwgAAAAAElFTkSuQmCC) no-repeat 50% 50%;
    _background:transparent url(360-button-play.gif) no-repeat 50% 50%;
    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: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-list .ui360 {
    /* inline player: minor tweak, tighten spacing */
    margin-right:-2px;
}

.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;
}