 .player-root {
     --chrome-control-size: 46px;
     --chrome-gap: 10px;
     --chrome-row-gap: 12px;
     --chrome-bottom-gap: 18px;
     --chrome-bottom-padding-x: 12px;
     --chrome-bottom-padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px));
     --chrome-progress-column-gap: 10px;
     --chrome-progress-inset: 10px;
    --progress-track-inset: var(--chrome-progress-inset);
     --chrome-time-size: 0.92rem;
     --chrome-title-size: 0.98rem;
     --chrome-volume-width: 92px;
     --chrome-slider-track-height: 4px;
     --chrome-slider-thumb-size: 14px;
    --bottom-chrome-width: 100%;
 }

html.is-pseudo-fullscreen,
body.is-pseudo-fullscreen {
    overflow: hidden;
}

.player-root.is-pseudo-fullscreen {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    border: 0;
    box-shadow: none;
    z-index: 9999;
}

 .player-topbar {
     padding-top: 0;
     padding-left: 12px;
     padding-right: 12px;
 }
 
 .player-bottombar {
     --bottom-chrome-width: 100%;
 }

 .player-root.is-compact-chrome {
     --chrome-control-size: 36px;
     --chrome-gap: 6px;
     --chrome-row-gap: 8px;
     --chrome-bottom-gap: 10px;
     --chrome-bottom-padding-x: 8px;
     --chrome-bottom-padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
     --chrome-progress-column-gap: 6px;
     --chrome-progress-inset: 6px;
     --chrome-time-size: 0.72rem;
     --chrome-title-size: 0.84rem;
     --chrome-volume-width: 0px;
     --chrome-slider-track-height: 3px;
     --chrome-slider-thumb-size: 11px;
 }

 .player-root.is-compact-chrome .player-bottombar {
     gap: var(--chrome-bottom-gap);
 }

 .player-root.is-compact-chrome .player-bottombar::before {
     height: min(144px, 28vh);
 }

 .player-root.is-compact-chrome .player-progress-block {
     width: 100%;
 }
 
 .controls-center {
     display: none;
 }
 
 .controls-row {
     grid-template-columns: 1fr max-content;
     gap: 10px;
 }
 
 .controls-left {
     min-width: 0;
     gap: 10px;
 }
 
 .controls-right {
     gap: 10px;
 }
 
 .controls-buttons {
     gap: 10px;
 }
 
 .volume-input {
     width: var(--chrome-volume-width);
 }

 .player-root.is-compact-chrome .volume-input {
     display: none;
 }

 .player-root.is-compact-chrome .controls-left,
 .player-root.is-compact-chrome .controls-right,
 .player-root.is-compact-chrome .controls-buttons {
     gap: 6px;
 }

 .player-root.is-compact-chrome .controls-right {
     min-width: 0;
 }

 .player-root.is-compact-chrome .player-icon-button svg,
 .player-root.is-compact-chrome .player-control svg {
     transform: scale(0.82);
     transform-origin: center;
 }

 .player-root.is-compact-chrome .time-stamp {
     min-width: 42px;
 }

 .player-root.is-compact-chrome .subtitle-text-layer {
     padding-inline: 12px;
 }
 
 .player-icon-button,
 .player-control {
     opacity: 1;
 }

.player-root.is-compact-chrome .menu-panel,
.player-root.is-compact-chrome .menu-panel.is-server-menu,
.player-root.is-compact-chrome .menu-panel.is-language-menu,
.player-root.is-compact-chrome .menu-panel.is-subtitles-menu,
.player-root.is-compact-chrome .menu-panel.is-episodes-menu,
.player-root.is-compact-chrome .menu-panel.is-volume-boost-menu,
.player-root.is-compact-chrome .menu-panel.is-playback-speed-menu,
.player-root.is-compact-chrome .menu-panel.is-settings-menu {
    left: 10px;
    right: 10px;
    bottom: calc(70px + env(safe-area-inset-bottom, 0px));
    width: auto;
    max-width: none;
    max-height: min(62dvh, calc(100% - 100px));
    border-radius: 10px;
    transform-origin: bottom center;
}

