:root{--bg:#0a0a0a;--panel:#141210;--gold:#c9a24a;--gold-soft:#e6c77a;--text:#f2ece0;--muted:#9a8f7c;--line:#c9a24a59}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0;font-family:Helvetica Neue,Arial,sans-serif}.stage{min-height:100dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.brand{letter-spacing:.3em;text-transform:uppercase;align-items:baseline;gap:12px;display:flex}.brand .mark{color:var(--gold);font-size:13px;font-weight:700}.brand .name{letter-spacing:.25em;font-size:22px}.frame{aspect-ratio:4/3;border:1px solid var(--line);background:var(--panel);width:min(100%,720px);position:relative;overflow:hidden;box-shadow:0 0 60px #c9a24a14}.frame img,.frame video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.frame video{opacity:0;transition:opacity .6s}.frame.live video{opacity:1}.status{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line);color:var(--gold-soft);background:#0a0a0ab3;padding:6px 10px;font-size:12px;position:absolute;bottom:12px;left:12px}.gate input{background:var(--panel);width:min(100%,320px);color:var(--text);border:1px solid var(--line);text-align:center;letter-spacing:.1em;padding:12px 14px;font-size:16px}.controls{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.btn{letter-spacing:.14em;text-transform:uppercase;min-width:120px;color:var(--gold);border:1px solid var(--gold);cursor:pointer;background:0 0;padding:14px 22px;font-size:14px}.btn.primary{background:var(--gold);color:#111;font-weight:700}.btn:disabled{opacity:.5;cursor:wait}
