.player-screen { padding:0; background:#000; }
.player-screen video { width:100%; height:100%; object-fit:contain; background:#000; }
.player-shade { position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(0,0,0,.72),transparent 30%,transparent 62%,rgba(0,0,0,.82)); opacity:1; transition:.25s ease; }
.player-overlay { position:absolute; inset:0; padding:52px 65px 48px; display:flex; flex-direction:column; justify-content:space-between; opacity:1; transition:.25s ease; }
.player-screen.overlay-hidden .player-overlay, .player-screen.overlay-hidden .player-shade { opacity:0; pointer-events:none; }
.player-top { display:flex; gap:22px; align-items:flex-start; }
.player-title span { color:var(--green); font-size:14px; font-weight:900; letter-spacing:.16em; }
.player-title h1 { margin:7px 0 7px; font-size:37px; }
.player-title p { margin:0; color:#d3ded8; font-size:17px; }
.player-bottom { display:flex; align-items:center; gap:23px; }
.round-control { width:72px; height:72px; flex:0 0 auto; border-radius:50%; background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.2); font-size:26px; }
.timeline-wrap { flex:1; }
.timeline { height:8px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.24); }
.timeline > div { width:0; height:100%; background:var(--green); }
.time-row { display:flex; justify-content:space-between; margin-top:10px; color:#e3ece7; font-size:14px; }
.player-native-badge { padding:10px 14px; border-radius:12px; background:rgba(255,255,255,.12); color:#d7e4dd; font-size:13px; }
.player-loading { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:flex; flex-direction:column; align-items:center; gap:20px; color:#dbe7e0; font-size:17px; }
.player-error { position:absolute; left:50%; top:50%; width:620px; transform:translate(-50%,-50%); padding:42px; text-align:center; border-radius:28px; background:rgba(13,21,17,.96); border:1px solid var(--line); }
.player-error h2 { font-size:32px; margin:22px 0 10px; }
.player-error p { color:var(--muted); font-size:17px; line-height:1.5; }