.player-root.is-compact-chrome .menu-panel.is-language-menu,
.player-root.is-compact-chrome .menu-panel.is-server-menu,
.player-root.is-compact-chrome .menu-panel.is-settings-menu {
    padding: 10px;
}

.player-root.is-compact-chrome .menu-panel.is-subtitles-menu,
.player-root.is-compact-chrome .menu-panel.is-episodes-menu,
.player-root.is-compact-chrome .menu-panel.is-volume-boost-menu,
.player-root.is-compact-chrome .menu-panel.is-playback-speed-menu,
.player-root.is-compact-chrome .menu-panel.is-settings-menu {
    height: auto;
}

.player-root.is-compact-chrome .menu-panel.is-settings-menu:not(.is-mobile-dialog-menu),
.player-root.is-compact-chrome .menu-panel.is-subtitles-menu:not(.is-mobile-dialog-menu) {
    left: 50%;
    right: auto;
    width: min(420px, calc(100vw - 28px));
    max-width: calc(100vw - 28px);
    transform: translateX(-50%);
    transform-origin: bottom center;
}

.player-root.is-compact-chrome .menu-panel.is-settings-menu {
    max-height: min(62dvh, calc(100% - 100px));
}

.player-root.is-compact-chrome .menu-panel.is-subtitles-menu {
    height: min(62dvh, calc(100% - 100px));
    max-height: min(62dvh, calc(100% - 100px));
}

.player-root.is-compact-chrome .menu-panel.is-volume-boost-menu,
.player-root.is-compact-chrome .menu-panel.is-playback-speed-menu {
    left: auto;
    right: 10px;
    width: min(320px, calc(100vw - 28px));
    max-height: min(46dvh, calc(100% - 120px));
}

.player-root.is-compact-chrome .menu-panel.is-language-menu,
.player-root.is-compact-chrome .menu-panel.is-server-menu {
    left: auto;
    right: 10px;
    width: min(248px, calc(100vw - 28px));
}

.player-root.is-compact-chrome .menu-content,
.player-root.is-compact-chrome .subtitles-body,
.player-root.is-compact-chrome .episodes-selector-scroll {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    touch-action: pan-y;
}

