:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0d1b2a;background:#f3f0e8}*{box-sizing:border-box}body{margin:0;background:#f3f0e8}.shell{max-width:940px;margin:0 auto;padding:28px 20px 80px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:#86631f}h1,h2,p{margin-top:0}h1{margin-bottom:6px;color:#07182c}.card{background:#fff;border:1px solid #ddd6c9;border-radius:16px;padding:22px;margin:16px 0;box-shadow:0 8px 28px rgba(7,24,44,.06)}.card.compact{padding:18px 22px}.status-pill{border:1px solid #c7c0b3;border-radius:999px;padding:8px 12px;font-size:13px;background:#fff}.progress-track{height:12px;background:#e7e3da;border-radius:999px;overflow:hidden}.progress-bar{height:100%;width:0;background:#07182c;transition:width .15s}.progress-row{display:flex;justify-content:space-between;gap:16px;margin-top:9px;font-size:14px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}button{font:inherit;border-radius:10px;padding:11px 16px;border:1px solid #07182c;cursor:pointer}.primary{background:#07182c;color:#fff}.secondary{background:#fff;color:#07182c}.primary:disabled{opacity:.4;cursor:not-allowed}.ready-state{margin-top:14px;font-size:14px;line-height:1.55}.ready-state.ok{color:#215b38}.ready-state.error{color:#9a2e22}.cue-list{margin:0;padding-left:22px}.cue-list li{margin:6px 0}.player-overlay{position:fixed;inset:0;background:#02060c;z-index:1000}.player-overlay.hidden{display:none}.player-stage{position:absolute;inset:0;background:#000;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.player-stage img,.player-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.player-launcher{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff;background:rgba(2,6,12,.92);text-align:center;padding:24px}.player-launcher.windowed-controls{inset:auto 18px 18px auto;min-width:320px;max-width:calc(100vw - 36px);padding:16px;border:1px solid rgba(255,255,255,.25);border-radius:14px;background:rgba(2,6,12,.9);align-items:stretch;text-align:left}.player-launch-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.player-launcher.windowed-controls .player-launch-actions{justify-content:flex-start}.player-counter{font-variant-numeric:tabular-nums;color:#d8c28e}@media(max-width:640px){.topbar{flex-direction:column}.progress-row{flex-direction:column;gap:4px}}


.pin-shell{min-height:100vh;display:grid;place-items:center;padding:28px 20px}.pin-card{width:min(520px,100%);background:#fff;border:1px solid #ddd6c9;border-radius:18px;padding:30px;box-shadow:0 12px 34px rgba(7,24,44,.08)}.pin-card h1{font-size:clamp(30px,6vw,46px);line-height:1.02;margin:8px 0 10px}.pin-copy{color:#4b5b6e}.pin-form{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:22px}.pin-form input{min-width:0;font:700 28px/1 system-ui;letter-spacing:.22em;text-align:center;padding:16px;border:1px solid #c7c0b3;border-radius:12px;background:#fbfaf6;color:#07182c}.pin-form input:focus{outline:2px solid #c29439;outline-offset:2px}.pin-form button{min-width:120px}.event-meta{font-size:14px;color:#4b5b6e}@media(max-width:560px){.pin-form{grid-template-columns:1fr}.pin-form button{width:100%}}


@media (pointer: coarse) {
  .player-launcher.windowed-controls{
    inset:auto max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) auto;
    min-width:0;
    width:auto;
    max-width:none;
    padding:7px 9px;
    border-radius:999px;
    flex-direction:row;
    align-items:center;
    gap:8px;
    background:rgba(2,6,12,.72);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }
  .player-launcher.windowed-controls .eyebrow,
  .player-launcher.windowed-controls h2,
  .player-launcher.windowed-controls #player-play{
    display:none;
  }
  .player-launcher.windowed-controls .player-launch-actions{
    display:block;
  }
  .player-launcher.windowed-controls #player-close{
    width:38px;
    height:38px;
    padding:0;
    border-radius:50%;
    font-size:0;
    line-height:1;
  }
  .player-launcher.windowed-controls #player-close::before{
    content:"×";
    font-size:24px;
    line-height:1;
  }
  .player-launcher.windowed-controls .player-counter{
    font-size:14px;
    padding-left:4px;
    white-space:nowrap;
  }
}
