/* Font Family
================================================== */

@import url('https://fonts.googleapis.com/css?family=Oxygen:300,400,700');


/* Global Styles
================================================== */

.player {
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    background-color: #322C7Ad9;
    color: #fff;
    font-size: 1rem;
    font-family: "Oxygen", HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    letter-spacing: .025rem;
    line-height: 1.618;
    padding: 1rem 0;
}

*,::before,::after {
    box-sizing:border-box;
}

* {
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    -webkit-tap-highlight-color:transparent;
}


/* Setup
================================================== */

.container.player { z-index:9999;
                    border-top-left-radius: 4px;
                    border-top-right-radius: 4px; position:fixed; bottom: 0; right:0; margin:0 auto; max-width:30vw; width:100%; }
.column { width:inherit; }


/* Typography / Links
================================================== */

.player p { color:#fff; display:block; font-size:.9rem; font-weight:400; margin:0 0 2px; }

.player a,.player a:visited { color:#8cc3e6; outline:0; text-decoration:underline; }
.player a:hover, .player a:focus { color:#bbdef5; }
.player p a,.player p a:visited { line-height:inherit; }


/* Misc.
================================================== */

.add-bottom { margin-bottom:2rem !important; }
.left { float:left; }
.right { float:right; }
.center { text-align:center; }
.hidden { display:none; }

.no-support {
    margin:2rem auto;
    text-align:center;
    width:90%;
}


/* Audio Player Styles
================================================== */

audio {
    display:none;
}

#audiowrap,
#plwrap {
    margin:0 auto;
}

#tracks {
    font-size:0;
    position:relative;
    text-align:center;
}

#nowPlay {
    display:block;
    font-size:0;
}

#nowPlay span {
    display:inline-block;
    font-size:1.05rem;
    vertical-align:top;
}

#nowPlay span#npAction {
    padding:21px;
    width:30%;
}

#nowPlay span#npTitle {
    padding:5px 20px;
    text-align:left;
    width:100%;
}

#plList li {
    cursor:pointer;
    display:block;
    margin:0;
    padding:21px 0;
}

#plList li:hover {
    background-color:rgba(0,0,0,.1);
}

.plItem {
    position:relative;
}

.plTitle {
    left:50px;
    overflow:hidden;
    position:absolute;
    right:65px;
    text-overflow:ellipsis;
    top:0;
    white-space:nowrap;
}

.plNum {
    padding-left:21px;
    width:25px;
}

.plLength {
    padding-left:21px;
    position:absolute;
    right:21px;
    top:0;
}

.plSel,
.plSel:hover {
    background-color:rgba(0,0,0,.1);
    color:#fff;
    cursor:default !important;
}

#tracks a {
    border-radius: 3px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 22px;
    height: 25px;
    line-height: .175;
    margin: 0 5px 5px;
    padding: 10px 15px;
    text-decoration: none;
    transition: background .3s ease;
}

#tracks a:last-child {
    margin-left:0;
}

#tracks a:hover,
#tracks a:active {
    background-color:#2E92CA;
    color:#fff;
}

#tracks a::-moz-focus-inner {
    border:0;
    padding:0;
}


/* Plyr Overrides
================================================== */

.plyr--audio .plyr__controls {
    background-color:transparent;
    border:none;
    color:#fff;
    padding:5px 10px;
    width:100%;
}

a.plyr__controls__item.plyr__control:hover,
.plyr--audio .plyr__controls button:hover,
.plyr--audio .plyr__controls button.tab-focus:focus,
.plyr__play-large {
    background-color:rgba(0,0,0,.1);
}

.plyr__progress--played,
.plyr__volume--display {
    color:rgba(0,0,0,.1);
}

.plyr--audio .plyr__progress--buffer,
.plyr--audio .plyr__volume--display {
    background:rgba(0,0,0,.1);
}

.plyr--audio .plyr__progress--buffer {
    color:rgba(0,0,0,.1);
}
.plyr--full-ui input[type=range]{
    color:#2E92CA
}


/* Media Queries
================================================== */

@media only screen and (max-width:600px) {
    #nowPlay span#npAction { display:none; }
    #nowPlay span#npTitle { display:block; text-align:center; width:100%; }
    .container.player { z-index:9999; position:fixed; bottom: 0; left:0; margin:0 auto; max-width:100vw; width:100%; }

}
@media only screen and (max-width:992px) {
    .container.player { z-index:9999; position:fixed; bottom: 0; left:0; margin:0 auto; max-width:100vw; width:100%; }
}
