.vsr-player-wrap{
    width:100%;
    max-width:100%;
    margin:24px auto;
    font-family:inherit;
    position:relative!important;
}
.vsr-player-wrap .video-js{
    width:100%;
    max-width:100%;
    border-radius:6px;
    overflow:hidden!important;
    background:#000;
    position:relative!important;
    box-shadow:none!important;
}
.vsr-player-wrap .video-js.vjs-fluid,
.vsr-player-wrap .video-js.vjs-16-9{
    padding-top:56.25%;
}
.vsr-player-wrap .vjs-poster img,
.vsr-player-wrap .vjs-poster picture,
.vsr-player-wrap .vjs-poster{
    object-fit:cover;
    background-size:cover!important;
    background-position:center!important;
}
.vsr-player-wrap .vjs-big-play-button{
    background:rgba(0,0,0,.42)!important;
    border:0!important;
    border-radius:8px!important;
    width:76px!important;
    height:64px!important;
    line-height:64px!important;
    margin-left:-38px!important;
    margin-top:-32px!important;
    box-shadow:none!important;
    z-index:50!important;
}
.vsr-player-wrap .vjs-big-play-button .vjs-icon-placeholder:before{
    line-height:64px!important;
    font-size:52px!important;
    color:#fff!important;
}
.vsr-player-wrap .vjs-has-started .vjs-big-play-button{
    display:none!important;
}

/* Lišta není vidět před spuštěním. Vidí se až po spuštění při aktivitě/pauze/reklamě. */
.vsr-player-wrap .video-js .vjs-control-bar{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    background:linear-gradient(to top,rgba(0,0,0,.86),rgba(0,0,0,.42),transparent)!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(8px)!important;
    transition:opacity .18s ease,visibility .18s ease,transform .18s ease!important;
    z-index:70!important;
}
.vsr-player-wrap .video-js.vjs-has-started.vjs-user-active .vjs-control-bar,
.vsr-player-wrap .video-js.vjs-has-started.vjs-paused .vjs-control-bar,
.vsr-player-wrap .video-js.vjs-has-started:hover .vjs-control-bar,
.vsr-player-wrap .video-js.vjs-ad-playing .vjs-control-bar{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
}

.vsr-player-wrap .video-js .vjs-current-time,
.vsr-player-wrap .video-js .vjs-duration,
.vsr-player-wrap .video-js .vjs-time-divider{
    display:block!important;
    font-size:13px!important;
    font-weight:800!important;
    color:#fff!important;
    line-height:42px!important;
}
.vsr-player-wrap .video-js .vjs-progress-control{
    min-width:70px!important;
    flex:1 1 auto!important;
}
.vsr-player-wrap .video-js .vjs-volume-panel{
    width:42px!important;
    min-width:42px!important;
}
.vsr-player-wrap .video-js .vjs-volume-control{
    display:none!important;
}
.vsr-player-wrap .video-js .vjs-play-control,
.vsr-player-wrap .video-js .vjs-mute-control,
.vsr-player-wrap .video-js .vjs-fullscreen-control{
    width:40px!important;
}
.vsr-player-wrap .video-js .vjs-picture-in-picture-control,
.vsr-player-wrap .video-js .vjs-subs-caps-button,
.vsr-player-wrap .video-js .vjs-remaining-time{
    display:none!important;
}
.vsr-video-title{
    text-align:center;
    margin-top:9px;
    font-size:16px;
    line-height:1.35;
    font-weight:600;
    color:#222;
}

/* IMA reklama uvnitř videa */
.vsr-player-wrap .video-js .ima-ad-container,
.vsr-player-wrap .video-js .vjs-ima3-ad-container,
.vsr-player-wrap .video-js .ima-ad-container > div,
.vsr-player-wrap .video-js .vjs-ima3-ad-container > div,
.vsr-player-wrap .video-js .ima-ad-container iframe,
.vsr-player-wrap .video-js .vjs-ima3-ad-container iframe,
.vsr-player-wrap .video-js .ima-controls-div{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
    z-index:30!important;
}
.vsr-player-wrap .video-js:not(.vjs-ad-playing) .ima-ad-container,
.vsr-player-wrap .video-js:not(.vjs-ad-playing) .vjs-ima3-ad-container{
    pointer-events:none!important;
}
.vsr-player-wrap .video-js.vjs-ad-playing .ima-ad-container,
.vsr-player-wrap .video-js.vjs-ad-playing .vjs-ima3-ad-container,
.vsr-player-wrap .video-js.vjs-ad-playing .ima-ad-container iframe,
.vsr-player-wrap .video-js.vjs-ad-playing .vjs-ima3-ad-container iframe{
    pointer-events:auto!important;
}
.vsr-player-wrap .video-js.vjs-ad-playing .vjs-tech{
    pointer-events:none!important;
}

