/* Scoped controls for Voicer-hosted MP4s. No styles target external embeds. */
.voicer-player {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 12px;
    background: #07111f;
    color: #fff;
    isolation: isolate;
}
.voicer-player:focus-visible { outline: 3px solid #58a5ff; outline-offset: 2px; }
.voicer-player .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.voicer-player__video {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    left: auto !important;
    transform: none !important;
    object-fit: contain !important;
    background: #07111f;
    cursor: pointer;
}
.voicer-player__button {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #fff;
    font: 700 17px/1 Arial, sans-serif;
    cursor: pointer;
}
.voicer-player__button:hover,
.voicer-player__button:focus-visible { background: rgba(255,255,255,.22); color: #fff; }
.voicer-player__button:focus-visible,
.voicer-player__seek:focus-visible,
.voicer-player__speed:focus-visible { outline: 2px solid #8bc5ff; outline-offset: 2px; }
.voicer-player__button[hidden] { display: none !important; }
.voicer-player__center {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 62px;
    height: 62px;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 50%;
    background: rgba(4,15,29,.72);
    font-size: 26px;
    box-shadow: 0 4px 20px rgba(0,0,0,.35);
}
.voicer-player__center > span { display: inline-block; transform: translateX(2px); }
.voicer-player__center[aria-label="Pause video"] > span { transform: none; }
.voicer-player--playing .voicer-player__center { opacity: 0; pointer-events: none; }
.voicer-player--playing:hover .voicer-player__center,
.voicer-player--playing:focus-within .voicer-player__center { opacity: 1; pointer-events: auto; }
.voicer-player--playing.voicer-player--controls-hidden .voicer-player__center { opacity: 0; pointer-events: none; }
.voicer-player__controls {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 58px;
    padding: 14px 10px 5px;
    background: linear-gradient(transparent, rgba(0,0,0,.84));
    transition: opacity .2s ease;
}
.voicer-player--inline .voicer-player__controls { opacity: 0; pointer-events: none; }
.voicer-player--inline.voicer-player--controls-revealed .voicer-player__controls,
.voicer-player--inline .voicer-player__controls:focus-within { opacity: 1; pointer-events: auto; }
.voicer-player--inline.voicer-player--playing.voicer-player--controls-revealed .voicer-player__center { opacity: 1; pointer-events: auto; }
.voicer-player--playing.voicer-player--controls-hidden .voicer-player__controls { opacity: 0; pointer-events: none; }
.voicer-player--playing.voicer-player--controls-hidden .voicer-player__controls:focus-within { opacity: 1; pointer-events: auto; }
.voicer-player__seek-label { display: flex; flex: 1 1 auto; min-width: 36px; align-items: center; margin: 0 4px; }
.voicer-player__seek {
    width: 100%;
    height: 5px;
    margin: 0;
    appearance: none;
    border-radius: 5px;
    background: linear-gradient(to right, #67b6ff var(--voicer-progress, 0%), rgba(255,255,255,.55) var(--voicer-progress, 0%));
    cursor: pointer;
}
.voicer-player .voicer-player__seek::-webkit-slider-thumb { appearance: none; width: 13px; height: 13px; border: 2px solid #e8f5ff; border-radius: 50%; background: #8bc5ff; box-shadow: 0 0 0 2px rgba(39,135,232,.55); }
.voicer-player .voicer-player__seek::-moz-range-thumb { width: 13px; height: 13px; border: 2px solid #e8f5ff; border-radius: 50%; background: #8bc5ff; box-shadow: 0 0 0 2px rgba(39,135,232,.55); }
.voicer-player__seek:disabled { opacity: .5; cursor: default; }
.voicer-player__time { flex: 0 0 auto; min-width: 72px; color: #fff; font: 600 11px/1 Arial, sans-serif; text-align: center; white-space: nowrap; }
.voicer-player__speed {
    flex: 0 0 auto;
    width: 56px;
    height: 30px;
    padding: 0 2px;
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 6px;
    background: rgba(4,15,29,.85);
    color: #fff;
    font: 600 12px Arial, sans-serif;
    cursor: pointer;
}
.voicer-player__speed option { background: #142841; color: #fff; }
.voicer-player__message {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 6;
    max-width: calc(100% - 20px);
    padding: 8px 10px;
    border-radius: 7px;
    background: rgba(5,17,32,.9);
    color: #fff;
    font: 13px/1.3 Arial, sans-serif;
}
.voicer-player__message[hidden] { display: none; }
.voicer-player__buffering {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 4;
    transform: translate(-50%, -50%);
    padding: 10px 14px;
    border-radius: 24px;
    background: rgba(4,15,29,.82);
    color: #fff;
    font: 600 13px Arial, sans-serif;
    pointer-events: none;
}
.voicer-player__buffering[hidden] { display: none; }
.llvideo.voicer-player-legacy-overlay { display: none !important; }
.voicer-player--portrait { width: min(100%, 430px); aspect-ratio: 9 / 16; margin-inline: auto; }
.voicer-player--composer { width: min(100%, 400px); margin-inline: auto; }
.voicer-player--composer.voicer-player--portrait { width: min(100%, 225px); }
.responsive-iframe > .voicer-player,
.responsive-iframe-square > .voicer-player,
.voicer-videos__video-preview > .voicer-player { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: inherit; }
.responsive-iframe-square > .voicer-player { aspect-ratio: 1; }
.voicer-videos__video-preview--portrait > .voicer-player .voicer-player__video { display: block !important; width: auto !important; height: 100% !important; max-width: 100% !important; aspect-ratio: 9 / 16; margin-inline: auto !important; object-fit: contain !important; }
.voicer-player--short { width: 100%; height: 100%; aspect-ratio: auto; border-radius: inherit; }
.shortsBoxVideo.voicer-player-active > .shorts-sound-toggle { display: none !important; }
.voicer-shorts .shortsBoxVideo.voicer-player-active .shortsBoxInfo {
    bottom: 3px;
    padding-bottom: 19px !important;
    pointer-events: none;
}
.voicer-shorts .shortsBoxVideo.voicer-player-active .shortsBoxInfo :is(img, a, button, p, span) { pointer-events: auto; }
.voicer-player--short .voicer-player__center { width: 54px; height: 54px; }
.voicer-player--short .voicer-player__controls {
    inset: 0;
    display: block;
    min-height: 0;
    padding: 0;
    background: none;
    pointer-events: none;
}
.voicer-player--short .voicer-player__controls > .voicer-player__button {
    position: absolute;
    top: 12px;
    z-index: 1;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(4, 15, 29, .62);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
    pointer-events: auto;
    transition: opacity .2s ease;
}
.voicer-player--short .voicer-player__controls > [data-action="play"] { left: 12px; }
.voicer-player--short .voicer-player__controls > [data-action="mute"] { left: 56px; }
.voicer-player--short .voicer-player__controls > [data-action="captions"] { right: 56px; }
.voicer-player--short .voicer-player__controls > [data-action="fullscreen"] { right: 12px; }
.voicer-player--short .voicer-player__time,
.voicer-player--short .voicer-player__speed { display: none; }
.voicer-player--short .voicer-player__seek-label {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: block;
    width: 100%;
    height: 16px;
    margin: 0;
    pointer-events: auto;
}
.voicer-player--short .voicer-player__seek {
    display: block;
    width: 100%;
    height: 16px;
    border-radius: 0;
    background: linear-gradient(to right, #2065d1 var(--voicer-progress, 0%), rgba(210,225,242,.9) var(--voicer-progress, 0%)) center bottom / 100% 3px no-repeat;
}
.voicer-player--short .voicer-player__seek::-webkit-slider-thumb {
    width: 8px;
    height: 8px;
    border: 0;
    background: #2065d1;
    box-shadow: none;
}
.voicer-player--short .voicer-player__seek::-moz-range-thumb {
    width: 8px;
    height: 8px;
    border: 0;
    background: #2065d1;
    box-shadow: none;
}
.voicer-player--short.voicer-player--playing.voicer-player--controls-hidden .voicer-player__controls {
    opacity: 1;
    pointer-events: none;
}
.voicer-player--short.voicer-player--playing.voicer-player--controls-hidden .voicer-player__controls > .voicer-player__button {
    opacity: 0;
    pointer-events: none;
}
.voicer-player--short .voicer-player__pip { display: none !important; }
@media (min-width: 701px) {
    .voicer-player--short .voicer-player__controls > .voicer-player__button { top: 23px; }
}
.voicer-player--chat .voicer-player__controls { display: grid; grid-template-columns: 30px 30px minmax(35px, 1fr) 55px 30px; gap: 2px; min-height: 46px; padding: 12px 5px 4px; }
.voicer-player--chat .voicer-player__button { width: 30px; height: 30px; font-size: 14px; }
.voicer-player--chat .voicer-player__seek-label { margin: 0 2px; }
.voicer-player--chat .voicer-player__time { min-width: 0; font-size: 10px; }
.voicer-player--chat .voicer-player__speed, .voicer-player--chat .voicer-player__captions { display: none; }
.voicer-player:fullscreen { width: 100vw; height: 100vh; aspect-ratio: auto; border-radius: 0; }
@media (max-width: 560px) {
    .voicer-player__controls { gap: 1px; padding-inline: 5px; }
    .voicer-player__button { width: 31px; height: 34px; font-size: 15px; }
    .voicer-player__time { min-width: 53px; font-size: 10px; }
    .voicer-player__speed { width: 49px; font-size: 11px; }
    .voicer-player__pip { display: none !important; }
    .voicer-player--short .voicer-player__controls > .voicer-player__button { width: 38px; height: 38px; font-size: 17px; }
}
@media (max-width: 370px) {
    .voicer-player--inline .voicer-player__speed { display: none; }
    .voicer-player--inline .voicer-player__captions { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .voicer-player * { transition: none !important; animation: none !important; }
}
