
.sv-html5-video-container {
    background:black;
    position:relative;
}

.sv-html5-video-container * {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}

video::-webkit-media-controls-start-playback-button {
  display: none;
}

.sv-subs-upload-container {
    display:none;
    z-index:50;
    position: absolute;
    width: 100%;
    text-align: center;
    padding: 31px;
    opacity:0;
    transition:0.5s all;
}

.sv-subs-upload-container.shown {
    display:block;
    opacity:1;
}

.sv-subs-upload-container>form {
    background: #20201E;
    max-width: 100%;
    display: inline-block;
    margin-top: 0;
    padding: 20px;
    border-radius: 4px;
    box-shadow: 0 3px 45px rgba(0,0,0,0.5);
    border: 1px solid #333;
    text-align: left;
    width: 350px;
}

.sv-subs-upload-close {
    position: absolute;
    right: 15px;
    top: 11px;
    font-weight: bold;
    cursor: pointer;
}

div.sv-subs-upload-container * {
    font-family: 'Open Sans';
    font-size: 0.93em;
    letter-spacing: 0.05em;
    color:white;
}

.sv-subs-upload-container select, .sv-subs-upload-container option {
    color: black;
}

.sv-subs-upload-container h5 {
    margin: -21px -21px 0 -21px;
    padding: 11px;
    border-bottom: 1px solid #333;
    text-align: center;
}

.sv-subs-upload-container h4 {
    margin-top: 22px;
}

.sv-subtitles-search {
    position:absolute; 
    top:20px; 
    right:20px;
    cursor:pointer;
    opacity:0.7;
    -webkit-transition: opacity 300ms ease-in;
    -moz-transition: opacity 300ms ease-in;
    -o-transition: opacity 300ms ease-in;
    -ms-transition: opacity 300ms ease-in;
    transition: opacity 300ms ease-in;
}

.sv-subtitles-search:hover {
    opacity:1;
    -webkit-transition: opacity 300ms ease-in;
    -moz-transition: opacity 300ms ease-in;
    -o-transition: opacity 300ms ease-in;
    -ms-transition: opacity 300ms ease-in;
    transition: opacity 300ms ease-in;
}

::cue {
	font-family: 'Open Sans',Arial;
	font-size:1.3em;
    background: rgba(0,0,0,0.21);
}

.sv-buffering-div, .sv-play-div {
    position:absolute;
    top:50%;
    margin-top:-60px;
    left:50%;
    margin-left:-60px;
    width:120px;
    height:120px;
    display:none;
    -webkit-transition: opacity 110ms ease-in;
    -moz-transition: opacity 110ms ease-in;
    -o-transition: opacity 110ms ease-in;
    -ms-transition: opacity 110ms ease-in;
    transition: opacity 110ms ease-in;
    pointer-events:none;
}

.player-finished {
    display:none;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.6);
    z-index: 5;
    cursor: pointer;
    transition: 2s;
}

.player-finished i {
    color: #616161;
    font-size: 9em;
    left: 50%;
    top: 50%;
    position: absolute;
    margin-left: -60px;
    margin-top: -60px;
    transition: 1.3s;
    cursor: pointer;
}

.player-finished:hover i {
    color: #e8e8e8;
}

.sv-play-div {
    display:block;
}

.sv-buffering-div img, .sv-play-div img {
    width: 120px;
    height: 120px;
}

/* Controls Area */
    .sv-control-area {
        position:absolute;
        padding-bottom:5px;
        width:100%;

	bottom:0;

        -webkit-transition: 300ms ease-in;
        -moz-transition: 300ms ease-in;
        -o-transition: 300ms ease-in;
        -ms-transition: 300ms ease-in;
        transition: 300ms ease-in;

        opacity:0;
        visibility:hidden;

	box-shadow: inset 0px -40px 44px rgba(0,0,0,0.7);
    }
    .sv-control-area.shown {
        opacity:1;
        height:62px;
        display:block;
        visibility:visible
    }