@media(max-width:768px){
    .vsr-player-wrap{margin:18px auto}
    .vsr-player-wrap .video-js{border-radius:4px}
    .vsr-player-wrap .vjs-big-play-button{
        width:70px!important;
        height:58px!important;
        line-height:58px!important;
        margin-left:-35px!important;
        margin-top:-29px!important;
    }
    .vsr-player-wrap .vjs-big-play-button .vjs-icon-placeholder:before{
        line-height:58px!important;
        font-size:46px!important;
    }
    .vsr-player-wrap .video-js .vjs-control-bar{
        height:38px!important;
    }
    .vsr-player-wrap .video-js .vjs-current-time,
    .vsr-player-wrap .video-js .vjs-duration,
    .vsr-player-wrap .video-js .vjs-time-divider{
        font-size:12px!important;
        line-height:38px!important;
    }
    .vsr-player-wrap .video-js .vjs-play-control,
    .vsr-player-wrap .video-js .vjs-mute-control,
    .vsr-player-wrap .video-js .vjs-fullscreen-control{
        width:34px!important;
    }
    .vsr-player-wrap .video-js .vjs-volume-panel{
        width:34px!important;
        min-width:34px!important;
    }
    .vsr-video-title{font-size:14px}
}

/* V26: moderní rámeček videa ve stylu galerie */
.single-post .vsr-player-wrap,
.vsr-player-wrap{
    border:3px solid #e30613!important;
    border-radius:22px!important;
    padding:14px!important;
    background:#fff!important;
    box-sizing:border-box!important;
    margin:28px auto 22px!important;
    overflow:hidden!important;
}

.single-post .vsr-player-wrap .video-js,
.vsr-player-wrap .video-js{
    border-radius:16px!important;
    overflow:hidden!important;
    box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
}

/* větší a modernější play */
.vsr-player-wrap .vjs-big-play-button{
    background:rgba(227,6,19,.92)!important;
    border-radius:999px!important;
    width:78px!important;
    height:78px!important;
    line-height:78px!important;
    margin-left:-39px!important;
    margin-top:-39px!important;
    box-shadow:0 10px 26px rgba(0,0,0,.28)!important;
}

.vsr-player-wrap .vjs-big-play-button .vjs-icon-placeholder:before{
    line-height:78px!important;
    font-size:42px!important;
}

/* lišta ve videu - větší, čitelnější, prvky blíž u sebe */
.vsr-player-wrap .video-js .vjs-control-bar{
    height:48px!important;
    padding:0 8px!important;
    gap:2px!important;
    background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.42),transparent)!important;
}

.vsr-player-wrap .video-js .vjs-current-time,
.vsr-player-wrap .video-js .vjs-duration,
.vsr-player-wrap .video-js .vjs-time-divider{
    display:block!important;
    font-size:16px!important;
    font-weight:900!important;
    color:#fff!important;
    line-height:48px!important;
    padding-left:2px!important;
    padding-right:2px!important;
    min-width:auto!important;
}

.vsr-player-wrap .video-js .vjs-time-divider{
    padding-left:4px!important;
    padding-right:4px!important;
}

.vsr-player-wrap .video-js .vjs-play-control,
.vsr-player-wrap .video-js .vjs-mute-control,
.vsr-player-wrap .video-js .vjs-fullscreen-control{
    width:42px!important;
    min-width:42px!important;
}

.vsr-player-wrap .video-js .vjs-volume-panel{
    width:42px!important;
    min-width:42px!important;
    flex:0 0 42px!important;
}

.vsr-player-wrap .video-js .vjs-progress-control{
    flex:1 1 auto!important;
    min-width:80px!important;
    margin-left:4px!important;
    margin-right:4px!important;
}

.vsr-player-wrap .video-js .vjs-progress-holder{
    height:6px!important;
    border-radius:999px!important;
}

.vsr-player-wrap .video-js .vjs-play-progress,
.vsr-player-wrap .video-js .vjs-load-progress,
.vsr-player-wrap .video-js .vjs-slider{
    border-radius:999px!important;
}

/* název pod videem v rámečku */
.vsr-player-wrap .vsr-video-title{
    margin:12px 4px 2px!important;
    font-size:17px!important;
    font-weight:800!important;
}

