:root{--door-accent:#e2b7ff;--door-accent-dark:#b976ff;--door-bg:#f8fafc;--door-surface:#fff;--door-ink:#1b1726;--door-muted:#64748b;--door-shadow:3px 3px 0 #1b1726;--door-danger:#ef4444;--door-danger-bg:#fee2e2;--door-success:#10b981;--door-success-bg:#d1fae5;--door-card-bg:#f1f5f9;--door-gold:#f59e0b}[data-scheme=dark],.dark{--door-accent:#e2b7ff;--door-accent-dark:#c996ff;--door-bg:#0f172a;--door-surface:#1e293b;--door-ink:#f8fafc;--door-muted:#94a3b8;--door-shadow:3px 3px 0 #020617;--door-danger:#f87171;--door-danger-bg:#450a0a;--door-success:#34d399;--door-success-bg:#064e3b;--door-card-bg:#334155;--door-gold:#fbbf24}.door-stage{background:var(--door-bg);width:min(100%,1100px);min-width:0;height:100%;min-height:0;color:var(--door-ink);-webkit-user-select:none;user-select:none;flex-direction:column;margin-inline:auto;font-family:Be Vietnam Pro,system-ui,sans-serif;display:flex;overflow:hidden}.door-band{background:var(--door-accent);flex:none;height:8px}.door-body{flex-direction:column;flex:1;gap:8px;width:100%;min-height:0;padding:clamp(4px,1.5vh,12px);display:flex}.door-hud{justify-content:space-between;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.door-strikes-container{align-items:center;gap:6px;display:flex}.door-strike-mark{border:2px solid var(--door-ink);background:var(--door-surface);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:900;display:flex}.door-strike-mark.struck{background:var(--door-danger);color:#fff;border-color:var(--door-danger)}.door-feedback-banner{background:var(--door-danger-bg);min-height:26px;color:var(--door-danger);border:1px solid var(--door-danger);border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:700;display:flex}.door-sign{background:var(--door-surface);border:2px solid var(--door-ink);border-radius:10px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.door-sign-header{color:var(--door-muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex}.door-rules-chips{flex-wrap:wrap;gap:4px;display:flex}.door-rule-chip{color:var(--door-accent-dark);background:#e639461f;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:800}.door-arena{flex:1;grid-template-columns:1fr 1fr;gap:10px;min-width:0;min-height:0;display:grid}@media (max-width:380px){.door-arena{grid-template-columns:1fr}}.door-guest-view{background:var(--door-surface);border:2px solid var(--door-ink);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px;display:flex;position:relative}.door-guest-avatar{width:100%;max-width:min(150px, calc(var(--stage-h) * .28));aspect-ratio:200/320}.door-guest-outfit-hint{color:var(--door-muted);text-align:center;font-size:11px;font-weight:700}.door-id-card{background:var(--door-card-bg);border:2px solid var(--door-ink);box-shadow:2px 2px 0 var(--door-ink);border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex}.door-id-header{align-items:center;gap:8px;display:flex}.door-id-photo{border:2px solid var(--door-ink);background:#fff8ee;border-radius:6px;flex-shrink:0;width:60px;height:84px;overflow:hidden}.door-id-fields{flex-direction:column;gap:3px;font-size:11px;line-height:1.2;display:flex}.door-id-name{color:var(--door-ink);font-size:13px;font-weight:800}.door-id-label{color:var(--door-muted);font-size:10px;font-weight:600}.door-id-val{font-weight:700}.door-clipboard{border:2px solid var(--door-ink);color:#78350f;background:#fffbeb;border-radius:10px;flex-direction:column;gap:4px;max-height:140px;padding:8px;display:flex;overflow-y:auto}[data-scheme=dark] .door-clipboard,.dark .door-clipboard{color:#fef3c7;background:#2d2417}.door-clipboard-title{justify-content:space-between;font-size:12px;font-weight:800;display:flex}.door-guestlist-items{grid-template-columns:1fr 1fr;gap:2px 8px;font-size:11px;font-weight:700;display:grid}.door-decision-tools{grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;display:grid}.door-action-btn{border:2px solid var(--door-ink);cursor:pointer;min-height:48px;box-shadow:2px 2px 0 var(--door-ink);border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:800;transition:transform 80ms;display:flex}.door-action-btn:active{box-shadow:none;transform:translate(2px,2px)}.door-btn-reject{background:var(--door-surface);color:var(--door-danger);border-color:var(--door-danger)}.door-btn-allow{background:var(--door-success);color:#1b1726;border-color:var(--door-ink)}.door-btn-share{border:2px solid var(--door-ink);background:var(--door-accent);color:#1b1726;cursor:pointer;min-height:44px;box-shadow:3px 3px 0 var(--door-ink);border-radius:10px;width:100%;padding:8px 16px;font-size:15px;font-weight:800}.door-night-card{border:2px solid var(--door-ink);background:var(--door-surface);text-align:center;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.door-night-title{color:var(--door-accent);font-size:18px;font-weight:900}.door-clipboard-toggle{min-width:48px;min-height:48px;padding:8px 12px!important}@media (max-width:639px){.door-decision-tools{grid-template-columns:1fr 1fr}}@media (max-height:430px){.door-body{gap:4px;padding:4px}.door-sign{gap:2px;padding:4px 8px}.door-arena{gap:4px}.door-guest-view{padding:4px}.door-id-card{gap:3px;padding:4px}.door-id-photo{width:44px;height:62px}}