/* Seek Bar Elements */

    .sv-scrubbar {
        height:25px;
        padding-top:20px;
        cursor:pointer;
        margin:0 12px 0 12px;
    }
    .sv-scrubbar * {
        pointer-events:none;
    }
    .sv-scrubbar-back {
        height: 3px;
        display: block;
        cursor: pointer;
        background: #707070;
        background: rgba(255,255,255,.2);
        transition: 0.3s;
        position: relative;
        bottom: 0;
    }
    .sv-scrubbar:hover .sv-scrubbar-back {
        transform: scaleY(2);
    }
    .sv-scrubbar-back div {
        position:absolute;
        left:0;
	top:0;
    }
    .sv-buffered {
        background: rgba(255,255,255,.4);
        height: 100%;
    }
    .sv-played {
        background: #f12b24;
        height: 100%;
        min-width: 5px;
    }
    .sv-seeking {
        background: rgba(255,255,255,.3);
        height: 100%;
        display: none;
        transition: opacity 0.3s;
    }
    .sv-switch-container {
        display: block;
        position: relative;
        height: 0;
    }
    .sv-switch {
        background: #f22b28;
        width: 11px;
        height: 11px;
        padding: 0;
        margin: -7px 0 0 -9.5px;
        border-radius: 5px;
        position: absolute;
        left: 0;
        transition: height 0.3s;
        display:none;
    }
    .sv-scrubbar:hover .sv-switch, .sv-scrubbar:hover .sv-seeking, .sv-scrubbar:hover .sv-tooltip {
        display:block;
    }
    .sv-tooltip {
        background: #2B2B2B;
        padding: 2px;
        border-radius: 3px;
        border: 1px solid #424242;
        display: none;
        position: absolute;
        font-size: 0.7em;
        margin-top: -27px;
        color: white;
        font-weight: bold;
        margin-left: -30px;
        width: 60px;
        text-align: center;
    }


/* All-controls style */
    .sv-controls {
        height:36px;
        padding: 0 12px 0 12px;
    }

    .sv-button {
        cursor:pointer;
        padding: 7px;
        height: 21px;
        position:relative;
    }

    .sv-button-icon {
        line-height:18px;
        width:21px;
        height:17px;
        border:none;
        display:inline-block;
        image-rendering: -moz-crisp-edges;
        image-rendering: -moz-crisp-edges;
        image-rendering: -o-crisp-edges;
        image-rendering: -webkit-optimize-contrast;
        -ms-interpolation-mode: nearest-neighbor;
        padding:0;
        background-position: 0px 0px; 
        background-color:transparent;
        background-image: url('/images/player_buttons.png');
    }

    .sv-button-tag {
        color: white;
        background: #101010;
        position: absolute;
        top: -30px;
        display: none;
        opacity: 0;
        transition: 0.2s all;
        border-radius: 2px;
        opacity: 0.9;
        color: white;
        padding: 2px;
        font-size: 0.6em;
        width: 45px;
        text-align: center;
        left: -7px;
    }

    .sv-button:hover .sv-button-tag {
        display:block;
        opacity:1;
    }

    .sv-button-menu {
        display: none;
        background: rgba(18,18,18,0.8);
        text-shadow: 0 0 2px rgba(0,0,0,.5);
        color: white;
        padding: 0;
        position: absolute;
        right: 0;
        bottom: 34px;
        margin: 0;
        width: auto;
        overflow: visible;
        text-align: center;
        padding: 6px 0 6px 0;
        min-width: 140px;
    }

    .sv-disable-subs {
        border-top:1px solid #222
    }

    .sv-button-menu-subs {
    }

    .sv-button-menu-subs-buttons {
        border-bottom: 2px solid #505050;
        margin-bottom: 10px;
    }

    .sv-button-menu li {
        padding: 6px 8px 6px 8px;
        text-align: center;
        font-size: 0.8em;
        display: inline-block;
        width: auto;
        overflow: visible;
        white-space: nowrap;
        min-width: 100%;
    }
    .sv-button-menu li:hover {
        background: rgba(60,60,60,0.6);
    }
    .sv-button-menu li.active {
	background: rgba(70,70,70,0.6);
    }

