:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;--night:#0e131a;--panel:#0f151edb;--line:#d4a94f73;--gold:#d8ae55;--ivory:#ece4d2;--muted:#9aa3ad;--blood:#b8322b;--display:"Cinzel", serif;--text:"Alegreya Sans", system-ui, sans-serif}*{box-sizing:border-box}body{background:var(--night);min-height:100dvh;color:var(--ivory);font:17px/1.4 var(--text);margin:0}body:before{content:"";z-index:-1;background:var(--bg-art,none) center / cover;filter:blur(6px)brightness(.32)saturate(.8);position:fixed;inset:-20px}.phone{max-width:480px;min-height:100dvh;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));flex-direction:column;gap:12px;margin:0 auto;display:flex}h1{font:700 1.35rem/1.2 var(--display);letter-spacing:.05em;color:var(--gold);text-align:center;margin:4px 0 0}h2{font:600 .8rem var(--display);letter-spacing:.12em;color:var(--muted);margin:0 0 6px}.status,.who,.event,button{border:1px solid var(--line);border-radius:4px}.status,.who,.event{background:var(--panel);box-shadow:0 0 0 1px #0009,0 8px 24px #00000073}button,input{width:100%;min-height:48px;font:500 1rem var(--text);padding:10px 14px}button{color:var(--ivory);background:var(--panel);text-align:left;margin-bottom:8px;display:block}button:active:not(:disabled){background:#283444e6}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button[type=submit],button[data-send],button[data-vote=yes],button[data-restart=yes]{font:700 1.02rem var(--display);letter-spacing:.08em;color:#1a1206;background:linear-gradient(#e6c06a,#b98a32);border-color:#f0d58f;box-shadow:0 2px #6e4f16}button[type=submit],button[data-send],button[data-vote],button[data-restart]{text-align:center}button:disabled{opacity:.45}button small{color:var(--muted);margin-top:2px;font-size:.82rem;line-height:1.3;display:block}input{background:var(--ivory);color:#10151c;border:1px solid var(--line);border-radius:4px;margin-top:6px}label{font:600 .85rem var(--display);letter-spacing:.08em;color:var(--muted);display:block}.error{background:var(--blood);border-radius:4px;margin:0;padding:8px 12px}.notice{color:var(--muted)}.glyph{vertical-align:-.22em;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.2em;height:1.2em}.status{justify-content:space-between;gap:6px;padding:8px 12px;font-weight:500;display:flex}.status span{white-space:nowrap}.status .glyph{color:var(--gold)}.who{flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.who.traitor{border-color:var(--blood)}.who b{font:700 1rem var(--display);letter-spacing:.04em}.who small{color:var(--muted);display:block}.who button{width:auto;min-height:40px;color:var(--muted);margin:0 0 0 auto;padding:6px 12px;font-size:.9rem}.who .role{border-top:1px solid var(--line);flex-basis:100%;margin:0;padding-top:6px}.av{border:2px solid var(--gold);object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px}.traitor{color:var(--blood);font-weight:700}button[aria-pressed=true]:not(.card):not([data-role]){border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:#d8ae5529}button[data-pick],button[data-reclaim]{align-items:center;gap:12px;padding:8px 12px;display:flex}button[data-pick] small{margin-left:6px;display:inline}.move{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}.move h2{grid-column:1/-1}.move button{font-size:.95rem}.move button small{font-size:.74rem;line-height:1.25}.event{margin:0;overflow:hidden}.event img{width:100%;height:auto;display:block}.event figcaption{font:700 1.05rem var(--display);letter-spacing:.03em;padding:10px 14px}.need{flex-wrap:wrap;align-items:center;gap:4px 14px;margin:0;display:flex}.need span{white-space:nowrap}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:10px;display:grid}.card{aspect-ratio:5/7;background:linear-gradient(160deg,#e7cf8f,#9c7330),url(/art/ui/stone.jpg) 50%/320px;border:0;border-radius:6px;min-height:0;margin:0;padding:5px;transition:transform .12s ease-out,box-shadow .12s ease-out;position:relative;box-shadow:0 4px 10px #0009}.card .face{background:#141a22;border-radius:3px;position:absolute;inset:5px;overflow:hidden}.card .art{background:50%/cover;position:absolute;inset:0 0 26%}.card .val{width:26px;height:26px;font:700 .95rem var(--display);color:#1a1206;background:radial-gradient(#f3dc9c,#c39a45),url(/art/ui/stone.jpg) 50%/320px;border:1px solid #6e4f16;border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;left:6px}.card .name{height:26%;font:600 .68rem var(--display);letter-spacing:.04em;color:#f6efe0;background:color-mix(in srgb, var(--c) 70%, #000);justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;bottom:0;left:0;right:0}.card .name .glyph{width:1em;height:1em}button.card[aria-pressed=true]{box-shadow:0 0 0 2px var(--gold), 0 0 18px #d8ae558c;transform:translateY(-8px)}@media (prefers-reduced-motion:reduce){.card{transition:none}button.card[aria-pressed=true]{transform:none}}:root{--stone:linear-gradient(#090c119e, #090c11c7), url(/art/ui/stone.jpg) center / 320px}body:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 50% 40%,#0000 45%,#000000bf);position:fixed;inset:0}.status,.who,.event,button:not(.card):not([type=submit]):not([data-send]):not([data-vote=yes]):not([data-restart=yes]):not([data-role]):not([aria-pressed=true]):not(.rules-close){background:var(--stone);outline-offset:-3px;border:2px solid #15181d;border-radius:3px;outline:1px solid #d8ae5561;box-shadow:inset 0 0 18px #000000b3,0 0 0 1px #000,0 8px 22px #0000008c}button[type=submit],button[data-send],button[data-vote=yes],button[data-restart=yes],button[data-role]{text-shadow:0 1px #ffe6aa80;background:linear-gradient(#f0c86ed1,#a07028e0),url(/art/ui/stone.jpg) 50%/320px;border:2px solid #2a1d0a;border-radius:3px;box-shadow:inset 0 1px #ffecb499,inset 0 -2px #50320a99,0 0 0 1px #000,0 3px #4a3310,0 6px 16px #00000080}h1{text-shadow:0 2px #000,0 0 18px #d8ae5559}h1:after,h2:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);width:60%;height:1px;margin:6px auto 0;display:block}h2:after{background:linear-gradient(90deg, var(--line), transparent);width:100%;margin:4px 0 0}.who button[data-role]{color:#1a1206;font:700 .85rem var(--display);letter-spacing:.06em;background:linear-gradient(#f0c86ed1,#a07028e0),url(/art/ui/stone.jpg) 50%/320px;padding:6px 14px}button[aria-pressed=true]:not(.card):not([data-role]){border:2px solid var(--gold);color:var(--gold);background:linear-gradient(90deg, #d8ae5552, #d8ae551a), var(--stone);border-radius:3px;padding-right:40px;font-weight:700;position:relative;box-shadow:inset 0 0 0 1px #f0d58f,0 0 0 1px #000,0 0 16px #d8ae5573,0 8px 22px #0000008c}button[aria-pressed=true]:not(.card):not([data-role]):after{content:"✓";width:22px;height:22px;font:700 .85rem var(--text);color:#1a1206;background:radial-gradient(#f3dc9c,#c39a45),url(/art/ui/stone.jpg) 50%/320px;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;right:12px;transform:translateY(-50%)}button[aria-pressed=true] .av{border-color:#f0d58f;box-shadow:0 0 10px #f0d58fcc}.rules-btn{z-index:5;top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));width:40px;height:40px;min-height:0;color:var(--gold);background:var(--stone);border:2px solid #15181d;border-radius:3px;place-items:center;margin:0;padding:0;display:grid;position:fixed;box-shadow:inset 0 0 0 1px #d8ae5561,0 0 0 1px #000,0 4px 12px #00000080}.rules-btn .glyph{width:22px;height:22px}.phone>:first-child:not(.hero){margin-right:48px}button:focus-visible{outline:2px solid var(--gold)!important;outline-offset:2px!important}.status{padding:8px;font-size:.94rem}.hero{border:2px solid #15181d;border-radius:3px;margin:auto 0 0;position:relative;overflow:hidden;box-shadow:0 0 0 1px #000,0 10px 28px #0009}.hero img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.hero:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #d8ae5573,inset 0 0 30px #0009}.hero figcaption{background:linear-gradient(#0000,#090c11f2);padding:48px 12px 14px;position:absolute;bottom:0;left:0;right:0}.hero h1{margin:0;font-size:1.5rem}.hero h1:after{width:50%}.join{background:var(--stone);outline-offset:-3px;border:2px solid #15181d;border-radius:3px;outline:1px solid #d8ae5561;flex-direction:column;gap:12px;margin-bottom:auto;padding:16px;display:flex;box-shadow:inset 0 0 18px #000000b3,0 0 0 1px #000,0 8px 22px #0000008c}.join input{font:600 1.1rem var(--text);text-align:center;border:2px solid #2a1d0a;box-shadow:inset 0 2px 6px #00000059}.join button{margin:0}.code-input{text-transform:uppercase;letter-spacing:.3em;text-align:center;font:700 1.6rem var(--display,serif)}
