@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-700.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-900.woff2)format("woff2");font-weight:900;font-display:swap}:root{--bg:#05070e;--bg-2:#0a0f1b;--elev:#101725;--elev-2:#161f31;--gold:#e3bd77;--gold-hi:#f8e3ba;--gold-dim:#a8874d;--gold-line:#e3bd7742;--gold-glow:#e3bd7759;--mafia:#ff3b46;--mafia-glow:#ff3b4673;--citizen:#45a9ff;--citizen-glow:#45a9ff66;--indep:#ffc046;--indep-glow:#ffc04666;--ok:#3ddc97;--text:#eaf0fb;--muted:#8e9bb5;--dim:#5a6580;--line:#8ca5d221;--glass-hi:#1a2439bd;--glass-lo:#090e19cc;--glass-row-hi:#182135e6;--glass-row-lo:#090e19ed;--glass-blur:blur(18px) saturate(140%);--glass-edge:inset 0 1px 0 #ffffff0d;--radius:18px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--tap:48px;--tap-sm:40px;--tap-xs:32px;--ease:cubic-bezier(.2, .8, .3, 1);--spring:cubic-bezier(.3, 1.5, .5, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{color:var(--text);overscroll-behavior-y:none;margin:0;padding:0;font-family:Vazirmatn,Segoe UI,Tahoma,sans-serif}html{background:var(--bg)}body{font-size:15px;line-height:1.8}#root{min-height:100dvh}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}.ambient{z-index:-1;pointer-events:none;background:radial-gradient(1200px 620px at 78% -8%,#45a9ff1a,#0000 62%),radial-gradient(900px 520px at 12% 4%,#ff3b461c,#0000 60%),radial-gradient(1100px 700px at 50% 108%,#e3bd7712,#0000 66%),linear-gradient(#070b16 0%,#05070e 55%,#04060c 100%);position:fixed;inset:0;overflow:hidden}.ambient:before{content:"";opacity:.75;background-image:radial-gradient(1.4px 1.4px at 20% 30%,#ffffff8c,#0000),radial-gradient(1.2px 1.2px at 65% 12%,#fff6,#0000),radial-gradient(1.6px 1.6px at 82% 46%,#e3bd7780,#0000),radial-gradient(1px 1px at 38% 68%,#ffffff59,#0000),radial-gradient(1.3px 1.3px at 9% 76%,#ffffff4d,#0000),radial-gradient(1.1px 1.1px at 54% 88%,#45a9ff73,#0000),radial-gradient(1.5px 1.5px at 91% 84%,#ffffff4d,#0000);background-size:320px 320px;animation:90s linear infinite drift;position:absolute;inset:-50%}.ambient:after{content:"";top:-220px;filter:blur(24px);background:radial-gradient(circle,#e3bd7724,#0000 68%);border-radius:50%;width:520px;height:520px;animation:11s ease-in-out infinite breathe;position:absolute;inset-inline-end:-160px}.skyline{inset-inline:0;width:100%;height:min(38dvh,300px);display:block;position:absolute;bottom:0}.haze-top{stop-color:#45a9ff;stop-opacity:0}.haze-mid{stop-color:#45a9ff;stop-opacity:.1}.haze-low{stop-color:#e3bd77;stop-opacity:.24}.app.is-night .haze-mid{stop-color:#b98cff;stop-opacity:.13}.app.is-night .haze-low{stop-color:#ff3b46;stop-opacity:.24}.sky-rim{fill:var(--gold);opacity:.24}.sky-far .sky-rim{fill:#9fd0ff;opacity:.16}.app.is-night .sky-rim{fill:#ff6169;opacity:.24}.app.is-night .sky-far .sky-rim{fill:#c9a6ff;opacity:.22}.sky-far{filter:blur(.8px)}.sky-far .sky-block{fill:#0b1322}.sky-near .sky-block{fill:#04070e}.sky-win{fill:var(--gold);opacity:.52}.sky-far .sky-win{fill:#9fd0ff;opacity:.3}.sky-win.flick{animation:9s step-end infinite winFlick}@keyframes winFlick{0%,46%,52%,to{opacity:.52}48%,50%{opacity:.05}}.app.is-night .sky-win{fill:#ff6169;opacity:.44;transition:fill .9s}.app.is-night .sky-far .sky-win{fill:#c9a6ff;opacity:.28}@keyframes drift{to{transform:translate(-320px,-320px)}}@keyframes breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.95;transform:scale(1.12)}}.app{flex-direction:column;max-width:640px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.topbar{z-index:40;padding:calc(var(--safe-t) + 13px) 16px 13px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#05070ef0,#05070eb8);align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar:after{content:"";inset-inline:16px;background:linear-gradient(90deg, transparent, var(--gold-line) 22%, var(--gold-line) 78%, transparent);height:1px;position:absolute;bottom:0}.topbar h1{letter-spacing:-.2px;min-width:0;color:var(--gold-hi);flex:1;margin:0;font-size:17px;font-weight:800}.home-btn{padding-inline:10px;font-size:11.5px}.topbar .sub{color:var(--muted);font-size:12px;font-weight:400}.icon-btn{width:var(--tap-sm);height:var(--tap-sm);background:linear-gradient(160deg, var(--elev-2), var(--elev));border:1px solid var(--line);color:var(--text);transition:transform .16s var(--spring), border-color .2s, box-shadow .2s, color .2s;border-radius:13px;flex:none;place-items:center;font-size:17px;line-height:1;display:grid}.icon-btn:hover{border-color:var(--gold-line)}.icon-btn:active{transform:scale(.88);box-shadow:inset 0 2px 8px #00000080}.icon-btn:disabled{opacity:.32;pointer-events:none}.page{padding:16px 16px calc(28px + var(--safe-b));flex-direction:column;flex:1;gap:14px;display:flex}.page>*{animation:rise .45s var(--ease) both}.page>:first-child{animation-delay:20ms}.page>:nth-child(2){animation-delay:60ms}.page>:nth-child(3){animation-delay:.1s}.page>:nth-child(4){animation-delay:.14s}.page>:nth-child(5){animation-delay:.18s}.page>:nth-child(n+6){animation-delay:.22s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.card{background:linear-gradient(158deg, var(--glass-hi), var(--glass-lo));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--glass-edge), 0 20px 50px -36px #000000f2;padding:16px;position:relative;overflow:hidden}.card:before{content:"";inset-inline:14%;background:linear-gradient(90deg,#0000,#e3bd7766,#0000);height:1px;position:absolute;top:0}.card.tight{padding:13px 15px}.section-title{color:var(--gold);letter-spacing:.4px;align-items:center;gap:9px;margin:8px 2px -2px;font-size:12.5px;font-weight:800;display:flex}.section-title:after{content:"";background:linear-gradient(90deg, var(--gold-line), transparent);flex:1;height:1px}.btn{min-height:var(--tap);background:linear-gradient(160deg, var(--elev-2), var(--elev));border:1px solid var(--line);width:100%;transition:transform .16s var(--spring), border-color .2s, box-shadow .25s, background .25s;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:15px;font-weight:700;line-height:1.4;display:inline-flex;position:relative;overflow:hidden}.btn:hover{border-color:var(--gold-line)}.btn:active{transform:scale(.975)}.btn:disabled{opacity:.38;pointer-events:none;box-shadow:none}.btn.primary:after,.btn.gold:after{content:"";pointer-events:none;background:linear-gradient(#ffffff29,#0000 46%);position:absolute;inset:0}.btn.primary{color:#fff;box-shadow:0 10px 30px -12px var(--mafia-glow), inset 0 1px 0 #ffffff38;background:linear-gradient(150deg,#ff4d57,#c1262f 62%,#8e1b22);border-color:#ff788080}.btn.gold{color:#2a1e08;box-shadow:0 10px 30px -12px var(--gold-glow), inset 0 1px 0 #fff6;background:linear-gradient(150deg,#f0d095,#cfa353 58%,#a07c37);border-color:#f8e3ba8c}.btn.outline{background:color-mix(in srgb, var(--tint,var(--gold)) 10%, #05081099);border-color:color-mix(in srgb, var(--tint,var(--gold)) 45%, transparent);color:var(--tint,var(--gold))}.btn.danger{--tint:var(--mafia);color:#ff9096;background:#ff3b461f;border-color:#ff3b4666}.btn.ghost{color:var(--muted);box-shadow:none;background:0 0;border-color:#0000;font-weight:500}.btn.ghost:hover{color:var(--gold)}.btn.sm{min-height:var(--tap-sm);border-radius:12px;width:auto;padding:8px 15px;font-size:13.5px}.btn.block{width:100%}.mini{min-height:var(--tap-xs);border:1px solid var(--line);color:var(--muted);white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .15s var(--spring), color .2s, border-color .2s;background:#050810b8;border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.mini:hover{color:var(--gold);border-color:var(--gold-line)}.mini:active{transform:scale(.94)}.mini:disabled{opacity:.4;pointer-events:none}.mini.danger{color:#ff7a84;border-color:#ff7a844d}.mini.danger:hover{color:#ff7a84;border-color:var(--mafia)}.mini.on{color:var(--gold-hi);border-color:var(--gold);background:#e3bd771f}.row{align-items:center;gap:10px;display:flex}.row.between{justify-content:space-between}.grow{flex:1;min-width:0}.btn-row{align-items:stretch;gap:8px;display:flex}.btn-row>.btn{text-align:center;overflow-wrap:anywhere;flex:1 1 0;width:auto;min-width:0;padding-inline:10px}.input{border:1px solid var(--line);background:#050810b8;border-radius:13px;outline:none;width:100%;padding:13px 15px;transition:border-color .2s,box-shadow .25s}.input::placeholder{color:var(--dim)}.input:focus{border-color:var(--gold-line);box-shadow:0 0 0 3px #e3bd771a}.chip{border:1px solid var(--line);color:var(--muted);white-space:nowrap;transition:transform .16s var(--spring), border-color .2s, color .2s, box-shadow .25s;background:#0a0f1bcc;border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}button.chip{min-height:var(--tap-xs)}button.chip:active{transform:scale(.93)}.muted{color:var(--muted)}.dim{color:var(--dim)}.tiny{font-size:12px}.num{font-variant-numeric:tabular-nums}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}}.fade-up{animation:fadeUp .34s var(--ease) both}@keyframes pop{0%{opacity:0;transform:scale(.86)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.btn:before,.pick:before,.mini:before,.icon-btn:before,.target:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(circle,currentColor,#0000 62%);position:absolute;inset:0;transform:scale(.4)}.btn:active:before,.pick:active:before,.mini:active:before,.icon-btn:active:before,.target:active:before{animation:ripple .42s var(--ease)}@keyframes ripple{0%{opacity:.22;transform:scale(.4)}to{opacity:0;transform:scale(1)}}.pick,.mini,.icon-btn,.target{position:relative;overflow:hidden}.flash{animation:flashPulse .48s var(--spring)}@keyframes flashPulse{0%{transform:scale(1)}38%{filter:brightness(1.5);transform:scale(1.22)}to{transform:scale(1)}}@keyframes stamp{0%{opacity:0;transform:scale(1.9)rotate(-14deg)}55%{opacity:1;transform:scale(.92)rotate(3deg)}to{opacity:1;transform:scale(1)rotate(0)}}.bar>div:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80,#0000);animation:2.6s ease-in-out infinite barShine;position:absolute;inset:0;transform:translate(-100%)}@keyframes barShine{0%,55%{transform:translate(-100%)}95%,to{transform:translate(320%)}}.guide-steps li{animation:rise .4s var(--ease) both}.guide-steps li:nth-child(2){animation-delay:50ms}.guide-steps li:nth-child(3){animation-delay:.1s}.guide-steps li:nth-child(4){animation-delay:.15s}.guide-steps li:nth-child(n+5){animation-delay:.2s}.scenario-bar{top:calc(var(--safe-t) + 66px);z-index:35;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:linear-gradient(#05070ee6,#05070e9e);flex-wrap:wrap;align-items:center;gap:10px;padding:7px 16px;display:flex;position:sticky}.scenario-name{color:var(--gold);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:800;overflow:hidden}.guide{border:1px solid var(--gold-line);border-radius:var(--radius);-webkit-backdrop-filter:var(--glass-blur);background:linear-gradient(158deg,#2e251480,#0b0e18b8);padding:13px 15px 14px}.guide-head{color:var(--gold-hi);align-items:center;gap:9px;font-size:13.5px;display:flex}.guide-mark{border:1px solid var(--gold-line);width:22px;height:22px;color:var(--gold);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.guide-steps{counter-reset:g;flex-direction:column;gap:7px;margin:10px 0 0;padding:0;list-style:none;display:flex}.guide-steps li{counter-increment:g;color:#d8ceb8;padding-inline-start:26px;font-size:12.8px;line-height:1.95;position:relative}.guide-steps li:before{content:counter(g);inset-inline-start:0;width:18px;height:18px;color:var(--gold);background:#e3bd7724;border-radius:6px;place-items:center;font-size:10.5px;font-weight:800;display:grid;position:absolute;top:4px}.next-step{--tone:var(--citizen);background:color-mix(in srgb, var(--tone) 11%, #060911b8);border:1px solid color-mix(in srgb, var(--tone) 38%, transparent);color:color-mix(in srgb, var(--tone) 72%, #fff);-webkit-backdrop-filter:var(--glass-blur);border-radius:14px;align-items:center;gap:10px;padding:11px 14px;font-size:13.2px;line-height:1.8;display:flex}.next-step.ok{--tone:var(--ok)}.next-step.warn{--tone:var(--gold)}.next-step.danger{--tone:var(--mafia)}.next-dot{background:var(--tone);width:8px;height:8px;box-shadow:0 0 10px var(--tone);border-radius:50%;flex:none}.scroll-x{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.scroll-x::-webkit-scrollbar{display:none}@media (prefers-reduced-motion:reduce){*,.ambient:before,.ambient:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.rcard{text-align:right;border:1px solid var(--line);transition:transform .2s var(--spring), border-color .25s, box-shadow .3s;background:linear-gradient(158deg,#161f31f2,#080c16fa);border-radius:16px;width:100%;display:flex;position:relative;overflow:hidden}.rcard:hover{border-color:color-mix(in srgb, var(--team) 45%, transparent);box-shadow:0 10px 34px -18px var(--team-glow)}.rcard:active{transform:scale(.972)}.rcard.selected{border-color:var(--team);box-shadow:0 0 0 1px var(--team), 0 12px 40px -16px var(--team-glow)}.rcard-rim{border-radius:inherit;pointer-events:none;background:linear-gradient(160deg, color-mix(in srgb, var(--team) 15%, transparent), transparent 46%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.rcard.selected .rcard-rim{opacity:1}.rcard-art{background:#05070e;flex:none;position:relative;overflow:hidden}.rcard-art img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease);display:block}.rcard:hover .rcard-art img{transform:scale(1.07)}.rcard-noart{width:100%;height:100%;color:var(--team);background:radial-gradient(circle, color-mix(in srgb, var(--team) 16%, transparent), transparent 70%);place-items:center;font-size:26px;font-weight:900;display:grid}.rcard-veil{background:linear-gradient(270deg,#080c16e6,#0000 62%);position:absolute;inset:0}.rcard-count{top:6px;color:#fff;background:var(--team);min-width:22px;height:22px;box-shadow:0 0 14px var(--team-glow);border-radius:8px;place-items:center;padding:0 6px;font-size:12px;font-weight:800;display:grid;position:absolute;inset-inline-start:6px}.rcard-body{flex-direction:column;flex:1;justify-content:center;gap:3px;min-width:0;padding:10px 12px;display:flex}.rcard-titlerow{justify-content:space-between;align-items:center;gap:8px;display:flex}.rcard-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:800;overflow:hidden}.rcard-meta{color:var(--dim);align-items:center;gap:7px;font-size:11px;display:flex}.rcard-team{color:var(--team);text-shadow:0 0 12px var(--team-glow);font-weight:700}.rcard-dotsep{background:var(--dim);border-radius:50%;flex:none;width:3px;height:3px}.rcard-wake{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rcard.tile .rcard-art{width:74px;height:74px}.rcard.hero{border-width:2px;border-color:var(--team);box-shadow:0 0 0 1px color-mix(in srgb, var(--team) 30%, transparent), 0 24px 60px -24px var(--team-glow);border-radius:22px;flex-direction:column}.rcard.hero .rcard-art{aspect-ratio:1;width:100%}.rcard.hero .rcard-veil{background:linear-gradient(#0000 48%,#080c16f5)}.rcard.hero .rcard-body{z-index:1;gap:6px;margin-top:-46px;padding:0 18px 18px}.rcard.hero .rcard-name{color:var(--team);text-shadow:0 0 26px var(--team-glow);white-space:normal;font-size:27px;font-weight:900}.rcard.hero .rcard-titlerow{flex-direction:column;align-items:flex-start;gap:4px}.rcard-ability{color:var(--muted);max-height:132px;margin:6px 0 0;font-size:13px;line-height:2;overflow-y:auto}.power{flex:none;gap:3px;display:inline-flex}.power i{background:#8ca5d238;border-radius:50%;width:6px;height:6px;transition:background .25s,box-shadow .25s}.power i.on{background:var(--team,var(--gold));box-shadow:0 0 8px var(--team-glow,var(--gold-glow))}.sheet-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020409c2;justify-content:center;align-items:flex-end;animation:.2s both bgIn;display:flex;position:fixed;inset:0}@keyframes bgIn{0%{opacity:0}}@keyframes sheetIn{0%{opacity:0;transform:translateY(30px)}}.sheet{border:1px solid var(--line);width:100%;max-width:640px;height:97dvh;animation:sheetIn .3s var(--ease) both;box-shadow:0 -20px 70px -20px var(--team-glow,#000c);background:linear-gradient(#0d1220,#06090f);border-bottom:none;border-radius:26px 26px 0 0;flex-direction:column;display:flex;overflow:hidden}.sheet:before{content:"";z-index:3;background:#ffffff2e;border-radius:99px;width:42px;height:4px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.rs-hero{aspect-ratio:1;flex:none;max-height:56dvh;position:relative;overflow:hidden}.rs-hero-img{object-fit:cover;object-position:center 12%;width:100%;height:100%;animation:14s ease-in-out infinite alternate kenburns}@keyframes kenburns{0%{transform:scale(1)}to{transform:scale(1.09)}}.rs-hero-fade{background:linear-gradient(to top, #0d1220 4%, #0d122026 62%), linear-gradient(to left, color-mix(in srgb, var(--team) 22%, transparent), transparent 60%);position:absolute;inset:0}.rs-close{top:14px;z-index:4;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050810d1;border-color:#ffffff57;font-size:18px;position:absolute;inset-inline-end:14px;box-shadow:0 6px 20px -6px #000000e6}.rs-close:hover{background:var(--mafia);border-color:var(--mafia)}.rs-done{margin-top:16px}.rs-hero-text{inset-inline:18px;z-index:2;position:absolute;bottom:14px}.rs-hero-text h2{color:var(--team);text-shadow:0 0 30px var(--team-glow), 0 2px 12px #000000b3;margin:5px 0 0;font-size:30px;font-weight:900}.team-chip{color:var(--team);border-color:color-mix(in srgb, var(--team) 50%, transparent);background:color-mix(in srgb, var(--team) 12%, #050810b3)}.sheet-body{padding:14px 16px calc(22px + var(--safe-b));-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.rs-wake{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:7px;padding-bottom:12px;display:flex}.rs-waketext{color:var(--muted);font-size:12px}.rs-block{border-bottom:1px solid #8ca5d214;padding:14px 0}.rs-block:last-child{border-bottom:none}.rs-block h4{letter-spacing:.3px;align-items:center;gap:8px;margin:0 0 7px;font-size:12.5px;font-weight:800;display:flex}.rs-block h4:before{content:"";background:currentColor;border-radius:99px;width:3px;height:13px;box-shadow:0 0 10px}.rs-block p{color:var(--text);margin:0;font-size:14px;line-height:2.1}.rs-block ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rs-block li{color:var(--muted);padding-inline-start:16px;font-size:13.3px;line-height:1.95;position:relative}.rs-block li:before{content:"";inset-inline-start:4px;opacity:.55;background:currentColor;border-radius:50%;width:5px;height:5px;position:absolute;top:12px}.rs-block.ability h4{color:var(--gold)}.rs-block.god h4{color:#b98cff}.rs-block.god li{color:#cdb6ff}.rs-block.strong h4{color:var(--ok)}.rs-block.weak h4{color:#ff7a84}.rs-block.note h4{color:var(--citizen)}.hero{text-align:center;padding:26px 12px 10px}.hero-badge{border:1px solid var(--gold-line);width:96px;height:96px;box-shadow:0 0 46px -12px var(--gold-glow), inset 0 0 30px #e3bd7714;background:radial-gradient(circle at 50% 35%,#e3bd7733,#0000 68%);border-radius:50%;place-items:center;margin:0 auto;animation:5.5s ease-in-out infinite haloBreathe;display:grid}@keyframes haloBreathe{0%,to{box-shadow:0 0 40px -14px var(--gold-glow), inset 0 0 26px #e3bd770f}50%{box-shadow:0 0 66px -10px var(--gold-glow), inset 0 0 38px #e3bd7724}}.hero-mask{filter:drop-shadow(0 6px 20px #e3bd7766);font-size:44px}.display{letter-spacing:8px;background:linear-gradient(180deg, var(--gold-hi), var(--gold) 45%, var(--gold-dim));color:#0000;text-shadow:0 0 40px #e3bd7747;-webkit-background-clip:text;background-clip:text;margin:14px 0 2px;font-size:42px;font-weight:900}.hero-sub{color:var(--muted);letter-spacing:2px;font-size:12.5px}.home-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.home-tile{background:linear-gradient(158deg, var(--glass-hi), var(--glass-lo));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);border-radius:var(--radius);text-align:right;transition:transform .18s var(--spring), border-color .25s, box-shadow .3s;flex-direction:column;gap:3px;padding:18px 15px;display:flex;position:relative;overflow:hidden}.home-tile:before{content:"";inset-inline:18%;background:linear-gradient(90deg,#0000,#8ca5d259,#0000);height:1px;position:absolute;top:0}.home-tile:active{transform:scale(.965)}.home-tile:disabled{opacity:.36;pointer-events:none}.home-tile.gold{border-color:var(--gold-line);box-shadow:0 12px 40px -22px var(--gold-glow)}.home-tile.gold:before{background:linear-gradient(90deg, transparent, var(--gold), transparent)}.home-tile.gold strong{color:var(--gold-hi)}.tile-icon{margin-bottom:5px;font-size:25px}.home-start{flex-direction:column;gap:2px;padding-block:15px;font-size:17px}.home-start .tiny{opacity:.75;font-weight:600}.scen-list{flex-direction:column;gap:8px;display:flex}.scen-card{text-align:right;background:linear-gradient(158deg, var(--glass-row-hi), var(--glass-row-lo));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);transition:transform .15s var(--spring), border-color .2s, box-shadow .25s;border-radius:15px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.scen-card:active{transform:scale(.985)}.scen-card.market{border-color:#3ddc974d}.scen-card.market:hover{box-shadow:0 0 24px -10px #3ddc9780}.scen-head{align-items:center;gap:8px;font-size:15px;display:flex}.scen-count{color:var(--gold);flex:none;font-size:11.5px}.scen-rule{color:var(--ok);opacity:.9}.scen-norule{color:var(--gold);opacity:.8}.scen-title{color:var(--gold-hi);font-size:18px}.scen-link{color:var(--citizen);margin-top:8px;text-decoration:underline;display:inline-block}.scen-roles{flex-wrap:wrap;gap:6px;display:flex}.scen-role{min-height:var(--tap-xs);color:var(--team);background:color-mix(in srgb, var(--team) 10%, #050810b3);border:1px solid color-mix(in srgb, var(--team) 34%, transparent);border-radius:10px;align-items:center;gap:5px;padding:5px 11px;font-size:13px;display:inline-flex}.scen-role-name{font-weight:600}.wake-preview{color:var(--muted);flex-direction:column;gap:4px;margin:0;padding-inline-start:22px;font-size:13px;display:flex}.wake-preview li::marker{color:var(--gold);font-weight:800}.count-big{text-align:center;min-width:54px;color:var(--gold-hi);font-size:27px;font-weight:900}.range{width:100%;accent-color:var(--mafia);margin:14px 0 10px}.ratio-bar{gap:4px;height:34px;font-size:12px;font-weight:700;display:flex}.ratio{white-space:nowrap;min-width:0;transition:flex .35s var(--ease);border-radius:10px;place-items:center;display:grid;overflow:hidden}.ratio.mafia{color:#ff9096;background:#ff3b4629;box-shadow:inset 0 0 20px #ff3b4624}.ratio.citizen{color:#8fcaff;background:#45a9ff24;box-shadow:inset 0 0 20px #45a9ff1f}.preset{background:linear-gradient(158deg, var(--glass-hi), var(--glass-lo));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);text-align:right;transition:transform .16s var(--spring), border-color .25s;border-radius:13px;flex-direction:column;flex:none;gap:2px;padding:10px 15px;display:flex}.preset:hover{border-color:var(--gold-line)}.preset:active{transform:scale(.95)}.preset.derived{border-style:dashed}.preset-title{align-items:center;gap:7px;display:flex}.origin-tag{opacity:.75;border:1px solid;border-radius:99px;padding:1px 7px;font-size:9.5px;font-weight:700}.origin-tag.book{color:var(--gold)}.origin-tag.derived{color:var(--muted)}.origin-tag.saved{color:var(--citizen)}.origin-tag.market{color:var(--ok)}.preset.market{border-color:#3ddc9752}.preset-rule{color:var(--ok);opacity:.85}.rules-card{border-color:#3ddc9742}.rules-list{grid-template-columns:auto 1fr;gap:5px 12px;margin:11px 0 0;font-size:12.3px;line-height:1.85;display:grid}.rules-list dt{color:var(--dim);white-space:nowrap}.rules-list dd{color:var(--text);margin:0}.rules-special{border-top:1px solid var(--line);margin-top:11px;padding-top:10px}.rules-special summary{cursor:pointer}.rules-special p{color:var(--muted);margin:8px 0 0;line-height:2}.preset.saved{gap:0;padding:0}.preset.saved.other{opacity:.62}.preset-load{text-align:right;flex-direction:column;gap:2px;width:100%;padding:10px 15px 4px;display:flex}.preset-acts{gap:6px;padding:0 15px 9px;display:flex}.preset-acts>.mini,.role-slot-acts>.mini{flex:1 1 0}.save-form{border:1px solid var(--gold-line);background:#05081080;border-radius:14px;flex-direction:column;gap:9px;margin-bottom:12px;padding:12px;display:flex}.chip.active{border-color:var(--gold);color:var(--gold-hi);box-shadow:0 0 16px -4px var(--gold-glow);background:#e3bd771a}.chip.ok{border-color:var(--ok);color:var(--ok);box-shadow:0 0 16px -4px #3ddc9780}.team-head{text-shadow:0 0 14px;font-weight:800}.picked-list{flex-direction:column;gap:11px;display:flex}.picked-chip{background:color-mix(in srgb, var(--team) 10%, #050810cc);border:1px solid color-mix(in srgb, var(--team) 35%, transparent);transition:transform .15s var(--spring);border-radius:10px;align-items:center;gap:6px;padding:6px 11px;font-size:13px;display:inline-flex}.picked-chip:active{transform:scale(.93)}.picked-chip .x{color:var(--dim);font-size:11px}.warn{color:#ffd47e;background:#ffc04612;border:1px solid #ffc0463d;border-radius:12px;margin-top:12px;padding:10px 13px;font-size:12.5px;line-height:1.95}.warn.combo{background:color-mix(in srgb, var(--lvl) 8%, transparent);border-color:color-mix(in srgb, var(--lvl) 34%, transparent);color:var(--lvl);margin-top:8px}.balance-row{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:14px;padding-top:14px;display:flex}@media (width<=400px){.balance-row{flex-direction:column;align-items:stretch}.balance-facts{flex-direction:row;justify-content:space-around}}.tri-wrap{flex:1;min-width:0}.tri{width:100%;height:auto;display:block}.tri-dot{filter:drop-shadow(0 0 8px var(--gold));animation:3.4s ease-in-out infinite dotPulse}@keyframes dotPulse{0%,to{r:5;opacity:.85}50%{r:7;opacity:1}}.tri-halo{animation:3.4s ease-in-out infinite haloPulse}@keyframes haloPulse{50%{opacity:.55}}.tri-vertex{filter:drop-shadow(0 0 6px)}.tri-label-name{font-size:11px;font-weight:800}.tri-label-num{opacity:.72;font-size:10px;font-weight:700}.scale{padding:6px 0 0;position:relative}.scale-beam{transform:rotate(var(--tilt,0deg));transform-origin:50% 100%;transition:transform .55s var(--spring);justify-content:center;align-items:center;gap:10px;display:flex}.scale-pan{--tone:var(--citizen);background:color-mix(in srgb, var(--tone) 12%, #05081099);border:1px solid color-mix(in srgb, var(--tone) 36%, transparent);border-radius:13px;flex-direction:column;flex:1;align-items:center;gap:1px;min-width:0;padding:9px 6px;display:flex}.scale-pan.mafia{--tone:var(--mafia)}.scale-pan b{color:var(--tone);font-size:21px;font-weight:900;line-height:1.2}.scale-pan span{color:var(--muted);font-size:11px}.scale-pan i{color:var(--dim);font-size:10.5px;font-style:normal}.scale-pivot{background:var(--gold);width:10px;height:10px;box-shadow:0 0 14px var(--gold-glow);border-radius:50%;flex:none}.scale-stand{background:linear-gradient(var(--gold-line), transparent);width:2px;height:14px;margin:0 auto}.scale-track{background:#45a9ff29;border-radius:99px;height:7px;margin-top:4px;position:relative;overflow:hidden}.scale-fill{background:linear-gradient(90deg, #ff7a84, var(--mafia));height:100%;box-shadow:0 0 12px var(--mafia-glow);transition:width .5s var(--ease);border-radius:99px}.scale-ideal{background:var(--gold-hi);width:2px;box-shadow:0 0 8px var(--gold-glow);position:absolute;top:-3px;bottom:-3px}.scale-verdict{text-align:center;color:var(--gold);margin-top:7px;font-size:11.5px;font-weight:700}.scale-verdict.ok{color:var(--ok)}.balance-facts{text-align:center;flex-direction:column;flex:none;gap:10px;display:flex}.balance-facts>div{flex-direction:column;display:flex}.balance-facts b{color:var(--gold-hi);font-size:19px}.role-grid{grid-template-columns:1fr;gap:9px;display:grid}@media (width>=520px){.role-grid{grid-template-columns:1fr 1fr}}.role-slot{position:relative}.role-slot-acts{bottom:8px;gap:6px;display:flex;position:absolute;inset-inline-start:10px}.cta-bar{z-index:30;margin:4px -16px calc(-28px - var(--safe-b));padding:14px 16px calc(14px + var(--safe-b));background:linear-gradient(to top, var(--bg) 58%, transparent);position:sticky;bottom:0}.name-list{flex-direction:column;gap:8px;display:flex}.seat{border:1px solid var(--line);width:30px;height:30px;color:var(--dim);background:#050810b3;border-radius:9px;flex:none;place-items:center;font-size:12px;display:grid}.center-page{text-align:center;justify-content:center;align-items:center;gap:14px}.cover-page{position:relative}.cover-moon{background:radial-gradient(circle at 36% 32%,#fdf6e3,#ded3b6 60%,#a89d80);border-radius:50%;width:84px;height:84px;margin-bottom:6px;animation:7s ease-in-out infinite haloBreathe;box-shadow:0 0 70px 8px #fdf6e329}.cover-title{color:var(--muted);margin:0;font-size:15px;font-weight:500}.cover-name{color:var(--gold-hi);text-shadow:0 0 34px var(--gold-glow);font-size:34px;font-weight:900;line-height:1.4}.confirm-q{margin:0;font-size:25px;font-weight:800;line-height:1.6}.deal-page{justify-content:center;align-items:center;gap:18px}.flip{aspect-ratio:3/4.4;perspective:1500px;cursor:pointer;width:100%;max-width:330px}.flip-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .72s cubic-bezier(.3,1.35,.4,1);position:relative}.flip.is-flipped .flip-inner{transform:rotateY(180deg)}.flip-face{backface-visibility:hidden;border:1px solid var(--line);border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0;overflow:hidden}.flip-face.back{background:linear-gradient(150deg,#131a2a,#070b14);padding:22px}.back-art{place-items:center;width:124px;height:124px;display:grid;position:relative}.back-ring{border:2px dashed var(--gold-line);border-radius:50%;animation:16s linear infinite spin;position:absolute;inset:0}@keyframes spin{to{transform:rotate(360deg)}}.back-mark{color:var(--gold);text-shadow:0 0 30px var(--gold-glow);font-size:48px;font-weight:900}.flip-face.front{border:2px solid var(--team);box-shadow:inset 0 0 60px -20px var(--team-glow);justify-content:flex-end;transform:rotateY(180deg)}.flip-img{object-fit:cover;object-position:center 20%;width:100%;height:100%;position:absolute;inset:0}.flip-veil{background:linear-gradient(#0000,#05070e40 42%,#05070e 88%);position:absolute;inset:0}.flip-text{z-index:1;text-align:center;width:100%;padding:20px;position:relative}.flip-text h1{color:var(--team);text-shadow:0 0 30px var(--team-glow);margin:8px 0 4px;font-size:31px;font-weight:900}.role-desc{color:#c3cddf;max-height:116px;margin:6px 0 0;font-size:13px;line-height:1.95;overflow-y:auto}.big-check{width:80px;height:80px;color:var(--ok);animation:pop .45s var(--spring) both;background:#3ddc9721;border-radius:50%;place-items:center;font-size:38px;display:grid;box-shadow:0 0 44px -10px #3ddc9799}.pinpad{width:100%;max-width:280px}.pinpad.shake{animation:.42s shake}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-9px)}40%,80%{transform:translate(9px)}}.pin-dots{justify-content:center;gap:11px;margin-bottom:18px;display:flex}.pin-dots span{border:1px solid var(--gold-line);border-radius:50%;width:12px;height:12px;transition:background .2s,box-shadow .2s}.pin-dots span.on{background:var(--gold);box-shadow:0 0 14px var(--gold-glow)}.pin-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.pin-key{aspect-ratio:1.5;background:linear-gradient(160deg, var(--elev-2), var(--elev));border:1px solid var(--line);transition:transform .14s var(--spring), border-color .2s;border-radius:14px;font-size:20px;font-weight:700}.pin-key:active{border-color:var(--gold);transform:scale(.9)}.pin-key.ghost{color:var(--muted);background:0 0;font-size:14px}.app.is-night .ambient{background:radial-gradient(1000px 560px at 76% -6%,#ff3b4621,#0000 62%),radial-gradient(900px 520px at 14% 6%,#783cb41f,#0000 60%),linear-gradient(#0a0710 0%,#05070e 60%,#03050a 100%);transition:background .9s}.night-head h2{color:var(--gold-hi);margin:0;font-size:24px;font-weight:900}.bar{background:#8ca5d21a;border-radius:99px;height:5px;overflow:hidden}.bar>div{background:linear-gradient(90deg, var(--gold-dim), var(--gold-hi));height:100%;box-shadow:0 0 12px var(--gold-glow);transition:width .4s var(--ease);position:relative;overflow:hidden}.todo{flex-direction:column;gap:8px;display:flex}.todo-item{border:1px solid var(--line);background:linear-gradient(158deg, var(--glass-row-hi), var(--glass-row-lo));-webkit-backdrop-filter:var(--glass-blur);border-radius:15px;transition:border-color .25s,box-shadow .3s;overflow:hidden}.todo-item.done{border-color:#3ddc9752}.todo-item.done .state-mark{color:var(--ok);text-shadow:0 0 10px #3ddc97b3;animation:stamp .42s var(--ease) both}.todo-item.skipped{opacity:.5}.todo-item.open{border-color:var(--team);box-shadow:0 0 0 1px color-mix(in srgb, var(--team) 30%, transparent), 0 14px 40px -20px var(--team-glow)}.todo-head{text-align:right;align-items:center;gap:10px;width:100%;padding:12px 13px;display:flex}.step{border:1px solid var(--line);width:24px;height:24px;color:var(--muted);background:#050810b3;border-radius:8px;flex:none;place-items:center;font-size:11.5px;display:grid}.todo-face{object-fit:cover;border:1px solid color-mix(in srgb, var(--team) 45%, transparent);width:38px;height:38px;box-shadow:0 0 14px -4px var(--team-glow);border-radius:11px;flex:none}.state-mark{color:var(--dim);flex:none;font-size:16px}.dot{border-radius:50%;flex:none;width:12px;height:12px;box-shadow:0 0 12px}.todo-body{border-top:1px solid var(--line);padding:12px 13px 14px}.intro-note{border-color:var(--gold-line);color:var(--gold-hi);background:#e3bd7712;font-size:12.5px;line-height:2}.wake-line{color:var(--gold);border:1px solid var(--gold-line);background:#e3bd7712;border-radius:10px;padding:7px 11px;font-size:12.5px}.god-notes{flex-direction:column;gap:5px;margin:10px 0 0;padding:0;list-style:none;display:flex}.god-notes li{color:#cdb6ff;padding-inline-start:15px;font-size:12.5px;line-height:1.9;position:relative}.kind-hint{color:#9fd0ff;background:#45a9ff14;border:1px solid #45a9ff38;border-radius:11px;margin-top:10px;padding:8px 12px;font-size:12.2px;line-height:1.9}.hint-list{flex-direction:column;gap:7px;margin-top:12px;display:flex}.hint{animation:fadeUp .28s var(--ease) both;background:#3ddc9712;border:1px solid #3ddc9742;border-radius:12px;padding:9px 12px}.hint.risky{background:#ff9f4314;border-color:#ff9f4352}.hint-top{flex-wrap:wrap;align-items:center;gap:7px;font-size:13.5px;display:flex}.hint-answer{border:1px solid;border-radius:99px;padding:2px 10px;font-size:12px;font-weight:800}.hint-answer.pos{color:#ff9096}.hint-answer.neg{color:#7fe3b6}.hint-answer.info{color:var(--gold-hi)}.hint-guess{color:var(--dim);border:1px dashed var(--line);border-radius:99px;padding:1px 7px;font-size:9.5px;font-weight:700}.hint-why{color:#b9c6d8;margin-top:5px;font-size:12.3px;line-height:1.9}.hint-warn{color:#ffc046;margin-top:5px;font-size:12px;line-height:1.85}.pick-head{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.ok-text{color:var(--ok);font-weight:700}.god-notes li:before{content:"";inset-inline-start:3px;background:#b98cff;border-radius:50%;width:5px;height:5px;position:absolute;top:11px;box-shadow:0 0 8px #b98cff}.reorder-note{border-color:var(--gold-line);color:var(--gold-hi);background:#e3bd770f;font-size:12.5px;line-height:2}.queue{touch-action:pan-y;flex-direction:column;gap:8px;display:flex}.queue-row{border:1px solid var(--line);background:linear-gradient(158deg, var(--glass-row-hi), var(--glass-row-lo));-webkit-backdrop-filter:var(--glass-blur);transition:border-color .2s, box-shadow .25s, transform .18s var(--spring);border-radius:15px;align-items:center;gap:9px;padding:9px 11px;display:flex}.queue-row.dragging{border-color:var(--team);box-shadow:0 0 0 1px color-mix(in srgb, var(--team) 34%, transparent), 0 18px 44px -18px var(--team-glow);transform:scale(1.02)}.grip{width:34px;height:38px;color:var(--muted);border:1px solid var(--line);cursor:grab;touch-action:none;background:#050810b3;border-radius:10px;flex:none;place-items:center;font-size:15px;display:grid}.queue-row.dragging .grip{cursor:grabbing;color:var(--gold-hi);border-color:var(--gold-line)}.queue-arrows{flex-direction:column;flex:none;gap:3px;display:flex}.queue-arrows .icon-btn.sm{border-radius:7px;width:28px;height:21px;font-size:12px}.queue-arrows .icon-btn:disabled{opacity:.3;pointer-events:none}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:7px;margin-top:8px;display:grid}.pick{--team:var(--dim);--team-glow:#5a658066;text-align:right;border:1px solid var(--line);transition:transform .14s var(--spring), border-color .2s, box-shadow .25s, background .2s;background:#050810b8;border-radius:13px;align-items:center;gap:8px;padding:7px 9px;display:flex}.pick:active{transform:scale(.96)}.pick:disabled{opacity:.35;pointer-events:none}.pick.out{opacity:.45}.pick.out .pick-name{text-decoration:line-through}.pick.on{border-color:var(--gold);box-shadow:0 0 20px -7px var(--gold-glow);background:#e3bd7721}.pick.on:after{content:"✓";top:4px;color:var(--gold-hi);animation:pop .32s var(--spring) both;font-size:11px;font-weight:900;position:absolute;inset-inline-start:6px}.pick.on.danger:after{content:"☠";color:#ffb3b7}.pick.on .pick-name{color:var(--gold-hi)}.pick.on.danger{border-color:var(--mafia);box-shadow:0 0 20px -7px var(--mafia-glow);background:#ff3b4629}.pick.on.danger .pick-name{color:#ffb3b7}.pick-seat{text-align:center;width:20px;color:var(--dim);flex:none;font-size:11px}.pick-face{object-fit:cover;border:1px solid color-mix(in srgb, var(--team) 50%, transparent);width:34px;height:34px;box-shadow:0 0 12px -4px var(--team-glow);border-radius:10px;flex:none}.pick-noface{color:var(--team);background:color-mix(in srgb, var(--team) 14%, transparent);place-items:center;font-weight:800;display:grid}.pick-text{flex-direction:column;min-width:0;line-height:1.5;display:flex}.pick-name{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.pick-role{color:var(--team);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;overflow:hidden}.pick-flags{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.pick-flags i{opacity:.85;border:1px solid;border-radius:5px;padding:0 5px;font-size:9.5px;font-style:normal;font-weight:700}.pick-extra{color:var(--gold)}.target-grid{flex-wrap:wrap;gap:7px;margin-top:7px;display:flex}.target{min-height:var(--tap-xs);border:1px solid var(--line);transition:transform .14s var(--spring), border-color .2s, box-shadow .25s;background:#050810b3;border-radius:11px;align-items:center;padding:7px 15px;font-size:13.5px;font-weight:600;display:inline-flex}.target:active{transform:scale(.94)}.target.on{border-color:var(--gold);color:var(--gold-hi);box-shadow:0 0 18px -6px var(--gold-glow);background:#e3bd7721}.target.on.danger{border-color:var(--mafia);color:#ffb3b7;box-shadow:0 0 18px -6px var(--mafia-glow);background:#ff3b4633}.btn.sm.primary{color:#fff;background:linear-gradient(150deg,#ff4d57,#b8242d);border-color:#0000}.report-card{border:1px solid var(--gold-line);box-shadow:0 20px 60px -30px var(--gold-glow);background:linear-gradient(168deg,#1a2034f2,#080b14f5);border-radius:20px;padding:20px;position:relative}.report-head{border-bottom:1px solid var(--line);padding-bottom:12px}.report-head h2{color:var(--gold-hi);margin:2px 0 0;font-size:24px;font-weight:900}.report-block{border-bottom:1px solid #8ca5d214;padding:13px 0}.report-block:last-child{border-bottom:none}.report-line{margin:5px 0 0;font-size:15.5px;line-height:2.05}.dead-name{color:#ff8f96;text-shadow:0 0 18px #ff3b4680;animation:2.4s ease-in-out neonFlicker}@keyframes neonFlicker{0%,to{opacity:1}8%,12%{opacity:.35}10%{opacity:1}20%{opacity:.6}24%{opacity:1}}.player-list{flex-direction:column;gap:7px;display:flex}.player-row{background:linear-gradient(158deg, var(--glass-row-hi), var(--glass-row-lo));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:7px;padding:10px 12px;transition:border-color .2s,opacity .3s;display:flex}.player-row.out{opacity:.42}.player-row.out strong{text-decoration:line-through}.player-row.pick{cursor:pointer;text-align:right}.player-row.picked{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold-line)}.player-main{text-align:right;min-width:0}.player-panel{border-top:1px solid var(--line);flex-basis:100%;margin-top:9px;padding-top:10px}.icon-btn.danger{color:var(--mafia);border-color:#ff3b464d}.icon-btn.on{color:var(--gold-hi);border-color:var(--gold);background:#e3bd771f}.icon-btn.sm{width:var(--tap-xs);height:var(--tap-xs);border-radius:9px;font-size:15px}.chip.god-only{opacity:.85;border-style:dashed}.god-eye{opacity:.7;margin-inline-start:3px;font-size:9px;font-style:normal}.win-banner{border-color:var(--gold);box-shadow:0 0 40px -20px var(--gold-glow);background:#e3bd7714;flex-direction:column;gap:9px;display:flex}.timer-card{--ring:var(--ok);transition:border-color .4s,box-shadow .4s}.timer-card.warn{--ring:var(--gold)}.timer-card.danger,.timer-card.over{--ring:var(--mafia);box-shadow:var(--glass-edge), 0 0 40px -22px var(--mafia-glow);border-color:#ff3b4657}.timer-card.danger{animation:1s ease-in-out infinite timerPulse}@keyframes timerPulse{50%{box-shadow:var(--glass-edge), 0 0 46px -12px var(--mafia-glow)}}.timer-row{align-items:center;gap:16px;display:flex}.ring-wrap{flex:none;width:128px;height:128px;position:relative}.ring{width:100%;height:100%;transform:rotate(-90deg)}.ring-track,.ring-fill{fill:none;stroke-width:8px;stroke-linecap:round}.ring-track{stroke:#8ca5d21f}.ring-fill{stroke:var(--ring);filter:drop-shadow(0 0 7px var(--ring));transition:stroke-dashoffset .14s linear,stroke .4s}.ring-face{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex;position:absolute;inset:0}.ring-face b{color:var(--ring);text-shadow:0 0 22px var(--ring);font-size:27px;font-weight:900;line-height:1.2}.timer-side{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.timer-presets{flex-wrap:wrap;gap:6px;display:flex}.lynch-box{border-top:1px solid var(--line);margin-top:11px;padding-top:11px}.lynch-rule{border:1px solid var(--gold-line);color:var(--gold-hi);background:#e3bd7714;border-radius:12px;flex-direction:column;gap:2px;padding:9px 12px;font-size:13px;display:flex}.lynch-rule b{font-size:16px}.lynch-tally{justify-content:space-between;align-items:center;gap:8px;margin-top:7px;padding-inline:3px;display:flex}.lynch-over{color:var(--mafia);font-weight:700}.vote-n{text-align:center;min-width:26px;color:var(--muted);font-size:16px;font-weight:800;transition:color .25s,text-shadow .25s}.vote-n.hit{color:var(--mafia);text-shadow:0 0 12px var(--mafia-glow)}.vote-ctl{flex:none;align-items:center;gap:5px;display:flex}.no-vote-tag{color:#ff7a84;border:1px dashed #ff7a8473;border-radius:9px;flex:none;padding:4px 9px;font-size:10.5px;font-weight:700}.player-row.at-risk{box-shadow:0 0 18px -8px var(--mafia-glow);border-color:#ff3b4673}.player-row.voting{background-image:linear-gradient(to left, #ff3b462e 0 var(--vote-pct,0%), transparent var(--vote-pct,0%)), linear-gradient(158deg, var(--glass-row-hi), var(--glass-row-lo))}.vote-result{border:1px solid var(--line);background:#8ca5d20f;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;padding:10px 12px;font-size:13px;display:flex}.dead-divider{color:var(--dim);align-items:center;gap:9px;margin:10px 2px 2px;font-size:11.5px;font-weight:700;display:flex}.dead-divider:after{content:"";background:linear-gradient(90deg, var(--line), transparent);flex:1;height:1px}.day-powers{flex-direction:column;gap:6px;margin-top:10px;display:flex}.day-powers-title{color:var(--gold);margin-bottom:2px;font-size:11.5px;font-weight:800}.day-power{background:#45a9ff12;border:1px solid #45a9ff33;border-radius:11px;padding:8px 11px}.day-power-who{align-items:center;gap:7px;font-size:13px;display:flex}.day-power-who i{font-size:11px;font-style:normal;font-weight:700}.day-power-text{color:#b9c6d8;margin-top:3px;font-size:12.2px;line-height:1.85;display:block}.day-powers-any summary{cursor:pointer}.vote-result.reached{background:#ff3b461a;border-color:#ff3b4652}.log-line{color:var(--muted);border-bottom:1px solid #8ca5d212;padding:5px 0}.log-line:last-child{border-bottom:none}.lib-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=520px){.lib-grid{grid-template-columns:1fr 1fr}}.lib-sub{padding:5px 4px 0}.poster-wrap{justify-content:center;display:flex}.poster{border:1px solid var(--gold-line);isolation:isolate;background:linear-gradient(168deg,#141a29 0%,#05070e 64%);border-radius:22px;width:100%;max-width:400px;padding:24px 22px 20px;position:relative;overflow:hidden}.poster-glow{top:-110px;z-index:-1;background:radial-gradient(circle,#e3bd773d,#0000 68%);width:270px;height:270px;position:absolute;inset-inline-end:-70px}.poster-top{justify-content:space-between;align-items:flex-start;display:flex}.poster-brand{color:var(--gold-hi);align-items:center;gap:7px;font-size:16px;font-weight:900;display:flex}.poster-mark{font-size:20px}.poster-date{text-align:left;font-size:12.5px;font-weight:600}.poster-sub{color:var(--dim);font-size:11px;font-weight:400}.poster-title{margin-top:16px;font-size:19px;font-weight:700}.poster-winner{border:1px solid var(--gold-line);text-align:center;background:#ffffff08;border-radius:16px;margin-top:20px;padding:16px}.poster-winner-name{font-size:30px;font-weight:900;line-height:1.35}.poster-best{margin-top:16px}.best-grid{flex-direction:column;gap:7px;margin-top:8px;display:flex}.best-item{background:#ffffff09;border:1px solid #8ca5d21f;border-radius:12px;align-items:center;gap:10px;padding:8px 11px;display:flex}.best-face{object-fit:cover;border-radius:10px;flex:none;width:34px;height:34px}.best-rank{font-size:17px}.best-name{font-size:14.5px;font-weight:700}.best-role{font-size:11.5px}.poster-foot{border-top:1px solid #8ca5d21f;gap:8px;margin-top:18px;padding-top:14px;display:flex}.poster-stat{flex-direction:column;flex:1;align-items:center;gap:1px;display:flex}.poster-stat b{color:var(--gold-hi);font-size:17px;font-weight:900}.poster-stat span{color:var(--dim);font-size:10.5px}.poster-stat.venue{flex:1.6}.poster-stat.venue b{text-align:center;font-size:13px;line-height:1.5}