.player-root.is-compact-chrome .menu-panel.is-settings-menu .menu-content,
.player-root.is-compact-chrome .menu-panel.is-subtitles-menu .menu-content {
    min-height: 0;
    height: 100%;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu {
    left: 50%;
    right: auto;
    bottom: calc(74px + env(safe-area-inset-bottom, 0px));
    width: min(360px, calc(100vw - 36px));
    max-width: calc(100vw - 36px);
    padding: 0;
    gap: 0;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    background: rgba(8, 8, 10, 0.96);
    backdrop-filter: blur(22px);
    transform: translateX(-50%);
    transform-origin: bottom center;
    animation: mobile-menu-dialog-in 160ms ease;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .menu-content {
    min-height: 0;
    height: 100%;
    padding: 0;
    gap: 0;
    overflow: hidden;
}

.player-root.is-compact-chrome .subtitles-panel {
    min-height: 0;
    height: 100%;
}

.player-root.is-compact-chrome .subtitles-body {
    padding: 10px;
    gap: 10px;
}

.player-root.is-compact-chrome .subtitles-tabs {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.player-root.is-compact-chrome .subtitles-tab {
    min-height: 40px;
    padding: 0 12px;
    font-size: 0.78rem;
    white-space: nowrap;
}

.player-root.is-compact-chrome .settings-root-option {
    padding: 8px 8px;
}

.player-root.is-compact-chrome .settings-root-option .menu-option-icon {
    width: 28px;
    height: 28px;
}

.player-root.is-compact-chrome .settings-root-option .menu-option-icon svg {
    width: 18px;
    height: 18px;
}

.player-root.is-compact-chrome .settings-root-option .menu-option-title,
.player-root.is-compact-chrome .subtitle-item-title {
    font-size: 0.88rem;
}

.player-root.is-compact-chrome .subtitle-item,
.player-root.is-compact-chrome .subtitle-upload-button {
    min-height: 48px;
    padding: 0 12px;
    gap: 10px;
}

.player-root.is-compact-chrome .subtitle-item-meta {
    font-size: 0.75rem;
}

.player-root.is-compact-chrome .subtitle-config-label,
.player-root.is-compact-chrome .subtitle-config-value,
.player-root.is-compact-chrome .subtitle-sync-current {
    font-size: 0.92rem;
}

.player-root.is-compact-chrome .subtitle-sync-chip {
    min-width: 68px;
    min-height: 34px;
    padding: 0 12px;
    font-size: 0.84rem;
}

.player-root.is-compact-chrome .subtitle-config-grid {
    gap: 10px;
}

.player-root.is-compact-chrome .subtitle-color-input,
.player-root.is-compact-chrome .subtitle-config-select {
    min-height: 40px;
    font-size: 0.9rem;
}

.player-root.is-compact-chrome .settings-root-panel {
    gap: 8px;
    padding: 2px 0;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .settings-root-panel {
    gap: 0;
    padding: 6px 0;
}

.player-root.is-compact-chrome .settings-root-option {
    min-height: 56px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.05);
}

.player-root.is-compact-chrome .settings-root-option .menu-option-row {
    gap: 12px;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .settings-root-option {
    min-height: 54px;
    padding: 0 14px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .settings-root-option + .settings-root-option {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.player-root.is-compact-chrome .settings-root-option .menu-option-copy {
    align-items: flex-start;
}

.player-root.is-compact-chrome .settings-root-option .menu-option-title {
    font-size: 0.94rem;
    line-height: 1.25;
}

.player-root.is-compact-chrome .menu-option-chevron {
    width: 24px;
    height: 24px;
}

.player-root.is-compact-chrome .settings-subpanel-head {
    padding: 12px 12px 10px;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .settings-subpanel-head {
    padding: 12px 12px 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.player-root.is-compact-chrome .settings-subpanel-label {
    font-size: 0.94rem;
}

.player-root.is-compact-chrome .subtitles-tabs {
    gap: 8px;
    padding: 10px 10px 0;
    border-bottom: 0;
}

.player-root.is-compact-chrome .subtitles-tab {
    flex: 0 0 auto;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-bottom-width: 1px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.78);
}

.player-root.is-compact-chrome .subtitles-tab.is-active {
    border-color: rgba(43, 104, 255, 0.42);
    background: rgba(43, 104, 255, 0.18);
}

.player-root.is-compact-chrome .subtitles-body {
    padding: 12px;
    gap: 12px;
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .subtitles-body {
    padding: 10px 12px 12px;
    gap: 10px;
}

.player-root.is-compact-chrome .subtitles-list,
.player-root.is-compact-chrome .subtitle-placeholder-list {
    gap: 8px;
}

.player-root.is-compact-chrome .subtitle-item,
.player-root.is-compact-chrome .subtitle-upload-button,
.player-root.is-compact-chrome .subtitle-panel-placeholder,
.player-root.is-compact-chrome .subtitle-placeholder-card {
    min-height: 56px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
}

.player-root.is-compact-chrome .subtitle-item-main {
    align-items: flex-start;
    gap: 12px;
}

.player-root.is-compact-chrome .subtitle-item-copy,
.player-root.is-compact-chrome .subtitle-upload-copy {
    gap: 4px;
}

.player-root.is-compact-chrome .subtitle-item-title,
.player-root.is-compact-chrome .subtitle-placeholder-title {
    font-size: 0.92rem;
    line-height: 1.2;
}

.player-root.is-compact-chrome .subtitle-item-meta,
.player-root.is-compact-chrome .subtitle-placeholder-meta {
    font-size: 0.76rem;
    line-height: 1.35;
}

.player-root.is-compact-chrome .subtitle-item-side {
    gap: 6px;
    align-self: center;
}

.player-root.is-compact-chrome .subtitle-item-badge {
    padding: 4px 8px;
    font-size: 0.7rem;
}

.player-root.is-compact-chrome .subtitle-config-grid {
    grid-template-columns: 1fr;
}

.player-root.is-compact-chrome .subtitle-config-section {
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.player-root.is-compact-chrome .menu-panel.is-mobile-dialog-menu .subtitle-config-section {
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.03);
}

.player-root.is-compact-chrome .subtitle-config-section.is-centered {
    justify-items: stretch;
}

.player-root.is-compact-chrome .subtitle-config-label,
.player-root.is-compact-chrome .subtitle-config-value,
.player-root.is-compact-chrome .subtitle-sync-current {
    font-size: 0.9rem;
}

.player-root.is-compact-chrome .subtitle-sync-group {
    gap: 8px;
    justify-content: flex-start;
}

.player-root.is-compact-chrome .subtitle-sync-chip {
    min-width: 64px;
    min-height: 36px;
    padding: 0 10px;
    border-radius: 10px;
    font-size: 0.8rem;
}

.player-root.is-compact-chrome .pause-info-overlay {
    display: none !important;
}

.topbar-actions {
    top: calc(12px + env(safe-area-inset-top, 0px));
    right: 12px;
}

.skip-strip {
    right: 12px;
    left: 12px;
    width: auto;
    bottom: calc(
        var(--chrome-bottom-padding-bottom)
        + var(--chrome-control-size)
        + var(--chrome-bottom-gap)
        + (var(--chrome-time-size) * 1.35)
        + 8px
    );
    padding-inline: calc(var(--progress-track-inset) / 2);
    justify-content: flex-end;
}

.skip-strip.is-skip-strip-lowered {
    bottom: calc(var(--chrome-bottom-padding-bottom) + 10px);
}

.skip-chip {
    min-height: 46px;
    padding: 0 18px;
    font-size: 1rem;
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
}

.nextup-overlay {
    left: 12px;
    right: 12px;
    bottom: calc(var(--chrome-bottom-padding-bottom) + var(--chrome-control-size) + var(--chrome-bottom-gap) + 12px);
    width: auto;
}

.nextup-head {
    padding: 8px 10px;
    border-radius: 14px;
}

.nextup-countdown {
    font-size: 0.95rem;
}

.nextup-close {
    min-height: 34px;
    padding: 0 12px;
    font-size: 0.85rem;
}

.nextup-action {
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 12px;
    padding: 12px;
    border-radius: 18px;
}

.nextup-artwork {
    border-radius: 12px;
}

.nextup-episode {
    font-size: 0.95rem;
}

.nextup-title {
    font-size: 1.15rem;
    line-height: 1.2;
}

.pause-info-synopsis {
    display: none !important;
}

@media (orientation: landscape) and (max-height: 560px) {
    .player-root.is-pseudo-fullscreen.is-compact-chrome .menu-panel.is-mobile-dialog-menu {
        left: 50%;
        right: auto;
        width: min(460px, calc(100vw - 104px));
        max-width: calc(100vw - 104px);
        transform: translateX(-50%);
    }

    .player-root.is-pseudo-fullscreen.is-compact-chrome .menu-panel.is-settings-menu {
        max-height: min(72dvh, calc(100% - 84px));
    }

    .player-root.is-pseudo-fullscreen.is-compact-chrome .menu-panel.is-subtitles-menu {
        height: min(72dvh, calc(100% - 84px));
        max-height: min(72dvh, calc(100% - 84px));
    }
}

@keyframes mobile-menu-dialog-in {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(10px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0) scale(1);
    }
}
