/* Плеер «Порно» — всё позиционируется внутри .porno-player */

.porno-view__player {
    position: relative;
    width: 100%;
    max-width: 100%;
    isolation: isolate;
}

.porno-player {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 1.25rem;
    border-radius: 0.75rem;
    overflow: hidden;
    background: #0c0c10;
    box-shadow: 0 16px 48px rgba(15, 15, 20, 0.35);
}

.porno-player .ads-player-block {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: min(72vh, 720px);
    background: #000;
    border-radius: 0.75rem;
    overflow: hidden;
}

.porno-player .ads-player-block video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    display: block;
}

/* Обёртка плеера — граница для absolute-элементов */
.porno-player .ads_video_wrapper,
.porno-player .Ads_video_wrapper {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

html.porno-player-fs {
    overflow: hidden;
}

/* Псевдо-fullscreen (fallback) — на весь экран, вне колонки Bootstrap */
.ads_video_wrapper.pseudo_fullscreen,
.Ads_video_wrapper.pseudo_fullscreen,
#ads_video_wrapper_porno-video.pseudo_fullscreen {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    z-index: 2147483646 !important;
    background: #000 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.ads_video_wrapper.pseudo_fullscreen video,
#ads_video_wrapper_porno-video.pseudo_fullscreen video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

/* Нативный fullscreen API */
.ads_video_wrapper:fullscreen,
.ads_video_wrapper:-webkit-full-screen,
.ads_video_wrapper:-moz-full-screen {
    width: 100% !important;
    height: 100% !important;
    background: #000 !important;
}

.ads_video_wrapper:fullscreen video,
.ads_video_wrapper:-webkit-full-screen video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.porno-player .ads_video_wrapper.ads_theatre_mode,
.porno-player .Ads_video_wrapper.ads_theatre_mode {
    position: fixed !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 99998 !important;
    max-height: none !important;
}

/* Панель управления — компактная, всё в одну линию */
.porno-player .ads_controls_container,
.porno-player .Ads_controls_container {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    z-index: 40 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
}

.porno-player .ads_controls_container.fade_out,
.porno-player .Ads_controls_container.fade_out {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Play */
.porno-player .ads_controls_left {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    z-index: 2 !important;
}

/* Прогресс — на одной линии с Play */
.porno-player .ads_controls_progress_container {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 12px !important;
    margin: 0 !important;
    z-index: 1 !important;
    align-self: center !important;
}

.porno-player .ads_controls_progress_container .ads_controls_progress,
.porno-player .ads_controls_progress_container .ads_controls_buffered {
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
}

.porno-player .ads_controls_progress_container .ads_controls_ad_markers_holder {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Кнопки справа */
.porno-player .ads_controls_right {
    position: relative !important;
    right: auto !important;
    left: auto !important;
    top: auto !important;
    bottom: auto !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    height: 28px !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    padding-left: 6px !important;
    overflow: hidden !important;
    z-index: 2 !important;
}

.porno-player .ads_controls_container .ads_button,
.porno-player .ads_control_playpause,
.porno-player .ads_control_fullscreen,
.porno-player .ads_control_theatre,
.porno-player .ads_button_mute,
.porno-player .ads_button_volume,
.porno-player .ads_control_mute,
.porno-player #porno-video_ads_control_mute {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    flex-shrink: 0 !important;
    float: none !important;
    position: relative !important;
    width: 28px !important;
    height: 28px !important;
    order: 2 !important;
}

.porno-player .ads_control_fullscreen {
    order: 1 !important;
}

.porno-player .ads_control_theatre {
    order: 0 !important;
}

.porno-player .ads_control_volume_container {
    order: 3 !important;
}

.porno-player .ads_controls_container .ads_button:before {
    opacity: 1 !important;
}

/* Громкость — компактно */
.porno-player .ads_control_volume_container {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 48px !important;
    height: 24px !important;
    flex-shrink: 0 !important;
}

.porno-player .ads_control_volume_container .ads_control_volume {
    width: 48px !important;
}

.porno-player .ads_control_volume_container .ads_control_currentvolume {
    max-width: 48px !important;
}

/* Время — не выталкивает кнопки */
.porno-player .ads_ads_control_duration,
.porno-player .ads_control_duration {
    display: none !important;
}

.porno-player .ads_initial_play {
    z-index: 30 !important;
    pointer-events: auto !important;
}

.porno-player .ads_control_cardboard,
.porno-player .ads_button_subtitles,
.porno-player .ads_button_video_source,
.porno-player .ads_control_video_source,
.porno-player #porno-video_ads_control_video_source,
.porno-player .ads_button_playback_rate,
.porno-player .ads_button_download {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Пропустить — только внутри видео, справа над панелью */
.porno-player .ads_video_wrapper .skip_button,
.porno-player .skip_button {
    position: absolute !important;
    right: 8px !important;
    left: auto !important;
    top: auto !important;
    bottom: 44px !important;
    transform: none !important;
    margin: 0 !important;
    text-align: right !important;
    z-index: 45 !important;
    pointer-events: auto !important;
    max-width: calc(100% - 16px) !important;
    white-space: nowrap !important;
}

.porno-player .skip_button_disabled {
    pointer-events: none !important;
}

.porno-player .vast_clickthrough_layer {
    display: none !important;
    pointer-events: none !important;
}

.porno-player .ads_context_menu {
    display: none !important;
}

/* Desktop: отступ между динамиком и ползунком громкости */
@media (min-width: 768px) {
    .porno-player .ads_controls_right .ads_control_mute,
    .porno-player .ads_controls_right #porno-video_ads_control_mute,
    .porno-player .ads_controls_right .ads_button_mute,
    .porno-player .ads_controls_right .ads_button_volume.ads_control_mute {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        margin-right: 14px !important;
        margin-left: 0 !important;
    }

    .porno-player .ads_control_volume_container {
        position: relative !important;
        left: auto !important;
        margin-left: 0 !important;
        margin-right: 4px !important;
    }
}

@media (max-width: 991.98px) and (min-width: 768px) {
    .porno-player .ads_controls_right {
        flex-shrink: 0 !important;
        min-width: 54px !important;
        overflow: visible !important;
    }

    .porno-player .ads_control_volume_container {
        display: none !important;
    }

    .porno-player .ads_controls_right .ads_button {
        left: auto !important;
        position: relative !important;
    }
}

@media (max-width: 767.98px) {
    .porno-player .ads-player-block {
        max-height: none;
    }

    .porno-player .ads_controls_container {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        height: 40px !important;
        padding: 0 8px !important;
    }

    .porno-player .ads_controls_left {
        flex: 0 0 28px !important;
        width: 28px !important;
        height: 28px !important;
        position: relative !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
    }

    .porno-player .ads_controls_progress_container {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        height: 10px !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        align-self: center !important;
    }

    .porno-player .ads_controls_right {
        display: flex !important;
        flex: 0 0 60px !important;
        width: 60px !important;
        min-width: 60px !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 4px !important;
        position: relative !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;
        overflow: visible !important;
    }

    .porno-player .ads_controls_right > *:not(#porno-video_ads_control_mute):not(#porno-video_ads_control_fullscreen) {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
        position: absolute !important;
    }

    .porno-player .ads_controls_right #porno-video_ads_control_mute,
    .porno-player .ads_controls_right #porno-video_ads_control_fullscreen {
        display: inline-block !important;
        visibility: visible !important;
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        width: 28px !important;
        height: 28px !important;
        flex: 0 0 28px !important;
        pointer-events: auto !important;
    }

    .porno-player .ads_control_volume_container,
    .porno-player .ads_control_theatre,
    .porno-player .ads_control_cardboard,
    .porno-player .ads_button_subtitles,
    .porno-player .ads_button_video_source,
    .porno-player .ads_control_video_source,
    .porno-player #porno-video_ads_control_video_source,
    .porno-player .ads_button_playback_rate,
    .porno-player .ads_button_download,
    .porno-player .ads_control_duration {
        display: none !important;
    }

    .porno-player .skip_button {
        bottom: 44px !important;
        right: 6px !important;
        font-size: 11px !important;
        padding: 6px 10px !important;
    }
}
