:root{color-scheme:dark;--bg:#101625;--ink:#f7f6ed;--muted:#aeb5c5;--panel:#20283a;--line:rgba(255,255,255,.13);--gold:#ffc84d;--red:#ff5d6c;--green:#45d6aa;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:Inter,ui-rounded,"SF Pro Rounded",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{min-width:320px;background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;color:var(--ink);background:radial-gradient(circle at 50% -15%,#33415d 0,transparent 42%),linear-gradient(145deg,#101625,#121321);overflow-x:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:3px}.app-shell{position:relative;min-height:100vh;min-height:100dvh;max-width:520px;margin:auto;overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);background-size:24px 24px}.screen{display:none;min-height:100vh;min-height:100dvh;padding:calc(18px + var(--safe-top)) 20px calc(18px + var(--safe-bottom));animation:enter .24s ease}.screen--active{display:flex;flex-direction:column}@keyframes enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.home{justify-content:center;text-align:center;isolation:isolate;padding-top:calc(28px + var(--safe-top));padding-bottom:calc(25px + var(--safe-bottom))}.spotlight{position:absolute;z-index:-1;top:-190px;left:50%;width:520px;height:620px;transform:translateX(-50%);background:conic-gradient(from 165deg at 50% 0,transparent 0 38%,rgba(255,216,107,.17) 45% 55%,transparent 62%);filter:blur(2px)}.case-stamp{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;width:122px;height:93px;margin:0 auto 18px;border:4px double rgba(255,211,92,.85);border-radius:13px;color:#ffd460;transform:rotate(-4deg);box-shadow:0 15px 45px rgba(0,0,0,.28)}.case-stamp span{font:1000 3.4rem/1 Georgia,serif}.case-stamp b{text-align:left;font-size:.74rem;letter-spacing:.12em;line-height:1.25}.eyebrow{margin:0 0 8px;color:#ffd269;font-size:.68rem;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.home h1{margin:0;font-size:clamp(3.45rem,18vw,5.35rem);line-height:.8;letter-spacing:-.072em}.home h1 em{font-style:normal;color:var(--gold);text-shadow:0 5px 25px rgba(255,194,62,.2)}.lead{max-width:400px;margin:24px auto 22px;color:#d5d8df;line-height:1.52;font-weight:570}.home-actions{display:grid;gap:10px;width:min(100%,390px);margin:auto}.feature-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:22px}.feature-pills span,.round-pill{border:1px solid var(--line);background:rgba(255,255,255,.07);border-radius:999px;padding:7px 10px;font-size:.66rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(10px)}
.btn{min-height:48px;border:0;border-radius:15px;padding:12px 18px;font-weight:880;cursor:pointer;transition:transform .15s ease,filter .15s ease}.btn:active{transform:scale(.976)}.btn--xl{min-height:58px;font-size:1.01rem}.btn--primary{background:linear-gradient(115deg,#f4b92d,#ffcf61);color:#241b08;box-shadow:0 15px 34px rgba(240,174,36,.2)}.btn--glass{border:1px solid var(--line);background:rgba(255,255,255,.07)}.btn--outline{width:100%;border:1px dashed rgba(255,210,105,.45);background:transparent;color:#f4d88f}.btn--success{background:linear-gradient(130deg,#21b888,#51dfb2);color:#071d17}.btn--fail{background:linear-gradient(130deg,#df4057,#ff6c78);color:white}.text-button{border:0;background:transparent;padding:9px;color:#b9c0cf;font-weight:780;cursor:pointer}.text-button--danger{color:#ff8390}.icon-button{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.07);font-size:1.4rem;cursor:pointer}.icon-button--ghost{visibility:hidden}.icon-button--dots{font-size:.9rem;font-weight:900}.topbar,.game-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;min-height:60px}.topbar>div{text-align:center}.topbar h2{margin:0;font-size:1.35rem}.topbar .eyebrow{margin-bottom:2px}.game-header{flex:0 0 auto}.game-header .round-pill{justify-self:center}.simple-header{display:flex;justify-content:center;padding-top:5px}.scroll-content{flex:1;overflow-y:auto;padding:18px 1px 118px;scrollbar-width:none}.scroll-content::-webkit-scrollbar{display:none}.sticky-footer{position:fixed;z-index:5;left:50%;bottom:0;transform:translateX(-50%);width:min(520px,100%);padding:13px 20px calc(13px + var(--safe-bottom));background:linear-gradient(transparent,rgba(16,22,37,.96) 25%);display:grid;gap:4px}.form-error{min-height:18px;margin:0;text-align:center;color:#ff8c99;font-size:.79rem;font-weight:750}
.player-fields{display:grid;gap:9px}.player-field{display:grid;grid-template-columns:38px 1fr 40px;align-items:center;gap:8px;padding:7px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.055)}.player-number{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#d59c27;color:#1d1607;font-weight:950}.player-field input{width:100%;min-height:40px;border:0;background:transparent;color:#fff;font-weight:750}.player-field input::placeholder{color:#7f8799}.remove-player{border:0;background:transparent;color:#abb1bf;font-size:1.45rem;cursor:pointer}.remove-player:disabled{opacity:.25}.settings-card{border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.04);padding:16px;margin:18px 0 0}.settings-card legend{padding:0 6px;font-weight:900}.setting-help{margin:0 0 12px;color:var(--muted);font-size:.83rem}.segments{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.segments--four{grid-template-columns:repeat(4,1fr)}.segments button,.category-grid button{min-height:45px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.045);color:#b8bec9;font-size:.74rem;font-weight:850;cursor:pointer}.segments button.is-active,.category-grid button[aria-pressed=true]{background:linear-gradient(145deg,#d49a25,#7c5e21);border-color:#f8ce67;color:white}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.category-grid button span{display:block;font-size:1.2rem;margin-bottom:3px}
.game-screen{padding-left:15px;padding-right:15px}.case-stage{display:flex;flex:1;flex-direction:column;justify-content:center;gap:11px;padding:12px 0}.suspect-card{display:grid;grid-template-columns:48px 1fr 42px;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.065)}.mug-avatar,.case-category{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#2e374b;font-size:1.4rem}.suspect-card div{display:grid;gap:2px}.suspect-card small{color:#ffc956;font-size:.61rem;font-weight:950;letter-spacing:.14em}.suspect-card strong{font-size:1.05rem}.case-file{position:relative;min-height:280px;padding:34px 24px 26px;border-radius:5px 5px 18px 6px;background:#f3edda;color:#25251f;box-shadow:0 22px 55px rgba(0,0,0,.35);transform:rotate(-.45deg);overflow:hidden}.case-file::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(transparent 0 29px,rgba(50,70,80,.08) 30px);pointer-events:none}.paperclip{position:absolute;right:23px;top:-13px;width:14px;height:64px;border:4px solid #70777a;border-bottom:0;border-radius:10px 10px 0 0;transform:rotate(8deg)}.case-label{position:relative;margin:0 0 16px;font-size:.63rem;font-weight:950;letter-spacing:.12em;color:#a24038}.case-file h2{position:relative;margin:0;font:800 clamp(1.35rem,6.2vw,1.9rem)/1.22 Georgia,serif;letter-spacing:-.025em}.case-instruction{position:relative;margin:20px 0 0;padding:12px;border-left:4px solid #d0a130;background:rgba(219,185,88,.16);font-size:.84rem;font-weight:700;line-height:1.4}.case-seal{position:absolute;right:-8px;bottom:18px;padding:7px 10px;border:3px solid rgba(176,52,45,.34);color:rgba(176,52,45,.42);font-weight:950;font-size:.65rem;letter-spacing:.13em;transform:rotate(-11deg)}.timer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:0 5px}.timer>span{font-variant-numeric:tabular-nums;font-weight:950}.timer-track{height:6px;border-radius:99px;background:rgba(255,255,255,.11);overflow:hidden}.timer-track i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#f6bd34,#f67e45);transition:width .3s linear}.timer .text-button{font-size:.74rem;padding:5px}.timer.is-done>span{color:#ff7582}.timer.is-done i{background:#ff596a}.case-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.case-actions .btn--xl,.case-actions:has(.btn:only-child){grid-column:1/-1}#jury-actions{display:block}#jury-actions .btn{width:100%}
.handoff{justify-content:center;text-align:center;align-items:center}.privacy-mark{display:grid;place-items:center;width:112px;height:112px;border:3px double #f4c554;border-radius:50%;background:#242d40;font-size:3.2rem;box-shadow:0 24px 60px rgba(0,0,0,.36)}.handoff h2{margin:16px 0 8px;font-size:2rem;line-height:1.15}.handoff h2 em{font-style:normal;color:#ffd05b}.handoff>p:not(.eyebrow){max-width:330px;color:var(--muted);line-height:1.5}.handoff .btn{width:100%;margin-top:16px}.jury-wrap{display:flex;flex:1;flex-direction:column;justify-content:center;text-align:center}.jury-wrap h2{font-size:2rem;margin:0}.jury-wrap>p{color:#bdc3cf;line-height:1.45}.verdict-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.verdict{min-height:220px;border:0;border-radius:23px;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;cursor:pointer;box-shadow:0 20px 48px rgba(0,0,0,.25)}.verdict span{display:grid;place-items:center;width:58px;height:58px;border:3px solid currentColor;border-radius:50%;font-size:2rem;font-weight:1000}.verdict b{font-size:1rem;letter-spacing:.04em}.verdict small{opacity:.78}.verdict--innocent{background:linear-gradient(150deg,#168264,#35c797)}.verdict--guilty{background:linear-gradient(150deg,#b82f43,#ef5c69)}.jury-wrap>small{color:#8f97a7}
.result-wrap{display:flex;flex:1;flex-direction:column;justify-content:center;text-align:center;padding:15px 3px}.verdict-stamp{align-self:center;margin-bottom:16px;padding:10px 15px;border:5px double var(--green);border-radius:8px;color:var(--green);font-size:1.4rem;font-weight:1000;letter-spacing:.12em;transform:rotate(-4deg)}.verdict-stamp.is-guilty{border-color:var(--red);color:var(--red);transform:rotate(4deg)}.verdict-stamp.is-tie{border-color:var(--gold);color:var(--gold);transform:none}.result-wrap h2{margin:2px 0 14px;font-size:2.1rem;line-height:1.1}.verdict-counts{display:flex;justify-content:center;gap:8px}.verdict-counts span{padding:8px 10px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.06);font-size:.75rem}.result-wrap>p:not(.eyebrow){color:#c5cad4;line-height:1.45}.result-actions{display:grid;gap:9px;margin-top:12px}.score-list,.history-list{display:grid;gap:9px}.score-row{display:grid;grid-template-columns:34px 43px 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.055)}.score-rank{color:#9da4b3;font-weight:900}.score-avatar{display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:#2c3548;font-size:1.24rem}.score-copy{display:grid;min-width:0}.score-copy span{color:#9ba2b1;font-size:.71rem}.score-value{font-size:1.45rem;color:#ffd263}.stat-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.stat-totals div{display:grid;gap:2px;padding:13px 5px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.05);text-align:center}.stat-totals strong{font-size:1.35rem}.stat-totals span{color:#9ba2b0;font-size:.69rem}.history-row{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:13px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.05)}.history-number{font-weight:950;color:#ffd05f}.history-copy{display:grid;gap:4px}.history-copy b{font-size:.86rem}.history-copy span{color:#b6bdca;font-size:.76rem;line-height:1.38}.history-copy small{color:#f1c45b}.empty-state{padding:28px 15px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:17px}
.dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:20px;border:0;background:rgba(6,10,18,.76);color:var(--ink);backdrop-filter:blur(10px)}.dialog[open]{display:grid;place-items:center}.dialog::backdrop{background:transparent}.dialog-card{position:relative;width:min(100%,420px);padding:24px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(155deg,#293248,#171d2b);box-shadow:0 25px 80px #070a11;display:grid;gap:10px}.dialog-card h2{margin:0;font-size:1.75rem}.dialog-card p{color:#b6bdc9;line-height:1.45}.dialog-card ol{padding-left:22px;margin:5px 0;color:#d2d5dc}.dialog-card li{margin:12px 0;line-height:1.4}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#fff;font-size:1.8rem;cursor:pointer}.toast{position:fixed;z-index:20;left:50%;bottom:calc(20px + var(--safe-bottom));transform:translate(-50%,30px);max-width:calc(100% - 36px);padding:11px 15px;border-radius:13px;background:#fff7df;color:#29210d;font-weight:850;opacity:0;pointer-events:none;transition:.2s}.toast--visible{opacity:1;transform:translate(-50%,0)}
@media(max-height:720px){.home{justify-content:flex-start}.case-stamp{width:103px;height:72px;margin-bottom:12px}.case-stamp span{font-size:2.6rem}.home h1{font-size:3.8rem}.lead{margin:17px auto}.feature-pills{margin-top:14px}.case-stage{justify-content:flex-start;gap:8px}.case-file{min-height:226px;padding-top:27px}.verdict{min-height:175px}.result-wrap{justify-content:flex-start;padding-top:35px}}
@media(max-width:350px){.screen{padding-left:14px;padding-right:14px}.game-screen{padding-left:10px;padding-right:10px}.home h1{font-size:3.55rem}.lead{font-size:.9rem}.feature-pills span{font-size:.57rem}.segments,.segments--four{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.case-file{min-height:252px;padding:30px 18px 21px}.case-file h2{font-size:1.25rem}.case-instruction{margin-top:15px}.verdict{min-height:190px;padding:8px}.verdict b{font-size:.84rem}.verdict small{font-size:.66rem}.result-wrap h2{font-size:1.8rem}.sticky-footer{padding-left:14px;padding-right:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
