:root{--bg:#14121a;--surface:#221f2b;--text:#f1eee8;--muted:#a39fae;--accent:#c8553d;--accent-text:#fff;--error:#ff8a7a;--card-back:#3a2f4a;--card-face:#f1e6cf;--card-face-text:#241d16;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;color:var(--text);margin:0}h1{margin:0 0 .5rem;font-size:1.6rem}h2{margin:0 0 .5rem}p{margin:.4rem 0}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--error)}a{color:inherit}button{font:inherit;background:var(--accent);color:var(--accent-text);cursor:pointer;border:0;border-radius:10px;padding:.85rem 1.2rem;font-weight:600}button:disabled{opacity:.45;cursor:default}button.link{color:var(--muted);background:0 0;padding:.3rem;font-weight:400;text-decoration:underline}input{font:inherit;background:var(--surface);width:100%;color:var(--text);border:1px solid #3c3847;border-radius:10px;margin-top:.3rem;padding:.75rem;font-size:1.1rem}.screen{max-width:440px;padding:max(24px, env(safe-area-inset-top)) 16px 24px;text-align:center;flex-direction:column;justify-content:center;gap:.5rem;min-height:100dvh;margin:0 auto;display:flex}.form{text-align:left;flex-direction:column;gap:.9rem;display:flex}.form h1,.form>.muted{text-align:center}.form label{font-size:.95rem;display:block}.card-area{flex-direction:column;align-items:center;gap:1rem;display:flex}.card{aspect-ratio:2/3;background:var(--card-back);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;border-radius:18px;justify-content:center;align-items:center;width:min(78vw,300px);display:flex;box-shadow:0 10px 30px #00000073}.card-ready{outline:2px solid var(--accent);outline-offset:4px}.card{background-image:repeating-linear-gradient(45deg,#ffffff0a 0 12px,#0000 12px 24px)}.card-revealed{background-image:none}.card-back{border:2px solid #ffffff2e;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:calc(100% - 28px);height:calc(100% - 28px);display:flex}.card-back-mark{color:#ffffff8c;font-size:5rem;font-weight:700;line-height:1}.card-back-label{text-transform:uppercase;letter-spacing:.15em;color:#ffffff8c;font-size:.8rem}.card-revealed{background:var(--card-face);color:var(--card-face-text)}.card-face{padding:1.2rem}.card-face h2{font-size:1.8rem}.card-label{text-transform:uppercase;letter-spacing:.1em;font-size:.8rem}.hint{min-height:3em}.hint-strong{color:var(--text);font-weight:600}.host{max-width:1000px;margin:0 auto;padding:24px 16px}.host-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.host-header h1{margin:0}.badge{background:var(--surface);border-radius:6px;padding:.2rem .6rem;font-size:.85rem}.host-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.qr{background:#fff;border-radius:12px;width:100%;max-width:360px}.player-list{margin:0 0 1rem;padding:0;list-style:none}.player-list li{border-bottom:1px solid var(--surface);flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:.5rem 0;display:flex}.player-list li.presenting{color:var(--accent);font-weight:600}.actions{gap:.3rem;display:flex}.intro{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.presenting-name{font-size:2.5rem;font-weight:700}.screen.night{color:#8a8698;background:#000}.game-header{color:var(--muted);justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.timer{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.game-footer{flex-direction:column;align-items:center;gap:.4rem;margin-top:auto;padding-top:1rem;display:flex}.task{text-align:left;flex-direction:column;gap:.7rem;display:flex}.task h2{text-align:center;font-size:1.35rem}.task h3{margin:.6rem 0 0;font-size:1rem}.targets{flex-direction:column;gap:.45rem;display:flex}button.choice{background:var(--surface);color:var(--text);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;font-weight:500;display:flex}button.choice.selected{background:var(--accent);color:var(--accent-text)}.choice-note{opacity:.8;font-size:.8rem}.screen.night button.choice{color:#b9b4c6;background:#15131b}.screen.night button.choice.selected{color:#fff;background:#5a2a20}.screen.night .task h2{color:#c9c4d6}.big-name{text-align:center;margin:.3rem 0;font-size:2rem;font-weight:700}.night-sleep{opacity:.35;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;font-size:2rem;display:flex}.night-sleep .small{font-size:.85rem}.reveal{text-align:center;align-items:center}.reveal.dead h2{color:var(--error);font-size:2rem}.reveal.alive h2{color:#7bd88f;font-size:2rem}.suspense{letter-spacing:.2em;text-align:center;font-size:4rem;animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.player-grid{grid-template-columns:1fr 1fr;gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.player-grid li{background:var(--surface);border-radius:8px;flex-direction:column;padding:.5rem .6rem;display:flex}.player-grid li.dead{opacity:.55}.player-grid li.dead>span:first-child{text-decoration:line-through}.vote-list{columns:2;color:var(--muted);margin:0;padding:0;font-size:.9rem;list-style:none}.mini-card{background:var(--card-back);text-align:center;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;border-radius:12px;width:100%;padding:.8rem}.mini-card.card-revealed{background:var(--card-face);color:var(--card-face-text)}.overlay{z-index:10;background:#000000d9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.overlay-box{background:var(--surface);text-align:center;border-radius:16px;width:100%;max-width:360px;padding:1.5rem}button.secondary{background:var(--surface);color:var(--text)}button.small-button{padding:.5rem 1rem;font-size:.9rem}.day-action{background:var(--surface);border-radius:12px;flex-direction:column;gap:.5rem;width:100%;padding:.8rem;display:flex}.day-action h3{margin:0;font-size:1rem}.alert{background:#4a1f1a;border-radius:10px;padding:.6rem .8rem}.muted-on-card{opacity:.75;margin-top:.3rem}.day-action button.choice{background:var(--bg)}.pause-banner{color:#ffe2a0;text-align:center;background:#5a4313;border-radius:10px;padding:.6rem .8rem}.card-overlay{z-index:50;pointer-events:none;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.hold-face{background:var(--card-face);width:100%;max-width:420px;max-height:85dvh;color:var(--card-face-text);text-align:center;border-radius:18px;padding:1.5rem;overflow:auto}.wolf-chat{flex-direction:column;gap:.4rem;margin-top:.8rem;display:flex}.wolf-chat h3{margin:0;font-size:1rem}.chat-log{background:#15131b;border-radius:10px;max-height:30dvh;padding:.5rem .7rem;overflow-y:auto}.chat-msg{margin:.2rem 0}.chat-msg.mine{color:#ffb4a6}.chat-form{gap:.4rem;display:flex}.chat-form input{min-width:0;font:inherit;color:var(--text);background:#1b1922;border:1px solid #3a3446;border-radius:10px;flex:1;padding:.7rem}
