/* Frontend-only presentation. Research text and measurement exports stay upstream. */
.policy-replay-launcher { display:block; position:relative; width:100%; padding:0; overflow:hidden; cursor:pointer; border:1px solid var(--line); border-radius:5px; background:#e9ddd3; color:var(--ink); text-align:center; }
.policy-replay-launcher picture,.policy-replay-launcher img { display:block; width:100%; height:auto; }
.policy-replay-launcher picture { min-height:220px; }
.policy-replay-label { display:block; padding:14px 16px; font:600 15px/1.4 var(--body); color:var(--paper-raised); background:var(--accent); }
.policy-replay-launcher:hover .policy-replay-label { background:var(--olive); }
.policy-replay-launcher:focus-visible { outline:3px solid var(--olive); outline-offset:4px; }
iframe[hidden] { display:none !important; }
.table-scroll { max-width:100%; overscroll-behavior-x:contain; }
.table-scroll:focus-visible { outline:2px solid var(--olive); outline-offset:4px; }
.table-scroll table { min-width:560px; }
.references a { overflow-wrap:anywhere; }
.replay-tabs { flex-wrap:wrap; }
.replay-tabs button { min-height:44px; }
video { max-width:100%; }
@media(max-width:650px) {
  .hero { padding-top:3rem; padding-bottom:2.5rem; }
  .hero h1 { font-size:clamp(2.35rem,10vw,3rem); }
  .opening-teaser { padding-bottom:2.5rem; }
  .chapter { padding-top:3rem; padding-bottom:3rem; }
  .site-header { gap:.7rem; font-size:.7rem; }
  .video-grid,.video-grid-2 { grid-template-columns:1fr; }
  .video-grid figcaption { margin-bottom:1rem; }
  .policy-replay-launcher picture { min-height:400px; }
  .video-pair-labels { font-size:.75rem; gap:.5rem; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Keep the recording-sized cover in place while the hidden viewer initializes. */
.policy-replay-shell { position:relative; width:100%; }
.policy-replay-shell .policy-replay-launcher { position:absolute; inset:0; height:100%; display:flex; flex-direction:column; border-radius:5px; }
.policy-replay-shell .policy-replay-launcher[hidden] { display:none; }
.policy-replay-shell .policy-replay-launcher picture { flex:1; min-height:0; overflow:hidden; }
.policy-replay-shell .policy-replay-launcher img { width:100%; height:100%; object-fit:cover; }
.policy-replay-shell .policy-replay-label { flex-shrink:0; width:100%; }
