@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) format("woff");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:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2) format("woff2"),url(/assets/silkscreen-latin-400-normal-D0DfPJut.woff) format("woff");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:Silkscreen;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) format("woff");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:Silkscreen;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/silkscreen-latin-700-normal-CSE2nhgM.woff2) format("woff2"),url(/assets/silkscreen-latin-700-normal-BjMPLkh0.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-cyrillic-ext-400-normal-B-Nhg57H.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-ext-400-normal-BQUrPAlD.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-cyrillic-400-normal-D9OZd8lm.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-400-normal-CD6XmiVF.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-greek-ext-400-normal-CeBDcuzJ.woff2) format("woff2"),url(/assets/ubuntu-greek-ext-400-normal-VZgpvyyF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-greek-400-normal-GaJa0t-K.woff2) format("woff2"),url(/assets/ubuntu-greek-400-normal-UX4bU-Ff.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-latin-ext-400-normal-Bb6UNjxu.woff2) format("woff2"),url(/assets/ubuntu-latin-ext-400-normal-kv0aZEtN.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-latin-400-normal-CQJ26Fy6.woff2) format("woff2"),url(/assets/ubuntu-latin-400-normal-ChuJk2Dr.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-cyrillic-ext-500-normal-AcePgoUe.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-ext-500-normal-D_nARPSq.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-cyrillic-500-normal-BU9-HBoA.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-500-normal-CwjDQ7H5.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-greek-ext-500-normal-B00wCqpo.woff2) format("woff2"),url(/assets/ubuntu-greek-ext-500-normal-C7ALJ6Zy.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-greek-500-normal-B3ImYAyH.woff2) format("woff2"),url(/assets/ubuntu-greek-500-normal-D9iATQq0.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-latin-ext-500-normal-DzrGfuVI.woff2) format("woff2"),url(/assets/ubuntu-latin-ext-500-normal-Cd8iAjtc.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-latin-500-normal-CnjGCQfM.woff2) format("woff2"),url(/assets/ubuntu-latin-500-normal-BMp9VhBY.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-cyrillic-ext-700-normal-VUzwJTK6.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-ext-700-normal-BZbN9t83.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-cyrillic-700-normal-CF4plK0P.woff2) format("woff2"),url(/assets/ubuntu-cyrillic-700-normal-DN03sdX6.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-greek-ext-700-normal-BKlOPkfe.woff2) format("woff2"),url(/assets/ubuntu-greek-ext-700-normal-5K5_eCDc.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-greek-700-normal-Jbnau0eS.woff2) format("woff2"),url(/assets/ubuntu-greek-700-normal-DM68am3C.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-latin-ext-700-normal-D3iP7lMw.woff2) format("woff2"),url(/assets/ubuntu-latin-ext-700-normal-YrKfr4VU.woff) format("woff");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:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-latin-700-normal-DlYwEzNn.woff2) format("woff2"),url(/assets/ubuntu-latin-700-normal-DAmh8SsM.woff) format("woff");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{--bg: #14151b;--bg-2: #1b1d26;--panel: #222533;--panel-2: #2a2e3f;--panel-3: #333850;--line: #3a3f57;--line-light: #50577a;--text: #eef0f7;--text-2: #b7bcd3;--text-3: #7f86a3;--accent-a: #ff7a3d;--accent-b: #ff3b5c;--accent: #ff5a4a;--accent-soft: rgba(255, 90, 74, .16);--good: #4cc38a;--warn: #f5b942;--bad: #ef5d5d;--info: #5aa7ff;--gold: #f4d35e;--common: #7fcf85;--rare: #5aa7ff;--epic: #c07cff;--radius: 6px;--shadow: 0 4px 0 rgba(0, 0, 0, .35);--font-display: "Silkscreen", "Courier New", monospace;--font-body: "Ubuntu", system-ui, -apple-system, "Segoe UI", sans-serif;--topbar-h: 56px;--tabbar-h: 0px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 600px at 20% -10%,#262a3d 0%,transparent 60%),var(--bg);background-attachment:fixed;color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:.5px;margin:0 0 .5em;line-height:1.15}h1{font-size:1.9rem}h2{font-size:1.35rem}h3{font-size:1.05rem}h4{font-size:.9rem}p{margin:0 0 .8em}a{color:var(--info);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent);color:#fff}.gradient-text{background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:.85rem}.tiny{font-size:.75rem}.pixel{font-family:var(--font-display)}.center{text-align:center}.row{display:flex;align-items:center;gap:.6rem}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.col{display:flex;flex-direction:column;gap:.6rem}.grow,.spacer{flex:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.app-shell{min-height:100%;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:50;height:var(--topbar-h);display:flex;align-items:center;gap:1rem;padding:0 1rem;background:#14151beb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px solid var(--line)}.logo{display:flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:1.15rem;color:var(--text);white-space:nowrap}.logo:hover{text-decoration:none}.logo .piece-sprite{width:30px;height:30px}.nav{display:flex;gap:.25rem;margin-left:.5rem}.nav a{font-family:var(--font-display);font-size:.85rem;color:var(--text-2);padding:.45rem .7rem;border-radius:var(--radius)}.nav a:hover{background:var(--panel);color:var(--text);text-decoration:none}.nav a.active{color:var(--text);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:.75rem}.tabbar{display:none}.page{width:100%;max-width:1200px;margin:0 auto;padding:1.25rem 1rem 3rem}.page.wide{max-width:1440px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.page-header h1{margin:0}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cards{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.grid.cards-sm{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}@media (max-width: 900px){.grid.two,.grid.three{grid-template-columns:1fr}}@media (max-width: 760px){:root{--tabbar-h: 62px}.nav{display:none}.topbar{padding:0 .75rem}.page{padding:1rem .75rem calc(var(--tabbar-h) + 1.5rem)}h1{font-size:1.45rem}.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;height:var(--tabbar-h);padding-bottom:env(safe-area-inset-bottom);background:#14151bf5;border-top:2px solid var(--line)}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:var(--font-display);font-size:.62rem;color:var(--text-3)}.tabbar a .icon{font-size:1.25rem;line-height:1}.tabbar a.active{color:var(--text)}.tabbar a:hover{text-decoration:none}}.panel{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)}.panel.flat{box-shadow:none}.panel.tight{padding:.7rem}.panel h2,.panel h3{margin-bottom:.7rem}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.7rem}.panel-title h2,.panel-title h3{margin:0}.card{background:var(--panel-2);border:2px solid var(--line);border-radius:var(--radius);padding:.85rem;position:relative;transition:transform .08s ease,border-color .12s ease}.card.clickable{cursor:pointer}.card.clickable:hover{border-color:var(--line-light);transform:translateY(-2px)}.card.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.card.disabled{opacity:.45;filter:grayscale(.6)}.divider{height:2px;background:var(--line);margin:1rem 0;border:0}.empty{text-align:center;padding:1.5rem 1rem;color:var(--text-3)}.btn{--btn-bg: var(--panel-3);--btn-fg: var(--text);--btn-light: rgba(255, 255, 255, .18);--btn-dark: rgba(0, 0, 0, .45);display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:.5rem 1rem;border:0;border-radius:4px;background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-display);font-size:.85rem;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;box-shadow:inset 0 2px 0 var(--btn-light),inset 0 -3px 0 var(--btn-dark),0 3px #00000059;transition:transform .05s ease,filter .1s ease,box-shadow .05s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:hover:not(:disabled){filter:brightness(1.12);text-decoration:none}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 2px 0 var(--btn-light),inset 0 -1px 0 var(--btn-dark),0 1px #00000059}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--info);outline-offset:2px}.btn.primary{--btn-bg: linear-gradient(180deg, var(--accent-a), var(--accent-b));--btn-fg: #fff}.btn.good{--btn-bg: #2f9e6c}.btn.danger{--btn-bg: #b8414a}.btn.ghost{--btn-bg: transparent;box-shadow:inset 0 0 0 2px var(--line);color:var(--text-2)}.btn.ghost:hover:not(:disabled){color:var(--text);box-shadow:inset 0 0 0 2px var(--line-light)}.btn.small{min-height:32px;padding:.3rem .65rem;font-size:.72rem}.btn.large{min-height:52px;padding:.75rem 1.4rem;font-size:1rem}.btn.block{width:100%}.btn.icon{min-width:40px;padding:.4rem}.icon-btn{background:none;border:0;color:var(--text-2);cursor:pointer;padding:.3rem;border-radius:4px;font-size:1.1rem;line-height:1}.icon-btn:hover{color:var(--text);background:var(--panel-2)}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.field label,.label{font-family:var(--font-display);font-size:.72rem;letter-spacing:.5px;color:var(--text-2);text-transform:uppercase}.input,.select{width:100%;min-height:42px;padding:.55rem .75rem;background:var(--bg-2);border:2px solid var(--line);border-radius:4px;color:var(--text);outline:none}.input:focus,.select:focus{border-color:var(--info)}.input.pin{font-family:var(--font-display);font-size:1.4rem;letter-spacing:.5rem;text-align:center}.error-text{color:var(--bad);font-size:.85rem}.segmented{display:flex;flex-wrap:wrap;gap:.35rem}.segmented button{flex:1 1 auto;min-height:38px;padding:.35rem .7rem;border:2px solid var(--line);background:var(--bg-2);border-radius:4px;cursor:pointer;font-family:var(--font-display);font-size:.72rem;color:var(--text-2)}.segmented button:hover{border-color:var(--line-light);color:var(--text)}.segmented button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.toggle{position:relative;width:48px;height:26px;border-radius:13px;background:var(--panel-3);border:2px solid var(--line);cursor:pointer;flex-shrink:0}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--text-2);transition:transform .15s ease}.toggle.on{background:var(--good);border-color:var(--good)}.toggle.on:after{transform:translate(22px);background:#fff}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:0}.chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border-radius:999px;background:var(--panel-3);font-size:.75rem;color:var(--text-2);white-space:nowrap}.chip.good{background:#4cc38a2e;color:var(--good)}.chip.bad{background:#ef5d5d2e;color:var(--bad)}.chip.warn{background:#f5b9422e;color:var(--warn)}.chip.info{background:#5aa7ff2e;color:var(--info)}.chip.accent{background:var(--accent-soft);color:#ffb3a8}.rarity{font-family:var(--font-display);font-size:.65rem;text-transform:uppercase;letter-spacing:1px}.rarity.common{color:var(--common)}.rarity.rare{color:var(--rare)}.rarity.epic{color:var(--epic)}.coin-badge{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-display);font-size:.95rem;color:var(--gold)}.coin-badge img{width:20px;height:20px;image-rendering:pixelated}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:var(--text-3);flex-shrink:0}.dot.online{background:var(--good);box-shadow:0 0 6px var(--good)}.dot.playing{background:var(--warn)}.progress{height:10px;background:var(--bg-2);border:2px solid var(--line);border-radius:3px;overflow:hidden}.progress>div{height:100%;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));transition:width .4s ease}.progress.good>div{background:var(--good)}.piece-sprite{display:inline-block;width:48px;height:48px;background-image:url(/assets/pieces.png);background-size:1000% 200%;background-repeat:no-repeat;image-rendering:pixelated;flex-shrink:0}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:2px solid rgba(0,0,0,.35);box-shadow:inset 0 2px #ffffff40;flex-shrink:0;overflow:hidden}.avatar .piece-sprite{width:78%;height:78%}.user-chip{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.user-chip .name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#08090eb8;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fade-in .15s ease}.modal{width:100%;max-width:480px;max-height:calc(100vh - 2rem);overflow:auto;background:var(--panel);border:2px solid var(--line-light);border-radius:8px;padding:1.25rem;box-shadow:0 10px #0006;animation:pop-in .18s cubic-bezier(.2,1.4,.5,1)}.modal.wide{max-width:720px}.modal-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1.1rem;flex-wrap:wrap}.toasts{position:fixed;top:calc(var(--topbar-h) + .75rem);right:.75rem;z-index:300;display:flex;flex-direction:column;gap:.5rem;max-width:min(360px,calc(100vw - 1.5rem))}.toast{background:var(--panel-2);border:2px solid var(--line-light);border-left:6px solid var(--info);border-radius:6px;padding:.7rem .9rem;box-shadow:var(--shadow);animation:slide-in .2s ease}.toast.good{border-left-color:var(--good)}.toast.bad{border-left-color:var(--bad)}.toast.warn{border-left-color:var(--warn)}.toast .toast-actions{display:flex;gap:.4rem;margin-top:.5rem}.connection-banner{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + 1rem);transform:translate(-50%);z-index:250;background:var(--warn);color:#1a1400;font-family:var(--font-display);font-size:.8rem;padding:.45rem .9rem;border-radius:4px;box-shadow:var(--shadow)}.spinner{width:28px;height:28px;border:4px solid var(--panel-3);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loading-screen{min-height:60vh;display:flex;align-items:center;justify-content:center}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{transform:scale(.92);opacity:0}}@keyframes slide-in{0%{transform:translate(30px);opacity:0}}@keyframes float-up{0%{transform:translate(-50%);opacity:1}to{transform:translate(-50%,-34px);opacity:0}}@keyframes pulse{50%{transform:scale(1.06)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}.topbar{height:calc(var(--topbar-h) + var(--safe-top));padding-top:var(--safe-top);padding-left:max(1rem,var(--safe-left));padding-right:max(1rem,var(--safe-right))}.app-shell main{padding-left:var(--safe-left);padding-right:var(--safe-right)}.toasts{top:calc(var(--topbar-h) + var(--safe-top) + .75rem);right:max(.75rem,var(--safe-right))}.connection-banner{bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 1rem)}@media (max-width: 760px){.tabbar{height:calc(var(--tabbar-h) + var(--safe-bottom));padding-left:var(--safe-left);padding-right:var(--safe-right)}.page{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 1.5rem)}}.native-app{-webkit-tap-highlight-color:transparent}.native-app body{overscroll-behavior:none}.native-app button,.native-app .board,.native-app .tabbar,.native-app .topbar{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.welcome{min-height:100vh;padding:calc(2rem + env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) calc(3rem + env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px));display:flex;flex-direction:column;align-items:center;gap:1.5rem}.welcome-hero{text-align:center;margin-top:2vh}.welcome-title{font-size:clamp(2rem,7vw,3.4rem);margin:.4rem 0}.hero-pieces{display:flex;justify-content:center;gap:.4rem}.hero-piece{width:56px;height:56px;animation:hero-bob 2.4s ease-in-out infinite}@keyframes hero-bob{50%{transform:translateY(-8px)}}.welcome-panel{width:100%;max-width:720px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.9rem}.profile-tile{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem .5rem;background:var(--panel-2);border:2px solid var(--line);border-radius:8px;cursor:pointer;transition:transform .1s ease,border-color .1s ease}.profile-tile:hover{transform:translateY(-3px);border-color:var(--accent)}.profile-tile.add{border-style:dashed;justify-content:center}.add-icon{width:72px;height:72px;display:flex;align-items:center;justify-content:center;font-size:2.4rem;color:var(--text-3);border:2px dashed var(--line-light);border-radius:8px}.avatar-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:.35rem}.avatar-picker button{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--bg-2);border:2px solid var(--line);border-radius:6px;cursor:pointer}.avatar-picker button.on{border-color:var(--accent);background:var(--accent-soft)}.color-picker{display:flex;flex-wrap:wrap;gap:.4rem}.color-picker button{width:32px;height:32px;border-radius:50%;border:3px solid transparent;cursor:pointer}.color-picker button.on{border-color:#fff;box-shadow:0 0 0 2px var(--bg)}.home-hero{display:flex;flex-direction:column;gap:1rem}.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}@media (max-width: 900px){.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.quick{display:flex;align-items:center;gap:.6rem;padding:.7rem;background:var(--panel-2);border:2px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;text-align:left;transition:transform .08s ease,border-color .1s ease}.quick>span:last-child{display:flex;flex-direction:column;min-width:0}.quick .tiny{color:var(--text-3)}.quick:hover{transform:translateY(-2px);border-color:var(--line-light);text-decoration:none}.quick.primary{background:linear-gradient(135deg,#ff7a3d47,#ff3b5c33);border-color:var(--accent)}.game-row{color:var(--text);display:block}.game-row:hover{text-decoration:none}.game-row.result-win{border-left:5px solid var(--good)}.game-row.result-loss{border-left:5px solid var(--bad)}.game-row.result-draw{border-left:5px solid var(--text-3)}.ladder{display:flex;justify-content:space-between;gap:.3rem}.ladder-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.45rem .2rem;border-radius:6px;background:var(--panel-2);border:2px solid var(--line);opacity:.6}.ladder-step.beaten{opacity:1;border-color:var(--good)}.ladder-step.next{opacity:1;border-color:var(--accent);animation:pulse 2s ease-in-out infinite}.play-tabs{margin-bottom:1rem}.play-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:1rem;align-items:start}@media (max-width: 900px){.play-layout{grid-template-columns:1fr}.play-main{order:-1}}.play-layout.single{grid-template-columns:minmax(0,560px)}.ruleset-list{display:flex;flex-direction:column;gap:.35rem}.ruleset{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .65rem;background:var(--bg-2);border:2px solid var(--line);border-radius:5px;cursor:pointer;text-align:left}.ruleset:hover{border-color:var(--line-light)}.ruleset.on{border-color:var(--accent);background:var(--accent-soft)}.bot-card{display:flex;flex-direction:column}.bot-card .row.between{margin-top:auto}.bot-portrait{display:inline-flex;padding:4px;background:linear-gradient(180deg,#8a95b8,#3b4466);border-radius:8px;border:2px solid rgba(0,0,0,.35)}.stars{color:var(--gold);letter-spacing:1px;font-size:.85rem}.person-row{padding:.3rem;border-radius:6px}.person-row.highlight{background:var(--accent-soft)}.pack-shop{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;background:var(--panel);border:2px solid var(--line);border-radius:8px}.pack-art{width:64px;height:84px;border-radius:6px;background:linear-gradient(135deg,rgba(255,255,255,.25),transparent 40%),linear-gradient(160deg,var(--accent-a),var(--accent-b));border:3px solid #ffd2a6;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:2rem;color:#fff;box-shadow:var(--shadow);transform:rotate(-4deg)}.item-card.rarity-rare{box-shadow:inset 0 3px 0 var(--rare)}.item-card.rarity-epic{box-shadow:inset 0 3px 0 var(--epic)}.item-card.locked{opacity:.75}.silhouette{filter:brightness(0) opacity(.45)}.pack-cards{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin:1rem 0;perspective:800px}.pack-card{width:170px;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem .6rem;border-radius:10px;border:3px solid #ffd2a6;background:repeating-linear-gradient(45deg,rgba(255,255,255,.07) 0 8px,transparent 8px 16px),linear-gradient(160deg,var(--accent-a),var(--accent-b));cursor:pointer;color:var(--text);transition:transform .15s ease}.pack-card.next{animation:pulse 1.4s ease-in-out infinite}.pack-card:hover{transform:translateY(-4px) rotate(-1deg)}.pack-card.shown{background:var(--panel-2);border-color:var(--line-light);cursor:default;animation:card-flip .45s ease}.pack-card.shown.rarity-rare{border-color:var(--rare);box-shadow:0 0 22px #5aa7ff73}.pack-card.shown.rarity-epic{border-color:var(--epic);box-shadow:0 0 30px #c07cff99}.card-back{font-family:var(--font-display);font-size:3.4rem;color:#fff;text-shadow:0 4px 0 rgba(0,0,0,.3)}@keyframes card-flip{0%{transform:rotateY(90deg)}}.loadout-card{display:flex;flex-direction:column;gap:.7rem}.army-preview{display:grid;width:max-content;max-width:100%;border-radius:4px;overflow:hidden;border:2px solid rgba(0,0,0,.35)}.army-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative}.army-cell.light{background:#e8d3a9}.army-cell.dark{background:#a87b52}.army-editor{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));max-width:520px;border-radius:6px;overflow:hidden;border:3px solid rgba(0,0,0,.4)}.army-cell.editor{border:0;padding:0;cursor:default}.army-cell.editor.swappable{cursor:pointer}.army-cell.editor.swappable:hover{box-shadow:inset 0 0 0 3px var(--accent)}.army-cell.editor.swapped{box-shadow:inset 0 0 0 3px #5aa7ff}.army-cell .lock{position:absolute;right:2px;bottom:0;font-size:.7rem}.perk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.4rem}.perk-option{display:flex;align-items:center;gap:.55rem;padding:.5rem;background:var(--bg-2);border:2px solid var(--line);border-radius:6px;cursor:pointer;text-align:left}.perk-option:disabled{opacity:.45;cursor:not-allowed}.perk-option.on{border-color:var(--accent);background:var(--accent-soft)}.codex-body{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:1rem;margin-top:.8rem;align-items:start}@media (max-width: 520px){.codex-body{grid-template-columns:1fr}}.demo-board{width:200px;max-width:100%;justify-self:center;pointer-events:none}.demo-board .board{box-shadow:0 0 0 3px #0d0e13}.step-num{width:36px;height:36px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--accent-a),var(--accent-b));color:#fff}.profile-header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;margin-bottom:1rem}.stat-tile{background:var(--panel);border:2px solid var(--line);border-radius:6px;padding:.7rem;text-align:center}.stat-value{font-size:1.4rem}.achievement{display:flex;align-items:center;gap:.7rem;padding:.5rem;border-radius:6px;background:var(--panel-2);opacity:.8}.achievement.done{opacity:1;box-shadow:inset 4px 0 0 var(--good)}.ach-icon{font-size:1.6rem;width:2rem;text-align:center}.leader-row{color:var(--text);padding:.3rem .4rem;border-radius:5px}.leader-row:hover{background:var(--panel-2);text-decoration:none}.leader-row.me{background:var(--accent-soft)}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem}.theme-option{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem;background:var(--bg-2);border:2px solid var(--line);border-radius:6px;cursor:pointer}.theme-option:disabled{opacity:.4;cursor:not-allowed}.theme-option.on{border-color:var(--accent)}.address{font-size:1rem;padding:.3rem .5rem;background:var(--bg-2);border-radius:4px;-webkit-user-select:all;user-select:all}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;font-family:var(--font-display);font-size:.72rem;color:var(--text-3);padding:.4rem;border-bottom:2px solid var(--line)}.admin-table td{padding:.55rem .4rem;border-bottom:1px solid var(--line)}@media (max-width: 700px){.admin-table thead{display:none}.admin-table tr{display:flex;flex-direction:column;gap:.3rem;padding:.6rem 0;border-bottom:1px solid var(--line)}.admin-table td{border:0;padding:0}}.lang-toggle{position:absolute;top:calc(.75rem + env(safe-area-inset-top,0px));right:max(.75rem,env(safe-area-inset-right,0px))}.puzzle-card{color:var(--text);display:block}.puzzle-card:hover{text-decoration:none}.puzzle-card.solved{box-shadow:inset 4px 0 0 var(--good)}.showcase-card{color:var(--text);display:block}.showcase-card:hover{text-decoration:none}.showcase-vs{margin-top:.5rem;gap:.35rem}.showcase-side{display:flex;align-items:center;gap:.6rem;padding:.35rem .5rem;border-radius:6px;border:2px solid transparent}.showcase-side.active{border-color:var(--line);background:var(--panel-2)}.showcase-perk{gap:.3rem;color:var(--text-2)}.showcase-note{min-height:7.5rem;transition:box-shadow .3s}.showcase-note.fresh{box-shadow:inset 4px 0 0 var(--accent)}.showcase-events{margin:.4rem 0 0;padding-left:1.1rem}.showcase-controls{display:flex;align-items:center;gap:.3rem}.showcase-scrub{width:100%;margin:.6rem 0 .3rem;accent-color:var(--accent)}.showcase-moves{max-height:260px;overflow:auto}.new-here{margin-top:1rem;color:var(--text);gap:.9rem;box-shadow:inset 4px 0 0 var(--accent)}.new-here:hover{text-decoration:none;background:var(--panel-2)}@media (max-width: 980px){.showcase-intro{order:5}}.agent-snippet{margin:.6rem 0}.agent-snippet pre{margin:.25rem 0 0;padding:.6rem .7rem;background:var(--panel-2);border:2px solid var(--line);border-radius:6px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-variant-ligatures:none;font-size:.78rem;white-space:pre-wrap;word-break:break-all;max-height:220px;overflow:auto}.warn-text{color:var(--warn, #f5b041)}.listen-btn{font-size:.8rem;white-space:nowrap}.song-actions{margin-top:.6rem;gap:.4rem}.share-qr{display:block;margin:0 auto;border-radius:8px;image-rendering:pixelated}.credits-pieces{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.artist-credit{margin:auto 0 0;text-align:center}.auth-panel{max-width:560px;display:flex;flex-direction:column;gap:.8rem}.auth-panel>.segmented{align-self:center}.auth-form{display:flex;flex-direction:column;gap:.2rem}.auth-form>p{margin-top:0}.link-btn{align-self:center;text-decoration:underline;text-underline-offset:3px}.link-btn.inline{display:inline;padding:0;border:0;min-height:0;vertical-align:baseline;font:inherit;text-transform:none;letter-spacing:normal;color:inherit}.check-row{display:flex;gap:.6rem;align-items:flex-start;margin:.6rem 0;cursor:pointer}.check-row input{margin-top:.2rem;width:18px;height:18px;flex-shrink:0}.legal-links{text-align:center;margin:.4rem 0 0}.legal-links a{color:inherit}.legal-page{max-width:760px}.legal-page section{margin-bottom:1rem}.legal-page p{line-height:1.6;color:var(--text-2)}.notice-panel{border-left:5px solid var(--warn);margin-bottom:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.friend-code{font-size:1.2rem;letter-spacing:.12em;padding:.3rem .6rem;border-radius:6px;background:var(--panel-2);border:1px solid var(--line)}.danger-zone{border:1px solid color-mix(in srgb,var(--bad) 45%,var(--line))}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.8rem;margin-bottom:.8rem}.stat{background:var(--panel-2);border-radius:8px;padding:.7rem;text-align:center}.stat-value{font-size:1.6rem}.usage-chart{display:flex;align-items:flex-end;gap:2px;height:120px;padding:4px 0;border-bottom:1px solid var(--line)}.usage-col{flex:1;height:100%;display:flex;align-items:flex-end}.usage-bar{width:100%;min-height:1px;background:color-mix(in srgb,var(--accent-a) 45%,var(--panel-2));border-radius:2px 2px 0 0;display:flex;align-items:flex-end}.usage-bar-part{width:100%;background:var(--accent-a);border-radius:2px 2px 0 0}.retention-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:.5rem;padding:.25rem 0;border-bottom:1px solid var(--line)}.add-device-steps{margin:0 0 .8rem;padding-left:1.2rem;color:var(--text-2)}.add-device-code{display:flex;flex-direction:column;align-items:center;gap:.5rem}.add-device-code img{border-radius:10px;image-rendering:pixelated}.add-device-expired{width:260px;height:120px;display:grid;place-items:center;color:var(--text-3)}.join-short-code{font-size:1.6rem;letter-spacing:.08em}.add-device-joined{text-align:center;color:var(--good);font-weight:600;animation:badge-bob .6s ease-out}.join-family-name{font-size:1.8rem;margin:.2rem 0 1rem}.join-code-input{text-transform:uppercase;letter-spacing:.1em;font-size:1.2rem;text-align:center}.join-code-input::placeholder{letter-spacing:.1em}.join-celebration{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:radial-gradient(circle at 50% 40%,#2a2e3f 0%,var(--bg) 70%);display:grid;place-items:center;overflow:hidden;cursor:pointer;padding:env(safe-area-inset-top,0px) 1rem env(safe-area-inset-bottom,0px)}.join-message{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;animation:join-rise .7s .9s ease-out both}.join-message h1{margin:.4rem 0 0;font-size:clamp(1.5rem,6vw,2.4rem)}.join-bubble{background:var(--text);color:var(--bg);border-radius:14px;padding:.45rem .8rem;font-weight:700;position:relative;animation:badge-bob .5s 1.6s ease-out both}.join-bubble:after{content:"";position:absolute;left:50%;bottom:-8px;transform:translate(-50%);border:8px solid transparent;border-top-color:var(--text);border-bottom:0}.join-hop{position:absolute;top:18%;left:-120px;animation:join-hop 1.6s ease-in-out both}@keyframes join-hop{0%{transform:translate(0)}20%{transform:translate(28vw,-70px)}40%{transform:translate(50vw)}60%{transform:translate(72vw,-70px)}to{transform:translate(calc(100vw + 240px))}}@keyframes join-rise{0%{opacity:0;transform:translateY(24px) scale(.92)}to{opacity:1;transform:none}}.join-confetti span{position:absolute;top:-60px;animation:join-fall 2.8s ease-in both}@keyframes join-fall{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}to{transform:translateY(115vh) rotate(540deg);opacity:.9}}@media (prefers-reduced-motion: reduce){.join-hop,.join-confetti{display:none}.join-message,.join-bubble{animation:none}}.auth-menu{gap:.6rem}.auth-choice{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.9rem 1rem;min-height:0;white-space:normal}.auth-choice-title{font-size:1.05rem}.auth-choice-sub{font-family:var(--font-body);font-size:.8rem;text-transform:none;letter-spacing:normal;opacity:.85;font-weight:400}.auth-links{margin:.4rem 0 0}.provider-btn{background:#fff;color:#111;border-color:#fff}.provider-btn:hover:not(:disabled){background:#eee;border-color:#eee}.provider-apple{background:#000;color:#fff;border-color:#333}.provider-apple:hover:not(:disabled){background:#111;border-color:#444}.or-line{margin:.2rem 0}.board{--light: #e8d3a9;--dark: #a87b52;--accent: #f4d35e;--anim: .18s;position:relative;width:100%;aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:4px;box-shadow:0 0 0 4px #0d0e13,0 0 0 6px #ffffff0f,0 10px 0 6px #00000059;container-type:inline-size;--hop: calc(var(--anim) * 2.2);--strike: calc(var(--anim) * 1.9)}.board .squares{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border-radius:4px;overflow:hidden}.sq{position:relative}.sq.light{background:var(--light)}.sq.dark{background:var(--dark)}.sq.last:before,.sq.selected:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);opacity:.38}.sq.selected:before{opacity:.55}.sq.check:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,rgba(255,40,40,.95) 0%,rgba(255,40,40,.55) 35%,transparent 72%);animation:check-pulse 1.1s ease-in-out infinite}.board:focus{outline:none}.board:focus-visible{box-shadow:0 0 0 4px #0d0e13,0 0 0 7px var(--info, #5aa7ff)}.sq.cursor{box-shadow:inset 0 0 0 max(3px,.7cqw) #5aa7ff;z-index:6}.sq.hill{box-shadow:inset 0 0 0 3px #ffd75a8c}.sq.hill:after{content:"⛰";position:absolute;right:4%;bottom:2%;font-size:2.2cqw;opacity:.5}@keyframes check-pulse{50%{opacity:.6}}.coord{position:absolute;font-family:var(--font-display);font-size:max(9px,1.9cqw);font-weight:700;line-height:1;pointer-events:none;z-index:1}.sq.light .coord{color:var(--dark)}.sq.dark .coord{color:var(--light)}.coord.rank{top:4%;left:5%}.coord.file{bottom:4%;right:6%}.hint{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:30%;height:30%;border-radius:50%;background:#14141e52;z-index:3;pointer-events:none}.hint.capture{width:88%;height:88%;background:transparent;border:max(3px,.8cqw) solid rgba(20,20,30,.32)}.hint.special{background:#5aa7ff8c}.hint.capture.special{background:transparent;border-color:#5aa7ffe6;z-index:5}.drop-target{position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 max(3px,.6cqw) #ffffffb3;z-index:2}.board .pieces{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.piece{position:absolute;top:0;left:0;width:12.5%;height:12.5%;display:flex;align-items:center;justify-content:center;transition:transform var(--anim) cubic-bezier(.3,.7,.4,1);z-index:4;will-change:transform}.piece .piece-sprite{width:88%;height:88%;filter:drop-shadow(0 2px 0 rgba(0,0,0,.35))}.board.dragging .piece,.piece.dragged{transition:none}.piece.dragged{z-index:20}.piece.dragged .piece-sprite{filter:drop-shadow(0 8px 6px rgba(0,0,0,.45))}.piece.lifted .piece-sprite{transform:translateY(-4%)}.piece.ghost{z-index:3;transition:none}.piece.ghost .piece-sprite{animation:piece-leave .35s ease-in forwards;animation-delay:calc(var(--anim) * .6)}@keyframes piece-leave{to{transform:scale(.4) rotate(-12deg);opacity:0}}.piece.flash .piece-sprite{animation:piece-flash .9s ease-out}.piece.enter .piece-sprite{animation:piece-enter .45s cubic-bezier(.2,1.5,.5,1)}@keyframes piece-flash{0%{filter:brightness(3) drop-shadow(0 0 10px #fff6a8);transform:scale(1.3)}60%{filter:brightness(1.4) drop-shadow(0 0 6px #ffd84d)}}@keyframes piece-enter{0%{transform:scale(.2);opacity:0;filter:brightness(3)}}.upgrade-badge{position:absolute;top:4%;right:4%;width:30%;height:30%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#ffe066,#f5a524);color:#3a2500;font-weight:900;font-size:max(9px,2.1cqw);box-shadow:0 1px #0006;animation:badge-bob 1.6s ease-in-out infinite}@keyframes badge-bob{50%{transform:translateY(-12%)}}.floater{position:absolute;z-index:30;transform:translate(-50%);font-family:var(--font-display);font-size:max(12px,2.8cqw);font-weight:700;pointer-events:none;text-shadow:0 2px 0 rgba(0,0,0,.6),0 0 6px rgba(0,0,0,.5);animation:float-up 1.3s ease-out forwards;white-space:nowrap}.floater.gain{color:#ffe066}.floater.spend{color:#ff8a7a}.floater.info{color:#9fd4ff}.promotion-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000059}.promotion{position:absolute;width:12.5%;display:flex;flex-direction:column;background:#f5f1e6;border-radius:4px;box-shadow:0 6px 18px #00000080;overflow:hidden}.promotion button{aspect-ratio:1;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}.promotion button:hover{background:#ffd98a}.promotion .piece-sprite{width:85%;height:85%}.piece.ghost.fx{z-index:6;--fx-delay: calc(var(--anim) * .6);--shard: #f3ead8}.piece.ghost.fx-black{--shard: #2b2633}.piece.ghost.fx .piece-sprite{animation-delay:var(--fx-delay);animation-fill-mode:forwards}.piece.ghost.fx-shatter .piece-sprite{animation:fx-shatter .22s ease-in var(--fx-delay) forwards}.piece.ghost.fx-launch .piece-sprite{animation:fx-launch .75s cubic-bezier(.25,.6,.4,1) var(--fx-delay) forwards}.piece.ghost.fx-topple .piece-sprite{transform-origin:85% 95%;animation:fx-topple .7s cubic-bezier(.5,0,.8,.6) var(--fx-delay) forwards}.piece.ghost.fx-poof .piece-sprite{animation:fx-poof .35s ease-out var(--fx-delay) forwards}.piece.ghost.fx-boom .piece-sprite{animation:fx-boom .3s ease-out var(--fx-delay) forwards}@keyframes fx-shatter{40%{transform:scale(1.12);opacity:1}to{transform:scale(.6);opacity:0}}@keyframes fx-launch{15%{transform:translateY(5%) scale(1.05,.9)}to{transform:translate(160%,-320%) rotate(620deg) scale(.5);opacity:0}}@keyframes fx-topple{70%{transform:rotate(92deg);opacity:1}80%{transform:rotate(84deg)}to{transform:rotate(90deg) translate(8%);opacity:0}}@keyframes fx-poof{to{transform:scale(1.35) translateY(-10%);opacity:0;filter:blur(2px)}}@keyframes fx-boom{30%{transform:scale(1.3);filter:brightness(3)}to{transform:scale(1.6);opacity:0;filter:brightness(4)}}.fx-shard{position:absolute;left:44%;top:44%;width:12%;height:12%;background:var(--shard);box-shadow:0 0 0 1px #00000059;opacity:0;animation:fx-shard .65s cubic-bezier(.2,.7,.4,1) forwards;animation-delay:var(--fx-delay)}.fx-topple .fx-shard{top:80%;width:9%;height:9%;background:#b9a68a;animation-delay:calc(var(--fx-delay) + .45s)}.fx-boom .fx-shard{background:#ffb347;box-shadow:0 0 6px #ff7b22}.fx-poof .fx-shard{width:7%;height:7%;border-radius:50%;background:#fff6c2;box-shadow:0 0 6px #fff}@keyframes fx-shard{0%{opacity:1;transform:translate(0) rotate(0)}70%{opacity:1}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 40%)) rotate(var(--rot))}}.fx-flash,.fx-puff{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;opacity:0;pointer-events:none;animation-delay:var(--fx-delay);animation-fill-mode:forwards}.fx-flash{background:radial-gradient(circle,#fff7c2 0%,#ffb347 35%,rgba(255,90,30,.6) 55%,transparent 70%);animation:fx-flash .5s ease-out}.fx-puff{background:radial-gradient(circle,rgba(235,235,245,.95) 0%,rgba(200,200,215,.7) 45%,transparent 70%);animation:fx-puff .6s ease-out}@keyframes fx-flash{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(2.2)}}@keyframes fx-puff{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(1.8) translateY(-20%)}}@media (prefers-reduced-motion: reduce){.piece.ghost.fx .fx-shard,.piece.ghost.fx .fx-flash,.piece.ghost.fx .fx-puff{display:none}.piece.ghost.fx .piece-sprite{animation:piece-leave .3s ease-in forwards}}.bubble{position:absolute;z-index:35;width:max-content;max-width:44%;padding:.35em .65em;background:#fffaf0;color:#1d1b22;border:2px solid #1d1b22;border-radius:10px;font-size:max(12px,2.5cqw);font-weight:600;line-height:1.3;box-shadow:0 3px #00000059;pointer-events:none;--x: -50%;transform:translate(var(--x),calc(-100% - 4px));animation:bubble-in .2s cubic-bezier(.2,1.4,.5,1),bubble-out .3s ease-in forwards;animation-delay:0s,calc(var(--life) - .3s)}.bubble.from-black{background:#2b2633;color:#fff6e6;border-color:#fff6e6}.bubble.align-left{--x: -18%}.bubble.align-right{--x: -82%}.bubble.below{transform:translate(var(--x),4px)}.bubble:after{content:"";position:absolute;left:calc(-1 * var(--x));bottom:-8px;width:10px;height:10px;background:inherit;border-right:2px solid;border-bottom:2px solid;border-color:inherit;transform:translate(-50%) rotate(45deg)}.bubble.below:after{bottom:auto;top:-8px;transform:translate(-50%) rotate(225deg)}@keyframes bubble-in{0%{opacity:0;scale:.6}}@keyframes bubble-out{to{opacity:0;scale:.85}}.piece.moving{z-index:5}.piece.m-hop,.piece.m-hopStrike{transition:transform var(--hop) cubic-bezier(.45,.05,.55,.95)}.piece.m-strike{transition:transform calc(var(--strike) * .62) cubic-bezier(.55,0,.9,.55) calc(var(--strike) * .3)}.piece.m-hop .piece-sprite{animation:m-hop var(--hop) ease-in-out}.piece.m-hopStrike .piece-sprite{animation:m-hop-strike var(--hop) ease-in-out}.piece.m-strike .piece-sprite{animation:m-strike var(--strike) linear}@keyframes m-hop{50%{transform:translateY(-55%) scale(1.12)}86%{transform:translateY(0) scale(1.08,.9)}}@keyframes m-hop-strike{45%{transform:translateY(-80%) scale(1.15) rotate(-10deg)}80%{transform:translateY(0) scale(1.22,.78)}90%{transform:translateY(-6%) scale(.96,1.05)}}@keyframes m-strike{28%{transform:translate(var(--wx),var(--wy)) scale(.9)}80%{transform:translate(calc(var(--wx) * -.3),calc(var(--wy) * -.3)) scale(1.04)}92%{transform:translate(calc(var(--wx) * -.9),calc(var(--wy) * -.9)) scale(1.22)}}.hop-shadow{position:absolute;left:22%;right:22%;bottom:6%;height:12%;border-radius:50%;background:#0006;z-index:-1;opacity:0;pointer-events:none;animation:m-shadow var(--hop) ease-in-out}@keyframes m-shadow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.35;transform:scale(.5)}}.piece.ghost.fx.struck{--fx-delay: calc(var(--strike) * .92)}.piece.ghost.fx.struck-hop{--fx-delay: calc(var(--hop) * .8)}@media (prefers-reduced-motion: reduce){.piece.moving .piece-sprite{animation:none}.hop-shadow{display:none}.piece.m-hop,.piece.m-hopStrike,.piece.m-strike{transition:transform var(--anim) ease}.piece.ghost.fx.struck,.piece.ghost.fx.struck-hop{--fx-delay: calc(var(--anim) * .6)}}.game-page{padding:1rem;max-width:1320px;margin:0 auto}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.25rem;align-items:start}.board-column{display:flex;flex-direction:column;gap:.6rem;width:min(100%,calc(100vh - var(--topbar-h) - 190px));min-width:300px;justify-self:center}.board-holder{padding:6px}.side-column{display:flex;flex-direction:column;gap:.75rem;position:sticky;top:calc(var(--topbar-h) + 1rem)}@media (max-width: 980px){.game-layout{grid-template-columns:1fr}.board-column{width:min(100%,640px);min-width:0}.side-column{position:static}}@media (max-width: 760px){.game-page{padding:.5rem .5rem calc(var(--tabbar-h) + 1rem)}.board-holder{padding:4px 2px}}.player-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .6rem;background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);position:relative;min-height:60px}.player-bar.to-move{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.player-id{display:flex;align-items:center;gap:.6rem;min-width:0;position:relative}.player-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14ch}.material-diff{color:var(--good)}.perk-chip{display:inline-flex;cursor:help}.player-right{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.thinking{font-family:var(--font-display);color:var(--warn);animation:pulse 1s ease-in-out infinite}.emote-bubble{position:absolute;left:48px;top:-34px;z-index:25;background:#fff;color:#1a1a24;padding:.3rem .65rem;border-radius:10px;font-weight:700;font-size:.85rem;white-space:nowrap;box-shadow:0 4px #0000004d;animation:pop-in .2s ease}.emote-bubble:after{content:"";position:absolute;left:14px;bottom:-6px;border:6px solid transparent;border-top-color:#fff;border-bottom:0}.clock{font-family:var(--font-display);font-size:1.25rem;min-width:5.2ch;text-align:center;padding:.3rem .55rem;border-radius:4px;background:var(--bg-2);color:var(--text-2);border:2px solid var(--line)}.clock.running{background:#f3ead3;color:#14151b;border-color:#f3ead3}.clock.low{color:var(--bad)}.clock.running.low{background:var(--bad);color:#fff;border-color:var(--bad);animation:pulse 1s ease-in-out infinite}.material{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.mat-value{font-size:.8rem;color:var(--gold)}.mat-cells{display:flex;gap:2px}.mat-cell{width:6px;height:12px;background:var(--bg-2);border:1px solid var(--line);border-radius:1px}.mat-cell.on.low{background:#7fcf85;border-color:#7fcf85}.mat-cell.on.mid{background:#f5b942;border-color:#f5b942}.mat-cell.on.high{background:#ff6b4a;border-color:#ff6b4a}@media (max-width: 480px){.mat-cell{width:4px;height:10px}.clock{font-size:1rem}.player-name{max-width:9ch}}.status-line{background:var(--panel);border:2px solid var(--line);border-left:6px solid var(--line-light);border-radius:var(--radius);padding:.65rem .8rem;font-weight:500}.status-line.yours{border-left-color:var(--good)}.status-line.check{border-left-color:var(--bad);color:#ffc4c4}.status-line.ended{border-left-color:var(--accent);font-family:var(--font-display)}.status-line.review{border-left-color:var(--info)}.offer{display:flex;flex-direction:column;gap:.5rem;background:#5aa7ff1f;border:2px solid var(--info);border-radius:var(--radius);padding:.7rem;animation:pop-in .2s ease}.game-over{display:flex;flex-direction:column;gap:.6rem;border-color:var(--accent)}.side-tabs-panel{padding:0;display:flex;flex-direction:column}.side-tabs{display:flex;border-bottom:2px solid var(--line)}.side-tabs button{flex:1;background:none;border:0;padding:.6rem;font-family:var(--font-display);font-size:.75rem;color:var(--text-3);cursor:pointer}.side-tabs button.on{color:var(--text);box-shadow:inset 0 -3px 0 var(--accent)}.side-body{padding:.75rem;min-height:220px;max-height:420px;overflow:auto}.review-bar{display:flex;align-items:center;gap:.3rem;border-top:2px solid var(--line);padding:.35rem .5rem}.game-actions{display:flex;flex-wrap:wrap;gap:.4rem}.game-meta{text-align:center}.emote-wrap{position:relative}.emote-picker{position:absolute;bottom:calc(100% + 6px);right:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:4px;width:280px;padding:6px;background:var(--panel-2);border:2px solid var(--line-light);border-radius:6px;box-shadow:var(--shadow)}.emote-picker button{background:var(--panel-3);border:0;border-radius:4px;padding:.4rem;cursor:pointer;font-size:.85rem}.emote-picker button:hover{background:var(--line-light)}.piece-info h3{font-size:1rem}.upgrade-panel{display:flex;flex-direction:column;gap:.4rem;margin-top:.4rem}.upgrade-option{display:flex;align-items:center;gap:.6rem;width:100%;padding:.45rem .6rem;background:var(--panel-2);border:2px solid var(--line);border-radius:5px;cursor:pointer;transition:border-color .1s ease}.upgrade-option:hover:not(:disabled){border-color:var(--gold);background:var(--panel-3)}.upgrade-option.disabled{opacity:.55;cursor:not-allowed}.upgrade-option .cost{min-width:2.2em;padding:.2rem .4rem;border-radius:4px;background:#f4d35e26;color:var(--gold);text-align:center}.upgrade-option .cost.short{color:var(--bad);background:#ef5d5d1f}.tip-badge{display:inline-flex;width:1.2em;height:1.2em;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(180deg,#ffe066,#f5a524);color:#3a2500;font-weight:900}.move-list{font-size:.9rem}.move-row{display:grid;grid-template-columns:2.4em 1fr 1fr;gap:2px}.move-row:nth-child(odd){background:#ffffff06}.move-n{color:var(--text-3);padding:.2rem 0;font-size:.8rem}.move-cell{background:none;border:0;text-align:left;padding:.2rem .35rem;border-radius:3px;cursor:pointer;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.85rem;color:var(--text)}.move-cell:hover{background:var(--panel-3)}.move-cell.current{background:var(--accent-soft);color:#ffd2cb}.move-cell.empty{cursor:default}.event-log{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-2)}.event-log li{padding-bottom:.35rem;border-bottom:1px solid var(--line)}.rewards-grid{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin:1rem 0 .5rem}.reward{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.7rem 1rem;background:var(--panel-2);border:2px solid var(--line);border-radius:6px;min-width:110px;font-size:1.2rem}.level-up{text-align:center;margin-top:.8rem;font-size:1.2rem;color:var(--gold);animation:pulse 1.2s ease-in-out infinite}.waiting-room{max-width:520px;margin:1rem auto}.join-code{font-size:3rem;letter-spacing:.6rem;color:var(--gold);margin:.4rem 0 .8rem}.qr{width:200px;height:200px;image-rendering:pixelated;border-radius:6px;margin-bottom:.5rem}.coach{background:linear-gradient(135deg,#5aa7ff29,#9b5de524);border:2px solid var(--info);border-radius:var(--radius);padding:.75rem;animation:pop-in .2s ease}.hint-line{background:#5aa7ff1f;border:2px dashed var(--info);border-radius:var(--radius);padding:.5rem .7rem;font-size:.9rem}.turn-panel{display:flex;flex-direction:column;gap:.6rem}.mobile-only{display:none}@media (max-width: 980px){.mobile-only{display:flex}.desktop-only{display:none}}.eval-chart{width:100%;height:110px;margin:.3rem 0;border-radius:4px;cursor:pointer;display:block}.eval-top{fill:#3a3f57}.eval-bottom{fill:#1b1d26}.eval-area{fill:#f3ead38c}.eval-line{fill:none;stroke:#f3ead3;stroke-width:2}.eval-cursor{stroke:var(--accent);stroke-width:2}.moment{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;background:var(--panel-2);border:2px solid var(--line);border-radius:5px;cursor:pointer;text-align:left}.moment:hover{border-color:var(--line-light)}.moment .small{flex:1}.commentary{border-left:4px solid var(--line);transition:border-color .4s}.commentary.fresh{border-left-color:var(--accent);animation:commentary-in .5s ease-out}@keyframes commentary-in{0%{transform:translateY(-4px);opacity:.4}}.commentary-watching{margin-bottom:.35rem}.commentary-latest{display:flex;flex-direction:column;gap:.2rem}.commentary-author{color:var(--accent)}.commentary-list{list-style:none;margin:.5rem 0 0;padding:0;max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:.35rem}.linkish{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px;margin-top:.35rem}.commentary-list .linkish{margin:0}
