@import url('./theme.css?v=20261004-unified-ui-v1');
/* The only stable-player layout authority. Previous player rules are retired. */
#playerOverlay{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;min-width:0;max-width:100%;height:100vh;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--tv-player-bg);color:var(--tv-player-text);font:14px/1.5 var(--tv-player-font);color-scheme:dark;overflow:hidden}
#playerOverlay.hidden,#playerOverlay [hidden],#playerOverlay .hidden{display:none!important}
#playerOverlay,#playerOverlay .pl-main,#playerOverlay .player-stage{animation:none!important;opacity:1!important;transform:none!important}
#playerOverlay *{box-sizing:border-box;min-width:0}
#playerOverlay button,#playerOverlay input{font:inherit}
#playerOverlay button{min-height:42px;padding:8px 14px;color:inherit;background:var(--tv-player-button);border:1px solid var(--tv-player-button-line);border-radius:var(--tv-player-radius);cursor:pointer;box-shadow:none;text-transform:none;transition:background .15s,border-color .15s}
#playerOverlay button:hover{background:var(--tv-player-hover)}
#playerOverlay button:focus-visible,#playerOverlay input:focus-visible{outline:2px solid #76d2ff;outline-offset:3px}
#playerOverlay button:disabled{opacity:.45;cursor:default}
#playerOverlay .pl-top{display:flex;align-items:center;gap:12px;min-height:66px;flex:0 0 auto;padding:10px 16px;border-bottom:1px solid var(--tv-player-line);background:var(--tv-player-bg);z-index:8}
#playerOverlay .player-title-wrap{flex:1;min-width:0;text-shadow:none}
#playerOverlay .ptitle{font-size:16px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#playerOverlay .pep{font-size:12px;color:var(--tv-player-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#playerOverlay .stable-badge{color:#9aeed3;font-size:12px;white-space:nowrap}
#playerOverlay .cdn-mode-actions,#playerOverlay .pl-now{display:none}
#playerOverlay .pl-main{display:flex;flex:1;min-height:0;overflow:hidden}
#playerOverlay .player-stage{flex:1;min-width:0;min-height:0;position:relative;display:block;background:#000;overflow:hidden}
#playerOverlay #video{display:block;width:100%;height:100%;object-fit:contain;background:#000;transform:none;opacity:1;outline:none}
#playerOverlay .p-tapcatch{position:absolute;inset:0;z-index:1;background:transparent;touch-action:pan-y}
#playerOverlay .stable-notice{position:absolute;top:12px;left:12px;z-index:9;max-width:calc(100% - 24px);padding:8px 12px;border:1px solid var(--tv-player-button-line);border-radius:8px;background:rgba(0,0,0,.88);font-size:13px;overflow-wrap:anywhere;pointer-events:none}
#playerOverlay .player-bar-bottom{position:absolute;bottom:0;left:0;right:0;z-index:5;padding:22px 16px max(12px,env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.9));border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;transition:opacity .15s}
#playerOverlay .player-bar-bottom.hidden-bar{opacity:0;pointer-events:none}
#playerOverlay .pb-row{display:flex;align-items:center;gap:12px}
#playerOverlay .pb-row-2{gap:8px;flex-wrap:wrap;margin-top:0}
#playerOverlay .stable-transport,#playerOverlay .stable-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%}
#playerOverlay .stable-tools{margin-left:auto;justify-content:flex-end}
#playerOverlay .pb-time{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--tv-player-text)}
#playerOverlay #pSeekRange{flex:1;min-width:70px;height:40px;margin:0;accent-color:var(--tv-player-accent);touch-action:none;cursor:pointer}
#playerOverlay #pProgress,#playerOverlay .pp-tip{display:none!important}
#playerOverlay .pb-row .iconbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;height:auto;white-space:nowrap}
#playerOverlay .stable-button-icon{display:none}
#playerOverlay .pb-vol{display:flex;gap:6px;align-items:center}
#playerOverlay .pb-vol input{width:72px;margin:0;accent-color:var(--tv-player-accent)}
#playerOverlay .pl-side{width:var(--tv-player-side);flex:0 0 var(--tv-player-side);min-height:0;overflow:auto;padding:16px;background:var(--tv-player-bg);overscroll-behavior:contain;touch-action:pan-y}
#playerOverlay .pl-sec{margin:0 0 20px;padding:0;border:0;background:none}
#playerOverlay .pl-sec-h{font-size:13px;font-weight:650;margin:0 0 10px;color:#acbed1}
#playerOverlay .pl-lines,#playerOverlay .pl-quality,#playerOverlay .pl-eps{display:flex;flex-wrap:wrap;gap:8px;min-height:0;overflow:visible;align-content:start}
#playerOverlay .pl-line,#playerOverlay .q,#playerOverlay .ep,#playerOverlay .ep-range{font-size:12px;max-width:100%;text-align:left;overflow-wrap:anywhere;white-space:normal;display:inline-flex;align-items:center;gap:6px;letter-spacing:normal}
#playerOverlay .pl-line.on,#playerOverlay .q.on,#playerOverlay .ep.playing,#playerOverlay .ep-range.on{border-color:#6cd5fc;color:#9ee4ff;background:var(--tv-player-selected)}
#playerOverlay .pl-line .gcount,#playerOverlay .q .qaudio{font-size:11px;color:var(--tv-player-muted)}
#playerOverlay .pl-eps .ep-ranges,#playerOverlay .pl-eps .ep-subtitle{width:100%;display:flex;flex-wrap:wrap;gap:6px;color:var(--tv-player-muted);font-size:12px}
#playerOverlay .pl-eps.movie-mode .ep{width:100%;justify-content:flex-start}
#playerOverlay .player-loading,#playerOverlay .player-error{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;gap:12px;color:var(--tv-player-text);background:rgba(0,0,0,.7)}
#playerOverlay .player-loading{pointer-events:none}
#playerOverlay .player-loading .ld{width:100px;height:4px;background:linear-gradient(90deg,#29384b,#67dbb5,#29384b);background-size:200% 100%;border:0;border-radius:8px;animation:stablePrepare 1.8s linear infinite}
#playerOverlay #pLoadingMsg{max-width:480px;font-size:14px;white-space:pre-line;color:var(--tv-player-text)}
#playerOverlay .player-error .msg{max-width:480px;white-space:pre-line;overflow-wrap:anywhere}
#playerOverlay .player-error .ic{color:#ffad5c}
#playerOverlay .player-error .ic svg{width:36px;height:36px}
#playerOverlay #legacyPlayerActions{flex-wrap:wrap;justify-content:center}
#playerOverlay .sub-menu{position:absolute;z-index:7;right:12px;bottom:120px;max-width:calc(100% - 24px);max-height:60%;overflow:auto}
#playerOverlay .sub-overlay,#playerOverlay .sub-image-overlay{position:absolute;z-index:2;pointer-events:none}
#playerOverlay .sub-overlay{left:12px;right:12px;bottom:120px;text-align:center}
#playerOverlay .sub-image-overlay{max-width:100%;max-height:70%;left:50%;bottom:120px;transform:translateX(-50%)}
#playerOverlay.webfs-on,#playerOverlay:fullscreen{height:100%;z-index:2147483647}
#playerOverlay.webfs-on .pl-top,#playerOverlay.fs-chrome .pl-top,#playerOverlay:fullscreen .pl-top,#playerOverlay.webfs-on .pl-side,#playerOverlay.fs-chrome .pl-side,#playerOverlay:fullscreen .pl-side{display:none}
#playerOverlay.webfs-on .pl-main,#playerOverlay.fs-chrome .pl-main,#playerOverlay:fullscreen .pl-main{display:flex;flex-direction:row;overflow:hidden}
#playerOverlay.webfs-on .player-stage,#playerOverlay.fs-chrome .player-stage,#playerOverlay:fullscreen .player-stage,#playerOverlay #pStage:fullscreen{display:block;flex:1;width:100%;height:100%;min-height:0;aspect-ratio:auto}
#playerOverlay.webfs-on .player-bar-bottom,#playerOverlay.fs-chrome .player-bar-bottom,#playerOverlay:fullscreen .player-bar-bottom,#playerOverlay #pStage:fullscreen .player-bar-bottom{position:absolute}
#playerOverlay:fullscreen::backdrop,#playerOverlay #pStage:fullscreen::backdrop{background:#000}
#playerOverlay:-webkit-full-screen{height:100%;z-index:2147483647}
#playerOverlay:-webkit-full-screen .pl-top,#playerOverlay:-webkit-full-screen .pl-side{display:none}
#playerOverlay:-webkit-full-screen .pl-main{display:flex;flex-direction:row;overflow:hidden}
#playerOverlay:-webkit-full-screen .player-stage,#playerOverlay #pStage:-webkit-full-screen{display:block;flex:1;width:100%;height:100%;min-height:0;aspect-ratio:auto}
#playerOverlay:-webkit-full-screen .player-bar-bottom,#playerOverlay #pStage:-webkit-full-screen .player-bar-bottom{position:absolute}
@keyframes stablePrepare{to{background-position:-200% 0}}
@media(max-width:800px){
 #playerOverlay .pl-main{flex-direction:column;overflow:auto;overscroll-behavior:contain}
 #playerOverlay .player-stage{flex:0 0 auto;width:100%;display:grid;grid-template-rows:auto auto;aspect-ratio:auto}
 #playerOverlay #video{grid-row:1;height:auto;aspect-ratio:16/9}
 #playerOverlay .p-tapcatch{bottom:auto;height:auto;aspect-ratio:16/9}
 #playerOverlay .player-bar-bottom{grid-row:2;position:relative;padding:8px 10px 12px;background:#070b10}
 #playerOverlay .pl-side{width:100%;flex:1 0 auto;overflow:visible;border-top:1px solid var(--tv-player-line)}
 #playerOverlay .pl-top{padding:8px 12px}
 #playerOverlay .stable-badge{display:none}
 #playerOverlay .pb-row-2{gap:6px}
 #playerOverlay .stable-transport,#playerOverlay .stable-tools{gap:6px}
 #playerOverlay button{padding:7px 10px}
 #playerOverlay .pb-time{font-size:11px}
 #playerOverlay .pb-vol input{display:none}
 #playerOverlay.webfs-on #video,#playerOverlay.fs-chrome #video,#playerOverlay:fullscreen #video,#playerOverlay #pStage:fullscreen #video{height:100%;aspect-ratio:auto}
 #playerOverlay:-webkit-full-screen #video,#playerOverlay #pStage:-webkit-full-screen #video{height:100%;aspect-ratio:auto}
}
@media(orientation:landscape) and (max-height:560px) and (min-width:600px){
 #playerOverlay .pl-main{flex-direction:row;overflow:hidden}
 #playerOverlay .player-stage{display:block;flex:1;aspect-ratio:auto;height:100%}
 #playerOverlay #video{height:100%;aspect-ratio:auto}
 #playerOverlay .p-tapcatch{height:100%;aspect-ratio:auto}
 #playerOverlay .player-bar-bottom{position:absolute;padding:12px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.9))}
 #playerOverlay .pl-side{width:clamp(220px,30vw,280px);flex:0 0 clamp(220px,30vw,280px);overflow:auto;border:0;padding:12px}
 #playerOverlay .pl-top{min-height:56px;padding:6px 10px}
 #playerOverlay .pb-vol input{display:none}
}
@media(pointer:coarse){#playerOverlay button{min-height:46px}#playerOverlay #pSeekRange{height:46px}}
@media(prefers-reduced-motion:reduce){#playerOverlay button,#playerOverlay .player-bar-bottom{transition:none}#playerOverlay .ld{animation:none}}
