/* V7: the same minimal video interface on desktop, mobile, light and dark. */
.media-player { width:100%; min-width:0; }
.media-player > .video { position:relative; width:100%; aspect-ratio:16/9!important; min-height:0!important; max-height:none!important; padding:0!important; overflow:hidden; background:transparent; }
.media-player > .video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; pointer-events:none; }
.media-player > .video .media-poster { display:block; position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:var(--paper,#efeee9); color:var(--ink,#161616); }
.media-poster img { width:100%; height:100%; object-fit:contain; }
.media-poster .poster-title { position:absolute; inset:0; display:grid; place-items:center; padding:18px; font:12px/1.5 var(--sans,sans-serif); text-align:center; }
.media-poster.has-image .poster-title { display:none; }
.media-player.has-frame .media-poster { visibility:hidden; }
.media-player .media-surface { position:absolute; z-index:1; inset:0; width:100%; height:100%; margin:0; padding:0; border:0; background:transparent; cursor:pointer; }
.media-player .video-controls { box-sizing:border-box; display:flex; align-items:center; gap:10px; width:100%; height:38px; padding:5px 0; color:var(--ink,#161616); background:transparent; }
.media-player .video-controls [hidden],.media-player .media-status[hidden] { display:none!important; }
.media-player .video-controls button { flex:none; border:0; padding:4px 0; margin:0; background:none; color:inherit; cursor:pointer; font:10px/1.2 var(--sans,sans-serif); min-height:28px; text-transform:none; letter-spacing:0; }
.media-player .video-controls button:disabled { opacity:.45; cursor:default; }
.media-player .video-play { min-width:18px; text-align:left; }
.media-player .video-fullscreen { margin-left:auto!important; text-align:right; }
.media-player .video-controls svg { display:block; }
.media-player .video-fullscreen { min-width:18px; display:grid; place-items:center end; }
.media-player input.video-seek { flex:1; min-width:24px; width:100%; height:24px; margin:0; padding:0; accent-color:var(--gold,#978154); cursor:pointer; }
.media-player .video-time { flex:none; font:10px/1.2 var(--sans,sans-serif); font-variant-numeric:tabular-nums; white-space:nowrap; }
.media-player .media-status { font:12px/1.6 var(--sans,sans-serif); color:var(--muted,#777); padding:6px 0; }
.media-player .media-status a { text-decoration:underline; }
.media-player button:focus-visible,.media-player input:focus-visible { outline:2px solid var(--gold,#978154); outline-offset:3px; }
body.media-expanded { overflow:hidden; }
.media-player:is(:fullscreen,.is-expanded) { background:#000; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.media-player.is-expanded { position:fixed; inset:0; z-index:1000; width:100vw; height:100dvh; }
.media-player:is(:fullscreen,.is-expanded) > .video { width:min(100vw,calc((100dvh - 44px) * 16 / 9)); height:auto; max-height:calc(100dvh - 44px)!important; margin:0; }
.media-player:is(:fullscreen,.is-expanded) .video-controls { width:min(100vw,calc((100dvh - 44px) * 16 / 9)); height:44px; color:white; background:#000; padding:6px 12px; }
@media(max-width:720px) {
  .media-player .video-controls { gap:6px; }
  .media-player .video-time,.media-player .video-controls button { font-size:9px; }
}
/* Shared one-pixel timeline; showreel controls remain especially compact. */
.media-player.is-showreel .video-controls { height:22px; padding:0; gap:10px; }
.media-player.is-showreel .video-controls button { min-height:22px; }
.media-player input.video-seek { appearance:none; -webkit-appearance:none; height:20px; background:transparent; }
.media-player input.video-seek::-webkit-slider-runnable-track { height:1px; border:0; background:linear-gradient(to right,var(--muted,#777) var(--played,0%),var(--line,#ddd) var(--played,0%)); }
.media-player input.video-seek::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:5px; height:5px; margin-top:-2px; border:0; border-radius:50%; background:var(--muted,#777); }
.media-player input.video-seek::-moz-range-track { height:1px; border:0; background:var(--line,#ddd); }
.media-player input.video-seek::-moz-range-progress { height:1px; background:var(--muted,#777); }
.media-player input.video-seek::-moz-range-thumb { width:5px; height:5px; border:0; border-radius:50%; background:var(--muted,#777); }

.media-player .video-volume { min-width:22px; display:grid; place-items:center; }
.media-player:is(:fullscreen,.is-expanded) { --muted:#bbb; --line:rgba(255,255,255,.25); }
