@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f4ef;--bg-2:#eeebe3;--surface:#fff;--surface-2:#faf9f6;--ink:#17161a;--ink-2:#4a4750;--muted:#8a8690;--line:#e2ded4;--accent:#ff5a36;--accent-soft:#ffe3da;--accent-ink:#fff;--yellow:#ffd23f;--yellow-ink:#2a2200;--green:#22a565;--green-soft:#d9f5e6;--blue:#3d7eff;--pink:#ff6fae;--violet:#8b5cf6;--danger:#e5484d;--shadow-sm:0 1px 2px #17161a0f, 0 2px 6px #17161a0a;--shadow:0 2px 4px #17161a0a, 0 12px 32px -8px #17161a24;--shadow-lg:0 24px 60px -12px #17161a47;--mess-face:#fff;--mess-ink:#17161a;--mess-stroke:#17161a;--radius:22px;--radius-sm:14px;--font-display:"Bricolage Grotesque Variable", "Inter Variable", system-ui, sans-serif;--font-body:"Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--page-w:1120px;--gutter:clamp(16px, 4vw, 32px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#111014;--bg-2:#18171c;--surface:#1d1c22;--surface-2:#232229;--ink:#f3f1ea;--ink-2:#c8c4cd;--muted:#8d8996;--line:#2e2c35;--accent:#ff7452;--accent-soft:#3a211b;--accent-ink:#1a0d09;--yellow:#ffd23f;--green:#3ccf86;--green-soft:#15301f;--blue:#6c9bff;--pink:#ff86bd;--violet:#a78bfa;--danger:#ff6b70;--shadow-sm:0 1px 2px #0006;--shadow:0 2px 4px #0000004d, 0 12px 32px -8px #0009;--shadow-lg:0 24px 60px -12px #000000bf;--mess-face:#fff;--mess-ink:#111014;--mess-stroke:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;transition:background-color .4s var(--ease-out), color .4s var(--ease-out);margin:0;font-size:16px;line-height:1.55;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;line-height:1.05}p{margin:0}a{color:inherit}button{font:inherit;color:inherit}::selection{background:var(--yellow);color:var(--yellow-ink)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:8px}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.app{flex-direction:column;min-height:100dvh;display:flex}.page{flex:1;width:100%}.container{width:100%;max-width:var(--page-w);padding:0 var(--gutter);margin:0 auto}.section{padding:clamp(48px,9vw,96px) 0}.section-head{flex-direction:column;gap:10px;max-width:620px;margin-bottom:32px;display:flex}.section-head h2{font-size:clamp(30px,5vw,48px)}.section-head p{color:var(--ink-2);font-size:17px}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.header{z-index:50;-webkit-backdrop-filter:saturate(1.6)blur(14px);background:color-mix(in oklab, var(--bg) 78%, transparent);border-bottom:1px solid #0000;transition:border-color .3s,background-color .4s;position:sticky;top:0}.header.scrolled{border-bottom-color:var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:12px;height:64px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.03em;align-items:center;gap:10px;font-size:21px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mess{width:34px;height:34px;transition:transform .4s var(--ease-spring)}.brand:hover .brand-mess{transform:rotate(-12deg)scale(1.08)}.header-actions{align-items:center;gap:8px;display:flex}.btn{--btn-bg:var(--surface);--btn-ink:var(--ink);--btn-line:var(--line);border:1.5px solid var(--btn-line);background:var(--btn-bg);min-height:44px;color:var(--btn-ink);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .25s var(--ease-spring), box-shadow .25s var(--ease-out), background-color .25s, border-color .25s, opacity .2s;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.btn:active{box-shadow:none;transform:translateY(0)scale(.96)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{--btn-bg:var(--ink);--btn-ink:var(--bg);--btn-line:var(--ink)}.btn-accent{--btn-bg:var(--accent);--btn-ink:#fff;--btn-line:var(--accent)}.btn-ghost{--btn-bg:transparent;--btn-line:transparent}.btn-ghost:hover{--btn-bg:var(--surface);--btn-line:var(--line);box-shadow:none}.btn-sm{min-height:36px;padding:0 14px;font-size:14px}.btn-lg{min-height:54px;padding:0 28px;font-size:17px}.icon-btn{border-radius:50%;width:42px;height:42px;padding:0}.seg{background:var(--bg-2);border:1px solid var(--line);border-radius:999px;gap:2px;padding:4px;display:inline-flex;position:relative}.seg button{cursor:pointer;color:var(--muted);z-index:1;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;transition:color .2s;position:relative}.seg button[aria-pressed=true]{color:var(--ink)}.seg-thumb{background:var(--surface);box-shadow:var(--shadow-sm);z-index:-1;border-radius:999px;position:absolute;inset:0}.chip{background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:background-color .4s,border-color .4s}.hero{padding:clamp(40px,8vw,96px) 0 clamp(32px,6vw,64px);position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;display:grid}.hero h1{letter-spacing:-.045em;margin:18px 0 22px;font-size:clamp(46px,9vw,104px);font-weight:800;line-height:.95}.hero h1 .line{padding-bottom:.06em;display:block;overflow:hidden}.hero h1 .line>span{display:inline-block}.hero h1 .accent{color:var(--accent);font-style:italic}.hero-lead{color:var(--ink-2);max-width:520px;font-size:clamp(17px,2vw,19px)}.hero-ctas{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-stage{aspect-ratio:1;place-items:center;display:grid;position:relative}.hero-blob{background:radial-gradient(circle at 30% 30%, var(--yellow), transparent 60%), radial-gradient(circle at 70% 70%, var(--pink), transparent 55%), radial-gradient(circle at 70% 20%, var(--accent), transparent 50%);filter:blur(36px);opacity:.55;will-change:transform;border-radius:42% 58% 55% 45%/48% 42% 58% 52%;animation:14s ease-in-out infinite alternate blob;position:absolute;inset:8%}[data-theme=dark] .hero-blob{opacity:.32}@keyframes blob{0%{transform:rotate(0)scale(1)}to{transform:rotate(40deg)scale(1.08)}}.hero-mess{width:min(78%,340px);position:relative}.speech{background:var(--surface);border:1.5px solid var(--line);box-shadow:var(--shadow);white-space:nowrap;z-index:3;border-radius:18px 18px 18px 4px;padding:10px 14px;font-size:15px;font-weight:600;position:absolute;top:2%;right:4%}.marquee{border-top:1.5px solid var(--line);border-bottom:1.5px solid var(--line);background:var(--surface);white-space:nowrap;padding:14px 0;overflow:hidden}.marquee-track{font-family:var(--font-display);letter-spacing:-.02em;gap:40px;font-size:20px;font-weight:700;animation:38s linear infinite marquee;display:inline-flex}.marquee-track span{align-items:center;gap:40px;display:inline-flex}.marquee-track span:after{content:"✦";color:var(--accent);font-size:14px}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}.games-grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.game-card{--tint:var(--accent);isolation:isolate;cursor:pointer;flex-direction:column;grid-column:span 4;gap:10px;min-height:250px;padding:22px;text-decoration:none;display:flex;position:relative;overflow:hidden}.game-card.big{grid-area:span 2/span 8;min-height:420px}.game-card.small{cursor:default;grid-column:span 3;min-height:180px}.game-card:before{content:"";aspect-ratio:1;background:var(--tint);opacity:.12;z-index:-1;width:80%;transition:transform .6s var(--ease-out), opacity .4s;border-radius:50%;position:absolute;inset:auto -30% -60% auto}.game-card:hover:before{opacity:.2;transform:scale(1.5)}.game-card h3{margin-top:auto;font-size:26px}.game-card.big h3{font-size:clamp(32px,4.5vw,48px)}.game-card p{color:var(--ink-2);font-size:15px}.game-card .row{justify-content:space-between;align-items:center;gap:8px;display:flex}.game-card .go{background:var(--ink);width:44px;height:44px;color:var(--bg);transition:transform .35s var(--ease-spring);border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;display:grid}.game-card:hover .go{transform:rotate(-45deg)scale(1.1)}.game-card .art{flex:1;place-items:center;min-height:90px;display:grid}.game-card.small h3{font-size:19px}.game-card.small p{font-size:13.5px}.soon-badge{position:absolute;top:16px;right:16px}.steps{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.step{flex-direction:column;gap:8px;padding:24px;display:flex}.step .num{font-family:var(--font-display);color:var(--accent);font-size:54px;font-weight:800;line-height:1}.step h3{font-size:22px}.step p{color:var(--ink-2)}.footer{border-top:1.5px solid var(--line);color:var(--muted);margin-top:40px;padding:32px 0 110px;font-size:14px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer .brand{color:var(--ink);font-size:17px}.toasts{left:50%;bottom:max(20px, env(safe-area-inset-bottom));z-index:200;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:calc(100% - 32px);display:flex;position:fixed;transform:translate(-50%)}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow-lg);text-align:center;border-radius:14px;max-width:440px;padding:12px 18px;font-size:14.5px;font-weight:600}.game-shell{padding-top:24px;padding-bottom:64px}.game-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.game-top h1{font-size:clamp(28px,5vw,44px)}.game-title{align-items:center;gap:12px;display:flex}.game-panel{text-align:center;flex-direction:column;align-items:center;gap:20px;padding:clamp(20px,4vw,40px);display:flex}.howto{color:var(--ink-2);max-width:520px}.challenge-banner{border-radius:var(--radius-sm);background:var(--yellow);color:var(--yellow-ink);align-items:center;gap:12px;margin-bottom:18px;padding:12px 16px;font-weight:600;display:flex}.stat-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.stat{border-radius:var(--radius-sm);background:var(--bg-2);flex-direction:column;align-items:center;min-width:92px;padding:10px 16px;display:flex}.stat b{font-family:var(--font-display);font-size:22px}.stat span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.mono{font-variant-numeric:tabular-nums}.nf{text-align:center;place-items:center;gap:18px;padding:64px 0;display:grid}.nf h1{font-size:clamp(40px,8vw,80px)}.nf p{color:var(--ink-2);max-width:460px}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.hero-stage{order:-1;width:100%;max-width:250px;margin:0 auto}.game-card,.game-card.big{grid-column:span 12}.game-card.big{min-height:360px}.game-card.small{grid-column:span 6}.steps{grid-template-columns:1fr}}@media (width<=520px){.game-card.small{grid-column:span 12;min-height:0}.header .seg button{padding:6px 9px}.hero-ctas .btn{flex:1}}.footer-credit a{color:var(--ink-2);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px}.footer-credit a:hover{color:var(--accent)}.footer-credit{flex-wrap:wrap;align-items:center;gap:4px 10px;display:inline-flex}.footer-credit a.footer-gh{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);transition:border-color .2s, transform .2s var(--ease-out);border-radius:999px;align-items:center;gap:7px;padding:4px 12px 4px 4px;font-weight:700;text-decoration:none;display:inline-flex}.footer-credit a.footer-gh:hover{color:var(--ink);border-color:var(--accent);transform:translateY(-1px)}.footer-gh img{background:var(--bg-2);border-radius:50%;width:26px;height:26px;display:block}.changelog{max-width:760px;padding-top:32px;padding-bottom:60px}.changelog-head{align-items:center;gap:16px;margin-bottom:22px;display:flex}.changelog-head h1{font-family:var(--font-display);margin:0;font-size:clamp(34px,6vw,54px);line-height:1}.changelog-mess{flex-shrink:0;width:72px;height:72px}.feed{border-left:2px dashed var(--line);flex-direction:column;gap:16px;margin:0;padding:0 0 0 26px;list-style:none;display:flex}.feed-item{grid-template-columns:44px 1fr;gap:12px;padding:18px 20px;display:grid;position:relative}.feed-item:before{content:"";background:var(--muted);border:3px solid var(--bg);border-radius:50%;width:12px;height:12px;position:absolute;top:26px;left:-34px}.feed-item.fresh{border-color:color-mix(in oklab, var(--accent) 60%, transparent)}.feed-item.fresh:before{background:var(--accent)}.feed-emoji{font-size:30px;line-height:1}.feed-meta{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.feed-new{color:var(--accent);border-color:color-mix(in oklab, var(--accent) 50%, transparent);text-transform:none;letter-spacing:0}.feed-item h2{font-family:var(--font-display);margin:4px 0 8px;font-size:22px}.feed-item ul,.whatsnew-item ul{flex-direction:column;gap:4px;margin:0;padding-left:18px;line-height:1.45;display:flex}.feed-end{text-align:center;padding:24px 0}.whatsnew{flex-direction:column;gap:14px;width:min(92vw,520px);max-height:86dvh;padding:22px;display:flex;overflow:hidden}.whatsnew-head{align-items:center;gap:12px;display:flex}.whatsnew-head h2{font-family:var(--font-display);margin:2px 0 0;font-size:28px}.whatsnew-mess{flex-shrink:0;width:54px;height:54px}.whatsnew-item b small{color:var(--muted);margin-left:6px;font-weight:600}.whatsnew-item ul{margin-top:6px}.whatsnew-list{overscroll-behavior:contain;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.whatsnew-list.many{margin-right:-10px;padding-bottom:20px;padding-right:10px;-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),#0000);mask-image:linear-gradient(#000 calc(100% - 28px),#0000)}.whatsnew-list.many .whatsnew-item+.whatsnew-item{border-top:1px dashed var(--line);margin-top:12px;padding-top:12px}.stats{flex-direction:column;gap:16px;max-width:980px;padding-top:28px;padding-bottom:60px;display:flex}.stats h1{font-family:var(--font-display);margin:0;font-size:clamp(34px,6vw,52px);line-height:1}.stats h2{font-family:var(--font-display);margin:0 0 12px;font-size:18px}.stats .card{padding:18px}.stats-gate{text-align:center;align-items:center;max-width:420px;padding-top:60px}.stats-key{gap:8px;width:100%;display:flex}.stats-key input{flex:1;min-width:0}.stats-head{align-items:center;gap:14px;display:flex}.stats-head>div{flex:1}.stats-mess{flex-shrink:0;width:64px;height:64px}.stats-live{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.stats-live>div:first-child{align-items:center;gap:12px;display:flex}.stats-live>div:first-child b{font-family:var(--font-display);font-size:48px;line-height:1}.stats-dot{background:#2fd47a;border-radius:50%;width:12px;height:12px;animation:1.8s infinite stats-ping;box-shadow:0 0 #2fd47a99}@keyframes stats-ping{70%{box-shadow:0 0 0 12px #2fd47a00}to{box-shadow:0 0 #2fd47a00}}.stats-where{flex-wrap:wrap;gap:6px;display:flex}.stats-where .chip b{margin-left:4px}.stats-tiles{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (width<=560px){.stats-tiles{grid-template-columns:repeat(2,1fr)}}.stats-tile{flex-direction:column;gap:4px;display:flex}.stats-tile b{font-family:var(--font-display);font-size:34px;line-height:1.05}.stats-tile small{color:var(--muted)}.stats-cols{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.stats-legend{color:var(--muted);align-items:center;gap:6px;margin:-6px 0 10px;font-size:12px;display:flex}.sw{border-radius:3px;width:10px;height:10px;display:inline-block}.sw-b{margin-left:10px}.sw-a,.bar-a{background:var(--accent)}.sw-b,.bar-b{background:color-mix(in oklab, var(--accent) 28%, transparent)}.bars{align-items:flex-end;gap:3px;height:160px;display:flex}.bars-hours{height:120px}.bar{background:color-mix(in oklab, var(--line) 50%, transparent);border-radius:4px;flex:1;height:100%;position:relative}.bar span{border-radius:4px;min-height:0;transition:height .4s;position:absolute;bottom:0;left:0;right:0}.bars-x{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.split+.split{margin-top:16px}.split-bar{background:color-mix(in oklab, var(--accent) 28%, transparent);border-radius:99px;height:12px;overflow:hidden}.split-bar span{background:var(--accent);border-radius:99px;height:100%;display:block}.split-legend{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:13px;display:flex}.split-legend b{color:var(--text,inherit)}.ranked{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ranked li{border-radius:8px;justify-content:space-between;gap:10px;padding:6px 10px;font-size:14px;display:flex;position:relative;overflow:hidden}.ranked li>span:not(.ranked-fill),.ranked b{position:relative}.ranked-fill{background:color-mix(in oklab, var(--accent) 16%, transparent);border-radius:8px;position:absolute;inset:0 auto 0 0}.stats-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.stats-check{align-items:center;gap:8px;font-size:14px;display:flex}.stats-note{font-size:12px}.rain-layer{pointer-events:none;z-index:-1;width:100%;height:100%;position:fixed;inset:0}.talk-card{width:min(480px,100%);max-height:calc(100dvh - 32px);padding:22px;overflow:auto}.talk-card form{flex-direction:column;gap:12px;display:flex}.talk-card h3{font-family:var(--font-display);margin:0;font-size:24px}.talk-head{align-items:center;gap:12px;display:flex}.talk-head .hint{margin:4px 0 0}.talk-mess{flex-shrink:0;width:56px;height:56px}.talk-moods{flex-wrap:wrap;gap:6px;display:flex}.talk-mood{border:1.5px solid var(--line);cursor:pointer;width:44px;height:44px;transition:transform .25s var(--ease-spring), border-color .2s, background .2s;background:0 0;border-radius:12px;font-size:22px}.talk-mood:hover{transform:translateY(-2px)}.talk-mood.on{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 14%, transparent);transform:scale(1.08)}.talk-text,.talk-name{box-sizing:border-box;resize:vertical;border:1.5px solid var(--line);width:100%;min-height:110px;color:inherit;font:inherit;background:0 0;border-radius:12px;padding:12px}.talk-name{resize:none;min-height:0;padding:10px 12px}.talk-text:focus,.talk-name:focus{border-color:var(--accent);outline:none}.talk-row{align-items:center;gap:10px;display:flex}.talk-row input{flex:1;min-width:0}.talk-trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.talk-error{color:#e5484d;margin:0;font-size:14px}.talk-privacy{margin:0;font-size:12px}.talk-done{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:10px 0;display:flex}.talk-done .talk-mess{width:84px;height:84px}.stats-notes-head{justify-content:space-between;align-items:center;display:flex}.stats-notes-head h2{align-items:center;gap:8px;display:flex}.stats-new{color:var(--accent)}.inbox{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.inbox-note{border:1.5px solid var(--line);border-radius:12px;padding:12px 14px}.inbox-note.fresh{border-color:color-mix(in oklab, var(--accent) 55%, transparent)}.inbox-note p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0}.inbox-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.inbox-meta b{color:var(--ink)}.inbox-mood{font-size:18px}.inbox-del{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;margin-left:auto;padding:2px 6px;font-size:12px;font-weight:700}.inbox-del.armed{color:#fff;background:#e5484d}.mess-umbrella-wrap{pointer-events:none;transform-origin:50% 90%;width:92%;position:absolute;top:-64%;left:2%}.mess-umbrella{filter:drop-shadow(0 6px 10px #0000002e);width:100%;display:block}.game-glyph{background:var(--tint);color:#fff;min-width:46px;height:46px;font-family:var(--font-display);box-shadow:var(--shadow-sm);border-radius:14px;place-items:center;padding:0 8px;font-size:20px;font-weight:800;display:grid}.menu-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.menu-label{color:var(--muted);font-size:14px;font-weight:600}.menu-actions,.diff-bests{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.diff-bests .stat{opacity:.55;transition:opacity .25s, transform .25s var(--ease-spring)}.diff-bests .stat.on{opacity:1;outline:2px solid var(--tint);transform:translateY(-2px)}.play-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.round-head{width:100%;color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-weight:600;display:flex}.round-head .danger,.hint.danger{color:var(--danger)}.hint{color:var(--muted);font-size:14px}.banner-mess{flex-shrink:0;width:34px;height:34px}.dots-row{gap:6px;display:inline-flex}.dots-row i{background:var(--line);border-radius:50%;width:10px;height:10px;transition:background .3s}.dots-row i.ok{background:var(--green)}.dots-row i.x{background:var(--danger)}.board-text{font-family:var(--font-display);fill:var(--muted);color:var(--muted);font-size:22px;font-weight:700}.board-text.big{fill:var(--ink);font-size:56px}.inline-form{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.num-input{border:2px solid var(--line);background:var(--surface-2);width:200px;height:54px;color:var(--ink);text-align:center;border-radius:16px;outline:none;font-size:24px;font-weight:700;transition:border-color .2s,box-shadow .2s}.num-input:focus{border-color:var(--tint);box-shadow:0 0 0 4px color-mix(in oklab, var(--tint) 25%, transparent)}.result{position:relative;overflow:hidden}.result-mess{width:86px;height:86px}.verdict{max-width:560px;font-size:clamp(24px,4vw,34px)}.best-chip{background:var(--yellow);color:var(--yellow-ink);border-color:#0000}.friend-cmp{font-size:18px;font-weight:700}.scorebar{flex-direction:column;gap:10px;width:100%;max-width:560px;display:flex}.scorebar-num{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(54px,11vw,88px);font-weight:800;line-height:1}.scorebar-num small{color:var(--muted);letter-spacing:0;margin-left:6px;font-size:.24em}.scorebar-track{background:var(--bg-2);border:1px solid var(--line);border-radius:999px;height:18px;position:relative;overflow:visible}.scorebar-fill{background:linear-gradient(90deg,#e5484d,#ffb020 40%,#ffd23f 60%,#22a565 90%) 0 0/560px 100%;border-radius:999px;height:100%}.scorebar-mark{background:var(--ink);border-radius:2px;width:3px;margin-left:-1.5px;position:absolute;top:-6px;bottom:-6px}.scorebar-mark span{white-space:nowrap;color:var(--muted);font-size:11px;font-weight:700;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.scorebar-mark.friend{background:var(--accent)}.scorebar-mark.friend span{color:var(--accent);top:auto;bottom:calc(100% + 4px)}.scorebar-scale{color:var(--muted);justify-content:space-between;margin-top:14px;font-size:12px;display:flex}.confetti{pointer-events:none;z-index:5;position:absolute;top:30%;left:50%}.confetti i{display:block;position:absolute}.stop10-clock{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(72px,18vw,150px);font-weight:800;line-height:1;transition:filter .4s,color .4s}.stop10-clock.hidden{color:var(--muted);filter:blur(2px)}.stop10-diff{font-size:20px;font-weight:700}.big-round-btn{background:var(--green);color:#fff;width:168px;height:168px;font-family:var(--font-display);cursor:pointer;box-shadow:0 10px 0 color-mix(in oklab, var(--green) 60%, #000), var(--shadow);-webkit-tap-highlight-color:transparent;border:0;border-radius:50%;font-size:28px;font-weight:800;transition:transform 80ms,box-shadow 80ms,background .25s}.big-round-btn.stop{background:var(--danger);box-shadow:0 10px 0 color-mix(in oklab, var(--danger) 60%, #000), var(--shadow)}.big-round-btn:active{box-shadow:0 2px 0 color-mix(in oklab, var(--green) 60%, #000);transform:translateY(8px)}.reaction-pad{border-radius:var(--radius);cursor:pointer;width:100%;min-height:320px;color:var(--ink);-webkit-user-select:none;user-select:none;touch-action:manipulation;border:0;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:background-color 80ms;display:flex}.reaction-pad.live{color:#fff}.reaction-label{font-family:var(--font-display);font-size:clamp(34px,7vw,64px);font-weight:800}.reaction-sub{opacity:.7;font-weight:600}.pixel-board,.dots-board,.angle-board,.circle-board{border-radius:var(--radius-sm);background:var(--surface-2);border:1.5px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;width:100%;max-width:720px}.pixel-board{cursor:crosshair}.circle-board{cursor:crosshair;max-width:520px}.hex-swatches{justify-content:center;gap:18px;width:100%;display:flex}.hex-swatch{max-width:260px;color:var(--ink-2);flex-direction:column;flex:1;gap:8px;font-size:14px;display:flex}.hex-color{aspect-ratio:1.3;border-radius:var(--radius-sm);border:1.5px solid var(--line);font-family:var(--font-display);color:var(--muted);place-items:center;font-size:54px;font-weight:800;display:grid;position:relative;overflow:hidden}.hex-color.hidden{background:repeating-linear-gradient(45deg, var(--bg-2) 0 12px, var(--surface-2) 12px 24px)}.hex-timer{transform-origin:0;background:#fffc;height:6px;position:absolute;bottom:0;left:0;right:0}.sliders{flex-direction:column;gap:14px;width:100%;max-width:540px;display:flex}.slider{text-align:left;color:var(--ink-2);flex-direction:column;gap:6px;width:100%;font-size:14px;font-weight:600;display:flex}.slider.wide{max-width:540px}.slider input[type=range]{appearance:none;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;outline:none;width:100%;height:16px}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--ink);width:28px;height:28px;box-shadow:var(--shadow-sm);cursor:grab;transition:transform .15s var(--ease-spring);background:#fff;border-radius:50%}.slider input[type=range]::-webkit-slider-thumb:active{transform:scale(1.15)}.slider input[type=range]::-moz-range-thumb{border:3px solid var(--ink);cursor:grab;background:#fff;border-radius:50%;width:24px;height:24px}.mem-grid{gap:10px;width:min(100%,420px);display:grid}.mem-cell{aspect-ratio:1;border:1.5px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:14px;transition:background-color .12s,box-shadow .12s}.mem-cell:disabled{cursor:default}.mem-cell.lit{background:var(--tint);box-shadow:0 0 0 4px color-mix(in oklab, var(--tint) 30%, transparent), 0 0 30px color-mix(in oklab, var(--tint) 50%, transparent)}.mem-cell.wrong{background:var(--danger)}.lives{color:var(--danger);letter-spacing:2px}.timebar{background:var(--bg-2);border-radius:999px;width:100%;height:8px;overflow:hidden}.timebar div{background:var(--tint);transform-origin:0;height:100%;transition:transform .1s linear}.math-q{width:100%;height:90px;font-family:var(--font-display);place-items:center;font-size:clamp(42px,9vw,68px);font-weight:800;display:grid;position:relative;overflow:hidden}.math-q span{position:absolute}.aim-board{border-radius:var(--radius-sm);background:var(--surface-2);border:1.5px solid var(--line);cursor:crosshair;touch-action:manipulation;place-items:center;width:100%;height:min(60vh,460px);display:grid;position:relative;overflow:hidden}.aim-target{cursor:crosshair;background:radial-gradient(circle, #fff 0 18%, var(--tint) 19% 42%, #fff 43% 58%, var(--tint) 59%);box-shadow:var(--shadow);border:0;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.aim-pop{border:3px solid var(--tint);pointer-events:none;border-radius:50%;width:30px;height:30px;margin:-15px 0 0 -15px;position:absolute}.m24-tiles{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;min-height:110px;display:flex}.m24-tile{border:2px solid var(--line);background:var(--surface-2);min-width:96px;height:96px;font-family:var(--font-display);cursor:pointer;box-shadow:0 6px 0 var(--line);border-radius:22px;padding:0 12px;font-size:40px;font-weight:800;transition:box-shadow .15s,border-color .15s,background .15s}.m24-tile.frac{font-size:28px}.m24-tile.sel{border-color:var(--tint);background:color-mix(in oklab, var(--tint) 14%, var(--surface));box-shadow:0 6px 0 color-mix(in oklab, var(--tint) 60%, #000)}.m24-tile.won{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 6px 0 color-mix(in oklab, var(--green) 60%, #000)}.m24-ops{gap:10px;display:flex}.m24-op{border:2px solid var(--line);background:var(--surface);cursor:pointer;width:64px;height:64px;transition:transform .2s var(--ease-spring), background .2s, color .2s;border-radius:50%;font-size:30px;font-weight:700}.m24-op:not(:disabled):hover{transform:scale(1.08)}.m24-op.sel{background:var(--ink);color:var(--bg);border-color:var(--ink)}.m24-op:disabled{opacity:.4;cursor:not-allowed}.bubble-sheet{border-radius:var(--radius-sm);background:color-mix(in oklab, var(--blue) 10%, var(--surface-2));touch-action:none;-webkit-user-select:none;user-select:none;gap:6px;width:min(100%,720px);padding:14px;display:grid}.bubble{aspect-ratio:1;cursor:pointer;background:radial-gradient(circle at 32% 30%, #fffffff2 0 12%, #ffffff40 30%, color-mix(in oklab, var(--blue) 25%, transparent) 70%);border:0;border-radius:50%;padding:0;position:relative;box-shadow:inset 0 -3px 6px #00000014,0 2px 4px #0000000f}.bubble.popped{background:radial-gradient(circle, transparent 40%, color-mix(in oklab, var(--blue) 18%, transparent) 70%);cursor:default;box-shadow:inset 0 2px 4px #0000001a}.bubble-say{white-space:nowrap;color:var(--accent);pointer-events:none;font-size:13px;font-weight:800;position:absolute;top:0;left:50%;transform:translate(-50%)}.tagline{color:var(--muted);margin-top:22px;font-style:italic}.filters{flex-wrap:wrap;gap:6px;margin-bottom:22px;display:flex}.filter{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;isolation:isolate;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;transition:color .2s;position:relative}.filter.on{color:var(--bg);border-color:var(--ink)}.filter>span:not(.filter-pill){z-index:1;position:relative}.filter-pill{background:var(--ink);z-index:0;border-radius:999px;position:absolute;inset:-1.5px}.gc-wrap{grid-column:span 4;display:flex}.gc-wrap.big{grid-area:span 2/span 8}.gc-wrap>.game-card{flex:1;grid-column:auto}.game-card .glyph{font-family:var(--font-display);color:var(--tint);transition:transform .5s var(--ease-spring);font-size:54px;font-weight:800}.game-card:hover .glyph{transform:scale(1.15)rotate(-6deg)}.park-art{border-radius:18px;width:100%;max-width:460px}.park-art-car{animation:badpark 6s var(--ease-out) infinite}@keyframes badpark{0%{transform:translate(-30px,110px)rotate(0)}35%{transform:translate(150px,110px)rotate(0)}55%{transform:translate(140px,70px)rotate(-60deg)}75%{transform:translate(150px,34px)rotate(-100deg)}90%,to{transform:translate(150px,34px)rotate(-100deg)}}@media (width<=900px){.gc-wrap,.gc-wrap.big{grid-column:span 12}}@media (width>=521px) and (width<=900px){.gc-wrap{grid-column:span 6}}.ticket-face{background:var(--yellow);width:100%;height:100%;color:var(--yellow-ink);box-shadow:0 1px 0 #0000001a, var(--shadow);font-family:var(--font-body);border-radius:10px;flex-direction:column;gap:8px;padding:18px 16px 14px;display:flex;position:relative;overflow:hidden}.ticket-perf{background:radial-gradient(circle at 6px -2px, var(--bg) 5px, transparent 5.5px) repeat-x;background-size:14px 8px;height:8px;position:absolute;top:0;left:0;right:0}.ticket-head{letter-spacing:.06em;text-transform:uppercase;opacity:.85;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex}.ticket-mess{width:28px;height:28px}.ticket-title{font-family:var(--font-display);letter-spacing:-.02em;margin-top:auto;font-size:30px;font-weight:800;line-height:.95}.ticket-sub{opacity:.7;font-size:12px;font-weight:600}.ticket-barcode{opacity:.8;background:repeating-linear-gradient(90deg,#2a2200 0 2px,#0000 2px 4px,#2a2200 4px 7px,#0000 7px 9px,#2a2200 9px 10px,#0000 10px 13px);height:30px;margin-top:6px}.ticket-face.compact{gap:4px;padding:12px 10px 10px}.ticket-face.compact .ticket-title{font-size:17px}.ticket-face.compact .ticket-sub{font-size:9px}.ticket-face.compact .ticket-barcode{height:16px}.ticket-face.compact .ticket-mess{width:20px;height:20px}.ticket-face.compact .ticket-head{font-size:9px}.ticket-reasons{flex-direction:column;flex:1;gap:3px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.tick{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:5px 6px;font-size:14px;font-weight:600;line-height:1.25;transition:background .15s;display:flex}.tick:hover:not(.ro){background:#0000000f}.tick.ro{cursor:default}.tick.ro:not(.on){opacity:.45}.tick input{opacity:0;pointer-events:none;position:absolute}.tick .box{color:#c0261e;border:2px solid #2a2200;border-radius:5px;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.tick .box svg{width:18px;height:18px}.tick:has(input:focus-visible){outline:2px solid #2a2200}.ticket-actions{justify-content:flex-end;gap:8px;padding-top:6px;display:flex}.ticket-actions .btn-primary{--btn-bg:#2a2200;--btn-ink:var(--yellow);--btn-line:#2a2200}.ticket-actions .btn-ghost{--btn-ink:#2a2200}.flip{perspective:1200px;width:100%;height:100%}.flip-inner{width:100%;height:100%;transform-style:preserve-3d;position:relative}.flip-side{backface-visibility:hidden;position:absolute;inset:0}.flip-back{transform:rotateY(180deg)}.modal{z-index:150;-webkit-backdrop-filter:blur(6px);background:#0a0a0e8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{width:min(360px,100%);height:min(560px,100dvh - 32px)}.progress-card{flex-direction:column;gap:12px;width:min(480px,100%);padding:24px;display:flex}.progress-card p{color:var(--ink-2);font-size:15px}.progress-card hr{border:0;border-top:1px solid var(--line);width:100%}.code{resize:none;border:1.5px solid var(--line);background:var(--surface-2);width:100%;color:var(--ink);word-break:break-all;border-radius:12px;padding:10px;font-size:12px}.ticket-toy{grid-template-columns:1fr 220px;align-items:center;gap:22px;display:grid}.lot{aspect-ratio:16/10;border-radius:var(--radius);background:color-mix(in oklab, var(--ink) 80%, var(--bg));box-shadow:inset 0 0 0 1.5px var(--line);position:relative;overflow:hidden}[data-theme=dark] .lot{background:#2a2c32}.lot.narrow{aspect-ratio:4/5}.lot-lines{width:100%;height:100%;position:absolute;inset:0}.lot-lines line{stroke:#ffffffbf;stroke-width:3px;vector-effect:non-scaling-stroke}.lot-lines line.dash{stroke-dasharray:14 12;stroke-width:2px;stroke:#ffd23fb3}.lot-car{width:17%;transform:translate(-50%, -50%) rotate(var(--rot));transition:filter .2s;position:absolute}.lot.narrow .lot-car{width:34%}.lot-car-body{position:relative}.lot-car svg{filter:drop-shadow(2px 4px 4px #00000059);width:100%;display:block}.lot-car.target svg{filter:drop-shadow(0 0 10px var(--yellow)) drop-shadow(0 0 3px var(--yellow))}.blink{animation:.8s step-end infinite blink}@keyframes blink{50%{opacity:.15}}.slip{aspect-ratio:.75;background:var(--yellow);cursor:pointer;background-image:repeating-linear-gradient(0deg,#0000 0 5px,#0000002e 5px 6px);border:0;border-radius:3px;width:26%;margin:-17% 0 0 -13%;padding:0;position:absolute;top:50%;left:50%;box-shadow:0 2px 6px #0006}.stack-wrap{z-index:5;flex-direction:column;align-items:center;gap:16px;display:flex;position:relative}.stack{width:150px;height:200px;position:relative}.stack-card{cursor:grab;position:absolute;inset:0}.stack-card:not(.top){pointer-events:none}.stack-card.top{z-index:3}.stack-empty{border:2px dashed var(--line);text-align:center;color:var(--muted);border-radius:12px;place-content:center;gap:10px;padding:12px;font-weight:600;display:grid;position:absolute;inset:0}.stack-note{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:6px;font-size:13px;display:flex}@media (width<=700px){.ticket-toy{grid-template-columns:1fr}.stack-wrap{flex-direction:row;justify-content:center}.stack{width:120px;height:160px}}.loading{place-items:center;min-height:50vh;display:grid}.loading-mess{width:64px;height:64px}.nf-lot{aspect-ratio:2.6;border-radius:var(--radius);background:#3a3d44;width:min(100%,520px);position:relative;overflow:hidden}.nf-line{background:#f4f4f0;width:4px;height:70%;position:absolute;top:0}.nf-car{width:34%;position:absolute;top:14%;left:32%}.nf-car svg{width:100%;display:block}.nf-ticket{aspect-ratio:.75;background:var(--yellow);border-radius:2px;width:7%;position:absolute;top:30%;left:46%;box-shadow:0 2px 6px #0006}.barrel-roll body{animation:1s cubic-bezier(.65,0,.35,1) roll}@keyframes roll{to{transform:rotate(360deg)}}.beat-status{font-family:var(--font-display);min-height:1.4em;font-size:22px;font-weight:700}.big-round-btn.beat-listen{background:var(--tint);box-shadow:0 10px 0 color-mix(in oklab, var(--tint) 60%, #000), var(--shadow)}.big-round-btn.beat-listen:disabled{opacity:.4;cursor:not-allowed}.beat-pad{border:2px solid var(--line);background:var(--surface-2);width:min(100%,420px);height:220px;color:var(--muted);font-family:var(--font-display);letter-spacing:.1em;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:28px;font-size:34px;font-weight:800;transition:border-color .3s,color .3s}.beat-pad.live{border-color:var(--tint);color:var(--ink)}.beat-pad:active{background:color-mix(in oklab, var(--tint) 12%, var(--surface-2))}.beat-review{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.beat-round-score{font-family:var(--font-display);font-size:56px;font-weight:800;line-height:1}.beat-timeline{background:var(--surface-2);border:1.5px solid var(--line);border-radius:var(--radius-sm);width:100%;max-width:680px}.scorebar.compact{max-width:520px}.scorebar.compact .scorebar-num{text-align:center;font-size:clamp(40px,8vw,60px)}.note-chip{color:var(--ink);background:color-mix(in oklab, var(--yellow) 35%, var(--surface));border-color:color-mix(in oklab, var(--yellow) 70%, transparent);font-weight:800}.reaction-pad{position:relative}.reaction-tier{font-family:var(--font-display);letter-spacing:.1em;border:3px solid;border-radius:8px;padding:4px 12px;font-size:clamp(16px,3vw,22px);font-weight:800}.reaction-idle{opacity:.85;font-size:18px;font-weight:800}.react-meter{opacity:.9;background:linear-gradient(90deg,#22a565,#ffd23f 45%,#ffb020 65%,#e5484d);border-radius:999px;width:min(100%,560px);height:12px;margin:26px 0 30px;position:relative}.react-meter em{white-space:nowrap;font-size:12px;font-style:normal;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.react-meter-human{border-left:2px dashed var(--ink);width:0;position:absolute;top:-8px;bottom:-8px}.react-meter-human em{color:var(--muted);top:calc(100% + 4px)}.react-meter-you{width:18px;height:18px;box-shadow:var(--shadow);border:3px solid #fff;border-radius:50%;margin:-9px 0 0 -9px;position:absolute;top:50%}.react-meter-you em{color:var(--ink);bottom:calc(100% + 6px)}.react-mess{justify-content:center;width:100%;min-height:64px;display:flex}.dots-board .dot-count{fill:color-mix(in oklab, var(--muted) 45%, transparent);transform-box:fill-box;transform-origin:50%;animation:dot-count .35s var(--ease-out) forwards;animation-delay:var(--d)}.dots-board.lit .dot-count{fill:var(--accent);animation:none}@keyframes dot-count{0%{fill:color-mix(in oklab, var(--muted) 45%, transparent);transform:scale(1)}40%{fill:#fff;transform:scale(1.7)}to{fill:var(--accent);transform:scale(1)}}.dots-scan{stroke:var(--accent);stroke-width:3px;filter:drop-shadow(0 0 6px var(--accent))}.dots-board.revealing{cursor:pointer}.dots-reveal{flex-direction:column;align-items:center;gap:14px;width:min(100%,560px);display:flex;position:relative}.dots-reveal.skippable{cursor:pointer}.dots-counter{transition:color .2s}.dots-counter.past{color:var(--accent)}.dots-counting{color:var(--accent);animation:.8s step-end infinite blink}.beat-pad.waiting{animation:1.6s ease-in-out infinite pad-breathe}@keyframes pad-breathe{50%{box-shadow:0 0 0 10px color-mix(in oklab, var(--tint) 18%, transparent)}}.beat-progress{background:var(--bg-2);border-radius:999px;width:min(100%,420px);height:8px;overflow:hidden}.beat-progress i{background:var(--tint);border-radius:inherit;transform-origin:0;height:100%;animation:linear forwards beat-progress;display:block}@keyframes beat-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.beat-playhead{stroke:var(--tint);stroke-width:3px}.beat-review.skippable{cursor:pointer}.aim-head b.good{color:var(--green)}.aim-head b.bad{color:var(--danger)}.aim-combo{transition:color .2s}.aim-combo.hot{color:var(--accent);font-weight:800}.aim-hitmarker,.aim-missmark{pointer-events:none;width:26px;height:26px;margin:-13px 0 0 -13px;position:absolute}.aim-hitmarker:before,.aim-hitmarker:after{content:"";background:linear-gradient(var(--ink), var(--ink)) center top / 2.5px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) center bottom / 2.5px 8px no-repeat;position:absolute;inset:0;transform:rotate(45deg)}.aim-hitmarker:after{transform:rotate(-45deg)}.aim-missmark:before,.aim-missmark:after{content:"";background:var(--danger);border-radius:2px;width:3px;margin-left:-1.5px;position:absolute;top:2px;bottom:2px;left:50%;transform:rotate(45deg)}.aim-missmark:after{transform:rotate(-45deg)}.aim-combo-pop>span{display:block}.aim-combo-pop{pointer-events:none;white-space:nowrap;font-family:var(--font-display);color:var(--accent);text-shadow:0 2px 0 color-mix(in oklab, var(--accent) 40%, #000);font-size:22px;font-weight:800;position:absolute;transform:translate(-50%,-50%)}.type-track{flex-direction:column;gap:6px;width:100%;display:flex}.type-lane{background:repeating-linear-gradient(90deg, transparent 0 22px, color-mix(in oklab, var(--line) 70%, transparent) 22px 34px) center / 100% 2px no-repeat, var(--bg-2);border-radius:10px;height:40px;position:relative}.type-name{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:10px;font-weight:800;position:absolute;top:2px;left:8px}.type-car{place-items:center;width:30px;height:30px;margin-top:-15px;font-size:24px;line-height:1;display:grid;position:absolute;top:50%}.type-car.mess svg{width:28px;height:28px}.type-flag{font-style:normal;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.type-text{border-radius:var(--radius-sm);background:var(--surface-2);border:1.5px solid var(--line);width:100%;color:var(--muted);cursor:text;padding:18px 20px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(18px,2.6vw,24px);line-height:1.7;transition:border-color .2s;position:relative}.type-text.focused{border-color:var(--accent)}.type-word{white-space:pre;display:inline-block}.tc.ok{color:var(--ink)}.tc.bad{color:#fff;background:var(--danger);border-radius:3px}.tc.cur{box-shadow:inset 2px 0 0 var(--accent);animation:1s step-end infinite caret}@keyframes caret{50%{box-shadow:inset 2px 0 #0000}}.type-tap{border-radius:inherit;background:color-mix(in oklab, var(--surface) 80%, transparent);font-family:var(--font-display);color:var(--ink);place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.type-input{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.round-head .bad{color:var(--danger)}.hl-ask{font-family:var(--font-display);text-align:center;font-size:clamp(20px,3vw,26px);font-weight:800}.hl-cards{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px;width:100%;display:grid}.hl-card{border-radius:var(--radius);background:var(--surface-2);border:2px solid var(--line);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:210px;padding:18px 12px;transition:border-color .3s,background-color .3s;display:flex;position:relative}.hl-card.right{border-color:var(--green);background:color-mix(in oklab, var(--green) 10%, var(--surface-2))}.hl-card.wrong{border-color:var(--danger);background:color-mix(in oklab, var(--danger) 10%, var(--surface-2))}.hl-emoji{font-size:46px;line-height:1}.hl-name{font-family:var(--font-display);font-size:clamp(16px,2.2vw,20px);line-height:1.2}.hl-value{font-family:var(--font-display);color:var(--accent);font-size:clamp(20px,3.4vw,30px);font-weight:800}.hl-vs{font-family:var(--font-display);color:var(--muted);align-self:center;font-weight:800}.hl-stamp{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;border:3px solid;border-radius:8px;padding:3px 10px;font-size:14px;font-weight:800;position:absolute;top:10px;right:10px}.hl-stamp.ok{color:var(--green)}.hl-stamp.no{color:var(--danger)}.hl-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.hl-btn.hi{background:color-mix(in oklab, var(--green) 18%, var(--surface));border-color:color-mix(in oklab, var(--green) 55%, transparent)}.hl-btn.lo{background:color-mix(in oklab, var(--danger) 14%, var(--surface));border-color:color-mix(in oklab, var(--danger) 50%, transparent)}.hl-streak{color:var(--accent)}.timebar>div.low{background:var(--danger)}@media (width<=560px){.hl-cards{grid-template-columns:1fr}.hl-card{min-height:0}}.simon-lives{color:var(--danger);letter-spacing:2px}.simon-pads{grid-template-columns:repeat(2,1fr);gap:14px;width:min(100%,520px);display:grid}.simon-pads.n6{grid-template-columns:repeat(3,1fr)}.simon-pad{aspect-ratio:1.25;background:color-mix(in oklab, var(--pad) 32%, var(--surface-2));box-shadow:inset 0 -6px 0 color-mix(in oklab, var(--pad) 45%, #000), var(--shadow);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:background-color 80ms,transform 80ms;display:flex;position:relative;overflow:hidden}.simon-pads:not(.live) .simon-pad{cursor:default}.simon-pad:disabled{opacity:1}.simon-pad.on{background:var(--pad);box-shadow:0 0 34px color-mix(in oklab, var(--pad) 70%, transparent), inset 0 -3px 0 color-mix(in oklab, var(--pad) 50%, #000);color:#fff;transform:scale(.97)}.simon-pad b{font-family:var(--font-display);font-size:clamp(14px,2.4vw,18px);position:relative}.simon-pad kbd{background:color-mix(in oklab, var(--surface) 70%, transparent);color:var(--ink);border-radius:6px;padding:2px 8px;font-family:inherit;font-size:12px;font-weight:800;position:relative}.simon-ring{aspect-ratio:1;pointer-events:none;border:4px solid #fff;border-radius:50%;width:70%;margin:auto;position:absolute;inset:0}.simon-progress{flex-wrap:wrap;justify-content:center;gap:5px;max-width:520px;display:flex}.simon-progress i{background:var(--line);border-radius:50%;width:12px;height:12px;transition:background .15s,transform .15s}.simon-progress i.done{background:var(--green);transform:scale(1.15)}.hl-round{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.board{text-align:left;flex-direction:column;gap:10px;width:min(100%,520px);margin:18px auto 0;padding:16px 18px;display:flex}.board-head{font-family:var(--font-display);justify-content:space-between;align-items:center;font-size:18px;display:flex}.board-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.board-list li{background:var(--bg-2);border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.board-list li.me{background:color-mix(in oklab, var(--accent) 16%, var(--bg-2));outline:1.5px solid color-mix(in oklab, var(--accent) 55%, transparent)}.board-list li.gap{margin-top:10px}.board-rank{color:var(--muted);text-align:center;font-weight:800}.board-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.board-note{text-align:center}.board-form,.board-form input{width:100%}.type-text.has-error{border-color:var(--danger)}.type-fix{text-align:center;font-weight:700}.where{flex-direction:column;gap:12px;display:flex}.where-top{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.where-top h2{font-family:var(--font-display);flex:1;min-width:0;margin:0;font-size:clamp(22px,4vw,34px)}.where-top h2 b{color:var(--accent)}.where-total{color:var(--muted);font-size:15px}.where-map{aspect-ratio:2;border:1.5px solid var(--line);background:var(--card,transparent);border-radius:18px;width:100%;min-height:260px;max-height:70dvh;position:relative;overflow:hidden}@media (width<=640px){.where-map{aspect-ratio:1;max-height:62dvh}}.where-map canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.where-loading{place-items:center;display:grid;position:absolute;inset:0}.where-zoom{flex-direction:column;gap:6px;display:flex;position:absolute;top:10px;right:10px}.where-zoom button{border:1.5px solid var(--line);background:var(--bg);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:10px;font-size:18px;font-weight:700;box-shadow:0 2px 8px #0000001f}.where-bar{flex-wrap:wrap;align-items:center;gap:12px;min-height:48px;display:flex}.where-bar .btn-primary{margin-left:auto}.where-hint{font-size:14px}.where-blank{cursor:pointer;align-items:center;gap:4px;font-size:14px;font-weight:700;display:flex}.where-result{flex-direction:column;display:flex}.where-result b{font-family:var(--font-display);font-size:22px}.where-result span{color:var(--muted);font-size:14px}.where-others{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.where-others li{border:1.5px solid var(--line);border-radius:99px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;display:flex}.where-others li.me{border-color:var(--accent)}.where-others .dot{border-radius:50%;width:10px;height:10px}.wd{--hit:#22a565;--near:#d9a520;--miss:#5c5c66;--tile-bg:transparent;--tile-line:var(--line);--tile-ink:var(--ink);--tile-radius:8px;--key-bg:color-mix(in oklab, var(--ink) 9%, transparent);--key-ink:var(--ink);--mark-ink:#fff;--tile-font:var(--font-display);border-radius:18px;flex-direction:column;align-items:center;gap:12px;padding:6px 0 4px;display:flex}.wd-top{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.wd-seg{border:1.5px solid var(--line);border-radius:99px;padding:3px;display:flex}.wd-seg button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:99px;padding:4px 12px;font-size:13px;font-weight:800}.wd-seg button.on{background:var(--ink);color:var(--bg)}.wd-seg button:disabled:not(.on){opacity:.4;cursor:default}.wd-styles{align-items:center;gap:6px;display:flex}.wd-swatch{cursor:pointer;width:24px;height:24px;transition:transform .2s var(--ease-spring);border:2px solid #0000;border-radius:50%}.wd-swatch.on{border-color:var(--ink);transform:scale(1.15)}.sw-classic{background:linear-gradient(135deg,#22a565 50%,#d9a520 50%)}.sw-neon{background:linear-gradient(135deg,#00f5a0 50%,#ff2fd1 50%);box-shadow:0 0 8px #ff2fd1aa}.sw-paper{background:linear-gradient(135deg,#8fb573 50%,#e8c46b 50%)}.sw-retro{background:linear-gradient(135deg,#0f6 50%,#ffb000 50%);border-radius:4px}.sw-candy{background:linear-gradient(135deg,#7ee0b0 50%,#ffa8d4 50%)}.wd-dice{cursor:pointer;background:0 0;border:0;font-size:18px}.wd-grid{perspective:600px;flex-direction:column;gap:6px;display:flex}.wd-row{gap:6px;display:flex}.wd-tile{width:min(58px, calc((100vw - 64px) / var(--n) - 6px));aspect-ratio:1;border:2px solid var(--tile-line);border-radius:var(--tile-radius);background:var(--tile-bg);color:var(--tile-ink);font-family:var(--tile-font);-webkit-user-select:none;user-select:none;place-items:center;font-size:clamp(20px,6vw,30px);font-weight:800;transition:background-color 10ms,border-color 10ms,color 10ms;display:grid}.wd-tile.filled{border-color:color-mix(in oklab, var(--tile-ink) 45%, transparent)}.wd-tile.hit,.wd-key.hit{background:var(--hit);border-color:var(--hit);color:var(--mark-ink)}.wd-tile.near,.wd-key.near{background:var(--near);border-color:var(--near);color:var(--mark-ink)}.wd-tile.miss,.wd-key.miss{background:var(--miss);border-color:var(--miss);color:var(--mark-ink)}.wd-msg{min-height:30px;font-weight:800}.wd-msg span{background:var(--ink);color:var(--bg);border-radius:99px;padding:4px 12px;font-size:14px;display:inline-block}.wd-end{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.wd-keys{flex-direction:column;gap:6px;width:min(100%,520px);display:flex}.wd-krow{justify-content:center;gap:5px;display:flex}.wd-key{background:var(--key-bg);max-width:44px;height:52px;color:var(--key-ink);font:inherit;cursor:pointer;border:0;border-radius:8px;flex:1;padding:0;font-size:15px;font-weight:800;transition:background-color .3s,transform .1s}.wd-key:active{transform:scale(.94)}.wd-key.wide{flex:1.5;max-width:68px;font-size:13px}.wd-credit{margin:0;font-size:11px}.wd-neon{--hit:#00e38f;--near:#ff2fd1;--miss:#2a2a40;--tile-bg:#0d0d1a;--tile-line:#2c2c4a;--tile-ink:#e9e9ff;--key-bg:#1b1b30;--key-ink:#e9e9ff;background:radial-gradient(circle at 50% 0,#1d1240,#08080f 70%);padding:16px 10px}.wd-neon .wd-tile.hit{box-shadow:0 0 14px #00e38f99}.wd-neon .wd-tile.near{box-shadow:0 0 14px #ff2fd199}.wd-neon .wd-tile.filled{text-shadow:0 0 8px #9fa0ff}.wd-paper{--hit:#7fae63;--near:#e3b950;--miss:#c9bfae;--tile-bg:#fffaf0;--tile-line:#cdbd9c;--tile-ink:#3a3226;--mark-ink:#2c261d;--key-bg:#efe6d2;--key-ink:#3a3226;--tile-radius:3px;--tile-font:"Caveat", "Comic Sans MS", cursive;background:repeating-linear-gradient(#fdf8ec 0 27px,#e4ddcb 27px 28px);padding:16px 10px}.wd-paper .wd-tile{border-style:dashed;font-size:clamp(26px,7vw,36px)}.wd-paper .wd-tile:nth-child(odd){rotate:-1.5deg}.wd-paper .wd-tile:nth-child(2n){rotate:1.2deg}.wd-retro{--hit:#0f6;--near:#ffb000;--miss:#0f2a17;--tile-bg:#031a0b;--tile-line:#0f5a2a;--tile-ink:#0f6;--mark-ink:#021007;--key-bg:#062812;--key-ink:#0f6;--tile-radius:0;--tile-font:ui-monospace, "Courier New", monospace;background:#010d05;padding:16px 10px;box-shadow:inset 0 0 40px #0f62}.wd-retro .wd-tile.miss,.wd-retro .wd-key.miss{color:#2f8a4e}.wd-candy{--hit:#5fd6a0;--near:#ffc65c;--miss:#d8c8f2;--tile-bg:#fff4fa;--tile-line:#ffc2df;--tile-ink:#8a3c6a;--mark-ink:#5b2346;--key-bg:#ffe3f1;--key-ink:#8a3c6a;--tile-radius:18px;background:linear-gradient(160deg,#fff0f7,#f1ecff);padding:16px 10px}.wd-paper,.wd-candy,.wd-paper .wd-end .btn-ghost,.wd-candy .wd-end .btn-ghost,.wd-paper .wd-seg button,.wd-candy .wd-seg button{color:var(--tile-ink)}.wd-paper .wd-seg,.wd-candy .wd-seg{border-color:var(--tile-line)}.wd-paper .wd-seg button.on,.wd-candy .wd-seg button.on{background:var(--tile-ink);color:var(--tile-bg)}.wd-paper .wd-credit,.wd-candy .wd-credit{color:color-mix(in oklab, var(--tile-ink) 70%, transparent)}.stack{width:100%}.stack-stage{border:1.5px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:18px;width:100%;height:min(72dvh,640px);min-height:380px;position:relative;overflow:hidden}.stack-stage canvas{cursor:pointer;width:100%;height:100%;display:block;position:absolute;inset:0}.stack-hud{pointer-events:none;color:#fff;text-shadow:0 2px 10px #00000059;flex-direction:column;align-items:center;display:flex;position:absolute;top:14px;left:0;right:0}.stack-count{font-family:var(--font-display);font-size:56px;line-height:1}.stack-world{letter-spacing:.06em;text-transform:uppercase;opacity:.8;font-size:12px;font-weight:700}.stack-perfect{text-align:center;font-family:var(--font-display);color:#fff;text-shadow:0 2px 12px #0006;pointer-events:none;font-size:22px;position:absolute;top:96px;left:0;right:0}.stack-tap{text-align:center;color:#fff;pointer-events:none;text-shadow:0 2px 10px #0006;font-weight:800;animation:1.4s ease-in-out infinite stack-pulse;position:absolute;bottom:90px;left:0;right:0}@keyframes stack-pulse{50%{opacity:.4}}.share-card{flex-direction:column;gap:14px;width:min(440px,100%);max-height:calc(100dvh - 32px);padding:20px;display:flex;overflow:auto}.share-card h3{font-family:var(--font-display);margin:0}.share-card-img{aspect-ratio:1080/1350;background:#17161a;border-radius:14px;place-items:center;display:grid;overflow:hidden}.share-card-img img{width:100%;height:100%;display:block}.dr{width:100%}.dr-stage{border:1.5px solid var(--line);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:18px;width:100%;height:min(74dvh,680px);min-height:400px;position:relative;overflow:hidden}.dr-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.dr-hud{pointer-events:none;color:#fff;text-shadow:0 2px 8px #00000080;grid-template-columns:1fr auto 1fr;align-items:start;display:grid;position:absolute;top:10px;left:12px;right:12px}.dr-hud>div:last-child{text-align:right}.dr-hud small{letter-spacing:.08em;text-transform:uppercase;opacity:.75;font-size:11px;font-weight:800;display:block}.dr-hud b{font-size:26px;font-family:var(--font-display)}.dr-hud b.low{color:#ff6b5f}.dr-chain{text-align:center;min-width:160px}.dr-chain b{color:#ffd23f;font-size:34px}.dr-combo{color:#ff8a3d;margin-left:6px;font-size:18px;font-weight:900}.dr-chain i{background:linear-gradient(90deg,#ffd23f,#ff5a36);border-radius:2px;max-width:160px;height:4px;margin:4px auto 0;display:block}.dr-track{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;pointer-events:none;font-size:11px;font-weight:800;position:absolute;top:60px;left:12px}.dr-pop{text-align:center;font-family:var(--font-display);color:#ffd23f;text-shadow:0 3px 14px #00000080;pointer-events:none;font-size:34px;position:absolute;top:22%;left:0;right:0}.dr-pop.bad{color:#ff6b5f}.dr-go{text-align:center;color:#fff;text-shadow:0 2px 10px #00000080;pointer-events:none;font-weight:800;animation:1.4s ease-in-out infinite stack-pulse;position:absolute;bottom:120px;left:0;right:0}.dr-go.big{font-family:var(--font-display);font-size:48px;animation:none;bottom:45%}.dr-pads{pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.dr-pads>div{align-items:flex-end;gap:8px;display:flex}.dr-pad{pointer-events:auto;font:inherit;color:#fff;cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;opacity:.85;border:0;border-radius:16px;font-weight:900;box-shadow:0 4px #00000059}.dr-pad:active{transform:translateY(2px);box-shadow:0 2px #00000059}.dr-pad.steer{background:#17161ab3;width:64px;height:64px;font-size:24px}.dr-pad.gas{background:#22a565;width:74px;height:96px;font-size:13px}.dr-pad.brake{background:#d93a32;width:64px;height:64px;font-size:11px}.dr-pad.hb{background:#5b6770;width:64px;height:52px;font-size:9px}@media (hover:hover) and (pointer:fine){.dr-pads{opacity:.35}}.park-sub{max-width:720px;margin:-8px 0 26px}.park-section{margin-bottom:28px}.park-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.park-head h2{font-size:clamp(26px,4vw,36px)}.park-head p{color:var(--ink-2);max-width:560px;margin-top:6px}.level-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.level-card{text-align:left;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;flex-direction:column;gap:4px;min-height:150px;padding:16px;transition:border-color .2s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.level-card:hover:not(:disabled){border-color:var(--tint);box-shadow:var(--shadow)}.level-card.locked{cursor:not-allowed;opacity:.5;background:var(--bg-2)}.level-card.done:after{content:"✓";background:var(--green);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid;position:absolute;top:12px;right:14px}.lv-num{font-family:var(--font-display);color:var(--tint);font-size:30px;font-weight:800;line-height:1}.level-card b{font-family:var(--font-display);font-size:17px;line-height:1.15}.lv-meta{color:var(--muted);font-size:12.5px;font-weight:600}.lv-glyph{color:var(--ink-2);letter-spacing:-1px;margin-top:auto;font-size:13px}.lv-best{font-size:13px;font-weight:700}.park-two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.park-box{flex-direction:column;align-items:flex-start;gap:10px;padding:22px;display:flex}.park-box h3{font-size:24px}.park-box p{color:var(--ink-2);font-size:15px}.daily-pick{color:var(--ink)!important;font-size:17px!important}.pick{width:100%;color:var(--ink-2);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;display:flex}.pick select{border:1.5px solid var(--line);background:var(--surface-2);max-width:240px;height:42px;color:var(--ink);font:inherit;border-radius:12px;flex:1;padding:0 10px;font-weight:600}.park-result{grid-template-columns:1fr;align-items:center;gap:24px;display:grid;overflow:visible}.park-result.with-ticket{grid-template-columns:1fr 300px}.park-result-main{flex-direction:column;align-items:center;gap:16px;display:flex}.pass{min-height:1em;font-weight:700}.pass.ok{color:var(--green)}.pass.no{color:var(--danger)}.park-ticket{flex-direction:column;align-items:center;gap:10px;display:flex}.park-ticket-title{font-family:var(--font-display);color:var(--accent);font-size:20px;font-weight:800}.park-ticket-card{cursor:pointer;width:280px;height:440px}@media (width<=860px){.park-two,.park-result.with-ticket{grid-template-columns:1fr}}.drive{z-index:100;color:#f2f2f0;touch-action:none;-webkit-user-select:none;user-select:none;font-family:var(--font-body);background:#18191d;position:fixed;inset:0;overflow:hidden}.drive-canvas{position:absolute;inset:0}.drive-canvas canvas{display:block}.dbtn{-webkit-backdrop-filter:blur(8px);color:#f2f2f0;cursor:pointer;background:#141519b8;border:1px solid #ffffff24;border-radius:12px;align-items:center;gap:6px;min-width:42px;height:42px;padding:0 12px;font-size:15px;font-weight:700;transition:background .2s,transform .15s;display:inline-flex}.dbtn:hover{background:#282a30d9}.dbtn:active{transform:scale(.95)}.dbtn.on{background:#ffd23f38;border-color:#ffd23f99}.dbtn .lbl{font-size:13px}.drive-top{top:max(10px, env(safe-area-inset-top));pointer-events:none;flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:absolute;left:10px;right:10px}.drive-top>*{pointer-events:auto}.drive-title{-webkit-backdrop-filter:blur(8px);background:#141519b8;border-radius:12px;flex-direction:column;padding:4px 12px;line-height:1.25;display:flex}.drive-title b{font-family:var(--font-display);font-size:15px}.drive-title span{opacity:.7;font-size:12px}.drive-stats{gap:6px;display:flex}.drive-stats span{background:#141519b8;border-radius:10px;padding:8px 10px;font-size:13px;font-weight:700}.drive-stats .bad{background:#e5484dd9}.drive-stats .warn{color:#1a1200;background:#ffb020cc}.drive-tools{gap:6px;margin-left:auto;display:flex}.drive-pop{color:#fff;font-family:var(--font-display);pointer-events:none;white-space:nowrap;z-index:3;background:#e5484d;border-radius:14px;padding:10px 18px;font-size:22px;font-weight:800;position:absolute;top:22%;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0006}.drive-bottom{padding:12px max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.drive-bottom>*{pointer-events:auto}.pedals{align-items:flex-end;gap:10px;display:flex}.gear{background:#141519bf;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:4px;padding:4px;display:flex}.gear button{color:#ffffff80;width:44px;height:44px;font-family:var(--font-display);cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:20px;font-weight:800;transition:background .2s,color .2s}.gear button.on{color:#fff;background:#22a565}.gear button.on.r{color:#18191d;background:#f2f2f0}.pedal{color:#fff;letter-spacing:.08em;cursor:pointer;touch-action:none;background:linear-gradient(#4a4d55,#2c2e34);border:0;border-radius:14px;font-size:13px;font-weight:800;transition:transform 60ms,box-shadow 60ms;box-shadow:0 6px #16171a,inset 0 1px #ffffff26}.pedal:active{transform:translateY(5px);box-shadow:0 1px #16171a}.pedal.brake{background:linear-gradient(#d9454a,#9d2a2e);width:84px;height:70px;box-shadow:0 6px #5e1517}.pedal.gas{background:linear-gradient(#2fbd76,#1b7a4b);width:62px;height:104px;box-shadow:0 6px #0f4129}.drive-center{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.speedo{font-family:var(--font-display);background:#141519b8;border-radius:12px;align-items:baseline;gap:6px;padding:6px 14px;display:flex}.speedo span{font-size:26px;font-weight:800}.speedo small{opacity:.65;font-size:12px}.park-btn{color:#08210f;font-family:var(--font-display);cursor:pointer;background:#3ccf86;border:0;border-radius:999px;padding:14px 26px;font-size:20px;font-weight:800;animation:1.4s ease-in-out infinite pulse;box-shadow:0 0 0 6px #3ccf8640,0 12px 30px #0006}@keyframes pulse{50%{box-shadow:0 0 0 14px #3ccf8614,0 12px 30px #0006}}.drive-warn{color:#1a1200;text-align:center;background:#ffb020eb;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:700}.drive-keys{opacity:.55;text-align:center;font-size:12px}.steer{align-items:flex-end;display:flex}.wheel{cursor:grab;touch-action:none;filter:drop-shadow(0 10px 18px #00000080);border-radius:50%;width:170px;height:170px}.wheel:active{cursor:grabbing}.wheel-rot,.wheel-rot svg{width:100%;height:100%;display:block}.steer-btns{align-items:center;gap:10px;display:flex}.steer-btns .pedal{width:74px;height:74px;font-size:26px}.mini-wheel{color:#ffd23f;place-items:center;width:40px;height:40px;font-size:30px;display:grid}@media (width<=760px){.drive-center{left:0;right:0;bottom:calc(150px + env(safe-area-inset-bottom));pointer-events:none;position:absolute}.drive-center>*{pointer-events:auto}.drive-title span,.dbtn .lbl,.drive-keys{display:none}.drive-stats span{padding:6px 8px;font-size:12px}.wheel{width:136px;height:136px}.pedal.brake{width:64px;height:58px}.pedal.gas{width:54px;height:86px}.gear button{width:38px;height:38px}.steer-btns .pedal{width:60px;height:60px}.speedo span{font-size:20px}.park-btn{padding:12px 18px;font-size:16px}}@media (hover:none){.drive-keys{display:none}}.dbtn.locked{cursor:default;background:#08080ad9;border-color:#ffffff14}.lv-night{color:#c9d2ff;background:#1e2340;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:11px;font-style:normal;font-weight:700;display:inline-block}.dbtn.lights{background:#ffd67838;border-color:#ffd678bf;box-shadow:0 0 16px #ffd67859}.drive-warn.night{color:#dfe5ff;background:#1e2340eb}.dbtn.gfx .lbl{letter-spacing:.02em;font-weight:800}.dbtn.gfx.dlss{background:#76b90029;border-color:#76b900b3}.dbtn.gfx.dlss .lbl{color:#9be52a}.dbtn.gfx.intel{background:#3d9be924;border-color:#3d9be999}.dbtn.gfx.intel .lbl{color:#7cc0f5}.room-replay{flex-direction:column;gap:12px;margin-top:18px;display:flex}.replay{border-radius:var(--radius-sm);background:#18191d;width:100%;position:relative;overflow:hidden}.replay-canvas{aspect-ratio:16/10;width:100%;display:block}.replay-bar{background:#ffffff1a;height:4px}.replay-bar>div{background:var(--accent);transform-origin:0;height:100%;transform:scaleX(0)}.endless-arrow{z-index:3;pointer-events:none;width:0;height:0;transition:opacity .25s;position:absolute;top:0;left:0}.endless-arrow i{width:44px;height:44px;transform:rotate(var(--ang,0deg));background:#3ccf86;border-radius:50%;animation:1.2s ease-in-out infinite endless-pulse;position:absolute;top:-22px;left:-22px;box-shadow:0 0 0 4px #3ccf8640,0 6px 18px #0006}.endless-arrow i:after{content:"";border-top:10px solid #0000;border-bottom:10px solid #0000;border-left:18px solid #0e2a1c;position:absolute;top:12px;left:15px}.endless-arrow span{text-align:center;width:80px;font-family:var(--font-display);color:#3ccf86;text-shadow:0 1px 3px #000c;font-size:14px;font-weight:800;position:absolute;top:28px;left:-40px}@keyframes endless-pulse{50%{box-shadow:0 0 0 10px #3ccf861f,0 6px 18px #0006}}.drive-pop.good{background:#22a565}.drive-stats .good{color:#3ccf86}.endless-box{grid-template-columns:1.4fr 1fr;align-items:center;gap:18px;margin-bottom:18px;display:grid}.endless-pick{flex-direction:column;align-items:stretch;gap:10px;display:flex}@media (width<=720px){.endless-box{grid-template-columns:1fr}}.endless-result{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex;position:relative}.endless-hero{flex-direction:column;align-items:center;line-height:1;display:flex}.endless-p{font-size:34px}.endless-hero b{font-family:var(--font-display);letter-spacing:-.04em;color:#22a565;font-size:clamp(80px,18vw,140px)}.endless-hero small{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.endless-parks{flex-wrap:wrap;justify-content:center;gap:6px;max-width:640px;display:flex}.endless-park{color:#fff;border-radius:10px;flex-direction:column;align-items:center;min-width:64px;padding:6px 8px;line-height:1.15;display:flex}.endless-park small{opacity:.8;font-size:10px}.endless-park b{font-family:var(--font-display);font-size:20px}.endless-park em{opacity:.9;white-space:nowrap;font-size:10px;font-style:normal}.park-snap{background:#f4f1ea;border-radius:6px;width:min(100%,300px);margin:4px auto 8px;padding:8px 8px 6px;box-shadow:0 10px 26px #00000059}.park-snap img{border-radius:3px;width:100%;display:block}.park-snap figcaption{color:#3a3833;text-align:center;margin-top:6px;font-family:Caveat,cursive;font-size:18px}:root{--radio-body:#fbf6ea;--radio-grill:#c9bfa6;--radio-knob:#3a3631;--dial-bg:#1b1a17;--dial-ink:#ffcf6b}:root[data-theme=dark]{--radio-body:#26231f;--radio-grill:#4c463d;--radio-knob:#d8cfbd}.radio{left:max(16px, env(safe-area-inset-left));bottom:max(16px, env(safe-area-inset-bottom));z-index:60;position:fixed}.radio-body{background:var(--radio-body);border:1.5px solid var(--line);box-shadow:var(--shadow);border-radius:18px;transition:background-color .4s;overflow:hidden}.radio:not(.open) .radio-body{box-shadow:none;background:0 0;border-color:#0000;overflow:visible}.radio-mini{cursor:pointer;filter:drop-shadow(0 6px 14px #0000002e);transform-origin:30% 80%;transition:transform .35s var(--ease-spring), filter .35s;background:0 0;border:0;padding:0;display:block}.radio-mini:hover,.radio-mini:focus-visible{filter:drop-shadow(0 10px 18px #00000042);transform:translateY(-4px)scale(1.12)rotate(-3deg)}.radio-mini:active{transition-duration:.1s;transform:translateY(-1px)scale(1.04)}.mini-wrap{width:76px;display:block;position:relative}.mini-wrap svg{width:100%;display:block}.ant{fill:var(--muted)}.ant.live{fill:#e5484d;animation:1.2s step-end infinite blink}.notes{pointer-events:none;position:absolute;top:-6px;left:50%}.notes i{color:var(--accent);opacity:0;font-size:14px;font-style:normal;animation:3s ease-out infinite note;position:absolute}.notes i:nth-child(2){animation-delay:1s;left:12px}.notes i:nth-child(3){animation-delay:2s;left:-10px}@keyframes note{0%{opacity:0;transform:translate(0)rotate(-10deg)}20%{opacity:1}to{opacity:0;transform:translate(10px,-40px)rotate(15deg)}}.radio-panel{overscroll-behavior:contain;flex-direction:column;gap:10px;width:min(330px,100vw - 32px);max-height:calc(100dvh - 32px);padding:14px 14px 12px;display:flex;overflow-y:auto}.radio-head{align-items:center;gap:8px;display:flex}.radio-head b{font-family:var(--font-display);letter-spacing:-.01em;font-size:17px}.onair{background:var(--line);border-radius:50%;width:9px;height:9px}.onair.live{background:#e5484d;box-shadow:0 0 8px #e5484d}.radio-freq{color:var(--muted);margin-left:auto;font-size:12px}.radio-pin{cursor:pointer;opacity:.6;background:0 0;border:0;font-size:14px}.radio-pin[aria-pressed=true]{opacity:1}.dial{background:var(--dial-bg);cursor:pointer;border-radius:10px;height:46px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0009}.dial:after{content:"";pointer-events:none;background:radial-gradient(at 50% 120%,#ffcf6b38,#0000 70%);position:absolute;inset:0}.dial-scale span{background:#ffcf6b73;width:1px;height:7px;position:absolute;top:6px}.dial-scale span.major{background:var(--dial-ink);height:11px}.dial-scale em{color:var(--dial-ink);font-family:ui-monospace,monospace;font-size:9px;font-style:normal;position:absolute;top:13px;left:50%;transform:translate(-50%)}.dial-scale i{background:#ffcf6b59;border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:7px}.dial-scale i.on{background:var(--dial-ink);box-shadow:0 0 6px var(--dial-ink)}.dial-needle{background:#ff5a36;width:2px;margin-left:-1px;position:absolute;top:3px;bottom:3px;box-shadow:0 0 6px #ff5a36}.radio-now{min-height:42px}.radio-piece{white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.radio-piece span{display:inline-block}.radio-piece span:hover{animation:6s linear infinite alternate scrolltext}@keyframes scrolltext{0%,15%{transform:translate(0)}85%,to{transform:translate(min(0px,300px - 100%))}}.radio-meta{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.radio-progress{background:var(--bg-2);cursor:pointer;border-radius:999px;height:6px;overflow:hidden}.radio-progress div{background:var(--accent);transform-origin:0;height:100%;transition:transform .25s linear}.radio-times{color:var(--muted);justify-content:space-between;margin-top:-6px;font-size:11px;display:flex}.radio-controls{align-items:center;gap:6px;display:flex}.rbtn{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;width:34px;height:34px;transition:transform .2s var(--ease-spring), background .2s;border-radius:50%;place-items:center;font-size:12px;display:grid}.rbtn:hover{transform:scale(1.08)}.rbtn:active{transform:scale(.94)}.rbtn.big{background:var(--ink);width:44px;height:44px;color:var(--bg);border-color:var(--ink);font-size:14px}.rbtn.big.on{background:var(--accent);border-color:var(--accent);color:#fff}.rbtn.lit{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.vu{width:48px;margin-left:auto}.knob{background:radial-gradient(circle at 35% 30%, #fff 0 10%, var(--radio-knob) 60%);border:1.5px solid var(--line);cursor:ns-resize;touch-action:none;border-radius:50%;flex-shrink:0;width:36px;height:36px}.knob-cap{width:100%;height:100%;position:relative}.knob-cap span{background:var(--accent);border-radius:2px;width:3px;height:9px;margin-left:-1.5px;position:absolute;top:4px;left:50%}.radio-foot{align-items:center;gap:10px;font-size:12px;display:flex}.radio-foot a{color:var(--ink-2)}.radio-foot .lic{border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-weight:700;text-decoration:none}.radio-listbtn{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:12px;font-weight:700}.radio-list{overflow:hidden}.radio-list ol{border-top:1px solid var(--line);max-height:min(40vh,300px);margin:0;padding:0;list-style:none;overflow-y:auto}.radio-list li{border-bottom:1px solid var(--line);align-items:center;gap:6px;display:flex}.radio-list li button{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;padding:7px 4px;display:flex}.radio-list li button>span:first-child{color:var(--muted);flex-shrink:0;width:34px;font-size:11px}.radio-list li button>span:last-child{flex-direction:column;min-width:0;display:flex}.radio-list b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.radio-list small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.radio-list li.on b{color:var(--accent)}.radio-list li a{white-space:nowrap;color:var(--muted);padding-right:4px;font-size:10px}.radio-list p{color:var(--muted);padding-top:8px;font-size:11px}.speed{flex-direction:column;gap:4px;display:flex}.speed-head{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;font-size:11px;font-weight:700;display:flex}.speed-head b{color:var(--ink);letter-spacing:0;text-transform:none;font-size:13px}.speed-head small{color:var(--muted);margin-left:4px;font-size:10px}.speed-row{align-items:center;gap:8px;display:flex}.speed-end{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px;font-size:11px;font-weight:700}.speed-end:hover{color:var(--ink)}.speed-track{cursor:ew-resize;touch-action:none;outline-offset:4px;flex:1;height:22px;position:relative}.speed-track:before{content:"";background:var(--dial-bg);border-radius:4px;height:4px;position:absolute;top:9px;left:0;right:0;box-shadow:inset 0 1px 2px #00000080}.speed-notch{background:var(--muted);opacity:.6;width:2px;height:18px;margin-left:-1px;position:absolute;top:2px}.speed-fill{background:var(--accent);border-radius:4px;height:4px;transition:left 80ms,right 80ms;position:absolute;top:9px}.speed-thumb{background:linear-gradient(#f6f1e4,#cfc6b2);border:1px solid #00000040;border-radius:4px;width:14px;height:20px;margin-left:-7px;transition:left 80ms;position:absolute;top:1px;box-shadow:0 2px 4px #0000004d,inset 0 -2px #0000001f}.speed-thumb:after{content:"";background:var(--accent);height:2px;position:absolute;top:9px;left:3px;right:3px}.wx{flex-direction:column;gap:6px;margin-top:4px;display:flex}.wx-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name value""range range";align-items:center;gap:4px 8px;font-size:12px;font-weight:700;display:grid}.wx-name{white-space:nowrap;text-overflow:ellipsis;grid-area:name;overflow:hidden}.wx-row small{color:var(--muted);text-align:right;grid-area:value;font-weight:600}.wx-row input[type=range]{appearance:none;background:linear-gradient(90deg, #5aa7ff var(--v,0%), color-mix(in oklab, var(--line) 80%, transparent) var(--v,0%));cursor:pointer;border-radius:999px;outline:none;grid-area:range;width:100%;min-width:0;height:6px;margin:4px 0 6px}.wx-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:2px solid #5aa7ff;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #0000004d}.wx-row input[type=range]::-moz-range-thumb{background:#fff;border:2px solid #5aa7ff;border-radius:50%;width:14px;height:14px}.wx-strike{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:800}.lightning{z-index:300;pointer-events:none;background:radial-gradient(at 30% 0,#fff,#dce6ffb3 60%,#c8d7ff66);position:fixed;inset:0}.wx-credit{color:var(--muted);font-size:10.5px}.wx-credit a{color:inherit}.wx-more{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:2px 0;font-size:11.5px;font-weight:700}.wx-more:hover{color:var(--ink)}.field{color:var(--ink-2);text-align:left;flex-direction:column;gap:6px;width:100%;font-size:13px;font-weight:700;display:flex}.field input{border:1.5px solid var(--line);background:var(--surface-2);height:48px;color:var(--ink);font:inherit;border-radius:14px;outline:none;padding:0 14px;font-size:17px;font-weight:600;transition:border-color .2s,box-shadow .2s}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 22%, transparent)}.join-box{background:var(--surface);border:1.5px solid var(--line);color:var(--ink-2);border-radius:999px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;padding:8px 8px 8px 14px;font-size:14px;font-weight:600;display:inline-flex}.join-box input{border:1.5px solid var(--line);background:var(--bg-2);width:92px;height:34px;color:var(--ink);text-align:center;letter-spacing:.18em;border-radius:999px;outline:none;font-size:15px;font-weight:800}.join-box input:focus{border-color:var(--accent)}.room-grid{grid-template-columns:340px 1fr;align-items:start;gap:18px;display:grid}.room-code-card{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:24px;display:flex;position:sticky;top:84px}.room-code{gap:6px;display:flex}.room-code span{background:var(--ink);width:46px;height:58px;color:var(--bg);font-family:var(--font-display);box-shadow:0 4px 0 color-mix(in oklab, var(--ink) 60%, transparent);border-radius:12px;place-items:center;font-size:30px;font-weight:800;display:grid}.room-join{flex-direction:column;gap:12px;width:100%;display:flex}.room-board{min-height:300px;padding:22px;position:relative;overflow:hidden}.room-board-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.room-board-head h2{font-size:28px}.room-winner{font-family:var(--font-display);color:var(--accent);font-size:22px;font-weight:800}.room-list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.room-row{background:var(--bg-2);border:1.5px solid #0000;border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:12px 14px;display:grid;position:relative;overflow:hidden}.room-row.me{border-color:var(--accent)}.room-row.joined,.room-row.playing{opacity:.75}.room-rank{text-align:center;font-size:22px;font-weight:800}.room-name{flex-direction:column;min-width:0;font-weight:700;display:flex}.room-name em{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-style:normal}.room-name small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.room-score{font-family:var(--font-display);font-size:24px;font-weight:800}.room-bar{height:3px;position:absolute;bottom:0;left:0;right:0}.room-bar i{background:linear-gradient(90deg,#e5484d,#ffb020 40%,#22a565 90%);height:100%;display:block}.dots-anim{font-size:14px;animation:1s step-end infinite blink}@media (width<=860px){.room-grid{grid-template-columns:1fr}.room-code-card{position:static}.room-code span{width:40px;height:52px;font-size:26px}}.pitch-wrap{flex-direction:column;align-items:center;gap:16px;display:flex}.pitch-card{aspect-ratio:1/1.05;background:var(--surface);border:1.5px solid var(--line);width:min(100%,540px);box-shadow:var(--shadow-lg);-webkit-user-select:none;user-select:none;touch-action:none;isolation:isolate;border-radius:28px;position:relative;overflow:hidden}[data-theme=dark] .pitch-card{background:#050507}.pitch-card.tuning{cursor:ns-resize}.pitch-canvas{z-index:-1;width:100%;height:100%;position:absolute;inset:0}.pitch-top{justify-content:space-between;font-size:14px;font-weight:800;display:flex;position:absolute;top:26px;left:30px;right:30px}.pitch-brand{color:var(--muted);font-size:13px;font-weight:700}.pitch-go{background:var(--ink);color:var(--bg);font-family:var(--font-display);cursor:pointer;box-shadow:var(--shadow-lg);border:0;border-radius:999px;align-items:center;gap:10px;padding:18px 30px;font-size:22px;font-weight:800;display:inline-flex;position:absolute;top:50%;left:50%;translate:-50% -50%}.pitch-go:disabled{opacity:.4}.pitch-count{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;font-size:15px;font-weight:700;display:flex;position:absolute;top:56px;right:30px}.pitch-count.decoy b{color:var(--accent);font-size:56px}.pitch-digits{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(72px,18vw,120px);font-weight:800;line-height:.9}.pitch-digits .dim{color:var(--muted);opacity:.6}.pitch-bottom{justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:28px;left:30px;right:30px}.pitch-hz{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(48px,13vw,84px);font-weight:800;line-height:.9}.pitch-hz small{letter-spacing:0;margin-left:4px;font-size:.32em}.pitch-tools{flex-direction:column;gap:12px;width:min(100%,540px);display:flex}.pitch-tools .menu-actions{justify-content:space-between;align-items:center}.pitch-reveal{width:min(100%,540px)}.bp{justify-content:center;display:flex}.bp-card{--bp-ink:#fff;background:var(--accent);width:min(100%,880px);color:var(--bp-ink);box-shadow:var(--shadow-lg);border-radius:32px;flex-direction:column;gap:22px;padding:clamp(22px,5vw,46px);display:flex}.bp-top{font-family:var(--font-display);justify-content:space-between;align-items:center;gap:12px;font-size:18px;display:flex}.bp-steps{gap:14px;font-size:13px;font-weight:800;display:flex}.bp-steps span{opacity:.45;align-items:center;gap:4px;transition:opacity .3s;display:inline-flex}.bp-steps span.on{opacity:1}.bp-steps span.done{opacity:.75}.bp-steps i{font-size:16px;font-style:normal}.bp-main{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.bp-q{font-family:var(--font-body);letter-spacing:-.02em;max-width:600px;font-size:clamp(28px,4.6vw,48px);font-weight:800;line-height:1.05}.bp-polaroid{cursor:zoom-in;background:#fff;border:0;border-radius:4px;flex-direction:column;flex-shrink:0;align-items:center;gap:8px;padding:10px 10px 12px;display:flex;rotate:5deg;box-shadow:0 14px 30px -8px #00000073}.bp-polaroid.zoom{cursor:zoom-out;rotate:0deg}.bp-photo{width:150px;height:120px;transition:width .35s var(--ease-out), height .35s var(--ease-out), font-size .35s var(--ease-out);background:linear-gradient(160deg,#f6f1e6,#e9e2d2);place-items:center;font-size:76px;display:grid}.bp-polaroid.zoom .bp-photo{width:230px;height:190px;font-size:130px}.bp-caption{letter-spacing:.14em;text-transform:uppercase;color:#8a8690;font-size:10px;font-weight:800}.bp-form,.bp-reveal{flex-direction:column;gap:12px;display:flex}.bp-input{background:#ffffff2e;border-radius:22px;align-items:center;gap:12px;height:92px;padding:0 26px;transition:background .2s;display:flex}.bp-input:focus-within{background:#ffffff42}.bp-input input{min-width:0;color:var(--bp-ink);font:inherit;font-family:var(--font-display);background:0 0;border:0;outline:none;flex:1;font-size:clamp(28px,4vw,38px);font-weight:800}.bp-input input::placeholder{color:#ffffff8c}.bp-unit{text-transform:uppercase;letter-spacing:.04em;text-align:right;max-width:40%;font-size:15px;font-weight:800}.bp-preview{opacity:.85;min-height:1.4em;padding-left:8px;font-size:14px;font-weight:600}.bp-bottom{align-items:center;gap:10px;display:flex}.bp-tool{cursor:pointer;width:56px;height:56px;transition:background .2s, transform .2s var(--ease-spring);background:0 0;border:1.5px solid #fff9;border-radius:50%;font-size:22px}.bp-tool:hover,.bp-tool.on{background:#fff3;transform:translateY(-2px)}.bp-lock{height:56px;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:transform .2s var(--ease-spring), opacity .2s;background:#fff;border:1.5px solid #ffffffd9;border-radius:999px;margin-left:auto;padding:0 30px;font-size:14px;font-weight:800}.bp-lock:disabled{color:#ffffffb3;cursor:not-allowed;background:0 0}.bp-lock:not(:disabled):hover{transform:translateY(-2px)}.bp-truth{flex-direction:column;gap:2px;display:flex}.bp-truth span{text-transform:uppercase;letter-spacing:.14em;opacity:.8;font-size:13px;font-weight:800}.bp-truth b{font-family:var(--font-display);font-size:clamp(44px,8vw,72px);line-height:1}.bp-truth small{font-size:.35em}.bp-yours{flex-wrap:wrap;align-items:center;gap:14px;font-size:17px;display:flex}.bp-off{background:#fff3;border-radius:999px;padding:4px 12px;font-size:14px;font-weight:700}.bp-score{font-family:var(--font-display);margin-left:auto;font-size:34px}.bp-axis{height:34px;margin:6px 0 4px;position:relative}.bp-axis:before{content:"";background:#ffffff40;border-radius:4px;height:4px;position:absolute;top:15px;left:0;right:0}.bp-axis-zone{background:#ffffff4d;border-radius:6px;width:15%;height:12px;position:absolute;top:11px;left:42.5%}.bp-axis-mid{background:#fff;border-radius:2px;width:3px;height:24px;margin-left:-1.5px;position:absolute;top:5px;left:50%}.bp-axis-you{background:var(--yellow);border:2px solid #fff;border-radius:50%;width:16px;height:16px;margin-left:-8px;position:absolute;top:9px;box-shadow:0 2px 8px #0000004d}.bp-axis em{opacity:.7;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:26px;transform:translate(-50%)}@media (width<=640px){.bp-main{flex-direction:column-reverse;align-items:center}.bp-steps{gap:6px}.bp-steps span{font-size:0}.bp-steps i{font-size:18px}.bp-photo{width:120px;height:90px;font-size:58px}.bp-input{height:76px;padding:0 18px}.bp-lock{padding:0 20px}}.bp-breakdown{flex-direction:column;gap:14px;margin-top:26px;display:flex}.bp-breakdown h2{font-size:30px}.bp-bq{padding:18px}.bp-bq-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.bp-bq-head p{flex:1;min-width:200px;font-weight:700}.bp-bq-emoji{font-size:30px}.bp-bq ol{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bp-bq li{background:var(--bg-2);border-radius:10px;grid-template-columns:34px 1fr auto auto 64px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:grid}.bp-bq-name{font-weight:700}.bp-bq-off{color:var(--muted);font-size:12.5px}.bp-bq li b{text-align:right;font-family:var(--font-display);font-size:18px}@media (width<=560px){.bp-bq li{grid-template-columns:28px 1fr auto 52px}.bp-bq-off{display:none}}.desk-bounds{pointer-events:none;z-index:120;position:fixed;inset:0}.desk-win{pointer-events:auto;border-radius:22px;position:absolute;box-shadow:0 20px 50px -12px #00000073}.desk-handle{cursor:grab;letter-spacing:.1em;text-transform:uppercase;touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:10px 12px 8px 16px;font-size:12px;font-weight:800;display:flex}.desk-handle:active{cursor:grabbing}.desk-x{width:26px;height:26px;color:inherit;cursor:pointer;background:#00000014;border:0;border-radius:50%;margin-left:auto;font-size:16px;line-height:1}.calc{background:linear-gradient(170deg, var(--surface-2), var(--bg-2));border:1.5px solid var(--line);width:290px;color:var(--ink-2);box-shadow:0 20px 50px -12px #00000073,inset 0 2px #ffffff40,inset 0 -4px #00000014}.calc-body{outline:none;padding:0 16px 16px}.calc-solar{background:#3a2f22;border-radius:4px;gap:2px;width:110px;margin:12px auto 0;padding:3px;display:flex}.calc-solar i{background:linear-gradient(#5b4a37,#2c241a);border-radius:1px;flex:1;height:14px}.calc-screen{background:var(--dial-bg);color:var(--dial-ink);text-shadow:0 0 8px #ffcf6b73;border-radius:12px;margin-bottom:14px;padding:10px 14px;box-shadow:inset 0 3px 10px #000000a6}.calc-expr{opacity:.7;word-break:break-all;text-align:right;min-height:1.3em;font-size:13px}.calc-val{justify-content:flex-end;align-items:center;gap:8px;font-size:28px;font-weight:700;display:flex;overflow:hidden}.calc-use{font-family:var(--font-body);border:1px solid var(--dial-ink);color:var(--dial-ink);cursor:pointer;text-shadow:none;background:0 0;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.calc-keys{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.ck{background:var(--surface);height:48px;color:var(--ink);cursor:pointer;box-shadow:0 4px 0 color-mix(in oklab, var(--ink) 18%, transparent), 0 6px 10px -4px #00000040, inset 0 1px 0 #fff6;border:0;border-radius:14px;font-size:19px;font-weight:700;transition:transform 60ms,box-shadow 60ms}.ck:active{box-shadow:0 1px 0 color-mix(in oklab, var(--ink) 18%, transparent);transform:translateY(3px)}.ck.op{background:var(--accent);color:#fff}.ck.clr{background:var(--pink);color:#fff}.ck.eq{background:var(--yellow);color:var(--yellow-ink);grid-column:span 2}.pad{color:#3b3a36;background:#fbf8ef;border-radius:6px 6px 10px 10px;width:300px;overflow:visible}[data-theme=dark] .pad{filter:brightness(.9)}.pad .desk-handle{background:#ece5d3;border-bottom:1px solid #d6cdb6;border-radius:6px 6px 0 0;padding-top:18px;position:relative}.pad-rings{pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:-9px;left:14px;right:14px}.pad-rings i{background:0 0;border:3px solid #8e8a80;border-radius:6px;width:10px;height:20px}.pad-title{color:#6a6458}.pad-clear{cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:14px}.pad .desk-x{margin-left:0}.pad-paper{resize:none;color:#23305e;background-color:#0000;background-image:linear-gradient(90deg,#0000 36px,#e5484d73 36px 38px,#0000 38px),repeating-linear-gradient(#0000 0 29px,#5078c847 29px 30px);background-attachment:local;border:0;border-radius:0 0 10px 10px;outline:none;width:100%;height:300px;padding:4px 14px 12px 46px;font-family:Caveat,cursive;font-size:23px;line-height:30px;display:block}.pad-paper::placeholder{color:#a39d8f}.mess-says{text-align:left;align-items:flex-end;gap:10px;width:100%;max-width:560px;display:flex}.mess-says-face{flex-shrink:0;width:48px;height:48px}.mess-says.big .mess-says-face{width:64px;height:64px}.mess-says-face svg{width:100%;height:100%}.mess-says-bubble{background:var(--bg-2);border:1.5px solid var(--line);border-radius:18px 18px 18px 4px;flex:1;padding:12px 16px;font-size:15px;font-weight:700;line-height:1.35;position:relative}.mess-says.big .mess-says-bubble{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(18px,2.6vw,22px)}.mess-says-ghost{color:#0000}.pitch-hz-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:800;display:block}.pitch-hz.rolling{color:var(--muted)}.pitch-hz.landed{color:var(--ink);text-shadow:0 0 24px color-mix(in oklab, var(--violet) 60%, transparent);transform-origin:0 100%}.pitch-reveal{flex-direction:column;align-items:center;gap:16px;width:min(100%,540px);padding:20px;display:flex;position:relative;overflow:visible}.pitch-reveal.skippable{cursor:pointer}.pr-row{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.pr-cell{border-radius:var(--radius-sm);background:var(--bg-2);text-align:center;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;transition:opacity .4s;display:flex}.pr-cell.hidden{opacity:.45}.pr-cell span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.pr-cell b{font-family:var(--font-display);font-size:20px}.pr-cell small{color:var(--ink-2);font-size:12px;font-weight:600}.piano{width:100%;padding-top:14px;position:relative}.piano-keys{border:1.5px solid var(--line);border-radius:8px;height:44px;display:flex;overflow:hidden}.piano-keys span{background:#f4f1e8;border-right:1px solid #0000001f;flex:1;position:relative}.piano-keys span.black{background:#24232a}.piano-keys em{color:#8a8690;font-size:9px;font-style:normal;font-weight:800;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.piano-mark{border:2px solid var(--surface);border-radius:50%;width:14px;height:14px;margin-left:-7px;position:absolute;top:0}.piano-mark:after{content:"";width:2px;height:44px;margin-left:-1px;position:absolute;top:12px;left:50%}.piano-mark.target,.piano-mark.target:after{background:var(--accent)}.piano-mark.guess,.piano-mark.guess:after{background:var(--violet)}.pr-score{flex-direction:column;align-items:center;gap:2px;display:flex}.pr-score span{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.pr-score b{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(54px,12vw,76px);line-height:1;transition:color .3s;display:inline-block}.pr-history{gap:6px;display:flex}.pr-history span{background:var(--bg-2);width:34px;height:26px;color:var(--muted);border-radius:8px;place-items:center;font-size:12px;font-weight:800;transition:background .4s;display:grid}.pr-history span.now{outline:2px solid var(--violet)}@media (width<=520px){.pr-cell b{font-size:16px}}.hex-wrap{flex-direction:column;align-items:center;gap:16px;display:flex}.hex-card{aspect-ratio:1;border:1.5px solid var(--line);width:min(100%,600px);box-shadow:var(--shadow-lg);isolation:isolate;-webkit-user-select:none;user-select:none;border-radius:30px;position:relative;overflow:hidden}.hex-card.skippable{cursor:pointer}.hex-strips{z-index:2;display:flex;position:absolute;top:0;bottom:0;left:0}.hex-strip{cursor:ns-resize;touch-action:none;outline:none;width:52px;height:100%;position:relative}.hex-strip:focus-visible{box-shadow:inset 0 0 0 3px #fffc}.hex-thumb{pointer-events:none;background:#fff;border-radius:50%;width:30px;height:30px;margin:-15px 0 0 -15px;position:absolute;left:50%;box-shadow:0 2px 8px #00000059}.hex-top{z-index:3;transition:left .3s var(--ease-out);font-size:15px;font-weight:800;position:absolute;top:28px;left:32px}.hex-top.indented{left:184px}.hex-count{flex-direction:column;align-items:flex-end;gap:4px;font-size:15px;font-weight:700;display:flex;position:absolute;top:56px;right:32px}.hex-count .pitch-digits .dim{color:inherit;opacity:.45}.hex-ready{color:var(--ink-2);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-weight:700;display:flex;position:absolute;inset:0}.pitch-go.static{position:static;translate:none}.hex-bottom{z-index:3;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex;position:absolute;bottom:24px;left:184px;right:24px}.hex-code{font-family:var(--font-display);opacity:.85;font-size:clamp(22px,4vw,32px);font-weight:800}.hex-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.hex-btn{color:#17161a;cursor:pointer;height:48px;transition:transform .2s var(--ease-spring);background:#fff;border:0;border-radius:999px;padding:0 22px;font-size:15px;font-weight:800;box-shadow:0 6px 18px #00000040}.hex-btn:hover{transform:translateY(-2px)}.hex-btn.ghost{box-shadow:none;background:0 0;border:1.5px solid}.hex-split{z-index:1;position:absolute;top:0;bottom:0;left:0;overflow:hidden;box-shadow:4px 0 20px #00000040}.hex-split-label{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-size:13px;font-weight:800;position:absolute;bottom:26px;left:30px}.hex-split-label.right{z-index:2;left:auto;right:30px}.hex-dot{vertical-align:-1px;border:1.5px solid var(--line);border-radius:50%;width:14px;height:14px;margin-right:6px;display:inline-block}@media (width<=560px){.hex-strip{width:40px}.hex-thumb{width:24px;height:24px;margin:-12px 0 0 -12px}.hex-top.indented,.hex-bottom{left:136px}.hex-bottom{bottom:14px;right:14px}.hex-btn{height:42px;padding:0 16px;font-size:14px}}.angle-zero{font-family:var(--font-display);fill:var(--muted);font-size:18px;font-weight:800}.angle-q{font-family:var(--font-display);fill:var(--tint);font-size:30px;font-weight:800}.angle-input{flex-direction:column;align-items:center;gap:10px;display:flex}.angle-readout{font-family:var(--font-display);letter-spacing:-.03em;font-size:56px;font-weight:800;line-height:1}.angle-readout small{color:var(--muted);font-size:.6em}.safe{flex-direction:column;align-items:center;display:flex;position:relative}.safe-marker{border-left:10px solid #0000;border-right:10px solid #0000;border-top:14px solid var(--accent);filter:drop-shadow(0 2px 2px #0000004d);width:0;height:0;margin-bottom:4px}.safe-dial{cursor:grab;touch-action:none;background:radial-gradient(circle at 35% 30%,#f4f2ec,#b9b6ae 55%,#7d7a73);border:2px solid #6d6a63;border-radius:50%;outline:none;width:210px;height:210px;position:relative;box-shadow:0 14px 30px -8px #00000080,inset 0 -6px 12px #00000040,inset 0 4px 8px #fff9}[data-theme=dark] .safe-dial{background:radial-gradient(circle at 35% 30%,#5a5d66,#34363d 55%,#1d1e22);border-color:#0f1012;box-shadow:0 14px 30px -8px #000c,inset 0 -6px 12px #00000080,inset 0 3px 6px #ffffff1f}.safe-dial:active{cursor:grabbing}.safe-dial:focus-visible{box-shadow:0 0 0 4px var(--blue)}.safe-face{border-radius:50%;position:absolute;inset:10px}.safe-face i{transform-origin:1px 95px;background:#00000059;width:2px;height:10px;margin-left:-1px;position:absolute;top:0;left:50%}[data-theme=dark] .safe-face i{background:#ffffff4d}.safe-face i.major{background:var(--accent);width:3px;height:16px;margin-left:-1.5px}.safe-hub{background:var(--surface);border-radius:50%;place-items:center;display:grid;position:absolute;inset:52px;box-shadow:inset 0 2px 6px #0000004d}.safe-hub>div{width:70px;height:70px}.safe-hub svg{width:100%;height:100%}.safe-dizzy{color:var(--accent);white-space:nowrap;font-size:13px;font-weight:700;position:absolute;bottom:-26px}.angle-reveal{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:560px;display:flex;position:relative}.angle-reveal.skippable{cursor:pointer}.pr-history.mini span{width:28px;height:22px;font-size:11px}.rr{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex;position:relative}.rr.skippable{cursor:pointer}.rr-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:-8px;font-size:12px;font-weight:800}.rr-score{justify-content:center;width:100%;max-width:560px;display:flex;position:relative}.rr-stamp{font-family:var(--font-display);letter-spacing:.08em;background:color-mix(in oklab, var(--surface) 70%, transparent);pointer-events:none;mix-blend-mode:normal;box-shadow:inset 0 0 0 2px color-mix(in oklab, currentColor 25%, transparent);border:4px solid;border-radius:10px;padding:6px 14px;font-size:clamp(18px,3.4vw,28px);font-weight:800;position:absolute;top:-6px;right:-8px;-webkit-mask-image:radial-gradient(circle at 30% 40%,#000 60%,#000000bf 100%);mask-image:radial-gradient(circle at 30% 40%,#000 60%,#000000bf 100%)}.rr-stamp.t5{animation:1.6s ease-in-out infinite alternate stamp-glow}@keyframes stamp-glow{to{box-shadow:inset 0 0 0 2px color-mix(in oklab, currentColor 25%, transparent), 0 0 26px color-mix(in oklab, currentColor 55%, transparent)}}.rr-row{flex-wrap:wrap;justify-content:center;gap:8px;min-height:28px;display:flex}.rr-delta.up{color:var(--green);border-color:color-mix(in oklab, var(--green) 40%, transparent)}.rr-delta.down{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 40%, transparent)}.chip.pass.ok{color:var(--green);border-color:color-mix(in oklab, var(--green) 40%, transparent)}.chip.pass.no{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 40%, transparent)}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffffbf 50%,#0000 70%);animation:1.8s ease-in-out .4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{60%,to{transform:translate(100%)}}.scorebar-head{pointer-events:none;border:2px solid #fff;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;top:50%}.scorebar-sparks{pointer-events:none;width:0;height:0;position:absolute;top:50%}.scorebar-sparks i{border-radius:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;position:absolute}.scorebar.landed .scorebar-track{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 12%, transparent);transition:box-shadow .4s}.party-page{flex-direction:column;gap:16px;max-width:760px;padding-top:28px;padding-bottom:60px;display:flex}.party-h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(32px,6vw,52px);line-height:1}.party-h1 small{color:var(--muted);letter-spacing:0;font-size:.45em}.party-hero{align-items:center;gap:16px;display:flex}.party-mess{flex-shrink:0;width:84px;height:84px}.party-games{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.party-game{flex-direction:column;align-items:flex-start;gap:8px;padding:20px;display:flex}.party-game h2{font-family:var(--font-display);margin:0}.party-art{font-size:44px;line-height:1}.party-tag{margin:0;font-weight:600}.party-game details{width:100%}.party-game summary{cursor:pointer;color:var(--muted);border:1.5px solid var(--line);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;list-style:none;display:grid}.party-game .btn{justify-content:center;width:100%;margin-top:auto}.party-online,.party-setup,.party-panel,.pass-screen{flex-direction:column;align-items:stretch;gap:14px;padding:22px;display:flex}.party-panel h2,.pass-screen h2{font-family:var(--font-display);margin:0;line-height:1.15}.party-panel>.btn,.pass-screen>.btn{align-self:center}.party-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.party-code{font-family:var(--font-display);letter-spacing:.12em;text-align:center;color:var(--accent);font-size:clamp(44px,10vw,72px);line-height:1}.party-panel>.hint:first-child{text-align:center}.seg-wide{flex-wrap:wrap;gap:8px;display:flex}.seg-wide .btn{flex:1 1 0;justify-content:center}.pnames{flex-direction:column;gap:8px;display:flex}.pname{gap:6px;display:flex}.pname input{text-align:left;flex:1}.popts{border:0;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.popt{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-weight:600;display:flex}.ptoggle{cursor:pointer;align-items:center;gap:10px;font-weight:600;display:flex}.ptoggle input{opacity:0;pointer-events:none;position:absolute}.ptoggle-ui{background:var(--line);border-radius:999px;flex-shrink:0;width:42px;height:24px;transition:background .2s;position:relative}.ptoggle-ui:after{content:"";width:18px;height:18px;box-shadow:var(--shadow);transition:transform .2s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.ptoggle input:checked+.ptoggle-ui{background:var(--green)}.ptoggle input:checked+.ptoggle-ui:after{transform:translate(18px)}.ptoggle input:focus-visible+.ptoggle-ui{outline:3px solid var(--blue);outline-offset:2px}.pass-screen{text-align:center;align-items:center}.pass-phone{font-size:56px;animation:1.6s ease-in-out infinite pass-wiggle}@keyframes pass-wiggle{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)translate(6px)}}.pass-wrap{flex-direction:column;align-items:center;gap:10px;display:flex}.secret-card{perspective:900px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;align-self:center;width:min(100%,360px);min-height:250px}.secret-back{border-radius:var(--radius);background:repeating-linear-gradient(45deg, transparent 0 12px, #ffffff0f 12px 24px), linear-gradient(135deg, var(--violet), var(--accent));color:#fff;min-height:250px;box-shadow:var(--shadow-lg);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.secret-back span{font-family:var(--font-display);font-size:96px;font-weight:800;line-height:1}.secret-back small{opacity:.9;font-weight:700}.role-card{border-radius:var(--radius);background:var(--surface-2);border:2px solid var(--line);text-align:center;min-height:250px;box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:8px;padding:22px 18px;display:flex}.role-card.evil{color:#fde8ea;background:linear-gradient(160deg,#2a0f14,#170a0c);border-color:#6b1d26}.role-card.evil .role-desc{color:#f3b9c0}.role-emoji{font-size:54px;line-height:1}.role-name{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px}.role-desc{color:var(--muted);margin:0;font-size:14px}.role-secret{background:color-mix(in oklab, var(--accent) 12%, transparent);border-radius:14px;flex-direction:column;gap:2px;width:100%;margin-top:6px;padding:12px 16px;display:flex}.role-secret span{letter-spacing:.12em;text-transform:uppercase;opacity:.75;font-size:11px;font-weight:800}.role-secret strong{font-family:var(--font-display);font-size:30px;line-height:1.1}.role-secret small.good{color:var(--green);font-weight:700}.role-secret small.bad,.seer-result.bad{color:var(--danger);font-weight:800}.seer-result{font-family:var(--font-display);text-align:center;margin:0;font-size:22px}.seer-result.good{color:var(--green)}.pgrid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;display:grid}.pchip{border:2px solid var(--line);background:var(--surface-2);color:var(--ink);font:inherit;cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;font-weight:700;transition:border-color .2s,background-color .2s;display:flex}.pchip:disabled{cursor:default}.pchip.on{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 16%, var(--surface-2))}.pchip.dead{opacity:.45;text-decoration:line-through}.pchip small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.pchip-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.clues{flex-wrap:wrap;gap:8px;display:flex}.clue{background:var(--bg-2);border:1.5px solid var(--line);border-radius:12px;flex-direction:column;padding:8px 12px;display:flex}.clue small{color:var(--muted);font-size:11px;font-weight:700}.clue b{font-family:var(--font-display);font-size:18px}.clue.next{color:var(--muted);border-style:dashed;justify-content:center;font-weight:700}.countdown{font-family:var(--font-display);align-self:center;font-size:clamp(48px,12vw,80px);line-height:1}.countdown.low{color:var(--danger);animation:1s step-end infinite blink}.news{background:var(--bg-2);border-left:5px solid var(--muted);border-radius:14px;padding:14px 16px}.news p{margin:0;font-weight:700}.news.killed,.news.out{border-left-color:var(--danger)}.news.saved{border-left-color:var(--green)}.tally{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:13px;display:flex}.guess-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;width:100%;display:grid}.party-result{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.party-winner{font-family:var(--font-display);color:var(--green);margin:0;font-size:clamp(34px,7vw,54px)}.party-winner.evil{color:var(--danger)}.party-secret{margin:0;font-size:18px}.whois{flex-direction:column;gap:6px;width:100%;display:flex}.whois-row{background:var(--bg-2);text-align:left;border-radius:12px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.whois-row.evil{background:color-mix(in oklab, var(--danger) 16%, var(--bg-2))}.whois-row small{color:var(--muted);font-weight:700}.peek{overflow:hidden}.party-panel.night,.pass-screen.night{color:#e6e9ff;background:linear-gradient(#0f1428,#0a0d1a);border-color:#232a4a}.party-panel.night .hint,.pass-screen.night .hint{color:#a9b0d6}.party-panel.night .pchip,.pass-screen.night .pchip{color:#e6e9ff;background:#171d38;border-color:#2b3360}.sleep{text-align:center;font-size:18px}.pass-screen .pgrid,.pass-screen .inline-form{width:100%}.party-page .num-input{text-align:left;flex:1;width:auto;min-width:0;font-size:17px}.party-page .inline-form{flex-wrap:nowrap;width:100%}.party-game-btns{flex-wrap:wrap;gap:8px;width:100%;margin-top:auto;display:flex}.party-game-btns .btn{flex:120px;margin-top:0}.sc-opts{flex-wrap:wrap;gap:10px 18px;display:flex}.sc-opt{align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.sc-opt .seg-btn.on{background:var(--ink);color:var(--bg)}.sc-prompt{text-align:center;font-size:clamp(22px,4.5vw,32px)}.sc-prompt.big{margin:10px 0;font-size:clamp(26px,6vw,40px)}.sc-count{place-items:center;min-height:90px;display:grid}.sc-count b{font-family:var(--font-display);font-size:72px;line-height:1}.sc-count b.go{color:var(--accent);font-size:54px}.sc-bars,.sc-scores{flex-direction:column;gap:6px;display:flex}.sc-bar,.sc-score{border:1.5px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-weight:700;display:flex;position:relative;overflow:hidden}.sc-bar>span:not(.sc-bar-fill),.sc-bar>b,.sc-score>span:not(.sc-score-fill),.sc-score>b{position:relative}.sc-bar-fill,.sc-score-fill{background:color-mix(in oklab, var(--accent) 20%, transparent);position:absolute;inset:0 auto 0 0}.sc-bar.win,.sc-score.me{border-color:var(--accent)}.sc-scores>b{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.sc-write{flex-direction:column;gap:10px;display:flex}.sc-line{align-items:center;gap:8px;display:flex}.sc-line input{flex:1;min-width:0}.sc-line.lie input{border-color:var(--accent)}.sc-statements{flex-direction:column;gap:10px;display:flex}.sc-statement{text-align:left;border:2px solid var(--line);background:var(--bg-2,transparent);color:var(--ink);font:inherit;cursor:pointer;border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;font-size:17px;font-weight:600;display:flex}.sc-statement:disabled{cursor:default}.sc-statement.on{border-color:var(--accent)}.sc-statement.lie{background:oklab(62.5565% .177936 .0756249/.16);border-color:#e5484d}.sc-statement.truth{opacity:.7}.sc-statement small{letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:800}.sc-statement.lie small{color:#e5484d}.sc-choices{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.sc-draw-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.sc-word{letter-spacing:.2em;text-align:center;flex:1;font-size:clamp(20px,5vw,30px)}.sc-word.known{letter-spacing:.04em;color:var(--accent)}.sc-guess input{flex:1;min-width:0}.sc-close{color:#ffb020;text-align:center;margin:0;font-weight:800}.sc-got{color:#22a565;text-align:center;margin:0;font-weight:800}.sc-chat{flex-wrap:wrap;gap:6px;display:flex}.sc-chat-ok{color:#22a565;border-color:#22a565}.sc-names{flex-direction:column;gap:8px;display:flex}.sc-pass{text-align:center;align-items:center;padding:40px 22px}.sc-pass-icon{font-size:56px}.drawpad{flex-direction:column;gap:10px;display:flex}.drawpad canvas{aspect-ratio:4/3;border:2px solid var(--line);background:#fff;border-radius:14px;width:100%;display:block}.drawpad.drawing canvas{cursor:crosshair}.drawpad-tools{flex-direction:column;gap:8px;display:flex}.drawpad-colors,.drawpad-sizes{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dp-color{border:2px solid var(--line);cursor:pointer;color:#555;border-radius:50%;width:30px;height:30px;font-size:13px;transition:transform .15s}.dp-color.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--bg);transform:scale(1.18)}.dp-size{border:2px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.dp-size span{background:var(--ink);border-radius:50%}.dp-size.on{border-color:var(--accent)}.sc-draw-top .countdown{font-size:28px}
