@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2) format("woff2"),url(/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff) format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2) format("woff2"),url(/assets/pixelify-sans-latin-600-normal-BNlgYbDL.woff) format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pixelify-sans-latin-700-normal-D3Xxx3QE.woff2) format("woff2"),url(/assets/pixelify-sans-latin-700-normal-BctWAS0u.woff) format("woff")}@font-face{font-family:Hops Digits;src:url(/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2) format("woff2");font-weight:100 600;font-display:swap;unicode-range:U+0030-0039}@font-face{font-family:Hops Digits;src:url(/assets/silkscreen-latin-700-normal-CSE2nhgM.woff2) format("woff2");font-weight:700 900;font-display:swap;unicode-range:U+0030-0039}:root{--px: 3px;--font-pixel: "Hops Digits", "Pixelify Sans", ui-monospace, monospace;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--accent: #5fa83a;--on-accent: #1e140b;--accent-strong: #477e2b;--accent-soft: #e3eed3;--radius: 0;--nav-h: 64px;--top-h: 56px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--bg: #f3ead6;--surface: #fffaf0;--surface-2: #f3e7cc;--field: #fffdf7;--text: #2b1d12;--muted: #7d6a52;--line: #2b1d12;--shadow: #cbb58a;--pos: #2f7f25;--neg: #c0392b;--warn: #a87300;--gold: #f2b632;--felt: #2e6b39;--felt-2: #285f33;color-scheme:light}:root[data-theme=dark]{--bg: #14110d;--surface: #221d17;--surface-2: #2e271f;--field: #1a1612;--text: #f3ead8;--muted: #a99a82;--line: #050403;--shadow: #000000;--pos: #82d46c;--neg: #ff7f6e;--warn: #ffc94a;--felt: #1f4a28;--felt-2: #1a4023;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--bg);background-image:var(--pattern);color:var(--text);font:16px/1.45 var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}body.no-scroll{overflow:hidden}h1,h2,h3,h4,.logo-text,.btn,.seg,.nav-item span,.tag,.code-chip,.stat b,.throw-count,.result-name,.money-big,.xpbar,.big-code,.giant-code,.giant-loser,.event-date,.field-label{font-family:var(--font-pixel)}h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:.01em}h1{font-size:1.6rem}h2{font-size:1.3rem}h3{font-size:1.05rem}p{margin:0}a{color:var(--accent-strong)}:root[data-theme=dark] a{color:var(--accent)}img,svg{display:block}button{font:inherit;color:inherit}.sprite,.icon{flex:none;image-rendering:pixelated}:focus-visible{outline:3px dashed var(--accent);outline-offset:3px}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.mt{margin-top:12px}.pos{color:var(--pos)}.neg{color:var(--neg)}.pre-wrap{white-space:pre-wrap}.stack{display:flex;flex-direction:column;gap:12px}.stack-sm{display:flex;flex-direction:column;gap:8px}.stack-lg{display:flex;flex-direction:column;gap:20px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.section-title{font-size:1.05rem;margin:0 0 10px}.sub-title{margin:18px 0 8px;font-size:.95rem}.flip svg{transform:scaleX(-1)}.card,.btn,.input,.segmented,.toast,.sheet,.table-felt,.prost-hero,.install-banner,.hint-box,.error-box,.lobby-code,.round-summary{--b: var(--line);box-shadow:0 calc(var(--px) * -1) 0 0 var(--b),0 var(--px) 0 0 var(--b),calc(var(--px) * -1) 0 0 0 var(--b),var(--px) 0 0 0 var(--b)}.card,.prost-hero,.table-felt,.lobby-code{box-shadow:0 calc(var(--px) * -1) 0 0 var(--line),0 var(--px) 0 0 var(--line),calc(var(--px) * -1) 0 0 0 var(--line),var(--px) 0 0 0 var(--line),0 calc(var(--px) * 2.3) 0 0 var(--shadow)}.shell{min-height:100dvh}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:calc(var(--safe-top) + 6px) 16px 6px;min-height:calc(var(--top-h) + var(--safe-top));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:var(--px) solid var(--line)}.brand{display:flex;align-items:center;gap:8px;background:none;border:0;padding:4px;cursor:pointer}.brand-name,.logo-text{font-family:var(--font-pixel);font-weight:700;font-size:1.55rem;letter-spacing:.02em;color:var(--text)}.logo-text{color:var(--accent-strong)}:root[data-theme=dark] .logo-text{color:var(--accent)}.topbar-actions{display:flex;align-items:center;gap:6px}.avatar-btn{background:none;border:0;padding:2px;cursor:pointer}.main{padding:16px 16px calc(var(--nav-h) + var(--safe-bottom) + 28px);max-width:680px;margin:0 auto}.page{display:flex;flex-direction:column;gap:16px}.page-head{display:flex;align-items:center;gap:10px}.page-head-text{flex:1;min-width:0}.page-head-text h1{overflow-wrap:anywhere}.page-head-text p{margin-top:2px;font-size:.9rem}.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 6px calc(6px + var(--safe-bottom));background:var(--surface);border-top:var(--px) solid var(--line)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;background:none;border:0;color:var(--muted);cursor:pointer;font-size:.72rem}.nav-item.is-active{color:var(--text)}.nav-item.is-active .icon{color:var(--accent-strong);transform:translateY(-2px)}:root[data-theme=dark] .nav-item.is-active .icon{color:var(--accent)}.nav-item.is-active span{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:4px;text-decoration-color:var(--accent)}.splash{min-height:100dvh;display:grid;place-items:center}.card{background:var(--surface);padding:16px;margin:var(--px);position:relative}.card-click{cursor:pointer;transition:transform .06s steps(2)}.card-click:active{transform:translateY(2px)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.btn{--b: var(--line);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 18px;margin:var(--px);border:0;background:var(--accent);color:var(--on-accent);font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;position:relative;user-select:none;-webkit-user-select:none;touch-action:manipulation}.btn:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--px);background:#00000038;pointer-events:none}.btn:active:not(:disabled){transform:translateY(2px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{background:var(--surface-2);color:var(--text)}.btn-ghost{background:transparent;color:var(--text);--b: transparent}.btn-ghost:after{display:none}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-danger{background:var(--neg);color:#fff}.btn-gold{background:var(--gold);color:#2b1d12}.btn-sm{min-height:34px;padding:4px 12px;font-size:.88rem}.btn-lg{min-height:54px;font-size:1.12rem;padding:10px 20px}.btn-block{display:flex;width:calc(100% - var(--px) * 2)}.btn.is-loading span{opacity:.5}.btn.is-loading:before{content:"⏳"}.icon-btn{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;background:none;border:0;cursor:pointer;color:var(--text);flex:none}.icon-btn:hover{background:var(--surface-2)}.badge-dot{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 4px;background:var(--neg);color:#fff;font:700 11px/18px var(--font-pixel);text-align:center}.link-btn{background:none;border:0;padding:4px 2px;color:var(--accent-strong);cursor:pointer;font-size:.9rem;text-decoration:underline;text-underline-offset:3px}:root[data-theme=dark] .link-btn{color:var(--accent)}.link-btn.neg{color:var(--neg)}.link-btn.muted{color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{font-size:.9rem;font-weight:600}.field-hint{font-size:.8rem;color:var(--muted)}.input{width:calc(100% - var(--px) * 2);margin:var(--px);min-height:46px;padding:10px 12px;border:0;background:var(--field);color:var(--text);font:inherit;font-size:16px;border-radius:0;-webkit-appearance:none;appearance:none}textarea.input{resize:vertical;min-height:80px}select.input{background-image:linear-gradient(45deg,transparent 50%,var(--text) 50%),linear-gradient(135deg,var(--text) 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 12px) 52%;background-size:6px 6px;background-repeat:no-repeat;padding-right:34px}.input:focus{outline:none;--b: var(--accent)}.input-sm{min-height:36px;padding:6px 10px;width:100px;flex:none}.money-input{font-family:var(--font-pixel);font-size:1.15rem}.form-error{color:var(--neg);font-weight:600}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}.toggle-row.is-disabled{opacity:.5}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle-text small{font-size:.8rem;line-height:1.35}.toggle{-webkit-appearance:none;appearance:none;flex:none;width:48px;height:26px;margin:3px;background:var(--surface-2);position:relative;cursor:pointer;box-shadow:0 -3px 0 0 var(--line),0 3px 0 0 var(--line),-3px 0 0 0 var(--line),3px 0 0 0 var(--line)}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--muted);transition:transform .12s steps(3)}.toggle:checked{background:var(--accent)}.toggle:checked:after{transform:translate(22px);background:var(--on-accent)}.segmented{display:flex;background:var(--surface-2);margin:var(--px);padding:3px;gap:3px}.seg{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:4px 8px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:.95rem;white-space:nowrap}.seg.is-active{background:var(--surface);color:var(--text);box-shadow:0 3px 0 0 var(--accent)}.seg-small{flex:none}.seg-small .seg{min-width:38px;min-height:32px}.option-row{display:flex;align-items:center;gap:6px}.inline-edit{display:flex;gap:6px;align-items:center}.editable{cursor:pointer}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{border:0;background:var(--surface-2);color:var(--text);padding:6px 12px;cursor:pointer;font-size:.9rem;box-shadow:0 -2px 0 0 var(--line),0 2px 0 0 var(--line),-2px 0 0 0 var(--line),2px 0 0 0 var(--line);margin:2px}.chip.is-active{background:var(--accent);color:var(--on-accent)}.tag{display:inline-block;padding:1px 7px;margin-left:4px;font-size:.75rem;background:var(--surface-2);color:var(--text);vertical-align:middle;box-shadow:0 0 0 2px var(--line)}.tag-ok{background:color-mix(in srgb,var(--pos) 25%,var(--surface))}.tag-warn{background:color-mix(in srgb,var(--warn) 30%,var(--surface))}.tag-danger{background:color-mix(in srgb,var(--neg) 28%,var(--surface))}.tag-accent{background:var(--accent);color:var(--on-accent)}.hint-box{background:var(--accent-soft);padding:12px;margin:var(--px);font-size:.92rem}.error-box{background:color-mix(in srgb,var(--neg) 15%,var(--surface));padding:12px;margin:var(--px);display:flex;flex-direction:column;gap:8px;align-items:flex-start}.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.sheet-backdrop{position:fixed;inset:0;z-index:50;background:#140c058c;display:flex;align-items:flex-end;justify-content:center;animation:fade .15s steps(3)}.sheet{width:100%;max-width:560px;max-height:88dvh;overflow-y:auto;background:var(--surface);padding:8px 16px calc(20px + var(--safe-bottom));animation:slide-up .18s steps(4)}.sheet-grip{width:48px;height:5px;background:var(--muted);margin:4px auto 6px}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}@keyframes fade{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(40px);opacity:0}}@media(min-width:700px){.sheet-backdrop{align-items:center}.sheet{padding-bottom:20px}}.avatar{display:inline-block;flex:none;overflow:hidden;background:var(--surface-2);box-shadow:0 0 0 2px var(--line)}.avatar img,.avatar svg{width:100%;height:100%;object-fit:cover}.avatar-ring{box-shadow:0 0 0 2px var(--line),0 0 0 5px var(--accent)}.avatar-stack{display:inline-flex;align-items:center;padding-left:8px}.avatar-stack .avatar{margin-left:-8px}.avatar-more{display:inline-grid;place-items:center;margin-left:4px;padding:0 4px;font:.75rem var(--font-pixel);color:var(--muted)}.avatar-wrap{display:flex;flex-wrap:wrap;gap:10px}.avatar-name{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.72rem;max-width:56px;text-align:center}.avatar-upload{position:relative;cursor:pointer;padding:5px}.avatar-edit{position:absolute;bottom:0;left:50%;transform:translate(-50%);background:var(--line);color:#fff;font:.7rem var(--font-pixel);padding:1px 6px}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.list-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:2px dashed var(--surface-2);cursor:default}.list-item:last-child{border-bottom:0}.list-item[onclick],li.list-item:has(>.code-chip){cursor:pointer}.list-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.list-main strong{overflow-wrap:anywhere}.list-main small{font-size:.8rem}.row-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.code-chip{font-size:1.05rem;letter-spacing:.12em;background:var(--line);color:var(--gold);padding:3px 8px;flex:none}.code-chip.big{font-size:1.6rem;padding:4px 14px}.toasts{position:fixed;left:50%;top:calc(var(--safe-top) + 10px);transform:translate(-50%);z-index:60;width:min(92vw,460px);display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{pointer-events:auto;background:var(--surface);padding:10px 14px;margin:var(--px);display:flex;flex-direction:column;gap:2px;cursor:pointer;animation:drop .2s steps(4)}.toast strong{font-family:var(--font-pixel)}.toast-error{--b: var(--neg);background:color-mix(in srgb,var(--neg) 12%,var(--surface))}.toast-notification{--b: var(--accent)}@keyframes drop{0%{transform:translateY(-16px);opacity:0}}.loading,.empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center}.empty h3{margin-top:6px}.bob{animation:bob 1.4s steps(4) infinite}@keyframes bob{50%{transform:translateY(-5px)}}.xpbar{display:flex;align-items:center;gap:8px;font-size:.85rem}.xpbar-level{background:var(--line);color:var(--gold);padding:2px 7px;flex:none}.xpbar-track{display:flex;gap:2px;flex:1;min-width:80px}.xpbar-seg{flex:1;height:12px;background:var(--surface-2);box-shadow:0 0 0 1px var(--line)}.xpbar-seg.on{background:var(--accent)}.xpbar-num{color:var(--muted);flex:none}.auth{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(var(--safe-top) + 24px) 16px calc(var(--safe-bottom) + 24px);gap:18px}.auth-card{width:min(420px,100%);display:flex;flex-direction:column;gap:18px}.auth-logo{display:flex;flex-direction:column;align-items:center;gap:4px}.auth-logo .logo-text{font-size:2.6rem}.hero{display:flex;align-items:center;gap:16px;background:var(--accent-soft)}.hero-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}.hero h1{font-size:1.45rem;overflow-wrap:anywhere}.install-banner{border:0;text-align:left;padding:12px 14px;margin:var(--px);background:var(--gold);color:#2b1d12;font:600 .95rem var(--font-pixel);cursor:pointer}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-grid.four{grid-template-columns:repeat(4,1fr)}.quick-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px 4px;border:0;cursor:pointer;font:600 .85rem var(--font-pixel);color:var(--text)}.quick-tile span{font-size:1.6rem}.quick-tile:active{transform:translateY(2px)}@media(max-width:380px){.quick-grid.four{grid-template-columns:repeat(2,1fr)}}.table-felt{background-color:var(--felt);image-rendering:pixelated;min-height:324px;margin:var(--px);display:flex;align-items:center;justify-content:center;padding:12px 10px;overflow:hidden;color:#f6f0dd}.dice-row{display:flex;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap}.dice-col{display:flex;flex-direction:column;align-items:center;gap:6px}.die{position:relative;display:block;flex:none;background:none;border:0;padding:0;cursor:default}.die canvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);image-rendering:pixelated;pointer-events:none}.die:disabled{opacity:1}.die.is-clickable{cursor:pointer}.die-tag{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);background:#dff5ff;color:#143a55;font:600 .7rem var(--font-pixel);padding:1px 6px;white-space:nowrap}@keyframes shake{0%{transform:rotate(0) translate(0)}25%{transform:rotate(-14deg) translate(-3px,-6px)}50%{transform:rotate(10deg) translate(3px,-2px)}75%{transform:rotate(-6deg) translate(-2px,-5px)}to{transform:rotate(0) translate(0)}}.cup-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}.cup{filter:drop-shadow(0 6px 0 rgba(0,0,0,.35))}.cup.is-shaking{animation:shake .28s steps(4) infinite}.felt-hint{font:600 .95rem var(--font-pixel);text-align:center;color:var(--felt-ink, #f6f0dd);text-shadow:var(--felt-shadow, 0 2px 0 rgba(0, 0, 0, .45))}.mini-dice{display:inline-flex;gap:3px;flex:none}.result-line{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;min-height:34px}.throw-count{background:var(--line);color:var(--gold);padding:3px 10px}.result-name{font-size:1.5rem;font-weight:700}.result-name small{font-size:.95rem;color:var(--muted);font-weight:400}.result-name.big{font-size:2.2rem;text-align:center}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px}.action-grid .btn{margin:var(--px)}.action-grid .btn-ghost{grid-column:1 / -1}.join-row{display:flex;gap:8px;align-items:center}.code-input{font:700 1.5rem var(--font-pixel);letter-spacing:.3em;text-align:center;text-transform:uppercase;flex:1}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;text-align:center}.stat{display:flex;flex-direction:column;gap:2px}.stat b{font-size:1.6rem}.stat span{font-size:.75rem;color:var(--muted);line-height:1.2}@media(max-width:380px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.lobby-code{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--line);color:#f6f0dd;padding:18px}.big-code{font-size:3.4rem;letter-spacing:.25em;color:var(--gold);line-height:1;padding-left:.25em}.lobby-code .btn-ghost{color:#f6f0dd}.order-list .list-item{gap:10px}.order-no{width:22px;font:700 1rem var(--font-pixel);color:var(--muted);flex:none}.order-actions{display:flex;align-items:center;gap:4px}.order-btn{width:34px;height:34px;border:0;background:var(--surface-2);color:var(--text);cursor:pointer;box-shadow:0 0 0 2px var(--line);margin:2px;font-size:.8rem}.order-btn:disabled{opacity:.35;cursor:default}.has-drawer{padding-bottom:64px}.score-drawer{position:fixed;left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-bottom));z-index:15;max-width:680px;margin:0 auto;background:var(--surface);border-top:var(--px) solid var(--line)}.score-handle{width:100%;display:flex;align-items:center;gap:10px;min-height:54px;padding:6px 12px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer;touch-action:none}.score-title{display:inline-flex;align-items:center;gap:8px;font:700 1.15rem var(--font-pixel)}.score-order .avatar{box-shadow:0 0 0 2px var(--line)}.score-order .avatar-ring{box-shadow:0 0 0 2px var(--line),0 0 0 4px var(--on-accent)}.score-order{flex:1;display:flex;gap:7px;justify-content:flex-end;align-items:center;overflow:hidden;padding:4px}.score-arrow{flex:none;width:34px;height:34px;display:grid;place-items:center;background:#0003;font-size:.95rem}.score-drawer:not(.is-open) .score-arrow{animation:score-nudge 1.6s steps(2) infinite}@keyframes score-nudge{50%{transform:translateY(-3px)}}.score-body{max-height:min(60dvh,520px);overflow-y:auto;padding:12px 14px 16px;display:flex;flex-direction:column;gap:10px}.score-sub{font-size:.9rem;margin-top:4px}.player-no{width:18px;flex:none;text-align:center;font:700 .9rem var(--font-pixel);color:var(--muted)}.player-level{margin-left:6px;font:400 .72rem var(--font-pixel);color:var(--muted)}.tone-next{color:var(--text);font-weight:600}.half-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.half-results li{display:flex;justify-content:space-between;gap:10px;padding:6px 8px;background:var(--surface-2);font-size:.9rem}.half-results li.is-running{box-shadow:inset 4px 0 0 var(--accent)}.half-results b{font-weight:600;text-align:right}.recent-rounds{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.85rem}.recent-rounds li{display:flex;gap:8px}.recent-rounds li>span:first-child{flex:none;width:26px}.recent-main{display:flex;flex-direction:column;gap:1px;min-width:0}.recent-throw{font-weight:600}.board-players .half-results{margin-top:12px}.test-panel{background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.rig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:4px}.rig-list{list-style:none;margin:0;padding:0;font-size:.88rem;display:flex;flex-direction:column;gap:2px}.alarm-overlay{position:fixed;inset:0;z-index:70;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:calc(var(--safe-top) + 24px) 24px calc(var(--safe-bottom) + 24px);border:0;background:#b3202a;color:#fff;text-align:center;cursor:pointer;animation:alarm-flash .5s steps(1) infinite}.alarm-overlay.is-drinks{background:var(--gold);color:#2b1d12;animation:none}@keyframes alarm-flash{50%{background:#5a0d14}}.alarm-title{font:700 clamp(3.4rem,18vw,8rem) var(--font-pixel);line-height:1}.alarm-text{font:600 clamp(1.3rem,5vw,2.2rem) var(--font-pixel)}.alarm-overlay small{font-size:1rem;max-width:30em}.alarm-results{list-style:none;margin:0;padding:0;width:min(100%,340px);display:flex;flex-direction:column;gap:6px}.alarm-results li{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#ffffff73;font-size:1rem;text-align:left}.alarm-results li span:not(.mini-dice){flex:1;min-width:0;overflow-wrap:anywhere}.alarm-results li.is-loser{background:#b3202a;color:#fff}.alarm-banner{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:var(--px);background:color-mix(in srgb,var(--neg) 20%,var(--surface));box-shadow:0 0 0 var(--px) var(--neg);font-size:.92rem}.alarm-picker{display:flex;flex-direction:column;align-items:center;gap:8px}.alarm-dice{display:flex;gap:10px}.alarm-dice button{background:none;border:0;padding:0;cursor:pointer}.round-summary.is-alarm{--b: var(--neg)}.tone-alarm{color:var(--neg);font-weight:600}.drinks-list{font:600 1rem var(--font-pixel);text-align:center}.rule-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.scorebar{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:10px;padding:10px 14px;align-items:center}.scorebar>div{display:flex;flex-direction:column;gap:2px;font-size:.8rem}.scorebar b{font:700 1.1rem var(--font-pixel)}.chip-pile{display:inline-flex;align-items:center;gap:1px;flex-wrap:wrap}.chip-pile b{margin-left:5px;font:700 .95rem var(--font-pixel)}.chips-empty{color:var(--muted);font-family:var(--font-pixel)}.watch-turn{display:flex;align-items:center;gap:12px;flex-wrap:wrap;overflow:hidden}.watch-dice{display:flex;gap:6px}.player-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.player-row{display:flex;align-items:center;gap:10px;padding:8px;background:var(--surface-2)}.player-row.is-current{background:var(--accent-soft);box-shadow:inset 4px 0 0 var(--accent)}.player-row.is-out{opacity:.6}.player-main{flex:1;min-width:0;display:flex;flex-direction:column}.player-name{font-weight:600}.player-status{font-size:.82rem;color:var(--muted)}.tone-turn{color:var(--accent-strong);font-weight:600}:root[data-theme=dark] .tone-turn{color:var(--accent)}.tone-safe{color:var(--pos)}.round-summary{background:var(--surface);padding:12px 14px;margin:var(--px);display:flex;flex-direction:column;gap:8px}.half-lost{font:700 1.05rem var(--font-pixel);color:var(--neg)}.round-results{display:flex;flex-wrap:wrap;gap:8px}.round-result{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;padding:3px 6px;background:var(--surface-2)}.round-result.is-loser{box-shadow:inset 0 -3px 0 var(--neg)}.round-result.is-winner{box-shadow:inset 0 -3px 0 var(--pos)}.rules{display:flex;flex-direction:column;gap:10px;font-size:.92rem}.rules-table{width:100%;border-collapse:collapse}.rules-table td{padding:5px 4px;border-bottom:2px dashed var(--surface-2);vertical-align:top}.rules-table td:first-child{font-weight:600}.finale{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:26px 16px}.reward{margin-top:6px;display:flex;flex-direction:column;align-items:center;gap:4px}.reward strong{font:700 1.7rem var(--font-pixel);color:var(--accent-strong)}:root[data-theme=dark] .reward strong{color:var(--accent)}.reward ul{list-style:none;padding:0;margin:0;font-size:.88rem;color:var(--muted)}.skin-hero{display:flex;flex-direction:column;gap:14px}.skin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.skin-tile,.color-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;background:var(--surface-2);border:0;cursor:pointer;text-align:center;color:var(--text)}.skin-tile small,.color-tile small{font-size:.72rem;color:var(--muted);line-height:1.2;display:inline-flex;align-items:center;gap:3px}.skin-name{font:600 .88rem var(--font-pixel)}.skin-tile.is-active,.color-tile.is-active{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent)}.skin-tile.is-locked,.color-tile.is-locked{cursor:not-allowed}.skin-tile.is-locked canvas,.color-tile.is-locked canvas{filter:grayscale(1) brightness(.7);opacity:.5}.admin-test-on{background:color-mix(in srgb,var(--warn) 18%,var(--surface))}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.table-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 6px 10px;background:var(--surface-2);border:0;cursor:pointer;text-align:center;color:var(--text)}.table-tile small{font-size:.72rem;color:var(--muted);line-height:1.2;display:inline-flex;align-items:center;gap:3px}.table-tile.is-active{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent)}.table-tile.is-locked{cursor:not-allowed}.table-tile.is-locked .table-swatch{filter:grayscale(1) brightness(.7);opacity:.55}.table-swatch{width:100%;height:76px;display:grid;place-items:center;overflow:hidden;image-rendering:pixelated;box-shadow:inset 0 0 0 2px var(--line)}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.board{min-height:100dvh;padding:calc(var(--safe-top) + 16px) 20px calc(var(--safe-bottom) + 20px);display:flex;flex-direction:column;gap:18px}.board-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.board-brand{display:flex;align-items:center;gap:10px}.board-brand .logo-text{font-size:2rem}.board-title{display:flex;flex-direction:column;align-items:center}.board-half{font:700 clamp(1.6rem,4vw,2.8rem) var(--font-pixel)}.board-actions{display:flex;align-items:center;gap:10px}.board-lobby{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center}.giant-code{font:700 clamp(4rem,16vw,11rem) var(--font-pixel);letter-spacing:.2em;line-height:1;color:var(--accent-strong);padding-left:.2em}:root[data-theme=dark] .giant-code{color:var(--gold)}.giant-loser{font:700 clamp(2.6rem,9vw,6rem) var(--font-pixel);color:var(--neg);line-height:1.05}.board-lobby-players{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.board-chip{display:flex;flex-direction:column;align-items:center;gap:6px;font:600 1.1rem var(--font-pixel)}.xp-chip{color:var(--pos);font-size:.95rem}.board-grid{display:grid;grid-template-columns:1.1fr 1fr;grid-template-areas:"spot players" "last players";gap:18px;align-items:start}.board-spot{grid-area:spot;display:flex;flex-direction:column;gap:16px;align-items:center;overflow:hidden}.board-pot{display:flex;flex-direction:column;align-items:center;gap:6px}.board-current{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.board-current h2{font-size:2rem}.board-players{grid-area:players}.board-last{grid-area:last}.player-rows.is-big .player-row{padding:12px}.player-rows.is-big .player-name{font:600 1.35rem var(--font-pixel)}.player-rows.is-big .player-status{font-size:1rem}@media(max-width:860px){.board-grid{grid-template-columns:1fr;grid-template-areas:"spot" "players" "last"}}.prost-hero{display:flex;align-items:center;gap:16px;padding:16px;margin:var(--px);border:0;background:var(--gold);color:#2b1d12;cursor:pointer;text-align:left}.prost-hero strong{display:block;font:700 1.5rem var(--font-pixel)}.prost-hero small{font-size:.88rem}.prost-hero:active{transform:translateY(2px)}.quick-kinds{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.quick-kind{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;background:var(--surface);border:0;cursor:pointer;box-shadow:0 0 0 2px var(--line);margin:2px}.quick-kind small{font-size:.66rem}.quick-kind:active{transform:translateY(2px)}@media(max-width:380px){.quick-kinds{grid-template-columns:repeat(3,1fr)}}.kind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.kind-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 2px;background:var(--surface-2);border:0;cursor:pointer;font:600 .78rem var(--font-pixel);color:var(--text)}.kind-tile.is-active{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent)}.feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.checkin{display:flex;gap:12px;padding:12px;background:var(--surface);box-shadow:0 -2px 0 0 var(--line),0 2px 0 0 var(--line),-2px 0 0 0 var(--line),2px 0 0 0 var(--line);margin:2px}.feed.compact .checkin{background:var(--surface-2);box-shadow:none}.checkin-avatar{position:relative;background:none;border:0;padding:0 4px 4px 0;cursor:pointer;align-self:flex-start}.checkin-sprite{position:absolute;right:-6px;bottom:-6px;background:var(--surface);padding:2px;box-shadow:0 0 0 2px var(--line)}.checkin-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.checkin-note{font-style:italic;overflow-wrap:anywhere}.checkin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.prost-btn{border:0;background:var(--surface-2);padding:5px 10px;cursor:pointer;font:600 .85rem var(--font-pixel);color:var(--text);box-shadow:0 0 0 2px var(--line);margin:2px}.prost-btn.is-active{background:var(--gold);color:#2b1d12}.count-row{display:flex;flex-wrap:wrap;gap:12px}.count-chip{display:inline-flex;align-items:center;gap:6px;font:700 1.2rem var(--font-pixel)}.day-chart{display:grid;grid-template-columns:repeat(14,1fr);gap:4px;align-items:end;height:130px}.day-col{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.day-col small{font-size:.65rem;color:var(--muted)}.day-bar{flex:1;width:100%;display:flex;flex-direction:column-reverse;background:var(--surface-2)}.day-bar span{display:block;width:100%}.seg-drink{background:var(--gold)}.seg-soft{background:#6fb7e0}.seg-smoke{background:#9b8f80}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.78rem;color:var(--muted);margin-top:10px}.legend i{display:inline-block;width:10px;height:10px;margin-right:4px;vertical-align:-1px}.bar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.bar-list li{display:grid;grid-template-columns:24px 80px 1fr 36px;align-items:center;gap:8px;font-size:.9rem}.bar-list b{font-family:var(--font-pixel);text-align:right}.bar{height:12px;background:var(--surface-2)}.bar span{display:block;height:100%;background:var(--accent)}.leaderboard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.leaderboard li{display:flex;align-items:center;gap:10px}.leaderboard b{font:700 1.2rem var(--font-pixel)}.rank{width:26px;text-align:center;font:700 1rem var(--font-pixel)}.lb-kinds{display:flex;flex-wrap:wrap;gap:6px}.lb-kinds span{display:inline-flex;align-items:center;gap:2px}.input-sm.input{width:auto;max-width:170px}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-head strong{font:700 1.15rem var(--font-pixel);text-transform:capitalize}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-wd{text-align:center;font:600 .75rem var(--font-pixel);color:var(--muted);padding:4px 0}.cal-day{aspect-ratio:1;min-height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:var(--surface-2);border:0;cursor:pointer;font:600 .95rem var(--font-pixel);color:var(--text);padding:0}.cal-day.is-other{opacity:.4}.cal-day.is-today{box-shadow:inset 0 0 0 3px var(--accent)}.cal-day.is-selected{background:var(--accent);color:var(--on-accent)}.cal-dots{display:flex;gap:2px;height:6px}.cal-dots i{width:6px;height:6px;background:var(--neg)}.cal-day.is-selected .cal-dots i{background:var(--on-accent)}.cal-dots i.open{background:transparent;box-shadow:inset 0 0 0 2px var(--warn)}.cal-dots i.cancelled{background:var(--muted)}.event-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.event-card{display:flex;gap:12px;padding:10px;background:var(--surface);cursor:pointer;box-shadow:0 -2px 0 0 var(--line),0 2px 0 0 var(--line),-2px 0 0 0 var(--line),2px 0 0 0 var(--line);margin:2px}.card .event-card{background:var(--surface-2);box-shadow:none}.event-card.is-cancelled{opacity:.55}.event-card.is-cancelled strong{text-decoration:line-through}.event-date{flex:none;width:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--line);color:#f6f0dd;padding:6px 2px;line-height:1.05;font-size:.78rem}.event-date b{font-size:1.5rem;color:var(--gold)}.event-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.event-main small{font-size:.82rem}.event-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.event-tags .tag{margin-left:0}.event-when{display:flex;align-items:center;gap:8px}.vote-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.vote-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:40px;border:0;background:var(--surface-2);cursor:pointer;font:600 .88rem var(--font-pixel);color:var(--text);box-shadow:0 0 0 2px var(--line);margin:2px}.vote-yes.is-active{background:var(--pos);color:#fff}.vote-maybe.is-active{background:var(--warn);color:#2b1d12}.vote-no.is-active{background:var(--neg);color:#fff}.vote-lists{display:flex;flex-direction:column;gap:12px;margin-top:14px}.vote-list{display:flex;flex-direction:column;gap:6px}.option-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.option-item{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--surface-2)}.option-item.is-best{box-shadow:inset 4px 0 0 var(--pos)}.option-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.option-count{font:600 .85rem var(--font-pixel);color:var(--muted)}.money-total{display:flex;align-items:center;gap:14px}.money-total>div{display:flex;flex-direction:column}.money-big{font-size:1.7rem;font-weight:700}.group-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.group-item{display:flex;align-items:center;gap:12px}.group-emoji{font-size:1.8rem;width:44px;height:44px;display:grid;place-items:center;background:var(--surface-2);flex:none}.my-balance{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.my-balance+.action-row{justify-content:center}.balance-list,.settle-list,.split-list,.pick-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.balance-list li,.settle-list li,.split-item{display:flex;align-items:center;gap:10px}.balance-list b{font-family:var(--font-pixel);min-width:84px;text-align:right}.balance-bar{width:30%;height:10px;position:relative;background:var(--surface-2)}.balance-bar span{position:absolute;top:0;bottom:0}.pos-bar{left:50%;background:var(--pos)}.neg-bar{right:50%;background:var(--neg)}.settle-list b{font-family:var(--font-pixel)}.tx-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.tx{display:flex;align-items:center;gap:12px;padding:12px}.tx-date{flex:none;width:46px;font:600 .8rem var(--font-pixel);color:var(--muted);text-align:center}.tx-share b{font-family:var(--font-pixel)}.tx-payment{background:var(--surface-2)}.pay-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px}.pay-arrow{font:700 1.4rem var(--font-pixel);padding-bottom:12px}.split-item{padding:6px 0;border-bottom:2px dashed var(--surface-2)}.pick-item{display:flex;align-items:center;gap:10px;cursor:pointer}.emoji-row{display:flex;flex-wrap:wrap;gap:6px}.emoji-btn{width:44px;height:44px;font-size:1.4rem;border:0;background:var(--surface-2);cursor:pointer}.emoji-btn.is-active{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent)}.profile-head{display:flex;align-items:center;gap:16px}.profile-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.accent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:8px}.accent-swatch{position:relative;aspect-ratio:1;border:0;cursor:pointer;box-shadow:0 0 0 2px var(--line);margin:3px}.accent-swatch.is-active{box-shadow:0 0 0 2px var(--line),0 0 0 6px var(--text)}.accent-swatch.custom{display:grid;place-items:center;font:700 1.3rem var(--font-pixel);color:var(--on-accent)}.accent-swatch.custom input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.link-box{display:block;word-break:break-all;padding:10px;background:var(--surface-2);font-size:.85rem}.notif-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.notif{display:flex;gap:12px;align-items:flex-start;padding:12px}.notif.is-unread{background:var(--accent-soft)}.notif-icon{font-size:1.4rem}.notif .list-main span{font-size:.92rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