/* mobil */
@media(max-width:768px){
    .single-post .vsr-player-wrap,
    .vsr-player-wrap{
        border-width:2px!important;
        border-radius:18px!important;
        padding:10px!important;
        margin:24px auto 20px!important;
    }

    .single-post .vsr-player-wrap .video-js,
    .vsr-player-wrap .video-js{
        border-radius:13px!important;
    }

    .vsr-player-wrap .vjs-big-play-button{
        width:68px!important;
        height:68px!important;
        line-height:68px!important;
        margin-left:-34px!important;
        margin-top:-34px!important;
    }

    .vsr-player-wrap .vjs-big-play-button .vjs-icon-placeholder:before{
        line-height:68px!important;
        font-size:36px!important;
    }

    .vsr-player-wrap .video-js .vjs-control-bar{
        height:42px!important;
        padding:0 5px!important;
    }

    .vsr-player-wrap .video-js .vjs-current-time,
    .vsr-player-wrap .video-js .vjs-duration,
    .vsr-player-wrap .video-js .vjs-time-divider{
        font-size:14px!important;
        line-height:42px!important;
        padding-left:1px!important;
        padding-right:1px!important;
    }

    .vsr-player-wrap .video-js .vjs-play-control,
    .vsr-player-wrap .video-js .vjs-mute-control,
    .vsr-player-wrap .video-js .vjs-fullscreen-control{
        width:34px!important;
        min-width:34px!important;
    }

    .vsr-player-wrap .video-js .vjs-volume-panel{
        width:34px!important;
        min-width:34px!important;
        flex:0 0 34px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-control{
        min-width:65px!important;
        margin-left:2px!important;
        margin-right:2px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-holder{
        height:5px!important;
    }

    .vsr-player-wrap .vsr-video-title{
        font-size:15px!important;
        line-height:1.35!important;
        margin-top:10px!important;
    }
}


/* V27: ovládání jako klasický player – progress čára nahoře, čas/mute/fullscreen dole */
.vsr-player-wrap .video-js .vjs-control-bar{
    height:58px!important;
    padding:18px 8px 4px!important;
    align-items:flex-end!important;
    gap:0!important;
    overflow:visible!important;
}

/* progress přes celou šířku nahoře v liště */
.vsr-player-wrap .video-js .vjs-progress-control{
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    top:8px!important;
    width:auto!important;
    height:10px!important;
    min-width:0!important;
    margin:0!important;
    flex:none!important;
}

.vsr-player-wrap .video-js .vjs-progress-holder{
    height:5px!important;
    margin:0!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.55)!important;
}

.vsr-player-wrap .video-js .vjs-play-progress{
    background:#e30613!important;
    border-radius:999px!important;
}

.vsr-player-wrap .video-js .vjs-load-progress,
.vsr-player-wrap .video-js .vjs-load-progress div{
    background:rgba(255,255,255,.35)!important;
    border-radius:999px!important;
}

.vsr-player-wrap .video-js .vjs-play-progress:before{
    font-size:13px!important;
    top:-4px!important;
}

/* spodní řada */
.vsr-player-wrap .video-js .vjs-play-control{
    order:1!important;
    width:36px!important;
    min-width:36px!important;
}

.vsr-player-wrap .video-js .vjs-current-time{
    order:2!important;
}

.vsr-player-wrap .video-js .vjs-time-divider{
    order:3!important;
}

.vsr-player-wrap .video-js .vjs-duration{
    order:4!important;
}

.vsr-player-wrap .video-js .vjs-volume-panel{
    order:5!important;
    width:40px!important;
    min-width:40px!important;
    flex:0 0 40px!important;
    margin-left:8px!important;
}

.vsr-player-wrap .video-js .vjs-fullscreen-control{
    order:10!important;
    margin-left:auto!important;
    width:40px!important;
    min-width:40px!important;
}

.vsr-player-wrap .video-js .vjs-current-time,
.vsr-player-wrap .video-js .vjs-duration,
.vsr-player-wrap .video-js .vjs-time-divider{
    font-size:17px!important;
    font-weight:700!important;
    line-height:34px!important;
    height:34px!important;
    padding:0 2px!important;
    min-width:auto!important;
    color:#fff!important;
}

.vsr-player-wrap .video-js .vjs-button > .vjs-icon-placeholder:before{
    line-height:34px!important;
    font-size:24px!important;
}

.vsr-player-wrap .video-js .vjs-control{
    height:34px!important;
}

/* schovej volume slider, nech jen mute ikonku */
.vsr-player-wrap .video-js .vjs-volume-control,
.vsr-player-wrap .video-js .vjs-volume-horizontal{
    display:none!important;
}

/* případná cast/remote ikona nech ve vzhledu podobném druhému screenu, ale neblokuje layout */
.vsr-player-wrap .video-js .vjs-picture-in-picture-control{
    display:none!important;
}

/* mobil jemně menší */
@media(max-width:768px){
    .vsr-player-wrap .video-js .vjs-control-bar{
        height:54px!important;
        padding:17px 6px 4px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-control{
        left:8px!important;
        right:8px!important;
        top:7px!important;
        height:9px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-holder{
        height:5px!important;
    }

    .vsr-player-wrap .video-js .vjs-current-time,
    .vsr-player-wrap .video-js .vjs-duration,
    .vsr-player-wrap .video-js .vjs-time-divider{
        font-size:16px!important;
        line-height:32px!important;
        height:32px!important;
        padding:0 1px!important;
    }

    .vsr-player-wrap .video-js .vjs-play-control,
    .vsr-player-wrap .video-js .vjs-volume-panel,
    .vsr-player-wrap .video-js .vjs-fullscreen-control{
        width:32px!important;
        min-width:32px!important;
    }

    .vsr-player-wrap .video-js .vjs-volume-panel{
        margin-left:5px!important;
    }

    .vsr-player-wrap .video-js .vjs-button > .vjs-icon-placeholder:before{
        line-height:32px!important;
        font-size:22px!important;
    }
}


/* V28: POSUVNÍK NATVRDO VIDITELNÝ – čára nad spodní lištou */
.vsr-player-wrap .video-js .vjs-control-bar{
    height:58px!important;
    padding:18px 8px 4px!important;
    overflow:visible!important;
}

/* samotný progress wrapper */
.vsr-player-wrap .video-js .vjs-progress-control{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    left:12px!important;
    right:12px!important;
    top:8px!important;
    width:auto!important;
    height:12px!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    flex:none!important;
    z-index:95!important;
    pointer-events:auto!important;
}

/* klikací oblast progressu */
.vsr-player-wrap .video-js .vjs-progress-control .vjs-progress-holder{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:6px!important;
    margin:3px 0 0!important;
    padding:0!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.65)!important;
    overflow:visible!important;
}

/* červený odehraný čas */
.vsr-player-wrap .video-js .vjs-play-progress{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:6px!important;
    border-radius:999px!important;
    background:#e30613!important;
}

/* načtený kus */
.vsr-player-wrap .video-js .vjs-load-progress,
.vsr-player-wrap .video-js .vjs-load-progress div{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:6px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.35)!important;
}

/* tečka posuvníku */
.vsr-player-wrap .video-js .vjs-play-progress:before{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    color:#fff!important;
    font-size:14px!important;
    top:-4px!important;
    right:-7px!important;
    text-shadow:0 1px 3px rgba(0,0,0,.6)!important;
}

/* spodní řada pod posuvníkem */
.vsr-player-wrap .video-js .vjs-play-control,
.vsr-player-wrap .video-js .vjs-current-time,
.vsr-player-wrap .video-js .vjs-time-divider,
.vsr-player-wrap .video-js .vjs-duration,
.vsr-player-wrap .video-js .vjs-volume-panel,
.vsr-player-wrap .video-js .vjs-fullscreen-control{
    position:relative!important;
    z-index:90!important;
}

/* mobil – posuvník ještě výraznější */
@media(max-width:768px){
    .vsr-player-wrap .video-js .vjs-control-bar{
        height:56px!important;
        padding:18px 7px 4px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-control{
        left:10px!important;
        right:10px!important;
        top:7px!important;
        height:13px!important;
    }

    .vsr-player-wrap .video-js .vjs-progress-control .vjs-progress-holder,
    .vsr-player-wrap .video-js .vjs-play-progress,
    .vsr-player-wrap .video-js .vjs-load-progress,
    .vsr-player-wrap .video-js .vjs-load-progress div{
        height:6px!important;
    }
}


/* V38 stable: play normálně funguje, nic neblokuje klik */
.vsr-player-wrap .video-js .vjs-big-play-button{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    z-index:90!important;
}
.vsr-player-wrap .video-js.vjs-has-started .vjs-big-play-button{
    display:none!important;
}
.vsr-player-wrap .video-js .vjs-progress-control{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
}




/* Stabilní IMA slot uvnitř přehrávače */
.vsr-player-wrap .video-js {
    position: relative !important;
    overflow: hidden !important;
}
.vsr-player-wrap .vsr-ima-slot {
    display: none;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 90 !important;
    background: #000 !important;
    overflow: hidden !important;
    border-radius: inherit !important;
}
.vsr-player-wrap .vsr-ad-active .vsr-ima-slot {
    display: block !important;
}
.vsr-player-wrap .vsr-ima-slot > div,
.vsr-player-wrap .vsr-ima-slot iframe,
.vsr-player-wrap .vsr-ima-slot video,
.vsr-player-wrap .vsr-ima-slot canvas,
.vsr-player-wrap .vsr-ima-slot img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    overflow: hidden !important;
}
.vsr-player-wrap .video-js.vsr-ad-active .vjs-tech {
    pointer-events: none !important;
}
.vsr-player-wrap .video-js .vjs-control-bar {
    z-index: 120 !important;
}
.vsr-player-wrap .video-js .vjs-big-play-button {
    z-index: 130 !important;
}


/* 4.1.6 safe: žádné schovávání stránky, jen pojistka uvnitř vlastního přehrávače */
.vsr-player-wrap .video-js{
    position:relative!important;
    overflow:hidden!important;
}
