@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-ext-wght-normal-CYrqKuxd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--blue: #2f62f0;--blue-hi: #4f86ff;--blue-lo: #1f44c8;--orange: #ff8a1f;--orange-hi: #ffb23e;--orange-lo: #e0640a;--mint: #33d69a;--mint-hi: #6ef2bd;--mint-lo: #1aa874;--pink: #ff3d8b;--pink-hi: #ff76ad;--pink-lo: #d81d6a;--violet: #7b5cff;--violet-hi: #a28bff;--violet-lo: #5a3fe0;--navy: #1b2559;--gold: #ffc531;--font-display: "Fredoka Variable", "Fredoka", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--font-body: "Nunito Variable", "Nunito", ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius-card: 24px;--radius-tile: 22px}:root,[data-theme=arena]{--bg: #e7edf8;--bg-glow-1: #d6e2ff;--bg-glow-2: #ffe1ee;--surface: #ffffff;--surface-2: #eef3fc;--surface-3: #dfe7f6;--line: #d5def0;--line-strong: #2a3f96;--text: #1b2559;--text-dim: #6b77a6;--given: #1b2559;--entry: #2f62f0;--accent: #ff8a1f;--accent-ink: #ffffff;--accent-soft: rgba(255, 138, 31, .14);--unit: rgba(47, 98, 240, .06);--same: rgba(47, 98, 240, .14);--selected: rgba(47, 98, 240, .3);--error: #f0326e;--error-soft: rgba(240, 50, 110, .12);--good: #1fbf84;--flash: rgba(110, 242, 189, .6);--hint: rgba(255, 138, 31, .2);--shadow: 0 2px 4px rgba(27, 37, 89, .06), 0 12px 28px rgba(27, 37, 89, .1);--tile-shadow: inset 0 -3px 0 rgba(27, 37, 89, .08);--band-1: #3a6cf6;--band-2: #5b4fe6;color-scheme:light}[data-theme=night]{--bg: #0f1534;--bg-glow-1: #1c2a6b;--bg-glow-2: #3a1840;--surface: #182150;--surface-2: #1f2a60;--surface-3: #2a3572;--line: #2b3775;--line-strong: #8fa6ff;--text: #eef2ff;--text-dim: #9aa6d6;--given: #eef2ff;--entry: #6fa0ff;--accent: #ff9a3c;--accent-ink: #ffffff;--accent-soft: rgba(255, 154, 60, .16);--unit: rgba(111, 160, 255, .07);--same: rgba(111, 160, 255, .16);--selected: rgba(111, 160, 255, .32);--error: #ff5c8f;--error-soft: rgba(255, 92, 143, .15);--good: #45e0a5;--flash: rgba(110, 242, 189, .35);--hint: rgba(255, 154, 60, .22);--shadow: 0 2px 4px rgba(0, 0, 0, .25), 0 14px 32px rgba(0, 0, 0, .35);--tile-shadow: inset 0 -3px 0 rgba(0, 0, 0, .25);--band-1: #2b4fd8;--band-2: #4b2fb8;color-scheme:dark}[data-theme=paper]{--bg: #f4efe6;--bg-glow-1: #fbe7c9;--bg-glow-2: #e3ecf2;--surface: #fffdf8;--surface-2: #f3ece0;--surface-3: #e9e0d0;--line: #ddd2bf;--line-strong: #6b5d4a;--text: #2a241c;--text-dim: #7b6f5f;--given: #2a241c;--entry: #2f5fa8;--accent: #d0672e;--accent-ink: #ffffff;--accent-soft: rgba(208, 103, 46, .14);--unit: rgba(120, 96, 60, .07);--same: rgba(47, 95, 168, .16);--selected: rgba(47, 95, 168, .28);--error: #c8372d;--error-soft: rgba(200, 55, 45, .12);--good: #3f8f5a;--flash: rgba(255, 196, 92, .55);--hint: rgba(208, 103, 46, .18);--shadow: 0 1px 2px rgba(60, 40, 10, .06), 0 8px 24px rgba(60, 40, 10, .08);--tile-shadow: inset 0 -2px 0 rgba(60, 40, 10, .08);color-scheme:light}[data-theme=ink]{--bg: #14161c;--bg-glow-1: #1f2433;--bg-glow-2: #22191f;--surface: #1c1f27;--surface-2: #242833;--surface-3: #2e3340;--line: #313645;--line-strong: #8c93a8;--text: #e9ebf1;--text-dim: #9097a8;--given: #e9ebf1;--entry: #7fb2ff;--accent: #f08a4b;--accent-ink: #1a1208;--accent-soft: rgba(240, 138, 75, .16);--unit: rgba(255, 255, 255, .04);--same: rgba(127, 178, 255, .16);--selected: rgba(127, 178, 255, .3);--error: #ff6b5f;--error-soft: rgba(255, 107, 95, .14);--good: #6fcf8e;--flash: rgba(255, 196, 92, .32);--hint: rgba(240, 138, 75, .2);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35);--tile-shadow: inset 0 -2px 0 rgba(0, 0, 0, .25);color-scheme:dark}[data-theme=neon]{--bg: #0b0b17;--bg-glow-1: #2a0f45;--bg-glow-2: #062b3a;--surface: #131328;--surface-2: #1b1b38;--surface-3: #262650;--line: #2c2c58;--line-strong: #6f6fd6;--text: #ecebff;--text-dim: #9a98c9;--given: #ecebff;--entry: #3ef0ff;--accent: #ff4fd8;--accent-ink: #12001a;--accent-soft: rgba(255, 79, 216, .16);--unit: rgba(111, 111, 214, .08);--same: rgba(62, 240, 255, .14);--selected: rgba(62, 240, 255, .28);--error: #ff5c7a;--error-soft: rgba(255, 92, 122, .15);--good: #5dffb0;--flash: rgba(255, 79, 216, .35);--hint: rgba(255, 79, 216, .2);--shadow: 0 0 0 1px rgba(111, 111, 214, .18), 0 12px 32px rgba(0, 0, 0, .5);--tile-shadow: inset 0 -2px 0 rgba(0, 0, 0, .3);color-scheme:dark}[data-theme=walnut]{--bg: #2a1d15;--bg-glow-1: #3f2a1b;--bg-glow-2: #2f2418;--surface: #352519;--surface-2: #402d1f;--surface-3: #4d3726;--line: #5a4230;--line-strong: #c9a77f;--text: #f3e6d3;--text-dim: #c0a688;--given: #f3e6d3;--entry: #ffcf7a;--accent: #e9a24c;--accent-ink: #26170b;--accent-soft: rgba(233, 162, 76, .16);--unit: rgba(255, 220, 170, .05);--same: rgba(255, 207, 122, .16);--selected: rgba(255, 207, 122, .28);--error: #ff7d66;--error-soft: rgba(255, 125, 102, .14);--good: #9ed67f;--flash: rgba(255, 207, 122, .35);--hint: rgba(233, 162, 76, .22);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35);--tile-shadow: inset 0 -2px 0 rgba(0, 0, 0, .22);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:manipulation}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;user-select:none;-webkit-user-select:none}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,p{margin:0}.app{position:relative;min-height:100%;isolation:isolate}.backdrop{position:fixed;inset:0;z-index:-1;background:radial-gradient(60vmax 50vmax at 10% -10%,var(--bg-glow-1),transparent 60%),radial-gradient(50vmax 50vmax at 110% 110%,var(--bg-glow-2),transparent 60%),var(--bg)}.screen{min-height:100dvh;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));max-width:1100px;margin:0 auto}.icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;color:var(--text);transition:background-color .15s}.icon-btn:hover{background:var(--surface-2)}.icon-btn.small{width:30px;height:30px;border-radius:8px}.icon-btn-spacer{width:42px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:14px;background:var(--surface-2);font-weight:650;transition:transform .12s,background-color .15s}.btn:active{transform:scale(.97)}.btn-accent{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 -3px #00000026}.btn-ghost{background:transparent;color:var(--text-dim)}.btn-small{min-height:34px;padding:0 14px;border-radius:10px;font-size:14px}.btn-big{min-height:54px;font-size:17px;width:100%}.link-btn{color:var(--text-dim);text-decoration:underline;text-underline-offset:3px;padding:8px;font-size:14px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:750}.stage-canvas{opacity:0;transition:opacity .8s ease-out}.stage-canvas.on{opacity:1}.hero-slot{height:clamp(170px,32dvh,300px);margin:-6px 0 -4px;cursor:pointer;touch-action:manipulation}.board .cell .digit{transition:opacity .4s calc(var(--d) * 28ms)}.board.lifted .cell .digit{opacity:0;transition:none}.board.won.lifted .cell{animation:none}.segmented.four{grid-template-columns:repeat(4,1fr)}.home-screen{max-width:560px;display:flex;flex-direction:column;gap:20px}.home-head{display:flex;align-items:center;gap:14px;padding-top:8px}.home-head h1{font-size:26px;font-weight:800;letter-spacing:-.01em}.home-head-actions{margin-left:auto;display:flex;gap:2px}.logo{display:grid;grid-template-columns:repeat(3,16px);gap:3px;padding:6px;border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.logo span{width:16px;height:16px;border-radius:4px;background:var(--surface-2);font-size:10px;font-weight:800;display:grid;place-items:center;color:var(--accent-ink)}.logo span.on{background:var(--accent);animation:logo-in .5s calc(var(--i) * 60ms) both cubic-bezier(.2,.9,.3,1.3)}.level-chip{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;font-weight:700;color:var(--text-dim)}.track{position:relative;display:block;width:90px;height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}.track .fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--accent)}.home-main{display:flex;flex-direction:column;gap:12px}.card{position:relative;display:flex;align-items:center;gap:16px;width:100%;padding:18px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);text-align:left;transition:transform .15s cubic-bezier(.2,.9,.3,1.2);animation:rise .45s both cubic-bezier(.2,.9,.3,1)}.card:nth-child(2){animation-delay:40ms}.card:nth-child(3){animation-delay:80ms}.card:active:not(:disabled){transform:scale(.98)}.card>svg{flex:none;color:var(--accent)}.card-text{display:flex;flex-direction:column;gap:3px;min-width:0}.card-title{font-size:19px;font-weight:750}.card-sub{font-size:14px;color:var(--text-dim);display:inline-flex;align-items:center;gap:4px}.card-hero{background:var(--accent);color:var(--accent-ink);padding:24px 20px}.card-hero>svg,.card-hero .card-sub{color:inherit;opacity:.9}.card-hero .card-title{font-size:24px}.card-daily.done .card-sub{color:var(--good)}.streak{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;background:var(--surface-2);font-weight:800;color:var(--text-dim)}.streak.hot{color:var(--accent);background:var(--accent-soft)}.card-continue{border:2px solid var(--accent-soft)}.ring{margin-left:auto;flex:none;width:44px;height:44px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p) * 360deg),var(--surface-3) 0);-webkit-mask:radial-gradient(circle,transparent 15px,#000 16px);mask:radial-gradient(circle,transparent 15px,#000 16px)}.card-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.card-small{flex-direction:column;align-items:flex-start;gap:6px;padding:16px}.card-small .card-title{font-size:17px}.card-small .card-sub{font-size:13px}.card-soon{opacity:.6}.card-soon>svg{color:var(--text-dim)}.game-screen{display:flex;flex-direction:column;gap:10px;height:100dvh;overflow:hidden}.topbar{display:flex;align-items:center;gap:8px;min-height:46px}.topbar-title{flex:1;display:flex;flex-direction:column;min-width:0}.topbar-title .title{font-size:18px;font-weight:800}.topbar-title .subtitle{font-size:12px;color:var(--text-dim);font-weight:650}.topbar-right{display:flex;align-items:center;gap:4px}.timer-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-weight:750;font-variant-numeric:tabular-nums}.mistakes{font-size:14px;font-weight:750;color:var(--error);padding:0 6px}.play-area{--board: min( calc(100vw - 24px) , calc(100dvh - 330px) , 560px);flex:1;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:0}.board-wrap{position:relative}.controls{width:var(--board);max-width:100%;display:flex;flex-direction:column;gap:12px}@media(min-width:900px)and (min-aspect-ratio:5/4){.play-area{--board: min( calc(100dvh - 110px) , 640px);flex-direction:row;justify-content:center;align-items:center;gap:36px}.controls{width:340px}.numpad{grid-template-columns:repeat(3,1fr)!important}.num{height:76px!important}}.board{position:relative;width:var(--board);height:var(--board);display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);border-radius:16px;background:var(--surface);box-shadow:var(--shadow),0 0 0 2px var(--line-strong);overflow:hidden;contain:layout paint}.cell{position:relative;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:calc(var(--board) / 9 * .56);font-weight:650;line-height:1;font-variant-numeric:tabular-nums;color:var(--entry);background-color:transparent;transition:background-color .12s}.cell:nth-child(9n){border-right:0}.cell:nth-child(n+73){border-bottom:0}.cell.box-r{border-right:2px solid var(--line-strong)}.cell.box-b{border-bottom:2px solid var(--line-strong)}.cell.given{color:var(--given);font-weight:760}.cell.peer{background-color:var(--unit)}.cell.same{background-color:var(--same)}.cell.selected{background-color:var(--selected)}.cell.hint-unit{background-color:var(--hint)}.cell.hint-cell{box-shadow:inset 0 0 0 2px var(--accent)}.cell.hint-target{background-color:var(--accent-soft);box-shadow:inset 0 0 0 3px var(--accent);animation:hint-pulse 1.2s ease-in-out infinite}.cell.error{color:var(--error);background-color:var(--error-soft)}.cell.error:after{content:"";position:absolute;left:25%;right:25%;bottom:12%;height:2px;border-radius:2px;background:var(--error)}.cell:focus-visible{outline-offset:-3px}.digit{display:block;will-change:transform}.digit.pop{animation:pop .22s cubic-bezier(.2,.9,.3,1.4)}.cell.error .digit.pop{animation:shake .32s ease-in-out}.notes{position:absolute;inset:6%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);font-size:calc(var(--board) / 9 * .24);font-weight:650;color:var(--text-dim)}.notes span{display:grid;place-items:center}.notes span.match{color:var(--entry);font-weight:800}.flash{position:absolute;inset:0;background:var(--flash);opacity:0;pointer-events:none;animation:sweep .7s calc(var(--d) * 22ms) ease-out}.board.won .cell{animation:wave .8s calc(var(--d) * 45ms) cubic-bezier(.3,.7,.3,1) both}.board.won .cell .digit{color:var(--accent);transition:color .3s calc(var(--d) * 45ms),opacity .4s calc(var(--d) * 28ms)}.board.paused .cell>*{visibility:hidden}.board-cover{position:absolute;inset:0;display:grid;place-items:center;background:var(--surface);font-weight:800;color:var(--text-dim)}.resume-btn{position:absolute;left:50%;top:50%;translate:-50% -50%;display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-weight:750;box-shadow:var(--shadow);z-index:2}.toolbar{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.tool{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;border-radius:12px;color:var(--text);transition:background-color .15s,opacity .15s}.tool:hover:not(:disabled){background:var(--surface-2)}.tool:disabled{opacity:.35}.tool.active{color:var(--accent)}.tool-icon{position:relative;display:grid;place-items:center;width:44px;height:34px}.tool-label{font-size:12px;font-weight:650;color:var(--text-dim)}.tool.active .tool-label{color:var(--accent)}.pill{position:absolute;top:-4px;right:-2px;padding:1px 5px;border-radius:6px;background:var(--surface-3);color:var(--text-dim);font-size:9px;font-weight:800}.pill.on{background:var(--accent);color:var(--accent-ink)}.badge{position:absolute;top:-4px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--surface-3);font-size:10px;font-weight:800;display:grid;place-items:center}.numpad{display:grid;grid-template-columns:repeat(9,1fr);gap:6px}.num{position:relative;height:clamp(52px,8.5dvh,68px);border-radius:14px;background:var(--surface);box-shadow:var(--shadow),var(--tile-shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:transform .08s,background-color .15s,opacity .2s}.num:active{transform:translateY(1px) scale(.96)}.num-digit{font-size:clamp(22px,4.2dvh,30px);font-weight:700;color:var(--entry);line-height:1}.num-left{font-size:10px;font-weight:700;color:var(--text-dim)}.notes-mode .num-digit{font-size:clamp(16px,3dvh,22px);color:var(--text-dim)}.num.brush{background:var(--entry);box-shadow:0 0 0 3px var(--selected),var(--shadow)}.num.brush .num-digit,.num.brush .num-left{color:var(--surface)}.num.done{opacity:.38}.num.pulse{animation:num-pulse .6s ease-out}.banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:var(--error-soft);color:var(--error);font-weight:650;font-size:14px}.hint-panel{padding:12px 14px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--accent-soft);display:flex;flex-direction:column;gap:8px;align-items:flex-start;animation:rise .25s both ease-out}.hint-head{display:flex;align-items:center;gap:8px;width:100%;color:var(--accent)}.hint-head strong{color:var(--text)}.hint-steps{margin-left:auto;font-size:12px;color:var(--text-dim)}.hint-panel p{font-size:14px;line-height:1.45;color:var(--text)}.sheet-backdrop{position:fixed;inset:0;z-index:50;background:#0a080573;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease-out}.sheet{width:100%;max-width:560px;max-height:88dvh;overflow:auto;border-radius:24px 24px 0 0;background:var(--surface);box-shadow:var(--shadow);padding:8px 18px max(18px,env(safe-area-inset-bottom));animation:sheet-up .3s cubic-bezier(.2,.9,.3,1);outline:none}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--surface-3);margin:4px auto 6px}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:4px 0 10px}.sheet-head h2{font-size:20px;font-weight:800}.sheet-body{display:flex;flex-direction:column;gap:12px}.sheet-note{font-size:13px;color:var(--text-dim);line-height:1.45}@media(min-width:700px){.sheet-backdrop{align-items:center}.sheet{border-radius:24px;max-width:480px}.sheet.wide{max-width:600px}.sheet-grip{display:none}}.tier-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tier{width:100%;display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;background:var(--surface-2);text-align:left;transition:transform .12s,background-color .15s;animation:rise .35s calc(var(--tier) * 35ms) both ease-out}.tier:hover{background:var(--surface-3)}.tier:active{transform:scale(.98)}.tier-dots{display:grid;grid-template-columns:repeat(3,7px);gap:3px;flex:none}.tier-dots span{width:7px;height:7px;border-radius:2px;background:var(--surface-3)}.tier-dots span.on{background:var(--accent)}.tier-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.tier-name{font-weight:750;font-size:17px}.tier-blurb{font-size:13px;color:var(--text-dim)}.tier-best{display:flex;flex-direction:column;align-items:flex-end;font-weight:750;font-size:13px;color:var(--accent)}.tier-best small{color:var(--text-dim);font-weight:650}.settings section{display:flex;flex-direction:column;gap:8px;padding-bottom:14px}.settings h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);cursor:pointer}.setting-text{display:flex;flex-direction:column;gap:2px;font-weight:600}.setting-text small{color:var(--text-dim);font-weight:500;font-size:12px}.switch{appearance:none;flex:none;width:46px;height:28px;border-radius:999px;background:var(--surface-3);position:relative;cursor:pointer;transition:background-color .2s;margin:0}.switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s cubic-bezier(.2,.9,.3,1.2)}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(18px)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);padding:4px;border-radius:14px;background:var(--surface-2)}.segmented button{padding:9px 0;border-radius:10px;font-weight:650;font-size:14px;color:var(--text-dim)}.segmented button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.theme-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 0;border-radius:12px;font-size:12px;font-weight:650;color:var(--text-dim);border:2px solid transparent}.theme-swatch.on{border-color:var(--accent);color:var(--text)}.sw{display:flex;width:40px;height:40px;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}.sw i{flex:1}.t-auto .sw i:nth-child(1){background:#f4efe6}.t-auto .sw i:nth-child(2){background:#14161c}.t-auto .sw i:nth-child(3){background:#d0672e}.t-paper .sw i:nth-child(1){background:#f4efe6}.t-paper .sw i:nth-child(2){background:#2f5fa8}.t-paper .sw i:nth-child(3){background:#d0672e}.t-ink .sw i:nth-child(1){background:#14161c}.t-ink .sw i:nth-child(2){background:#7fb2ff}.t-ink .sw i:nth-child(3){background:#f08a4b}.t-neon .sw i:nth-child(1){background:#0b0b17}.t-neon .sw i:nth-child(2){background:#3ef0ff}.t-neon .sw i:nth-child(3){background:#ff4fd8}.t-walnut .sw i:nth-child(1){background:#2a1d15}.t-walnut .sw i:nth-child(2){background:#ffcf7a}.t-walnut .sw i:nth-child(3){background:#e9a24c}.howto{display:flex;flex-direction:column;gap:10px;font-size:15px;line-height:1.5}.howto h3{font-size:15px;margin-top:6px}.howto ul{margin:0;padding-left:20px}.result-backdrop{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-end;justify-content:center;background:#0a080559;animation:fade .3s ease-out}.result-card{width:100%;max-width:460px;margin:0 12px max(12px,env(safe-area-inset-bottom));padding:24px 20px 16px;border-radius:28px;background:var(--surface);box-shadow:var(--shadow);text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;animation:sheet-up .45s cubic-bezier(.2,.9,.3,1.1)}@media(min-width:700px){.result-backdrop{align-items:center}}.result-time{font-size:44px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stars{display:flex;gap:6px}.star{color:var(--surface-3);animation:star-in .5s calc(.25s + var(--i) * .18s) both cubic-bezier(.2,.9,.3,1.6)}.star.on{color:var(--accent)}.star-reasons{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px;font-size:13px;color:var(--text-dim)}.star-reasons li.on{color:var(--text)}.result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.result-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px}.result-stats .k{font-size:12px;color:var(--text-dim)}.result-stats .v{font-size:18px;font-weight:750;font-variant-numeric:tabular-nums}.result-stats .v.long{font-size:13px;line-height:1.25}.result-stats .tag{margin:2px 0 0}.xp-bar{display:flex;align-items:center;gap:10px;font-weight:750;font-size:13px}.xp-bar .track{width:160px;height:8px}.xp-bar .fill{animation:grow .9s .4s both ease-out;transform-origin:left}.streak-line{display:inline-flex;align-items:center;gap:6px;font-weight:750;color:var(--accent)}.result-actions{display:flex;flex-direction:column;gap:4px;width:100%}.stats-screen{max-width:640px}.stats-main{display:flex;flex-direction:column;gap:16px;padding-top:8px}.stat-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tile{padding:14px 8px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:4px}.tile .v{display:inline-flex;align-items:center;gap:4px;font-size:24px;font-weight:800}.tile .v svg{color:var(--accent)}.tile .k{font-size:12px;color:var(--text-dim)}.stats-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);font-variant-numeric:tabular-nums;font-size:14px}.stats-table th,.stats-table td{padding:11px 10px;text-align:right;border-bottom:1px solid var(--line)}.stats-table th:first-child,.stats-table td:first-child{text-align:left;font-weight:700}.stats-table th{font-size:12px;color:var(--text-dim);font-weight:650}.stats-table tr:last-child td{border-bottom:0}.loading{position:fixed;inset:0;z-index:60;display:grid;place-content:center;justify-items:center;gap:16px;background:color-mix(in srgb,var(--bg) 82%,transparent);font-weight:650;color:var(--text-dim);animation:fade .2s ease-out}.spinner{display:grid;grid-template-columns:repeat(3,14px);gap:4px}.spinner span{width:14px;height:14px;border-radius:4px;background:var(--accent);animation:blink .9s calc(var(--i) * .08s) ease-in-out infinite}.toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));translate:-50% 0;z-index:70;max-width:calc(100vw - 32px);padding:12px 18px;border-radius:14px;background:var(--text);color:var(--bg);font-weight:650;font-size:14px;box-shadow:var(--shadow);animation:toast 3.2s both}@keyframes pop{0%{transform:scale(.6);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-12%)}40%{transform:translate(10%)}60%{transform:translate(-6%)}80%{transform:translate(4%)}}@keyframes sweep{0%{opacity:0}25%{opacity:1}to{opacity:0}}@keyframes wave{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-14%) scale(1.12);background-color:var(--accent-soft)}60%{transform:translateY(2%) scale(.98)}to{transform:none}}@keyframes hint-pulse{50%{box-shadow:inset 0 0 0 5px var(--accent)}}@keyframes num-pulse{0%{transform:scale(1)}40%{transform:scale(1.12);box-shadow:0 0 0 6px var(--accent-soft)}to{transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}}@keyframes star-in{0%{transform:scale(0) rotate(-40deg);opacity:0}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes logo-in{0%{transform:scale(0)}}@keyframes blink{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@keyframes toast{0%{opacity:0;transform:translateY(12px)}8%,90%{opacity:1;transform:none}to{opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.flash{display:none}}:root,[data-theme=arena],[data-theme=night]{--p2: #ff3d8b}[data-theme=paper]{--p2: #c2345a}[data-theme=ink]{--p2: #ff7a9e}[data-theme=neon]{--p2: #ffd23f}[data-theme=walnut]{--p2: #8fd3ff}:root{--p3: #ff8a1f;--p4: #1fbf84;--p5: #7b5cff;--p6: #0ea5c4;--p7: #e0a200;--p8: #d946ef}.slot-0{--pc: var(--entry)}.slot-1{--pc: var(--p2)}.slot-2{--pc: var(--p3)}.slot-3{--pc: var(--p4)}.slot-4{--pc: var(--p5)}.slot-5{--pc: var(--p6)}.slot-6{--pc: var(--p7)}.slot-7{--pc: var(--p8)}.avatar{flex:none;display:inline-grid;place-items:center;border-radius:50%;background:var(--pc);color:var(--surface);font-weight:800;box-shadow:0 0 0 2px var(--surface),var(--shadow)}.avatar.out{filter:grayscale(1);opacity:.45}.mp-screen{max-width:620px}.mp-main{display:flex;flex-direction:column;gap:12px;padding-top:10px}.mode-card{display:flex;gap:16px;align-items:flex-start;padding:18px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);text-align:left;transition:transform .15s cubic-bezier(.2,.9,.3,1.2);animation:rise .4s calc(var(--i) * 50ms) both ease-out}.mode-card:active{transform:scale(.98)}.mode-icon{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--accent-soft);color:var(--accent);font-size:28px}.mode-clash .mode-icon{background:color-mix(in srgb,var(--p2) 16%,transparent);color:var(--p2)}.mode-coop .mode-icon{background:var(--same);color:var(--entry)}.mode-text{display:flex;flex-direction:column;gap:4px;min-width:0}.mode-name{font-size:19px;font-weight:800}.mode-tagline{font-size:14px;line-height:1.4;color:var(--text-dim)}.mode-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.mode-meta span{padding:3px 8px;border-radius:999px;background:var(--surface-2);font-size:12px;font-weight:700;color:var(--text-dim)}.mp-note{text-align:center;padding:4px 12px 12px}.card-mp>svg{color:var(--p2)}.match-screen{display:flex;flex-direction:column;gap:8px;height:100dvh;overflow:hidden;position:relative}.match-area{--board: min( calc(100vw - 24px) , calc(100dvh - 430px) , 540px);gap:10px}.match-area>:not(.board-wrap):not(.controls){width:var(--board);max-width:100%}@media(min-width:900px)and (min-aspect-ratio:5/4){.match-area{--board: min( calc(100dvh - 200px) , 600px);display:grid;grid-template-columns:auto 340px;justify-content:center;align-content:center;column-gap:36px;row-gap:12px}.match-area>:not(.board-wrap):not(.controls){grid-column:1 / -1;width:auto;max-width:none}.match-area>.board-wrap{grid-column:1}.match-area>.controls{grid-column:2;align-self:center}.match-area .numpad{grid-template-columns:repeat(3,1fr)!important}.match-area .num{height:64px!important}}.mode-hint{font-size:12.5px;line-height:1.4;color:var(--text-dim);text-align:center}.cell.own-0{--oc: var(--entry)}.cell.own-1{--oc: var(--p2)}.cell.own-2{--oc: var(--p3)}.cell[class*=own-]{color:var(--oc)}.match-screen.mode-territory .cell[class*=own-],.match-screen.mode-duel .cell[class*=own-],.match-screen.mode-coop .cell[class*=own-]{background-color:color-mix(in srgb,var(--oc) 14%,transparent)}.cell.lock-0{--lc: var(--entry)}.cell.lock-1{--lc: var(--p2)}.cell[class*=lock-]:before{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--lc) 16%,transparent);pointer-events:none}.cell.selected[class*=own-],.cell.selected{background-color:var(--selected)}.fog-veil{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--text-dim) 55%,transparent),transparent 70%),color-mix(in srgb,var(--surface-3) 92%,transparent);animation:fog-drift 3s ease-in-out infinite alternate}.cell.iced{background-color:color-mix(in srgb,#7fc8ff 22%,transparent)}.ice{position:absolute;inset:8%;border-radius:6px;border:2px solid color-mix(in srgb,#7fc8ff 80%,white);background:linear-gradient(135deg,#ffffff8c,#7fc8ff59);display:grid;place-items:end;padding:2px 4px;pointer-events:none}.ice span{font-size:calc(var(--board) / 9 * .22);font-weight:800;color:#1d5f8f}.cell.hidden-clue{background-color:var(--surface-2)}.hidden-mark{color:var(--text-dim);opacity:.6;font-weight:800}.ping-ring{position:absolute;inset:6%;border-radius:8px;border:3px solid var(--p2);animation:ping 1.1s ease-out infinite;pointer-events:none}.digit.pulse-mine{animation:pop .22s cubic-bezier(.2,.9,.3,1.4)}.digit.pulse-rival{animation:rival-pop .6s ease-out}.freeze-veil{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in srgb,#7fc8ff 18%,transparent);backdrop-filter:saturate(.6);font-size:calc(var(--board) / 5);color:#7fc8ff;pointer-events:none;animation:fade .15s ease-out}.vs-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px}.player-mini{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);min-width:0}.player-mini.right{flex-direction:row-reverse;text-align:right}.pm-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.pm-name{font-weight:750;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-name small{color:var(--text-dim);font-weight:650}.pm-bar{display:block;height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.pm-bar span{display:block;height:100%;background:var(--pc);transform-origin:left;transition:transform .3s ease-out}.player-mini.right .pm-bar span{transform-origin:right}.pm-extra{display:flex;align-items:center;gap:6px}.player-mini.right .pm-extra{flex-direction:row-reverse}.pips{display:inline-flex;gap:2px}.pip{width:7px;height:12px;border-radius:2px;background:var(--surface-3);overflow:hidden;display:flex;align-items:flex-end}.pip span{display:block;width:100%;height:100%;background:var(--accent);transform-origin:bottom;transition:transform .25s ease-out}.minimap{display:grid;grid-template-columns:repeat(9,3px);gap:1px}.minimap span{width:3px;height:3px;border-radius:1px;background:var(--surface-3)}.minimap span.g{background:var(--line-strong);opacity:.45}.minimap span.f{background:var(--p2)}.status-chip{font-size:13px}.warn-banner{position:absolute;left:8px;right:8px;bottom:calc(100% + 6px);z-index:3;padding:8px 12px;border-radius:12px;background:var(--p2);color:var(--surface);font-size:13px;font-weight:750;text-align:center;box-shadow:var(--shadow);animation:warn .5s ease-in-out infinite alternate}.attack-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.attack{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 4px;border-radius:12px;background:color-mix(in srgb,var(--p2) 14%,var(--surface));color:var(--p2);box-shadow:var(--tile-shadow);transition:transform .1s,opacity .2s}.attack:active:not(:disabled){transform:scale(.95)}.attack:disabled{opacity:.35}.attack-name{font-weight:800;font-size:14px}.attack-cost{font-size:8px;letter-spacing:2px}.scoreboard{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.sb-side{display:flex;align-items:center;gap:8px}.sb-score{font-size:26px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--pc);min-width:34px;text-align:center}.sb-mid{flex:1;display:flex;flex-direction:column;gap:6px;align-items:center;min-width:0}.sb-bar{display:block;width:100%;height:8px;border-radius:4px;background:var(--p2);overflow:hidden}.sb-bar span{display:block;height:100%;background:var(--entry);transition:width .4s ease-out}.turn-banner{font-size:12.5px;font-weight:750;color:var(--text-dim);white-space:nowrap}.turn-banner.mine{color:var(--entry)}.duel-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;min-height:70px}.duel-log li{display:grid;grid-template-columns:70px 1fr auto;gap:8px;font-size:13px;padding:3px 10px;border-radius:8px;background:var(--surface);animation:rise .25s ease-out}.duel-log li.mine span:first-child{color:var(--entry);font-weight:750}.duel-log li.rival span:first-child{color:var(--p2);font-weight:750}.duel-log li.guess{color:var(--text-dim)}.duel-log li.wrong strong{color:var(--error)}.duel-log li.empty{display:block;color:var(--text-dim);background:none;text-align:center;line-height:1.4}.tool.end-turn .tool-icon{font-size:18px}.royale-head{display:flex;align-items:center;justify-content:space-between;font-weight:800}.rh-round{font-size:18px}.rh-alive{color:var(--text-dim);font-size:14px}.rh-time{font-variant-numeric:tabular-nums;padding:4px 12px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow)}.rh-time.urgent{color:var(--surface);background:var(--error);animation:warn .5s ease-in-out infinite alternate}.royale-rail{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.rr-player{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;transition:opacity .3s}.rr-player.out{opacity:.5}.rr-player.me .rr-name{color:var(--entry)}.rr-prog{display:block;width:80%;height:4px;border-radius:2px;background:var(--surface-3);overflow:hidden}.rr-prog span{display:block;height:100%;background:var(--good);transform-origin:left;transition:transform .3s ease-out}.rr-name{font-size:10.5px;font-weight:700;color:var(--text-dim);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-player.done .rr-name{color:var(--good)}.board-overlay{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:16px;background:color-mix(in srgb,var(--surface) 90%,transparent);text-align:center;padding:20px;animation:fade .25s ease-out}.board-overlay.soft{background:color-mix(in srgb,var(--surface) 70%,transparent)}.board-overlay strong{font-size:22px;font-weight:800}.board-overlay .small{font-size:13px;color:var(--text-dim)}.coop-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.coop-team{display:flex;align-items:center;gap:4px;min-width:0}.coop-team .plus{color:var(--text-dim);font-weight:800}.coop-names{margin-left:6px;font-weight:750;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coop-shares{display:flex;gap:3px}.coop-shares span{width:9px;height:9px;border-radius:50%;background:var(--surface-3)}.coop-shares span.on{background:var(--p2)}.coop-time{font-weight:750;font-variant-numeric:tabular-nums}.match-pad{display:flex;flex-direction:column;gap:8px}.match-tools{display:flex;justify-content:center;gap:18px}.numpad.shuffled .num{animation:shake .4s ease-in-out;background:color-mix(in srgb,var(--p2) 10%,var(--surface))}.num:disabled{opacity:.4}.match-feed{position:fixed;top:max(14px,calc(env(safe-area-inset-top) + 8px));left:50%;translate:-50% 0;z-index:30;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;width:min(62vw,360px)}.feed-chip{padding:6px 12px;border-radius:999px;font-size:13px;font-weight:750;box-shadow:var(--shadow);background:var(--surface);animation:feed 2.6s both;text-align:center}.feed-chip.good{color:var(--good)}.feed-chip.bad{color:var(--surface);background:var(--p2)}.lobby{position:absolute;inset:0;z-index:35;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;animation:fade .2s ease-out}.lobby .small{color:var(--text-dim);font-size:13px}.spinner.big{grid-template-columns:repeat(3,20px);gap:6px}.spinner.big span{width:20px;height:20px;border-radius:6px}.vs-card{display:flex;align-items:center;gap:22px;padding:28px 30px;border-radius:28px;background:var(--surface);box-shadow:var(--shadow);animation:sheet-up .4s cubic-bezier(.2,.9,.3,1.2)}.vs-person{display:flex;flex-direction:column;align-items:center;gap:6px;font-weight:800}.vs-person small{color:var(--text-dim);font-weight:650}.vs-person.left{animation:slide-l .5s cubic-bezier(.2,.9,.3,1.2) both}.vs-person.right{animation:slide-r .5s cubic-bezier(.2,.9,.3,1.2) both}.vs-word{font-size:30px;font-weight:900;color:var(--accent);animation:star-in .5s .25s both cubic-bezier(.2,.9,.3,1.6)}.vs-card.royale{flex-direction:column;gap:14px}.royale-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 18px}.royale-grid .vs-person{font-size:13px;animation:star-in .4s calc(var(--i) * 70ms) both cubic-bezier(.2,.9,.3,1.4)}.countdown{position:absolute;inset:0;z-index:36;display:grid;place-items:center;pointer-events:none;background:color-mix(in srgb,var(--bg) 40%,transparent)}.countdown span{font-size:120px;font-weight:900;color:var(--accent);animation:count 1s ease-out both}.match-result .result-title{font-size:40px;font-weight:900;letter-spacing:-.02em}.match-result.good .result-title{color:var(--accent)}.result-sub{color:var(--text-dim);font-weight:650}.rating-delta{display:flex;align-items:baseline;gap:10px}.rd-num{font-size:34px;font-weight:800;font-variant-numeric:tabular-nums}.rd-change{font-weight:800;animation:rise .5s .3s both}.rating-delta.up .rd-change{color:var(--good)}.rating-delta.down .rd-change{color:var(--error)}.result-row{display:grid;grid-template-columns:1fr 1fr}@keyframes fog-drift{0%{transform:translate(-4%)}to{transform:translate(4%)}}@keyframes ping{0%{transform:scale(.9);opacity:1}to{transform:scale(1.15);opacity:0}}@keyframes rival-pop{0%{transform:scale(1.5);opacity:0}60%{transform:scale(.95);opacity:1}to{transform:scale(1)}}@keyframes warn{0%{opacity:.85}to{opacity:1;transform:translateY(-1px)}}@keyframes feed{0%{opacity:0;transform:translateY(-8px) scale(.95)}10%,85%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}@keyframes slide-l{0%{transform:translate(-40px);opacity:0}}@keyframes slide-r{0%{transform:translate(40px);opacity:0}}@keyframes count{0%{transform:scale(1.6);opacity:0}30%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:.2}}.tier.current{box-shadow:inset 0 0 0 2px var(--accent)}.tier-last{font-size:11px;font-weight:750;color:var(--accent);white-space:nowrap}.mode-card-wrap{position:relative;animation:rise .4s calc(var(--i) * 50ms) both ease-out}.mode-card-wrap .mode-card{width:100%;animation:none;padding-bottom:44px}.mode-help{position:absolute;right:14px;bottom:12px;padding:6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12.5px;font-weight:800}.howto-link{align-self:flex-start;padding:8px 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:14px}.help-btn{font-size:18px;font-weight:900;color:var(--text-dim)}.attack-bar{grid-template-columns:30px repeat(4,1fr)}.attack-help{border-radius:10px;background:var(--surface-2);color:var(--text-dim);font-weight:900}.howto-backdrop{z-index:80;align-items:center}.howto{width:min(460px,calc(100vw - 16px));max-height:calc(100dvh - 20px);overflow:auto;border-radius:26px;background:var(--surface);box-shadow:var(--shadow);padding:12px 16px max(14px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;outline:none;animation:sheet-up .3s cubic-bezier(.2,.9,.3,1)}.howto-head{display:flex;align-items:center;justify-content:space-between}.howto-video{position:relative;border-radius:18px;background:radial-gradient(120% 80% at 20% 0%,var(--bg-glow-1),transparent 60%),radial-gradient(100% 80% at 100% 100%,var(--bg-glow-2),transparent 60%),var(--bg);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.howto-live{position:absolute;top:10px;right:12px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p2);animation:warn .9s ease-in-out infinite alternate}.howto-text h2{font-size:20px;font-weight:850;margin-bottom:4px}.howto-text p{font-size:15px;line-height:1.45;color:var(--text-dim);min-height:3em}.howto-dots{display:flex;justify-content:center;gap:6px}.howto-dots button{width:8px;height:8px;border-radius:4px;background:var(--surface-3);transition:width .25s,background-color .25s}.howto-dots button.seen{background:color-mix(in srgb,var(--accent) 45%,var(--surface-3))}.howto-dots button.on{width:22px;background:var(--accent)}.howto-nav{display:grid;grid-template-columns:1fr 1.6fr;gap:8px}.howto-nav .btn:disabled{opacity:.35}.howto-skip{align-self:center;padding:2px 8px}.demo-stage{--board: 252px;position:relative;height:452px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px;pointer-events:none;user-select:none}.demo-stage .board{border-radius:12px}.demo-board-wrap{position:relative}.demo-view{position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 0;white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--p2)}.demo-warn{position:absolute;bottom:calc(100% + 4px);left:6px;right:6px;z-index:3;padding:4px 8px;border-radius:8px;background:var(--p2);color:var(--surface);font-size:11.5px;font-weight:800;text-align:center;animation:warn .5s ease-in-out infinite alternate}.demo-strip,.demo-score,.demo-rail,.demo-team{width:var(--board);display:flex;align-items:center;gap:6px;min-height:26px}.demo-strip{justify-content:space-between}.demo-player{display:flex;align-items:center;gap:4px}.demo-player.right{flex-direction:row-reverse}.demo-bar{display:block;width:44px;height:4px;border-radius:2px;background:var(--surface-3);overflow:hidden}.demo-bar span{display:block;height:100%;background:var(--pc);transform-origin:left;transition:transform .35s ease-out}.demo-player.right .demo-bar span{transform-origin:right}.demo-stage .pip{width:5px;height:9px}.demo-score strong{font-size:18px;font-weight:900;color:var(--pc);min-width:22px;text-align:center;font-variant-numeric:tabular-nums}.demo-turn{flex:1;text-align:center;font-size:11px;font-weight:800;color:var(--text-dim)}.demo-rail{gap:3px;flex-wrap:nowrap}.demo-dot{position:relative;transition:opacity .3s}.demo-dot i{position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border-radius:50%;background:var(--good);color:var(--surface);font-size:8px;font-style:normal;font-weight:900;display:grid;place-items:center}.demo-spots{margin-left:auto;font-size:10.5px;font-weight:800;color:var(--text-dim);white-space:nowrap}.demo-timer{font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.demo-team .plus{color:var(--text-dim);font-weight:900}.demo-shares{margin-left:auto;display:flex;gap:3px}.demo-shares i{width:7px;height:7px;border-radius:50%;background:var(--surface-3);transition:background-color .3s}.demo-shares i.on{background:var(--p2)}.demo-attacks{width:var(--board);display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.demo-attack{display:flex;flex-direction:column;align-items:center;padding:4px 0;border-radius:8px;background:color-mix(in srgb,var(--p2) 12%,var(--surface));color:var(--p2);font-size:11.5px;font-weight:850;opacity:.35;transition:opacity .3s,transform .15s}.demo-attack small{font-size:6px;letter-spacing:1px}.demo-attack.ready{opacity:1}.demo-attack.glow{transform:scale(.94);box-shadow:0 0 0 3px color-mix(in srgb,var(--p2) 40%,transparent)}.demo-pad{width:var(--board);display:grid;grid-template-columns:repeat(9,1fr);gap:3px}.demo-pad span{height:30px;border-radius:7px;background:var(--surface);box-shadow:var(--tile-shadow);display:grid;place-items:center;font-weight:800;color:var(--entry)}.demo-pad.shuffled span{background:color-mix(in srgb,var(--p2) 12%,var(--surface));animation:shake .4s ease-in-out}.demo-feed{position:absolute;bottom:8px;left:50%;translate:-50% 0;z-index:5;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;background:var(--surface);box-shadow:var(--shadow);animation:feed 2.4s both}.demo-feed.good{color:var(--good)}.demo-feed.bad{background:var(--p2);color:var(--surface)}.demo-float{position:absolute;z-index:6;translate:-50% -100%;padding:3px 8px;border-radius:999px;font-size:11.5px;font-weight:900;white-space:nowrap;background:var(--good);color:var(--surface);box-shadow:var(--shadow);animation:float-up 1.4s ease-out both}.demo-float.bad{background:var(--error)}.demo-float.info{background:var(--text-dim)}.demo-finger{position:absolute;left:0;top:0;z-index:7;width:0;height:0;transition:transform .38s cubic-bezier(.3,.8,.3,1)}.demo-finger:before{content:"";position:absolute;left:-13px;top:-6px;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--text) 30%,transparent);border:2px solid color-mix(in srgb,var(--surface) 85%,transparent);box-shadow:0 4px 12px #00000040;backdrop-filter:blur(1px)}.demo-finger span{position:absolute;left:-18px;top:-11px;width:36px;height:36px;border-radius:50%;border:2px solid var(--accent);opacity:0}.demo-finger span.tap{animation:tap-ring .5s ease-out}@keyframes tap-ring{0%{transform:scale(.4);opacity:.9}to{transform:scale(1.4);opacity:0}}@keyframes float-up{0%{opacity:0;transform:translateY(6px) scale(.9)}15%{opacity:1;transform:none}80%{opacity:1;transform:translateY(-10px)}to{opacity:0;transform:translateY(-16px)}}.demo-spot{position:absolute;z-index:8;border-radius:10px;box-shadow:0 0 0 3px var(--accent),0 0 0 9999px color-mix(in srgb,#0b0a08 46%,transparent);pointer-events:none;transition:left .35s cubic-bezier(.3,.8,.3,1),top .35s cubic-bezier(.3,.8,.3,1),width .35s cubic-bezier(.3,.8,.3,1),height .35s cubic-bezier(.3,.8,.3,1);animation:spot-in .35s ease-out}.demo-ring{position:absolute;z-index:8;border-radius:7px;box-shadow:0 0 0 3px var(--accent),0 0 12px 2px color-mix(in srgb,var(--accent) 60%,transparent);pointer-events:none;animation:ring-in .45s cubic-bezier(.2,.9,.3,1.4) both}@keyframes ring-in{0%{transform:scale(1.8);opacity:0}}.demo-callout{position:absolute;z-index:9;max-width:256px;width:max-content;display:flex;align-items:flex-start;gap:8px;padding:9px 12px;border-radius:14px;background:var(--text);color:var(--bg);font-size:13.5px;font-weight:750;line-height:1.3;box-shadow:0 8px 24px #0000004d;translate:-50% 0;animation:callout-in .35s cubic-bezier(.2,.9,.3,1.2) both}.demo-callout.above{translate:-50% -100%}.demo-callout b{flex:none;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:12px}.demo-callout:after{content:"";position:absolute;left:calc(50% + var(--arrow, 0px));width:12px;height:12px;background:var(--text);translate:-50% 0;rotate:45deg;border-radius:2px}.demo-callout.above:after{bottom:-5px}.demo-callout.below:after{top:-5px}.demo-callout.no-arrow:after{display:none}.demo-board-wrap.flip{animation:board-flip .6s cubic-bezier(.3,.7,.3,1)}.demo-view{padding:2px 10px;border-radius:999px;background:var(--p2);color:var(--surface);font-size:11.5px;letter-spacing:.03em}.demo-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:color-mix(in srgb,var(--text) 10%,transparent)}.demo-progress span{display:block;height:100%;background:var(--accent);transform-origin:left;animation:clip-progress linear both}.demo-feed{z-index:10}@keyframes spot-in{0%{opacity:0}}@keyframes callout-in{0%{opacity:0;transform:translateY(6px) scale(.96)}}@keyframes board-flip{0%{transform:perspective(700px) rotateY(-90deg);opacity:.4}to{transform:none;opacity:1}}@keyframes clip-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.online-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);animation:sheet-up .35s cubic-bezier(.2,.9,.3,1.1)}.oc-row{display:flex;align-items:center;gap:10px}.oc-who{flex:1;display:flex;flex-direction:column;font-size:15px;line-height:1.3}.oc-who small{color:var(--text-dim);font-size:12.5px}.oc-dot{width:10px;height:10px;border-radius:50%;flex:none;background:var(--line-strong)}.oc-dot.online{background:var(--good);box-shadow:0 0 0 4px color-mix(in srgb,var(--good) 22%,transparent)}.oc-dot.connecting,.oc-dot.reconnecting{background:var(--accent);animation:pulse-dot 1s ease-in-out infinite}.oc-dot.error{background:var(--error)}@keyframes pulse-dot{50%{opacity:.35}}.oc-join{display:flex;gap:8px}.oc-join input,.name-form input{flex:1;min-width:0;min-height:44px;padding:0 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface-2);color:var(--text);font:inherit;font-weight:650}.oc-join input{letter-spacing:.24em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.oc-join input::placeholder{letter-spacing:normal;font-family:inherit;text-transform:none}.oc-join input:focus,.name-form input:focus{outline:none;border-color:var(--accent)}.oc-error{margin:0;color:var(--error);font-size:13.5px}.name-form{display:flex;flex-direction:column;gap:12px}.seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:4px 0 2px;border-radius:14px;background:var(--surface-2)}.seg button{min-height:38px;border-radius:10px;font-weight:700;color:var(--text-dim);transition:background-color .15s,color .15s}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.tier-list.compact .tier{min-height:0;padding-block:9px}.mp-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.seat-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface-2);font-weight:650}.seat-picker span{display:flex;flex-direction:column}.seat-picker small{color:var(--text-dim);font-weight:500;font-size:12.5px}.stepper{display:flex;align-items:center;gap:6px}.stepper button{width:38px;height:38px;border-radius:12px;background:var(--surface);font-size:20px;font-weight:700;box-shadow:var(--tile-shadow)}.stepper button:disabled{opacity:.35}.stepper strong{min-width:26px;text-align:center;font-size:20px;font-variant-numeric:tabular-nums}.room-lobby{justify-content:flex-start;padding:72px 18px 24px;overflow-y:auto;background:color-mix(in srgb,var(--bg) 92%,transparent)}.room-code{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 22px 12px;border-radius:24px;background:var(--surface);box-shadow:var(--shadow);animation:sheet-up .35s cubic-bezier(.2,.9,.3,1.15)}.room-code .code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(34px,11vw,46px);font-weight:800;letter-spacing:.18em;padding-left:.18em;color:var(--accent)}.room-share{display:flex;gap:6px}.room-players{width:min(380px,100%);display:flex;flex-direction:column;gap:8px}.room-players ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.room-players li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;background:var(--surface);text-align:left;animation:sheet-up .3s cubic-bezier(.2,.9,.3,1.1) both;animation-delay:calc(var(--i, 0) * 40ms)}.room-players li.away{opacity:.5}.room-players li.empty{background:transparent;border:1.5px dashed var(--line);color:var(--text-dim);animation:none}.rp-name{flex:1;font-weight:700;display:flex;align-items:center;gap:8px}.rp-host{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.room-players li small{color:var(--text-dim);font-variant-numeric:tabular-nums}.rp-kick{width:30px;height:30px;border-radius:9px;color:var(--text-dim)}.rp-kick:hover{background:var(--error-soft);color:var(--error)}.rp-empty{width:34px;height:34px;border-radius:50%;border:1.5px dashed var(--line)}.room-wait{color:var(--text-dim);font-weight:650}.room-lobby .btn-big{width:min(380px,100%)}.net-chip{position:fixed;top:calc(env(safe-area-inset-top,0px) + 64px);left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-size:13.5px;font-weight:700}.turn-clock{font-variant-numeric:tabular-nums}.turn-clock.urgent{color:var(--error)}h1,h2,h3,.topbar-title .title,.card-title,.eyebrow,.btn,.tool-label,.num-digit,.cell,.mode-name,.tier-name,.sheet-head h2,.result-title,.countdown,.rh-round,.rh-time,.sb-score,.pm-name,.attack-name,.room-code .code,.vs-title,.choice-title,.gt-title,.db-title{font-family:var(--font-display)}.backdrop{background:radial-gradient(60vmax 45vmax at 0% -10%,var(--bg-glow-1),transparent 60%),radial-gradient(55vmax 45vmax at 110% 105%,var(--bg-glow-2),transparent 60%),var(--bg)}.btn{--b1: var(--surface);--b2: var(--surface-2);--bd: var(--surface-3);min-height:46px;border-radius:16px;background:linear-gradient(180deg,var(--b1),var(--b2));color:var(--text);font-weight:600;letter-spacing:.01em;box-shadow:inset 0 2px #ffffff59,0 4px 0 var(--bd),0 8px 16px #1b25591f;transition:transform .08s,box-shadow .08s,filter .15s}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px #ffffff59,0 1px 0 var(--bd),0 3px 8px #1b25591f}.btn:disabled{filter:grayscale(.6);opacity:.55}.btn-accent{--b1: var(--orange-hi);--b2: var(--orange);--bd: var(--orange-lo);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.15)}.btn-ghost{--b1: transparent;--b2: transparent;--bd: transparent;box-shadow:none;color:var(--text-dim)}.btn-ghost:active:not(:disabled){box-shadow:none}.btn-big{min-height:58px;font-size:19px;border-radius:20px}.btn-rematch{--bd: #1a8f8a;background:linear-gradient(90deg,var(--blue-hi),#2fb8d8 60%,var(--mint));color:#fff;font-weight:700;letter-spacing:.06em;text-shadow:0 2px 0 rgba(0,0,0,.15)}.btn-pill{min-height:42px;padding:0 22px;border-radius:999px}.icon-btn{border-radius:14px}.icon-btn.round{background:var(--surface);box-shadow:var(--shadow);border-radius:50%}.card{border-radius:var(--radius-card);border:2px solid color-mix(in srgb,var(--surface) 70%,transparent)}.avatar{background:linear-gradient(160deg,color-mix(in srgb,var(--pc) 70%,#fff),var(--pc));color:#fff;font-family:var(--font-display);font-weight:600;text-shadow:0 1px 0 rgba(0,0,0,.18);box-shadow:0 0 0 3px var(--surface),0 0 0 5px color-mix(in srgb,var(--pc) 45%,transparent),0 6px 14px #1b25592e}.league-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-family:var(--font-display);font-size:12.5px;font-weight:600;white-space:nowrap;background:var(--lg-bg, #eef2ff);color:var(--lg-ink, var(--navy));box-shadow:inset 0 -2px #00000014}.league-pill.big{font-size:15px;padding:6px 14px}.league-pill.promoted{animation:promo 1.4s ease-in-out 3}.l-bronze{--lg-bg: linear-gradient(180deg, #ffe3c7, #f5c39a);--lg-ink: #7a3f12}.l-silver{--lg-bg: linear-gradient(180deg, #f3f6fb, #d6dfec);--lg-ink: #3b4a6b}.l-gold{--lg-bg: linear-gradient(180deg, #fff3c2, #ffd76a);--lg-ink: #7a5300}.l-platinum{--lg-bg: linear-gradient(180deg, #dcfbf3, #9ff0d8);--lg-ink: #0b6b55}.l-diamond{--lg-bg: linear-gradient(180deg, #e2ecff, #a9c6ff);--lg-ink: #1d3f9e}.l-master{--lg-bg: linear-gradient(180deg, #f0e3ff, #cfb0ff);--lg-ink: #4b1f9e}@keyframes promo{50%{transform:scale(1.08)}}.home-screen{gap:16px}.home-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding-top:6px}.me-badge{justify-self:start;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:8px;align-items:center}.me-avatar{grid-row:1 / 3;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:22px;font-weight:600;color:#fff;background:linear-gradient(160deg,var(--blue-hi),var(--blue));box-shadow:0 0 0 3px var(--surface),0 0 0 6px color-mix(in srgb,var(--blue) 35%,transparent),0 6px 14px #1b25592e}.me-level{font-family:var(--font-display);font-weight:600;font-size:14px;text-align:left}.me-xp{display:block;width:54px;height:7px;border-radius:99px;background:var(--surface-3);overflow:hidden}.me-xp span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--blue-hi))}.brand{display:flex;flex-direction:column;align-items:center;line-height:.82;font-family:var(--font-display);font-weight:700;letter-spacing:.01em;transform:rotate(-3deg);filter:drop-shadow(0 4px 0 var(--blue-lo)) drop-shadow(0 8px 10px rgba(27,37,89,.25))}.brand span{-webkit-text-stroke:6px var(--blue);paint-order:stroke fill}.brand-1{font-size:clamp(30px,9vw,40px);color:#fff}.brand-2{font-size:clamp(34px,10.5vw,46px);color:var(--orange);background:linear-gradient(180deg,#ffd04a 10%,var(--orange) 55%,var(--orange-lo));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.home-top-right{justify-self:end;display:flex;align-items:center;gap:6px}.trophy-chip{display:flex;flex-direction:column;align-items:center;font-family:var(--font-display);line-height:1}.trophy-chip .trophy{font-size:30px;filter:drop-shadow(0 3px 2px rgba(122,83,0,.3));animation:bob 3s ease-in-out infinite}.trophy-chip b{font-weight:600;font-size:14px}@keyframes bob{50%{transform:translateY(-3px) rotate(4deg)}}.daily-banner{position:relative;display:flex;align-items:center;width:100%;min-height:132px;padding:18px 20px;border-radius:var(--radius-card);background:radial-gradient(120% 140% at 100% 100%,rgba(110,242,189,.95),transparent 55%),linear-gradient(115deg,#6a4ff0,#4a6ef5 45%,#2fb8d8);color:#fff;text-align:left;overflow:hidden;box-shadow:inset 0 2px #ffffff4d,0 5px #3a3fb0,0 14px 26px #4a6ef559;animation:rise .45s both cubic-bezier(.2,.9,.3,1);transition:transform .1s}.daily-banner:active{transform:translateY(3px) scale(.99)}.db-text{display:flex;flex-direction:column;gap:6px;z-index:1}.db-title{font-size:clamp(26px,7.5vw,32px);font-weight:700;line-height:1;text-shadow:0 2px 0 rgba(27,37,89,.25)}.db-sub{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:14px;opacity:.95}.db-streak{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#ffffff38;font-weight:800;font-size:12.5px}.db-streak.hot{background:#fff;color:var(--orange-lo)}.daily-banner.done .db-sub{color:#eafff6}.db-art{margin-left:auto;flex:none;transform:rotate(10deg)}.cal{position:relative;display:grid;place-items:center;width:86px;height:84px;padding-top:20px;border-radius:18px;background:#fff;box-shadow:inset 0 -5px #dfe6f5,0 8px 18px #1b25594d;overflow:hidden}.cal:before{content:"";position:absolute;inset:0 0 auto;height:24px;background:linear-gradient(180deg,#ff6f9e,var(--pink))}.cal i{position:absolute;top:-6px;width:9px;height:18px;border-radius:6px;background:#e8edf8;box-shadow:0 2px #b9c4dd;z-index:1}.cal i:first-child{left:20px}.cal i:nth-child(2){right:20px}.cal b{font-family:var(--font-display);font-size:36px;font-weight:700;color:var(--blue);line-height:1}.tile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.game-tile{--g1: var(--blue-hi);--g2: var(--blue);--gd: var(--blue-lo);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;min-height:150px;padding:14px 10px 16px;border-radius:var(--radius-tile);background:radial-gradient(90% 70% at 50% 25%,rgba(255,255,255,.28),transparent 70%),linear-gradient(170deg,var(--g1),var(--g2));color:#fff;text-align:center;border:3px solid rgba(255,255,255,.85);box-shadow:0 5px 0 var(--gd),0 12px 22px color-mix(in srgb,var(--g2) 40%,transparent);animation:rise .45s calc(var(--i, 0) * 50ms) both cubic-bezier(.2,.9,.3,1);transition:transform .1s,box-shadow .1s}.game-tile:nth-child(2){--i: 1}.game-tile:nth-child(3){--i: 2}.game-tile:nth-child(4){--i: 3}.game-tile:active{transform:translateY(4px);box-shadow:0 1px 0 var(--gd),0 5px 10px color-mix(in srgb,var(--g2) 40%,transparent)}.gt-art{font-size:54px;line-height:1.1;margin-bottom:auto;filter:drop-shadow(0 6px 4px rgba(0,0,0,.22));transition:transform .2s cubic-bezier(.2,.9,.3,1.6)}.game-tile:hover .gt-art{transform:scale(1.08) rotate(-4deg)}.gt-title{font-size:21px;font-weight:700;line-height:1.05;text-shadow:0 2px 0 rgba(0,0,0,.15)}.gt-sub{font-size:12.5px;font-weight:700;opacity:.92}.t-blue{--g1: #5d8dff;--g2: var(--blue);--gd: var(--blue-lo)}.t-orange{--g1: var(--orange-hi);--g2: var(--orange);--gd: var(--orange-lo)}.t-pink{--g1: var(--pink-hi);--g2: var(--pink);--gd: var(--pink-lo)}.t-mint{--g1: #5fe8b8;--g2: #19b98f;--gd: #0e8a69}.t-violet{--g1: var(--violet-hi);--g2: var(--violet);--gd: var(--violet-lo)}.t-cyan{--g1: #5fd4f5;--g2: #1ea6d8;--gd: #127fa8}.card-continue{border:2px solid color-mix(in srgb,var(--blue) 25%,transparent)}.continue-play{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#fff;font-size:18px;background:linear-gradient(180deg,var(--mint-hi),var(--mint));box-shadow:0 3px 0 var(--mint-lo)}.ring{background:conic-gradient(var(--mint) calc(var(--p) * 360deg),var(--surface-3) 0)}.topbar-title .title{font-size:20px;font-weight:600;letter-spacing:.01em}.sheet{border-radius:30px 30px 0 0}@media(min-width:700px){.sheet{border-radius:30px}}.sheet-head h2{font-size:24px;font-weight:600}.tier{border-radius:18px}.tier-dots span.on{background:var(--orange)}.mp-main{gap:14px}.mode-card{--g1: var(--blue-hi);--g2: var(--blue);--gd: var(--blue-lo);border-radius:var(--radius-tile);background:radial-gradient(70% 120% at 0% 0%,rgba(255,255,255,.25),transparent 60%),linear-gradient(135deg,var(--g1),var(--g2));color:#fff;border:3px solid rgba(255,255,255,.8);box-shadow:0 5px 0 var(--gd),0 12px 22px color-mix(in srgb,var(--g2) 35%,transparent);transition:transform .1s,box-shadow .1s}.mode-card:active{transform:translateY(4px);box-shadow:0 1px 0 var(--gd)}.mode-card.mode-clash{--g1: #5d8dff;--g2: var(--blue);--gd: var(--blue-lo)}.mode-card.mode-territory{--g1: #5fe8b8;--g2: #19b98f;--gd: #0e8a69}.mode-card.mode-duel{--g1: var(--violet-hi);--g2: var(--violet);--gd: var(--violet-lo)}.mode-card.mode-royale{--g1: var(--orange-hi);--g2: var(--orange);--gd: var(--orange-lo)}.mode-card.mode-coop{--g1: var(--pink-hi);--g2: var(--pink);--gd: var(--pink-lo)}.mode-card .mode-icon{width:64px;height:64px;font-size:40px;border-radius:20px;background:#ffffff38;color:#fff;box-shadow:inset 0 -3px #0000001a;filter:drop-shadow(0 3px 2px rgba(0,0,0,.15))}.mode-card .mode-name{font-size:22px;font-weight:700;text-shadow:0 2px 0 rgba(0,0,0,.15)}.mode-card .mode-tagline{color:#ffffffeb;font-weight:600}.mode-card .mode-meta span{background:#ffffff38;color:#fff;font-weight:750}.mode-help{font-family:var(--font-display);font-weight:600;color:var(--text-dim)}.online-card{border-radius:var(--radius-card);border:2px solid color-mix(in srgb,var(--surface) 70%,transparent)}.oc-avatar{position:relative;flex:none;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:22px;font-weight:600;color:#fff;background:linear-gradient(160deg,var(--blue-hi),var(--blue));box-shadow:0 0 0 3px var(--surface),0 0 0 6px color-mix(in srgb,var(--blue) 30%,transparent)}.oc-avatar .oc-dot{position:absolute;right:-2px;bottom:-2px;width:14px;height:14px;border:3px solid var(--surface)}.oc-who strong{font-family:var(--font-display);font-size:19px;font-weight:600}.oc-who small{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:2px}.tier-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px}.tier-chip{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 6px 9px;border-radius:16px;background:var(--surface-2);font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--text-dim);border:2px solid transparent;transition:transform .1s,background-color .15s}.tier-chip.on{background:var(--surface);color:var(--text);border-color:var(--blue);box-shadow:0 4px color-mix(in srgb,var(--blue) 30%,transparent)}.tier-chip:active{transform:scale(.96)}.tier-chip .tier-dots{display:flex;gap:2px}.tier-chip .tier-dots span{width:6px;height:6px;border-radius:2px;background:var(--surface-3)}.tier-chip .tier-dots span.on{background:var(--orange)}.tier-note{margin:8px 2px 4px;min-height:2.6em;font-size:13.5px;color:var(--text-dim);line-height:1.35}.tier-note em{font-style:normal;font-weight:800;color:var(--orange)}.play-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.play-choices.single{grid-template-columns:1fr}.choice{--g1: var(--blue-hi);--g2: var(--blue);--gd: var(--blue-lo);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:132px;padding:12px 8px 14px;border-radius:22px;color:#fff;text-align:center;background:radial-gradient(90% 70% at 50% 20%,rgba(255,255,255,.28),transparent 70%),linear-gradient(170deg,var(--g1),var(--g2));border:3px solid rgba(255,255,255,.85);box-shadow:0 5px 0 var(--gd),0 12px 20px color-mix(in srgb,var(--g2) 35%,transparent);transition:transform .08s,box-shadow .08s}.choice:active{transform:translateY(4px);box-shadow:0 1px 0 var(--gd)}.choice.c-friend{--g1: var(--pink-hi);--g2: var(--pink);--gd: var(--pink-lo)}.choice.c-practice{--g1: #5fe8b8;--g2: #19b98f;--gd: #0e8a69;min-height:92px}.choice-art{font-size:40px;line-height:1.1;filter:drop-shadow(0 4px 3px rgba(0,0,0,.2))}.choice-title{font-size:19px;font-weight:700;line-height:1.1;text-shadow:0 2px 0 rgba(0,0,0,.15)}.choice-sub{font-size:12.5px;font-weight:700;opacity:.92}.seg{border-radius:16px}.seg button{font-family:var(--font-display);font-weight:600;font-size:15px;border-radius:12px}.seg button.on{background:linear-gradient(180deg,var(--blue-hi),var(--blue));color:#fff;box-shadow:0 3px 0 var(--blue-lo)}.seat-picker{margin-top:8px}.stepper button{font-family:var(--font-display);color:#fff;background:linear-gradient(180deg,var(--blue-hi),var(--blue));box-shadow:0 3px 0 var(--blue-lo)}.stepper strong{font-family:var(--font-display);font-weight:600}.match-screen{isolation:isolate}.arena-band{position:absolute;z-index:-1;inset:0 0 auto;height:calc(var(--band-h, 0px) + 50dvh);max-height:760px;border-radius:0 0 36px 36px;background:radial-gradient(60% 50% at 15% 10%,rgba(255,255,255,.16),transparent 70%),radial-gradient(70% 60% at 100% 0%,rgba(123,92,255,.55),transparent 70%),linear-gradient(170deg,var(--band-1, #3a6cf6),var(--band-2, #5b4fe6));box-shadow:0 10px 30px #2f62f040}.match-screen>.topbar{color:#fff}.match-screen>.topbar .title{text-transform:uppercase;letter-spacing:.06em;font-size:21px;text-shadow:0 2px 0 rgba(0,0,0,.15)}.match-screen>.topbar .subtitle{color:#fffc}.match-screen>.topbar .icon-btn{color:#fff;background:#ffffff29}.match-screen>.topbar .topbar-title{align-items:center;text-align:center}@media(min-width:900px)and (min-aspect-ratio:5/4){.arena-band{height:44dvh;max-height:none;border-radius:0 0 48px 48px}}.match-screen .vs-strip{gap:10px}.match-screen .player-mini{padding:8px 10px;border-radius:18px;background:#ffffff29;color:#fff;box-shadow:inset 0 0 0 2px #ffffff2e;backdrop-filter:blur(6px)}.match-screen .pm-name{color:#fff;font-weight:600}.match-screen .pm-name small{padding:1px 7px;border-radius:999px;background:#ffffff40;color:#fff;font-weight:700}.match-screen .pm-bar{background:#ffffff38}.match-screen .pm-bar span{background:linear-gradient(90deg,var(--mint-hi),var(--mint))}.match-screen .pm-bar.slot-1 span{background:linear-gradient(90deg,var(--pink-hi),#fff)}.match-screen .pip{background:#ffffff38}.match-screen .pip span{background:linear-gradient(180deg,#ffe066,var(--orange))}.match-screen .minimap{background:#fff3}.match-screen .minimap span.f{background:#fff}.match-screen .scoreboard,.match-screen .royale-head,.match-screen .coop-head{color:#fff}.match-screen .sb-bar{background:#ffffff40}.match-screen .turn-banner{background:#ffffff2e;color:#fff}.match-screen .turn-banner.mine{background:linear-gradient(180deg,var(--mint-hi),var(--mint));color:var(--navy)}.match-screen .rh-round{font-size:18px}.match-screen .rh-alive,.match-screen .coop-names,.match-screen .coop-time{color:#ffffffe6}.match-screen .rh-time{background:#fff3;color:#fff}.match-screen .rh-time.urgent{background:var(--pink)}.match-screen .rr-player{background:#ffffff24;border-radius:16px;color:#fff}.match-screen .rr-player.me{background:#ffffff47}.match-screen .rr-name{color:#fff}.match-screen .rr-prog{background:#ffffff38}.match-screen .rr-prog span{background:linear-gradient(90deg,var(--mint-hi),var(--mint))}.match-screen .board,.game-screen .board{border-radius:20px;box-shadow:0 0 0 3px var(--line-strong),0 0 0 7px color-mix(in srgb,var(--surface) 55%,transparent),0 18px 36px #1b255947}.match-screen .warn-banner{border-radius:14px;background:linear-gradient(180deg,var(--pink-hi),var(--pink));color:#fff;font-weight:800;box-shadow:0 4px 0 var(--pink-lo)}.num{border-radius:16px;background:linear-gradient(180deg,#4f7dff,var(--blue));box-shadow:inset 0 2px #ffffff47,0 4px 0 var(--blue-lo),0 8px 14px #2f62f040}.num:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffff47,0 1px 0 var(--blue-lo)}.num-digit{color:#fff;font-weight:600;text-shadow:0 2px 0 rgba(0,0,0,.15)}.num-left{color:#ffffffc7}.notes-mode .num{background:linear-gradient(180deg,#fff,#e9eefb);box-shadow:inset 0 2px #fff,0 4px #c9d4ee}.notes-mode .num-digit{color:var(--blue);text-shadow:none}.notes-mode .num-left{color:var(--text-dim)}.num.done{background:linear-gradient(180deg,#c7d3f2,#aebde6);box-shadow:0 3px #94a6d6}.num.brush{background:linear-gradient(180deg,var(--orange-hi),var(--orange));box-shadow:inset 0 2px #ffffff4d,0 4px 0 var(--orange-lo)}.tool{border-radius:16px}.tool-icon{width:46px;height:38px;border-radius:14px;background:var(--surface);box-shadow:0 3px 0 var(--surface-3),0 6px 12px #1b255914;color:var(--blue)}.tool.active .tool-icon{background:linear-gradient(180deg,var(--orange-hi),var(--orange));color:#fff;box-shadow:0 3px 0 var(--orange-lo)}.tool-label{font-weight:600}.attack-bar{gap:8px}.attack{--g1: #9aa8c8;--g2: #6f7fa6;--gd: #56648a;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:18px;background:linear-gradient(180deg,var(--g1),var(--g2));color:#fff;box-shadow:inset 0 2px #ffffff4d,0 4px 0 var(--gd);transition:transform .08s,filter .2s}.attack:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--gd)}.attack:disabled{filter:grayscale(.85) brightness(1.05);opacity:.7}.attack-fog{--g1: #b3a5ff;--g2: #8a76f5;--gd: #6a55d8}.attack-ice{--g1: #7fe3ff;--g2: #2fb8e8;--gd: #1a8fbf}.attack-blind{--g1: #a37bff;--g2: #6d3df0;--gd: #5226c8}.attack-shuffle{--g1: var(--pink-hi);--g2: var(--pink);--gd: var(--pink-lo)}.attack-art{position:relative;display:grid;place-items:center;width:38px;height:38px;font-size:22px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22) 58%,transparent 60%),conic-gradient(#fff calc(var(--charge, 0) * 360deg),#ffffff40 0)}.attack-name{font-size:13px;font-weight:600;color:#fff}.attack-cost{color:#ffffffd9;font-size:9px;letter-spacing:1px}.attack-help{font-family:var(--font-display)}.quick-chat{position:relative}.qc-icon{font-size:20px}.qc-pop{position:absolute;bottom:calc(100% + 10px);right:-6px;z-index:30;display:flex;gap:6px;padding:8px;border-radius:20px;background:var(--surface);box-shadow:0 12px 30px #1b255940;animation:pop-in .18s cubic-bezier(.2,.9,.3,1.4)}.qc-emote{min-width:44px;height:44px;padding:0 10px;border-radius:999px;background:var(--surface-2);font-size:22px;box-shadow:0 3px 0 var(--surface-3);transition:transform .08s}.qc-emote.word{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text)}.qc-emote:active{transform:translateY(2px) scale(.95)}@keyframes pop-in{0%{opacity:0;transform:translateY(8px) scale(.9)}}.emote-layer{position:fixed;z-index:55;top:calc(env(safe-area-inset-top,0px) + 100px);left:0;right:0;pointer-events:none;display:flex;flex-direction:column;gap:6px;padding:0 14px;max-width:640px;margin:0 auto}.emote-bubble{align-self:flex-end;display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border-radius:999px;background:#fff;color:var(--navy);box-shadow:0 8px 20px #1b255940;animation:emote-in 2.6s cubic-bezier(.2,.9,.3,1.3) both}.emote-bubble.mine{align-self:flex-start}.emote-bubble b{font-family:var(--font-display);font-size:20px;font-weight:700}@keyframes emote-in{0%{opacity:0;transform:translateY(14px) scale(.6)}12%{opacity:1;transform:translateY(0) scale(1.08)}20%{transform:scale(1)}82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}.lobby.intro{z-index:46;padding:0}.vs-screen{position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden;animation:vs-in .35s ease-out}.vs-half{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff}.vs-half.top{background:linear-gradient(170deg,#3d74ff,var(--blue));clip-path:polygon(0 0,100% 0,100% 86%,0 100%);margin-bottom:-9vh;padding-bottom:9vh;z-index:1;animation:vs-slide-down .5s cubic-bezier(.2,.9,.3,1.1)}.vs-half.bottom{background:linear-gradient(170deg,var(--pink-hi),var(--pink));padding-top:9vh;animation:vs-slide-up .5s cubic-bezier(.2,.9,.3,1.1)}.vs-screen.coop .vs-half.bottom{background:linear-gradient(170deg,#5fe8b8,#19b98f)}.vs-title{display:flex;flex-direction:column;align-items:center;line-height:.9;font-size:clamp(42px,12vw,64px);font-weight:700;letter-spacing:.01em;color:#fff;filter:drop-shadow(0 4px 0 rgba(27,37,89,.4))}.vs-title span{-webkit-text-stroke:5px var(--navy);paint-order:stroke fill}.vs-title .hot{color:var(--orange-hi)}.vs-person{display:flex;align-items:center;gap:16px;animation:pop-in .4s .2s both cubic-bezier(.2,.9,.3,1.4)}.vs-who{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.vs-who strong{font-family:var(--font-display);font-size:30px;font-weight:700;text-shadow:0 3px 0 rgba(0,0,0,.18)}.vs-label{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:.08em;opacity:.85}.vs-shield{position:absolute;z-index:2;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:120px;height:132px;font-family:var(--font-display);font-size:50px;font-weight:700;color:#fff;-webkit-text-stroke:4px var(--orange-lo);paint-order:stroke fill;background:linear-gradient(180deg,var(--orange-hi),var(--orange));clip-path:polygon(50% 0,100% 14%,96% 62%,50% 100%,4% 62%,0 14%);filter:drop-shadow(0 6px 0 var(--orange-lo));animation:shield-in .55s .25s both cubic-bezier(.2,.9,.3,1.6)}.vs-screen.royale{align-items:center;justify-content:center;gap:26px;padding:20px;background:linear-gradient(170deg,var(--orange-hi),var(--pink))}.vs-screen.royale .royale-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px;width:min(460px,100%)}.vs-screen.royale .vs-person{flex-direction:column;gap:6px;color:#fff;font-family:var(--font-display);font-weight:600;animation-delay:calc(.15s + var(--i) * 70ms)}.vs-screen.royale .league-pill{font-size:10.5px;padding:2px 7px}@keyframes vs-in{0%{opacity:0}}@keyframes vs-slide-down{0%{transform:translateY(-40%)}}@keyframes vs-slide-up{0%{transform:translateY(40%)}}@keyframes shield-in{0%{opacity:0;transform:scale(2.4) rotate(-20deg)}}.countdown span{display:grid;place-items:center;width:150px;height:150px;border-radius:44px;font-family:var(--font-display);font-weight:700;color:#fff;background:linear-gradient(160deg,var(--orange-hi),var(--pink));box-shadow:inset 0 4px #ffffff4d,0 8px 0 var(--pink-lo),0 20px 40px #ff3d8b59;-webkit-text-stroke:4px rgba(27,37,89,.35);paint-order:stroke fill}.result-backdrop{background:#0f15348c}.result-card{padding:0 0 16px;overflow:hidden;gap:14px;border-radius:32px}.rc-top{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 18px 20px;color:#fff;background:radial-gradient(60% 60% at 50% 0%,rgba(255,255,255,.25),transparent 70%),linear-gradient(170deg,#4a6ef5,#6a4ff0);overflow:hidden}.result-card.sad .rc-top{background:linear-gradient(170deg,#6b7bb0,#4a5788)}.result-title{position:relative;font-size:clamp(42px,12vw,58px);font-weight:700;line-height:1;color:#fff;-webkit-text-stroke:6px var(--pink-lo);paint-order:stroke fill;filter:drop-shadow(0 4px 0 rgba(27,37,89,.35));animation:title-in .6s .15s both cubic-bezier(.2,.9,.3,1.5)}.result-card.sad .result-title{-webkit-text-stroke-color:var(--navy)}.rc-top .result-sub{position:relative;color:#ffffffeb;font-weight:700}.stars.big{position:relative;align-items:flex-end;gap:4px}.stars.big .star{color:#ffffff40}.stars.big .star.on{color:var(--gold);filter:drop-shadow(0 3px 0 #d49400)}.elo-pill{position:relative;display:flex;align-items:center;gap:14px;padding:8px 18px;border-radius:20px;background:#1b255966;box-shadow:inset 0 2px #ffffff1f}.elo-k{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:.06em}.elo-trophy{font-size:42px;line-height:1;filter:drop-shadow(0 4px 2px rgba(0,0,0,.3));animation:bob 2.4s ease-in-out infinite}.elo-v{display:flex;flex-direction:column;align-items:flex-end;font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1}.elo-v.up{color:var(--mint-hi)}.elo-v.down{color:#ffb3cd}.elo-v small{font-size:13px;color:#ffffffd9;font-weight:600}.rc-stats{width:calc(100% - 28px);padding:12px 14px 10px;border-radius:22px;background:var(--surface-2);text-align:left}.rc-stats h3{font-size:17px;font-weight:600;margin-bottom:6px}.rc-stats .result-stats{border:0;padding:2px 0}.result-stats .v{font-family:var(--font-display);font-weight:600;font-size:20px;color:var(--blue)}.result-actions{width:calc(100% - 28px)}.result-row{justify-content:center}.solo-result .star-reasons,.solo-result>.result-stats,.solo-result>.xp-bar,.solo-result>.streak-line{width:calc(100% - 28px)}.confetti{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,var(--gold) 3px,transparent 4px),radial-gradient(circle,var(--mint-hi) 3px,transparent 4px),radial-gradient(circle,var(--pink-hi) 3px,transparent 4px),radial-gradient(circle,#fff 2px,transparent 3px),radial-gradient(circle,var(--orange-hi) 3px,transparent 4px);background-size:61px 53px,83px 71px,47px 67px,37px 41px,71px 59px;background-position:0 0,20px 30px,40px 10px,10px 20px,5px 5px;opacity:.85;animation:confetti-fall 6s linear infinite;-webkit-mask:linear-gradient(180deg,#000 30%,transparent 95%);mask:linear-gradient(180deg,#000 30%,transparent 95%)}@keyframes confetti-fall{to{background-position:0 106px,20px 172px,40px 144px,10px 102px,5px 123px}}@keyframes title-in{0%{opacity:0;transform:scale(.4) rotate(-6deg)}}.room-code{border-radius:28px}.room-code .code{font-weight:700;color:var(--blue);text-shadow:0 3px 0 color-mix(in srgb,var(--blue) 20%,transparent)}.room-players li{border-radius:18px}.rp-name{font-family:var(--font-display);font-weight:600}.t-arena .sw i:nth-child(1){background:#e7edf8}.t-arena .sw i:nth-child(2){background:#2f62f0}.t-arena .sw i:nth-child(3){background:#ff8a1f}.t-night .sw i:nth-child(1){background:#0f1534}.t-night .sw i:nth-child(2){background:#6fa0ff}.t-night .sw i:nth-child(3){background:#ff3d8b}.t-auto .sw i:nth-child(1){background:#e7edf8}.t-auto .sw i:nth-child(2){background:#0f1534}.t-auto .sw i:nth-child(3){background:#ff8a1f}.theme-grid{grid-template-columns:repeat(4,1fr)}@media(prefers-reduced-motion:reduce){.confetti,.trophy-chip .trophy,.elo-trophy{animation:none}}.mode-card-wrap .mode-help{background:#fff;color:var(--blue);font-family:var(--font-display);font-weight:600;box-shadow:0 3px #1b255926}.match-tools{position:relative}.quick-chat{position:static}.qc-pop{left:50%;right:auto;translate:-50% 0;flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - 24px)}.game-screen{position:relative;isolation:isolate}.game-screen>.topbar{color:#fff}.game-screen>.topbar .icon-btn{color:#fff;background:#ffffff29}.game-screen>.topbar .title{font-size:22px;text-shadow:0 2px 0 rgba(0,0,0,.15)}.game-screen>.topbar .subtitle{color:#fffc}.game-screen .timer-btn{background:#fffffff2;color:var(--navy);font-family:var(--font-display);font-weight:600}.game-screen .mistakes{color:#fff;background:var(--pink);border-radius:999px;padding:3px 9px}.match-screen .scoreboard,.match-screen .coop-head{padding:8px 12px;background:#ffffff29;box-shadow:inset 0 0 0 2px #ffffff2e;border-radius:18px;color:#fff}.match-screen .sb-score{color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.15)}.match-screen .sb-bar span{background:linear-gradient(90deg,var(--mint-hi),var(--mint))}.match-screen .coop-names,.match-screen .coop-time{color:#fff;font-family:var(--font-display);font-weight:600}.match-screen .coop-shares span{background:#ffffff40}.match-screen .coop-shares span.on{background:var(--gold)}.match-screen .turn-banner{border-radius:999px;padding:3px 12px;font-family:var(--font-display);font-weight:600}.avatar.emoji{background:linear-gradient(160deg,color-mix(in srgb,var(--pc) 35%,#fff),color-mix(in srgb,var(--pc) 70%,#fff));text-shadow:none;line-height:1}.me-avatar{font-size:28px}.tc-bar{display:block;width:46px;height:6px;margin-top:3px;border-radius:99px;background:var(--surface-3);overflow:hidden}.tc-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--orange))}.reward-strip{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px 10px 10px;border-radius:20px;background:linear-gradient(100deg,#fff3c2,#ffd76a);color:#6b4500;text-align:left;box-shadow:0 4px #e0a92a,0 10px 20px #e0a92a4d;animation:rise .4s both cubic-bezier(.2,.9,.3,1)}.reward-strip:active{transform:translateY(3px);box-shadow:0 1px #e0a92a}.rs-chest{font-size:34px;animation:wiggle 1.6s ease-in-out infinite}.rs-text{flex:1;display:flex;flex-direction:column}.rs-text strong{font-family:var(--font-display);font-weight:600;font-size:17px}.rs-text small{font-weight:700;font-size:12.5px;opacity:.8}.rs-go{padding:8px 14px;border-radius:12px;font-family:var(--font-display);font-weight:700;color:#fff;background:linear-gradient(180deg,var(--orange-hi),var(--orange));box-shadow:0 3px 0 var(--orange-lo)}@keyframes wiggle{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-12deg) scale(1.08)}80%{transform:rotate(10deg) scale(1.08)}90%{transform:rotate(-6deg)}}.quests{padding:14px 14px 12px;border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow);border:2px solid color-mix(in srgb,var(--surface) 70%,transparent)}.q-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.q-head h2{font-size:21px;font-weight:600}.q-new{font-size:12.5px;font-weight:800;color:var(--text-dim)}.quests ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.quest{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:16px;background:var(--surface-2);animation:rise .4s calc(var(--i) * 60ms) both}.quest.ready{background:linear-gradient(100deg,color-mix(in srgb,var(--mint) 22%,var(--surface)),var(--surface-2));box-shadow:inset 0 0 0 2px var(--mint)}.quest.claimed{opacity:.6}.q-icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-size:22px;background:var(--surface);box-shadow:0 3px 0 var(--surface-3)}.q-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.q-text{font-weight:800;font-size:14px;line-height:1.2}.q-bar{position:relative;display:block;height:14px;border-radius:99px;background:var(--surface-3);overflow:hidden}.q-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint-hi),var(--mint));transition:width .4s cubic-bezier(.2,.9,.3,1)}.q-bar i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-size:10.5px;font-weight:800;color:var(--navy)}.q-reward{flex:none;font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--orange-lo)}.q-claim{animation:pulse-claim 1.2s ease-in-out infinite}@keyframes pulse-claim{50%{transform:scale(1.07)}}.q-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:10px;font-size:12.5px;font-weight:800;color:var(--text-dim)}.vc{display:inline-flex;align-items:center;gap:6px}.vc-pips{display:inline-flex;gap:3px}.vc-pips i{width:14px;height:8px;border-radius:4px;background:var(--surface-3)}.vc-pips i.on{background:linear-gradient(90deg,var(--gold),var(--orange))}.q-streak{color:var(--orange-lo)}.q-all{margin-left:auto}.reward-chips{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.reward-chips span{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border-radius:999px;background:#ffffffeb;color:var(--navy);font-size:13px;animation:pop-in .35s calc(.6s + var(--i) * .12s) both cubic-bezier(.2,.9,.3,1.5)}.reward-chips span.hot{background:linear-gradient(180deg,var(--orange-hi),var(--orange));color:#fff}.reward-chips b{font-family:var(--font-display);font-weight:600}.celebrate{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 45%,#3a6cf6d9,#0f1534eb);overflow:hidden;animation:fade .25s ease-out}.rays{position:absolute;left:50%;top:42%;width:160vmax;height:160vmax;translate:-50% -50%;background:repeating-conic-gradient(rgba(255,255,255,.11) 0 9deg,transparent 9deg 22deg);animation:spin 18s linear infinite;-webkit-mask:radial-gradient(circle,#000 10%,transparent 55%);mask:radial-gradient(circle,#000 10%,transparent 55%)}@keyframes spin{to{rotate:360deg}}.cel-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;width:min(360px,100%);color:#fff;text-align:center}.cel-eyebrow{font-family:var(--font-display);font-size:clamp(34px,10vw,46px);font-weight:700;line-height:1;color:#fff;-webkit-text-stroke:6px var(--pink-lo);paint-order:stroke fill;filter:drop-shadow(0 4px 0 rgba(15,21,52,.4));animation:title-in .6s both cubic-bezier(.2,.9,.3,1.5)}.cel-title{font-family:var(--font-display);font-size:24px;font-weight:600}.cel-sub{font-weight:700;opacity:.9}.cel-card .btn-big{width:100%}.cel-card .btn-pill{--b1: rgba(255, 255, 255, .2);--b2: rgba(255, 255, 255, .12);--bd: rgba(0, 0, 0, .2);color:#fff}.level-badge{display:grid;place-items:center;width:150px;height:160px;background:linear-gradient(180deg,#ffe066,var(--orange));clip-path:polygon(50% 0,100% 22%,100% 74%,50% 100%,0 74%,0 22%);filter:drop-shadow(0 8px 0 var(--orange-lo));animation:shield-in .6s .15s both cubic-bezier(.2,.9,.3,1.6)}.level-badge b{font-family:var(--font-display);font-size:76px;font-weight:700;color:#fff;-webkit-text-stroke:5px var(--orange-lo);paint-order:stroke fill}.unlock-art{display:grid;place-items:center;width:150px;height:150px;font-size:92px;border-radius:40px;background:linear-gradient(160deg,#ffffff59,#ffffff1a);box-shadow:inset 0 0 0 3px #ffffff80;animation:shield-in .6s .15s both cubic-bezier(.2,.9,.3,1.6)}.chest{position:relative;width:170px;height:150px;margin:10px 0;animation:chest-shake 1.4s ease-in-out infinite}.chest.open{animation:none}.chest-body{position:absolute;left:10px;right:10px;bottom:0;height:82px;border-radius:10px 10px 18px 18px;background:linear-gradient(90deg,transparent 44%,#ffd04a 44% 56%,transparent 56%),linear-gradient(180deg,#a35a1f,#7a3d10);box-shadow:inset 0 -6px #0003,0 8px #4a2306}.chest-lid{position:absolute;left:4px;right:4px;top:14px;height:58px;border-radius:40px 40px 10px 10px;background:linear-gradient(90deg,transparent 44%,#ffd04a 44% 56%,transparent 56%),linear-gradient(180deg,#c06c26,#8c4714);box-shadow:inset 0 -5px #0000002e;transform-origin:50% 100%;transition:transform .45s cubic-bezier(.2,.9,.3,1.6);z-index:1}.chest.open .chest-lid{transform:translateY(-34px) rotate(-18deg)}.chest-burst{position:absolute;inset:-40px;background:radial-gradient(circle,#fff7c2 0 18%,transparent 19%),repeating-conic-gradient(rgba(255,224,102,.9) 0 8deg,transparent 8deg 24deg);-webkit-mask:radial-gradient(circle,#000 20%,transparent 62%);mask:radial-gradient(circle,#000 20%,transparent 62%);animation:burst .6s ease-out both}@keyframes burst{0%{opacity:0;transform:scale(.3)}}@keyframes chest-shake{0%,55%,to{transform:rotate(0)}65%{transform:rotate(-6deg) translateY(-4px)}75%{transform:rotate(6deg) translateY(-4px)}85%{transform:rotate(-3deg)}}.loot{display:flex;gap:10px}.loot-item{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:18px;background:#fff;color:var(--navy);font-size:20px;box-shadow:0 5px #0003;animation:pop-in .45s calc(.25s + var(--i) * .15s) both cubic-bezier(.2,.9,.3,1.6)}.loot-item b{font-family:var(--font-display);font-weight:600}.road-screen{max-width:560px;display:flex;flex-direction:column;gap:14px}.road-head{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-card);color:#fff;background:linear-gradient(120deg,var(--orange-hi),var(--pink));box-shadow:0 5px 0 var(--pink-lo),0 12px 24px #ff3d8b4d}.road-head>div{flex:1;display:flex;flex-direction:column;gap:4px}.road-trophy{font-size:48px;filter:drop-shadow(0 4px 2px rgba(0,0,0,.25))}.road-count{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1}.road-sub{font-weight:800;font-size:13px}.road-bar{display:block;height:10px;border-radius:99px;background:#ffffff4d;overflow:hidden}.road-bar span{display:block;height:100%;border-radius:inherit;background:#fff}.road-best{display:flex;flex-direction:column;align-items:center;font-size:11px;font-weight:800}.road-best b{font-family:var(--font-display);font-size:26px;font-weight:700}.road{list-style:none;margin:0;padding:0 0 24px;display:flex;flex-direction:column;gap:10px;position:relative}.road:before{content:"";position:absolute;left:48px;top:10px;bottom:30px;width:6px;border-radius:3px;background:var(--surface-3)}.road-node{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);animation:rise .4s calc(min(var(--i),8)*40ms) both}.road-node.done{background:linear-gradient(100deg,color-mix(in srgb,var(--gold) 18%,var(--surface)),var(--surface))}.road-node.next{box-shadow:0 0 0 3px var(--orange),var(--shadow)}.rn-at{position:absolute;right:12px;top:6px;font-size:11px;font-weight:800;color:var(--text-dim)}.rn-art{flex:none;z-index:1;display:grid;place-items:center;width:60px;height:60px;border-radius:18px;font-size:34px;background:var(--surface-2);box-shadow:0 3px 0 var(--surface-3)}.road-node:not(.done) .rn-art{filter:grayscale(.85);opacity:.7}.rn-text{flex:1;display:flex;flex-direction:column}.rn-text strong{font-family:var(--font-display);font-weight:600;font-size:17px}.rn-text small{color:var(--text-dim);font-weight:700}.rn-state{font-size:20px;margin-top:10px}.road-node .btn{margin-top:12px}.profile{display:flex;flex-direction:column;gap:12px}.profile-head{display:flex;align-items:center;gap:14px}.profile-avatar{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;font-size:44px;background:linear-gradient(160deg,#dfe8ff,#b9ccff);box-shadow:0 0 0 4px var(--surface),0 0 0 7px color-mix(in srgb,var(--blue) 35%,transparent)}.profile-stats{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.profile-stats span{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:14px;background:var(--surface-2)}.profile-stats b{font-family:var(--font-display);font-weight:600;font-size:16px}.profile-stats small{font-size:11px;color:var(--text-dim);font-weight:700}.profile h3{font-size:17px;font-weight:600}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:8px}.avatar-pick{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:66px;border-radius:18px;background:var(--surface-2);font-size:32px;border:3px solid transparent;box-shadow:0 3px 0 var(--surface-3)}.avatar-pick.on{border-color:var(--blue);background:var(--surface)}.avatar-pick.locked span{filter:grayscale(1);opacity:.35}.avatar-pick small{position:absolute;bottom:3px;font-size:10px;font-weight:800;color:var(--text-dim)}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.theme-swatch.locked{opacity:.55}.theme-swatch.locked .sw{filter:grayscale(.7)}@media(prefers-reduced-motion:reduce){.rays,.chest,.rs-chest,.q-claim{animation:none}}.brand .brand-2{-webkit-text-stroke:0;filter:drop-shadow(3px 0 0 var(--blue)) drop-shadow(-3px 0 0 var(--blue)) drop-shadow(0 3px 0 var(--blue)) drop-shadow(0 -3px 0 var(--blue))}
