:root{--bg0:#160a02;--bg1:#3a1e05;--accent:#ffd23f;--accent2:#ff8a3f;--good:#34d399;--bad:#fb7185;--elec:#4fd1ff;--ink:#fff6e9;--muted:#cbb89a;--card:#ffffff0f;--card-border:#ffffff29}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}html,body{margin:0;padding:0}body{color:var(--ink);background:radial-gradient(130% 130% at 50% 0%, var(--bg1) 0%, var(--bg0) 65%);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans JP,Meiryo,sans-serif;overflow-x:hidden}.wrap{flex-direction:column;max-width:640px;min-height:100vh;margin:0 auto;padding:14px 14px 28px;display:flex}.center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:15px;padding:16px 6px;display:flex}.logo{letter-spacing:3px;color:var(--muted);font-size:12px}.title{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#0000;filter:drop-shadow(0 4px 14px #ff8a3f4d);-webkit-background-clip:text;background-clip:text;font-size:46px;font-weight:900;line-height:1.1}.lead{color:var(--muted);max-width:400px;font-size:15px;line-height:1.8}.rules{text-align:left;background:var(--card);border:1px solid var(--card-border);border-radius:16px;max-width:420px;padding:16px 18px;font-size:13.5px;line-height:1.85}.rules b{color:var(--accent)}.modes{flex-direction:column;gap:12px;width:100%;max-width:360px;display:flex}.subline{color:var(--muted);font-size:13px;line-height:1.7}.btn{appearance:none;cursor:pointer;color:#2a1402;background:linear-gradient(135deg, var(--accent), var(--accent2));border:none;border-radius:14px;padding:16px 22px;font-family:inherit;font-size:18px;font-weight:800;transition:transform 80ms;box-shadow:0 10px 24px #ff8a3f4d}.btn:active{transform:translateY(2px)scale(.99)}.btn:disabled{opacity:.4}.btn.ghost{color:var(--ink);border:1px solid var(--card-border);box-shadow:none;background:0 0}.hud{gap:10px;margin-bottom:8px;display:flex}.pcard{border:1px solid var(--card-border);background:var(--card);text-align:center;border-radius:14px;flex:1;padding:8px 12px}.pcard.active{border-color:var(--accent);background:#ffd23f1f}.pcard .pn{color:var(--muted);font-size:12px}.pcard .ps{font-variant-numeric:tabular-nums;font-size:26px;font-weight:900}.pcard .pz{letter-spacing:1px;font-size:13px}.turninfo{text-align:center;min-height:20px;margin-bottom:6px;font-size:14px}.turninfo b{color:var(--accent)}.clock{aspect-ratio:1;width:100%;max-width:360px;margin:4px auto 8px;position:relative}.clock .hub{text-align:center;width:38%;color:var(--muted);font-size:12px;line-height:1.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chair{border:2px solid var(--card-border);width:19%;height:19%;color:var(--ink);font-variant-numeric:tabular-nums;cursor:default;background:#ffffff12;border-radius:14px;justify-content:center;align-items:center;font-family:inherit;font-size:22px;font-weight:900;transition:transform 80ms,background .15s,border .15s;display:flex;position:absolute;transform:translate(-50%,-50%)}.chair.selectable{cursor:pointer;border-color:var(--accent);background:#ffd23f24}.chair.selectable:active{transform:translate(-50%,-50%)scale(.92)}.chair.removed{opacity:.18;background:0 0;border-style:dashed}.chair.picked{border-color:var(--elec);background:#4fd1ff40;box-shadow:0 0 0 3px #4fd1ff4d}.chair.trap{border-color:var(--bad);background:#fb71854d;animation:.4s infinite alternate zap}.chair.sat{box-shadow:0 0 0 3px var(--accent)}@keyframes zap{0%{transform:translate(-50%,-50%)scale(1)}to{transform:translate(-50%,-50%)scale(1.12)}}.pass{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:20px;display:flex}.pass .role{letter-spacing:2px;color:var(--muted);font-size:14px}.pass .who{font-size:30px;font-weight:900}.pass .warn{color:var(--bad);font-weight:800}.verdict{text-align:center;min-height:30px;margin:6px 0 10px;font-size:24px;font-weight:900}.verdict.safe{color:var(--good)}.verdict.shock{color:var(--bad)}.actions{justify-content:center;gap:10px;margin-top:8px;display:flex}.bignum{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:74px;font-weight:900;line-height:1;animation:.5s cubic-bezier(.2,1.4,.4,1) pop}.footer{text-align:center;color:var(--muted);margin-top:14px;font-size:11px;line-height:1.6}@keyframes pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}
