:root{--night:#0b0618;--ink:#1b1530;--violet:#5b3cf5;--violet-soft:#a493ff;--paper:#f4f2ff;--mono:ui-monospace, "SF Mono", Menlo, monospace;--sans:system-ui, -apple-system, "Segoe UI", sans-serif}html,body{background:var(--night);height:100%;color:var(--paper);margin:0;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;font-family:var(--sans);position:fixed;inset:0}#ui button,#ui a,#ui .bubble{pointer-events:auto}.screen{padding:32px 24px calc(32px + env(safe-area-inset-bottom));background:var(--night);pointer-events:auto;text-align:center;flex-direction:column;justify-content:center;gap:18px;display:flex;position:absolute;inset:0}.brand{font:600 56px/1 var(--mono);letter-spacing:-1px}.brand .caret{color:var(--violet);animation:1s step-end infinite blink}.brand small{color:var(--violet-soft);letter-spacing:2px;margin-top:12px;font-size:12px;font-weight:400;display:block}.lead{margin:8px 0;font-size:18px;line-height:1.4}.note{font:12px var(--mono);color:var(--violet-soft)}.screen.error{text-align:left}.screen.error h2{margin:12px 0 0;font-size:24px}.screen.error p{margin:0;line-height:1.45}.qr{background:#fff;border-radius:12px;width:200px;height:200px;padding:8px}.btn{font:600 15px var(--sans);color:var(--paper);border:1px solid var(--violet-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1b1530d1;border-radius:999px;padding:12px 18px;text-decoration:none}.btn.primary{background:var(--violet);border-color:var(--violet)}.btn.big{align-self:center;padding:16px 28px;font-size:18px}.hint.top{top:calc(16px + env(safe-area-inset-top));text-align:center;font:14px var(--mono);background:#0b0618b3;border-radius:12px;margin:0;padding:10px 14px;position:absolute;left:16px;right:16px}.scan-frame{border:2px dashed var(--violet-soft);border-radius:18px;width:62vw;height:86.8vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #0b061859}.bottom{padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(#0000,#0b0618d9 40%);flex-direction:column;gap:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.subtitle{text-align:center;white-space:pre-line;text-shadow:0 1px 3px #000;margin:0;font-size:17px;line-height:1.35}.controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.bubble{top:calc(70px + env(safe-area-inset-top));font:15px var(--sans);color:var(--ink);border:2px solid var(--violet);background:#fff;border-radius:16px;padding:12px 16px;position:absolute;left:16px;right:16px}.bubble.choice{text-align:center;pointer-events:auto;flex-direction:column;gap:10px;display:flex}.bubble.choice p{margin:0;font-weight:600}.bubble.choice .btn{color:var(--ink);border-color:var(--violet);background:#f1edff}.sim-panel{z-index:10;font:11px var(--mono);color:#fff;background:#0009;border-radius:8px;grid-template-columns:repeat(6,auto);gap:3px;padding:6px;display:grid;position:fixed;top:8px;right:8px}.sim-panel button{font:inherit;padding:2px 4px}.sim-panel strong,.sim-panel .wide{grid-column:1/-1}@keyframes blink{50%{opacity:0}}