/* Left Control Buttons */
    .sv-lc {
        float:left;
    }

    .sv-playpause .sv-button-icon           { background-position: 151px /*34px*/0px; }
    .sv-playpause.playing .sv-button-icon   { background-position: 131px 0px;}
    .sv-prev                                { display:none;}
    .sv-next                                { display:none;}
    .sv-mute .sv-button-icon                { background-position: 214px /*34px*/0px; }
    .sv-mute.muted .sv-button-icon          { background-position: 0px /*34px*/0px; }

    .sv-volume                              {
        height: 31px;
        width:61px;
        cursor: pointer;
        position: relative; 
        transition: 0.5s all;
    }
    .sv-volume-back                         {
        pointer-events: none;
        background: #636363;
        height: 3px;
        margin-top: 17px;
        position: relative; 
    }
    .sv-volume-level                        { width: 54%; background: #F12B24; height: 3px; }
    .sv-volume-switch                       {
        width: 4px;
        background: white;
        height: 13px;
        position: absolute;
        top: 12px;
        left: 50%;
    }

    .sv-playpause                           { margin-left:-4px;}

    .sv-time-container {
        color:#c9c9c9;
        font-size:13.5px;
        line-height:21px;
        margin:8px;
    }
    .sv-time-container div {color:white; display:inline-block;}
    .sv-time { margin-left:6px; }
    .sv-duration { }

/* Right Control Buttons */
    .sv-rc {
        float:right;
    }

    .sv-html5-video-container:focus {
        outline: none;
    }

    .sv-fullscreen  .sv-button-icon     { background-position: 109px 0px; }
    .sv-html5-video-container.fullscreen .sv-fullscreen  .sv-button-icon     { background-position: 88px 0px; }
    .sv-chromecast  .sv-button-icon     { background-position: 46px 0px; }
    .sv-casting     .sv-chromecast .sv-button-icon { background-position: 46px 18px; }
    .sv-cc          .sv-button-icon     { background-position: 280px 0px; }
    .sv-cc.disabled .sv-button-icon     { background-position: 280px 35px; }
    .sv-quality     .sv-button-icon     { background-position: 173px 36px; }
    .sv-quality.hd  .sv-button-icon     { background-position: 173px 0; } 
    .sv-audio-track .sv-button-icon     {  background-position: 64px 0px; }

    .sv-chromecast-overlay {
        display:none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.8);
    }

    .sv-chromecast-overlay.shown {
        display:table;
    }

    .sv-chromecast-inner {
        display: table-cell;
        vertical-align: middle;
        height: 100%;
        text-align: center;
        color: white;
    }

    .sv-quality,.sv-audio-track,.sv-chromecast { display:none;}

    .sv-cc-sync {
        display:none;
        position: absolute;
        top: 27px;
        right: 70px;
        color: white;
        opacity: 0.2;
    }
    .sv-cc-sync:hover {
        opacity:1;
    }
    .sv-cc-sync input {
        display: inline-block;
        width: 56px;
        padding: 2px;
        margin: 0;
        border-radius: 5px;
        background: #aaaaaa;
        border: 0;
        text-align: center;
        height: 31px;
        line-height: 25px;
    }

/* Mobile Devices */

@media (max-width: 480px) {
    .sv-volume {
        display: none;
    }

    .sv-control-area.shown {
        height:69px;
    }

    .sv-scrubbar {
        height: 25px;
        padding-top:20px;
        margin:0 12px 0 50px;
        bottom:17px;
        position:absolute;
        width: calc(100% - 69px);
    }

    .sv-mute {
        margin-left:-33px;
    }

    .sv-playpause {
        margin-left: -4px;
        margin-top: 33px;
    }
}

/* Fullscreen Video Styles */

.fullscreen-elem {
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    top:0;
    left:0;
    display:none; 
    position:fixed;
    background:black
}

.fullscreen-elem>div {
    width:100% !important;
    height:100% !important;
    margin:0 !important;
}

:-webkit-full-screen {
    width:100% !important;
    height:100% !important;
    padding:0 !important ;
    margin:0 !important;
    background:black;
}

:-moz-full-screen {
    width:100% !important;
    height:100% !important;
    padding:0 !important ;
    margin:0 !important;
    background:black;
}

:-ms-fullscreen {
    width:100% !important;
    height:100% !important;
    padding:0 !important ;
    margin:0 !important;
    background:black;
}

:fullscreen {
    width:100% !important;
    height:100% !important;
    padding:0 !important ;
    margin:0 !important;
    background:black;
}
