:root{--color-bg:#f2f2f7;--color-bg-gradient:none;--color-shell:#fff;--color-panel-bg:#fff;--color-tile-bg:#74748014;--color-surface:#fff;--color-surface-secondary:#f2f2f7;--color-surface-overlay:#ffffffe0;--color-separator:#3c3c432e;--color-separator-opaque:#c6c6c8;--color-fill:#78788014;--color-fill-secondary:#78788024;--color-x:#2196f3;--color-x-dark:#1565c0;--color-x-light:#64b5f6;--color-x-glow:#2196f366;--color-x-bg:#2196f31f;--color-x-wash:#2196f338;--color-x-gradient:linear-gradient(135deg, #64b5f6 0%, #1976d2 100%);--color-o:#f44336;--color-o-dark:#c62828;--color-o-light:#ef5350;--color-o-glow:#f4433666;--color-o-bg:#f443361f;--color-o-wash:#f4433638;--color-o-gradient:linear-gradient(135deg, #ef5350 0%, #d32f2f 100%);--color-text:#1c1c1e;--color-text-light:#3c3c4399;--color-text-muted:#3c3c435c;--color-text-inverse:#fff;--color-board-shell:#c5c5c5;--color-board-active:#d8d8d8;--color-board-inactive:#b8b8b8;--color-board-won:#c8c8c880;--color-cell-empty:#a8a8a8;--color-cell-playable:silver;--color-cell-playable-hover:#d0d0d0;--color-cell-blocked:#9a9a9a;--color-active-glow:#fff9;--color-last-move-glow:#ffeb3bb3;--color-winning-glow:#fffc;--color-ring-dark:#3c3c4329;--color-ring-light:#3c3c4314;--color-highlight:#ffffff80;--color-shadow-color:#00000014;--color-win:#34c759;--color-draw:#ff9f0a;--color-draw-wash:#9e9e9e33;--shadow-xs:0 1px 3px #0000000f;--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 16px #0000001a;--shadow-lg:0 8px 28px #0000001f;--shadow-xl:0 16px 48px #00000024;--shadow-avatar:0 2px 8px #0000001f;--shadow-inset:inset 0 1px 3px #00000014;--shadow-button:0 1px 4px #0000001a;--shadow-x:0 4px 16px #2196f347;--shadow-o:0 4px 16px #f4433647;--space-xs:4px;--space-sm:8px;--space-md:14px;--space-lg:20px;--space-xl:28px;--space-2xl:40px;--space-3xl:56px;--cell-gap:2px;--mini-board-gap:5px;--board-padding:0px;--font-family:-apple-system, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;--font-family-display:-apple-system, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;--font-size-xs:10px;--font-size-sm:12px;--font-size-md:15px;--font-size-lg:17px;--font-size-xl:20px;--font-size-2xl:28px;--font-size-3xl:34px;--font-size-4xl:44px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:800;--line-height-tight:1.2;--line-height-normal:1.4;--line-height-relaxed:1.6;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:26px;--radius-3xl:34px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.25, .46, .45, .94);--transition-normal:.25s cubic-bezier(.25, .46, .45, .94);--transition-slow:.38s cubic-bezier(.25, .46, .45, .94);--transition-bounce:.42s cubic-bezier(.34, 1.56, .64, 1);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--z-base:0;--z-cell:1;--z-active-board:5;--z-overlay:10;--z-hud:20;--z-floating-button:50;--z-menu:60;--z-modal:100}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}html{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px}body{font-family:var(--font-family);background:var(--color-bg);background-image:var(--color-bg-gradient);color:var(--color-text);line-height:1.4}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--color-bg);background-image:var(--color-bg-gradient);flex-direction:column;max-width:430px;height:100%;margin:0 auto;display:flex}.screen{flex-direction:column;flex:1;display:flex;overflow:hidden}.header{display:none}.top-hud{padding:var(--space-sm) var(--space-md);background:0 0;justify-content:space-between;align-items:center;display:flex}.hud-stat{align-items:center;gap:var(--space-xs);display:flex}.hud-icon{background:var(--color-text);border-radius:var(--radius-full);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.hud-icon svg{width:16px;height:16px}.hud-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.hud-label{font-size:var(--font-size-xs);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.hud-coins{flex-direction:row-reverse}.hud-coins .hud-icon{background:var(--color-text)}.player-header{padding:var(--space-sm) var(--space-md);justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.player-card{align-items:center;gap:var(--space-sm);border-radius:var(--radius-xl);transition:all var(--transition-normal);min-width:120px;box-shadow:var(--shadow-md);background:#fffffff5;padding:10px 14px;display:flex;position:relative}.player-card--active{background:#fff;transform:scale(1.03)}.player-card--x.player-card--active{box-shadow:0 0 0 2.5px var(--color-x), 0 6px 20px #2196f347}.player-card--o.player-card--active{box-shadow:0 0 0 2.5px var(--color-o), 0 6px 20px #f4433647}.player-card__avatar{border:2.5px solid #0000002e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.player-card--x .player-card__avatar{background:var(--color-x);box-shadow:0 2px 10px #2196f35c}.player-card--o .player-card__avatar{background:var(--color-o);box-shadow:0 2px 10px #f443365c}.player-card__info{flex-direction:column;gap:2px;display:flex}.player-card__info--right{text-align:right;align-items:flex-end}.player-card__name{color:#1a1a1a;font-size:13px;font-weight:700;line-height:1.2}.player-card__clock{color:var(--color-text);letter-spacing:.5px;background:var(--color-fill);border-radius:var(--radius-sm);text-align:center;min-width:60px;padding:4px 8px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:15px;font-weight:700}.player-card--active .player-card__clock{background:var(--color-fill-secondary)}.player-card__clock--low{color:#ff6b6b;background:#ff323240;animation:.5s ease-in-out infinite clock-pulse}@keyframes clock-pulse{0%,to{opacity:1}50%{opacity:.55}}.player-card__boards{color:#555;font-size:12px}.player-card__turn-indicator{background:#4ade80;border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite turn-pulse;position:absolute}.player-card--x .player-card__turn-indicator{top:50%;left:-4px;transform:translateY(-50%)}.player-card--o .player-card__turn-indicator{top:50%;right:-4px;transform:translateY(-50%)}@keyframes turn-pulse{0%,to{opacity:1;transform:translateY(-50%)scale(1)}50%{opacity:.7;transform:translateY(-50%)scale(1.3)}}.player-header__center{flex-direction:column;align-items:center;gap:4px;display:flex}.turn-symbol{border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;transition:all .3s;display:flex}.turn-symbol--x{background:linear-gradient(135deg, var(--color-x) 0%, #1a7bb8 100%);border-radius:50%;box-shadow:0 4px 18px #1e9ad699,0 0 0 3px #1e9ad6e6,0 0 0 5px #00000059}.turn-symbol--o{background:linear-gradient(135deg, var(--color-o) 0%, #c62828 100%);border-radius:50%;box-shadow:0 4px 18px #e5393599,0 0 0 3px #e53935e6,0 0 0 5px #00000059}.game-header-zone{min-height:110px;padding:8px var(--space-md);flex:none;justify-content:center;align-items:center;display:flex}.game-board-footer{flex-shrink:0;justify-content:center;align-items:center;padding:8px;display:flex}.game-footer-logo{opacity:.82;object-fit:cover;mix-blend-mode:multiply;border-radius:10px;width:auto;height:80px}.countdown-overlay{z-index:120;pointer-events:none;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.countdown-number{color:#fff;text-shadow:0 6px 24px #0009,0 0 0 4px #0003;font-size:128px;font-weight:900;line-height:1;animation:.7s cubic-bezier(.34,1.56,.64,1) both countdown-pop}.countdown-number--go{color:#4ade80;animation:.6s ease-out forwards countdown-go}@keyframes countdown-pop{0%{opacity:0;transform:scale(1.6)}60%{opacity:1;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes countdown-go{0%{opacity:0;transform:scale(.7)}50%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.2)}}.game-top-bar{border-bottom:.5px solid #ffffff14;flex:none;align-items:center;height:48px;padding:0 8px;display:flex}.game-top-bar__back{color:#ffffffbf;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:background .12s,color .12s;display:flex}.game-top-bar__back:hover,.game-top-bar__back:active{color:#fff;background:#ffffff17}.game-top-bar__logo{flex:1;justify-content:center;align-items:center;display:flex}.game-top-bar__logo-text{letter-spacing:3px;color:#fff;font-size:18px;font-weight:900}.game-top-bar__spacer{flex-shrink:0;width:40px}.game-screen{flex-direction:column;flex:1;padding-bottom:0;display:flex;overflow:hidden}.board-container{padding:var(--space-md);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.meta-board{aspect-ratio:1;background:#e8e8e8;border-radius:0;grid-template-columns:repeat(3,1fr);gap:8px;width:min(95vw,380px);padding:0;display:grid}.meta-board-cell--active{z-index:3;position:relative}.meta-board-cell{aspect-ratio:1}.mini-board{aspect-ratio:1;background:#fff;border-radius:6px;flex-direction:column;padding:4px;display:flex;position:relative;overflow:hidden}.mini-board:not(.mini-board-active){opacity:.9}.meta-board--turn-x .mini-board-active{z-index:3;opacity:1;box-shadow:0 0 0 2px #0cf,0 0 14px 5px #0cf9}.meta-board--turn-o .mini-board-active{z-index:3;opacity:1;box-shadow:0 0 0 2px #f56,0 0 14px 5px #f569}.mini-board-grid{background:#fff;flex:1;grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.mini-board-won-x,.mini-board-won-x .mini-board-grid,.mini-board-won-o,.mini-board-won-o .mini-board-grid,.mini-board-draw,.mini-board-draw .mini-board-grid{background:#fff}.mini-board-overlay,.mini-board-winner,.winner-x,.winner-o,.mini-board-won-x .cell-aged-heavy:after,.mini-board-won-x .cell-aged-light:after,.mini-board-won-o .cell-aged-heavy:after,.mini-board-won-o .cell-aged-light:after,.mini-board-draw .cell-aged-heavy:after,.mini-board-draw .cell-aged-light:after{display:none}.mini-board-won-x .mini-board-grid .cell.cell-x,.mini-board-won-x .mini-board-grid .cell.cell-o{background:#1e9ad6}.mini-board-won-x .mini-board-grid .cell:not(.cell-x):not(.cell-o){background:#6dcef5}.mini-board-won-o .mini-board-grid .cell.cell-x,.mini-board-won-o .mini-board-grid .cell.cell-o{background:#e53935}.mini-board-won-o .mini-board-grid .cell:not(.cell-x):not(.cell-o){background:#f99}.mini-board-draw .mini-board-grid .cell.cell-x,.mini-board-draw .mini-board-grid .cell.cell-o{background:#888}.mini-board-draw .mini-board-grid .cell:not(.cell-x):not(.cell-o){background:#a0a0a0}.mini-board-completed .mini-board-grid .cell:first-child{animation-delay:0s}.mini-board-completed .mini-board-grid .cell:nth-child(2),.mini-board-completed .mini-board-grid .cell:nth-child(4){animation-delay:60ms}.mini-board-completed .mini-board-grid .cell:nth-child(3),.mini-board-completed .mini-board-grid .cell:nth-child(5),.mini-board-completed .mini-board-grid .cell:nth-child(7){animation-delay:.12s}.mini-board-completed .mini-board-grid .cell:nth-child(6),.mini-board-completed .mini-board-grid .cell:nth-child(8){animation-delay:.18s}.mini-board-completed .mini-board-grid .cell:nth-child(9){animation-delay:.24s}.cell{aspect-ratio:1;font-size:clamp(.75rem,4vw,1.1rem);font-weight:var(--font-weight-bold);cursor:default;color:#0000;background:#d4d4d4;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background .15s;display:flex}.cell-playable{cursor:pointer}.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):hover{background:#bebebe}.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):active{background:#a8a8a8}.mini-board-won-x.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):hover{background:#6dcef5}.mini-board-won-x.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):active{background:#4ebad9}.mini-board-won-o.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):hover{background:#f99}.mini-board-won-o.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):active{background:#e57a7a}.mini-board-draw.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):hover{background:#a0a0a0}.mini-board-draw.mini-board-active .cell-playable:not(.cell-x):not(.cell-o):active{background:#8c8c8c}.cell-x{background:#1e9ad6;position:relative;overflow:hidden}.cell-x .symbol{color:#fff;filter:drop-shadow(-1px 1px #00000080)drop-shadow(-2px 2px #00000059)drop-shadow(-3px 3px #0003)}.cell-o{background:#e53935;position:relative;overflow:hidden}.cell-o .symbol{color:#fff;filter:drop-shadow(-1px 1px #00000080)drop-shadow(-2px 2px #00000059)drop-shadow(-3px 3px #0003)}.meta-board--turn-x .cell-last-move,.meta-board--turn-x .cell--last-move{z-index:3;position:relative;box-shadow:0 0 0 2px #f56,0 0 8px 3px #ff5566a6}.meta-board--turn-o .cell-last-move,.meta-board--turn-o .cell--last-move{z-index:3;position:relative;box-shadow:0 0 0 2px #0cf,0 0 8px 3px #00ccffa6}.cell-x.cell-aged-heavy:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:repeating-linear-gradient(135deg,#0000 0 3px,#126a9e 3px 6px);position:absolute;inset:0}.cell-x.cell-aged-light:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:repeating-linear-gradient(135deg,#0000 0 7px,#5fc4f5 7px 10px);position:absolute;inset:0}.cell-o.cell-aged-heavy:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:repeating-linear-gradient(135deg,#0000 0 3px,#b71c1c 3px 6px);position:absolute;inset:0}.cell-o.cell-aged-light:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:repeating-linear-gradient(135deg,#0000 0 7px,#ff6b60 7px 10px);position:absolute;inset:0}.cell .symbol{z-index:2;position:relative}.cell-forbidden:not(.cell-x):not(.cell-o){cursor:not-allowed;background-color:#888;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='white' stroke-width='2.5' opacity='0.65'/%3E%3Cline x1='7' y1='12' x2='17' y2='12' stroke='white' stroke-width='2.5' stroke-linecap='round' opacity='0.65'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:58%}.mini-board-won-x .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o),.mini-board-won-o .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o),.mini-board-draw .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='white' stroke-width='2.5' opacity='0.65'/%3E%3Cline x1='7' y1='12' x2='17' y2='12' stroke='white' stroke-width='2.5' stroke-linecap='round' opacity='0.65'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:58%}.mini-board-won-x .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o){background-color:#1065a0}.mini-board-won-o .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o){background-color:#991f1c}.mini-board-draw .mini-board-grid .cell-forbidden:not(.cell-x):not(.cell-o){background-color:#a0a0a0}.meta-board--turn-x .cell--pending:not(.cell-x):not(.cell-o){z-index:5;position:relative;box-shadow:0 0 0 3px #1e9ad6e6,0 0 0 5px #00000059}.meta-board--turn-o .cell--pending:not(.cell-x):not(.cell-o){z-index:5;position:relative;box-shadow:0 0 0 3px #e53935e6,0 0 0 5px #00000059}.meta-board--turn-x .cell--opponent-preview:not(.cell-x):not(.cell-o){box-shadow:inset 0 0 0 2px #e539358c}.meta-board--turn-o .cell--opponent-preview:not(.cell-x):not(.cell-o){box-shadow:inset 0 0 0 2px #1e9ad68c}.floating-menu-btn{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(12px)saturate(1.6);color:#fff;width:52px;height:52px;box-shadow:var(--shadow-lg);cursor:pointer;z-index:50;transition:all var(--transition-normal);background:#1c1c1ee0;border:none;justify-content:center;align-items:center;display:flex;position:fixed;bottom:68px;left:50%;transform:translate(-50%)}.floating-menu-btn:hover{transform:translate(-50%)scale(1.06);box-shadow:0 10px 30px #00000038}.floating-menu-btn:active{transform:translate(-50%)scale(.94)}.game-menu-overlay{-webkit-backdrop-filter:blur(8px)saturate(1.4);z-index:60;background:#0006;justify-content:center;align-items:flex-end;padding-bottom:80px;display:flex;position:fixed;inset:0}.game-menu{-webkit-backdrop-filter:blur(20px)saturate(1.8);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);background:#fffffff5;flex-direction:column;width:calc(100% - 32px);max-width:380px;padding:8px;display:flex;overflow:hidden}.game-menu button{padding:15px var(--space-lg);font-size:17px;font-weight:var(--font-weight-normal);color:var(--color-text);text-align:center;cursor:pointer;border-radius:var(--radius-lg);transition:background var(--transition-fast);border:none;border-bottom:.5px solid var(--color-separator);background:0 0}.game-menu button:last-child{border-bottom:none}.game-menu button:hover:not(:disabled){background:var(--color-fill)}.game-menu button:disabled{opacity:.35;cursor:not-allowed}@keyframes cellWavePush{0%{transform:translate(0)}30%{transform:translate(6px,-6px)}60%{transform:translate(6px,-6px)}to{transform:translate(0)}}.win-animating .win-board-0 .cell,.win-animating .win-board-1 .cell,.win-animating .win-board-2 .cell{animation:.6s ease-out forwards cellWavePush}.win-animating .win-board-0 .cell:first-child{animation-delay:0s}.win-animating .win-board-0 .cell:nth-child(2){animation-delay:30ms}.win-animating .win-board-0 .cell:nth-child(3){animation-delay:60ms}.win-animating .win-board-0 .cell:nth-child(4){animation-delay:30ms}.win-animating .win-board-0 .cell:nth-child(5){animation-delay:60ms}.win-animating .win-board-0 .cell:nth-child(6){animation-delay:90ms}.win-animating .win-board-0 .cell:nth-child(7){animation-delay:60ms}.win-animating .win-board-0 .cell:nth-child(8){animation-delay:90ms}.win-animating .win-board-0 .cell:nth-child(9){animation-delay:.12s}.win-animating .win-board-1 .cell:first-child{animation-delay:.4s}.win-animating .win-board-1 .cell:nth-child(2){animation-delay:.43s}.win-animating .win-board-1 .cell:nth-child(3){animation-delay:.46s}.win-animating .win-board-1 .cell:nth-child(4){animation-delay:.43s}.win-animating .win-board-1 .cell:nth-child(5){animation-delay:.46s}.win-animating .win-board-1 .cell:nth-child(6){animation-delay:.49s}.win-animating .win-board-1 .cell:nth-child(7){animation-delay:.46s}.win-animating .win-board-1 .cell:nth-child(8){animation-delay:.49s}.win-animating .win-board-1 .cell:nth-child(9){animation-delay:.52s}.win-animating .win-board-2 .cell:first-child{animation-delay:.8s}.win-animating .win-board-2 .cell:nth-child(2){animation-delay:.83s}.win-animating .win-board-2 .cell:nth-child(3){animation-delay:.86s}.win-animating .win-board-2 .cell:nth-child(4){animation-delay:.83s}.win-animating .win-board-2 .cell:nth-child(5){animation-delay:.86s}.win-animating .win-board-2 .cell:nth-child(6){animation-delay:.89s}.win-animating .win-board-2 .cell:nth-child(7){animation-delay:.86s}.win-animating .win-board-2 .cell:nth-child(8){animation-delay:.89s}.win-animating .win-board-2 .cell:nth-child(9){animation-delay:.92s}.win-screen{-webkit-backdrop-filter:blur(24px)saturate(1.4);z-index:100;padding:var(--space-xl);background:#000000b8;flex-direction:column;justify-content:center;align-items:center;animation:.4s cubic-bezier(.25,.46,.45,.94) fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.win-screen__content{align-items:center;gap:var(--space-xl);flex-direction:column;animation:.6s ease-out slideUp;display:flex}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.win-screen__symbol{border-radius:var(--radius-full);justify-content:center;align-items:center;width:120px;height:120px;animation:.8s ease-out .3s both winPop;display:flex}.win-screen__symbol--x{background:var(--color-x);box-shadow:0 0 40px #1e9ad699}.win-screen__symbol--o{background:var(--color-o);box-shadow:0 0 40px #e5393599}.win-screen__symbol--draw{background:#666;box-shadow:0 0 40px #64646480}@keyframes winPop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.win-screen__symbol .symbol{color:#fff;width:70%;height:70%}.win-screen__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:#fff;text-align:center;text-shadow:0 2px 10px #0000004d}.win-screen__title--x{color:var(--color-x)}.win-screen__title--o{color:var(--color-o)}.win-screen__subtitle{color:#ffffffa6;text-align:center;margin-top:-12px;font-size:15px;font-weight:500}.win-screen__buttons{gap:var(--space-md);width:100%;max-width:280px;margin-top:var(--space-lg);flex-direction:column;display:flex}.win-screen__btn{padding:15px var(--space-xl);border-radius:var(--radius-full);font-size:17px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);border:none}.win-screen__btn--rematch{background:var(--color-win);color:#fff;box-shadow:0 4px 18px #34c75966}.win-screen__btn--rematch:hover{transform:translateY(-2px);box-shadow:0 8px 24px #34c75980}.win-screen__btn--menu{color:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #fff3}.win-screen__btn--menu:hover{color:#fff;background:#ffffff38}.home-menu{background:#f0f2f5;flex-direction:column;flex:1;min-height:100%;display:flex;overflow-y:auto}.home-logo-section{background:linear-gradient(160deg,#1a3a52 0%,#0f2030 100%);flex-direction:column;justify-content:center;align-items:center;padding:36px 24px 28px;display:flex}.home-logo-img{object-fit:cover;border-radius:28px;width:120px;height:120px;box-shadow:0 8px 28px #0000008c,0 0 0 3px #ffffff24}.home-hud{background:#3a3a3a;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.home-hud__left,.home-hud__right{align-items:center;gap:8px;display:flex}.home-hud__xo{color:#5ac8fa;margin-right:4px;font-size:24px;font-style:italic;font-weight:700}.home-hud__stat{flex-direction:column;align-items:flex-start;display:flex}.home-hud__right .home-hud__stat{align-items:flex-end}.home-hud__value{color:#fff;font-size:18px;font-weight:700}.home-hud__label{color:#999;text-transform:uppercase;letter-spacing:.5px;font-size:10px}.home-hud__icon{color:#999;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.home-icons{justify-content:center;gap:16px;padding:20px 16px;display:flex}.home-icon-btn{color:#888;cursor:pointer;background:#5a5a5a;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;box-shadow:0 2px 4px #0000004d,inset 0 -2px 4px #0003}.home-icon-btn:hover{color:#aaa;background:#666}.home-icon-btn--coins{color:#fff;background:#4caf50}.home-icon-btn--coins:hover{background:#5cbf60}.home-new-game{background:var(--color-x);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:12px;margin:20px 16px 12px;padding:16px 20px;transition:all .2s;display:flex;box-shadow:0 4px 12px #1e9ad666}.home-new-game:hover:not(:disabled){background:#1e8ac6;transform:translateY(-1px)}.home-new-game:disabled{opacity:.5;cursor:not-allowed}.home-new-game__icon{color:#fff;background:#fff3;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:24px;font-weight:700;display:flex}.home-new-game__text{color:#fff;font-size:18px;font-weight:600}.home-section{background:#fff;border-radius:12px;flex:1;margin:0 16px 16px;padding:16px;box-shadow:0 2px 8px #0000001a}.home-section__header{border-bottom:1px solid #e8eaed;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;display:flex}.home-section__checker{background:repeating-conic-gradient(#888 0% 25%,#666 0% 50%) 50%/10px 10px;border-radius:2px;width:20px;height:20px}.home-section__title{color:#5a6172;text-transform:uppercase;letter-spacing:.8px;font-size:13px;font-weight:700}.home-slots{flex-direction:column;gap:8px;display:flex}.home-slot{background:#f5f7fa;border:1.5px solid #e4e7ed;border-radius:10px;align-items:center;gap:14px;padding:12px;transition:all .2s;display:flex}.home-slot--active{cursor:pointer;background:#fff;box-shadow:0 2px 6px #00000017}.home-slot--active:hover{border-color:var(--color-x);background:#f0f6ff}.home-slot__icon{background:#dde0e7;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;display:flex}.home-slot__plus{color:#888;font-size:28px;font-weight:300}.home-slot__play{color:var(--color-x);font-size:18px}.mini-preview{background:#333;border-radius:3px;grid-template-rows:repeat(9,1fr);grid-template-columns:repeat(9,1fr);gap:0;width:62px;height:62px;display:grid;overflow:hidden;box-shadow:0 2px 6px #0000004d}.mini-preview__cell{width:100%;height:100%}.home-slot__label{color:#8a94a6;flex:1;font-size:14px}.home-slot--active .home-slot__label{color:#333;font-weight:500}.home-slot__clear{color:#888;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:20px;transition:all .2s;display:flex}.home-slot__clear:hover{background:var(--color-o);color:#fff}.home-footer{background:#f0f2f5;justify-content:center;align-items:center;padding:12px 16px 20px;display:flex}.home-help{background:var(--color-x);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 6px #1e9ad666}.home-help:hover{background:#1e8ac6;transform:translateY(-1px);box-shadow:0 4px 8px #1e9ad680}.home-help__icon{color:#fff;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:13px;font-weight:700;display:flex}.tutorial-overlay{z-index:200;background:#000000d9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tutorial-modal{background:#3a3a3a;border-radius:16px;flex-direction:column;width:100%;max-width:380px;min-height:520px;padding:24px;display:flex;position:relative;box-shadow:0 8px 32px #00000080}.tutorial-close{color:#aaa;cursor:pointer;background:#555;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;transition:all .2s;display:flex;position:absolute;top:12px;right:12px}.tutorial-close:hover{color:#fff;background:#666}.tutorial-progress{justify-content:center;gap:8px;margin-bottom:16px;display:flex}.tutorial-dot{cursor:pointer;background:#555;border-radius:50%;width:10px;height:10px;transition:all .2s}.tutorial-dot:hover{background:#666}.tutorial-dot--active{background:var(--color-x);transform:scale(1.2)}.tutorial-dot--done{background:#6dcef5}.tutorial-title{text-align:center;color:#fff;margin:0 0 16px;font-size:20px;font-weight:700}.tutorial-board-container{justify-content:center;align-items:center;min-height:200px;margin-bottom:16px;display:flex}.tutorial-board{background:#333;border-radius:6px;grid-template-rows:repeat(9,1fr);grid-template-columns:repeat(9,1fr);gap:1px;width:200px;height:200px;padding:1px;display:grid;overflow:hidden;box-shadow:0 4px 12px #0000004d}.tutorial-cell{border-radius:1px;width:100%;height:100%;transition:background-color .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden}.tutorial-cell--valid:before{content:"";animation:2s ease-in-out infinite tutorial-valid-overlay;animation-delay:var(--valid-delay,0s);pointer-events:none;z-index:1;background:#ffe082;border-radius:1px;animation-fill-mode:backwards;position:absolute;inset:0}@keyframes tutorial-valid-overlay{0%,to{opacity:0}25%{opacity:1}50%{opacity:0}}.tutorial-cell--won-pulse{animation:2s ease-in-out infinite tutorial-won-pulse}@keyframes tutorial-won-pulse{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.28);transform:scale(1.05)}}.tutorial-cell--last-piece{animation:1.5s ease-in-out infinite tutorial-last-piece-pulse}@keyframes tutorial-last-piece-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.tutorial-cell--winning{animation:.8s ease-out forwards tutorial-win-flash}@keyframes tutorial-win-flash{0%{filter:brightness();transform:scale(1)}30%{filter:brightness(1.8);transform:scale(1.05)}to{filter:brightness();transform:scale(1)}}.tutorial-cell--x-heavy:after,.tutorial-cell--x-light:after,.tutorial-cell--o-heavy:after,.tutorial-cell--o-light:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0}.tutorial-cell--x-heavy:after{background:repeating-linear-gradient(135deg,#0000 0 3px,#126a9e 3px 4px)}.tutorial-cell--x-light:after{background:repeating-linear-gradient(135deg,#0000 0 6px,#5fc4f5 6px 7px)}.tutorial-cell--o-heavy:after{background:repeating-linear-gradient(135deg,#0000 0 3px,#b71c1c 3px 4px)}.tutorial-cell--o-light:after{background:repeating-linear-gradient(135deg,#0000 0 6px,#ff6b60 6px 7px)}.tutorial-board--border-anim{position:relative}.tutorial-board--border-anim:before{content:"";background:conic-gradient(from var(--border-angle,0deg), #1e9ad6, #6dcef5, #1e9ad6);z-index:-1;border-radius:8px;animation:2s linear infinite tutorial-border-spin;position:absolute;inset:-3px}@keyframes tutorial-border-spin{0%{--border-angle:0deg}to{--border-angle:360deg}}@property --border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.tutorial-aging-preview{flex-direction:column;align-items:center;gap:20px;display:flex}.tutorial-aging-row{align-items:center;gap:32px;display:flex}.tutorial-aging-item{flex-direction:column;align-items:center;gap:10px;display:flex}.tutorial-aging-cell{border-radius:8px;justify-content:center;align-items:center;width:60px;height:60px;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 8px #0000004d}.tutorial-aging-cell--x{background:#1e9ad6}.tutorial-aging-cell--x.tutorial-aging-cell--light:after{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#0000 0 9px,#5fc4f5 9px 10px);position:absolute;inset:0}.tutorial-aging-cell--x.tutorial-aging-cell--heavy:after{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#0000 0 4px,#126a9e 4px 5.5px);position:absolute;inset:0}.tutorial-aging-label{color:#999;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.tutorial-aging-number{color:#fff;z-index:1;text-shadow:0 2px 4px #0000004d;font-size:28px;font-weight:700}.tutorial-description{text-align:center;color:#ccc;flex-grow:1;min-height:70px;margin:0 0 20px;font-size:15px;line-height:1.5}.tutorial-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;display:flex}.tutorial-btn{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s}.tutorial-btn--prev{color:#ccc;background:#555}.tutorial-btn--prev:hover:not(:disabled){color:#fff;background:#666}.tutorial-btn--prev:disabled{opacity:.3;cursor:not-allowed}.tutorial-btn--next{background:var(--color-x);color:#fff}.tutorial-btn--next:hover{background:#1e8ac6}.tutorial-step-count{color:#888;font-size:13px}.modal-overlay{z-index:100;padding:var(--space-lg);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius-xl);width:100%;max-width:360px;max-height:80vh;padding:var(--space-lg);box-shadow:var(--shadow-lg);background:#fff;overflow-y:auto}.modal-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.modal-close{font-size:var(--font-size-xl);color:var(--color-text-muted);cursor:pointer;padding:var(--space-xs);background:0 0;border:none}.modal-body{color:var(--color-text-light);line-height:1.6}.modal-body h3{color:var(--color-text);margin:var(--space-md) 0 var(--space-sm);font-size:var(--font-size-lg)}.modal-body ul{padding-left:var(--space-lg);margin-bottom:var(--space-md)}.modal-body li{margin-bottom:var(--space-xs)}.modal-footer{gap:var(--space-md);margin-top:var(--space-lg);justify-content:flex-end;display:flex}.confirm-dialog{text-align:center}.confirm-dialog p{margin-bottom:var(--space-lg);color:var(--color-text-light)}.confirm-actions{gap:var(--space-md);justify-content:center;display:flex}.confirm-actions button{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.modal-overlay{z-index:300;-webkit-backdrop-filter:blur(16px)saturate(1.6);background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-2xl);width:100%;max-width:340px;box-shadow:var(--shadow-xl);background:#fffffffa;flex-direction:column;align-items:center;gap:10px;padding:32px 24px 24px;animation:.26s cubic-bezier(.34,1.56,.64,1) both modal-pop;display:flex}@keyframes modal-pop{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.modal-title{color:#1a1a1a;text-align:center;margin:0;font-size:20px;font-weight:800}.modal-message{color:#5a6172;text-align:center;margin:0;font-size:15px;line-height:1.5}.modal-actions{gap:12px;width:100%;margin-top:8px;display:flex}.modal-button{border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:none;flex:1;padding:14px 0;font-size:16px;font-weight:700}.modal-button-secondary{background:var(--color-fill);color:var(--color-text)}.modal-button-secondary:hover{background:var(--color-fill-secondary)}.modal-button-primary{background:var(--color-o);color:#fff;box-shadow:0 4px 14px #f443364d}.modal-button-primary:hover{background:var(--color-o-dark);transform:translateY(-1px);box-shadow:0 6px 18px #f4433661}.feedback-textarea{box-sizing:border-box;background:var(--color-fill);border:1.5px solid var(--color-separator-opaque);border-radius:var(--radius-md);width:100%;color:var(--color-text);resize:none;font-size:15px;font-family:var(--font-family);transition:border-color var(--transition-fast);outline:none;margin-bottom:16px;padding:12px 14px}.feedback-textarea:focus{border-color:var(--color-x)}.home-feedback-btn{border:1.5px solid var(--color-separator);border-radius:var(--radius-full);color:var(--color-text-light);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:9px 22px;font-size:13px;font-weight:600}.home-feedback-btn:hover{border-color:var(--color-x);color:var(--color-x)}.game-bar{-webkit-backdrop-filter:blur(12px)saturate(1.4);z-index:40;background:#161820f5;border-top:.5px solid #ffffff14;flex:none;align-items:center;gap:0;height:52px;padding:0 4px;display:flex;position:relative}.game-bar--replay{border-top-color:#5ac8fa59}.game-bar__step{color:#ffffff8c;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;flex:0 0 40px;justify-content:center;align-items:center;height:100%;transition:color .15s;display:flex}.game-bar__step:not(:disabled):hover,.game-bar__step:not(:disabled):active{color:#fff}.game-bar__step:disabled{opacity:.25;cursor:default}.game-bar__strip{scrollbar-width:none;-ms-overflow-style:none;flex:1;align-items:center;gap:4px;padding:0 4px;display:flex;overflow-x:auto}.game-bar__strip::-webkit-scrollbar{display:none}.game-bar__empty{color:#ffffff4d;white-space:nowrap;font-size:12px}.game-bar__chip{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent;background:#ffffff14;border:none;flex-shrink:0;align-items:center;gap:3px;padding:4px 8px;display:flex}.game-bar__chip:hover{background:#ffffff24}.game-bar__chip--x{color:#5ac8fa}.game-bar__chip--o{color:#ff6b6b}.game-bar__chip--active{background:#ffffff2e;box-shadow:0 0 0 1.5px}.game-bar__chip-num{opacity:.55;min-width:12px;font-size:10px;font-weight:600}.game-bar__chip-notation{letter-spacing:.3px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;font-weight:700}.game-bar__live-btn{color:#0a1a2a;letter-spacing:.5px;cursor:pointer;background:#5ac8fa;border:none;border-radius:13px;flex:0 0 42px;height:26px;margin-right:4px;font-size:11px;font-weight:800;transition:background .15s}.game-bar__live-btn:hover{background:#7dd8ff}.notation-bar{scrollbar-width:none;-ms-overflow-style:none;background:#12141cf7;border-bottom:.5px solid #ffffff12;flex:none;align-items:center;gap:0;height:40px;padding:0 10px;display:flex;overflow-x:auto}.notation-bar::-webkit-scrollbar{display:none}.notation-bar__empty{color:#ffffff38;white-space:nowrap;font-size:12px}.notation-bar__turn{flex-shrink:0;align-items:center;gap:2px;margin-right:6px;display:flex}.notation-bar__turn-num{color:#ffffff4d;text-align:right;min-width:14px;margin-right:2px;font-size:10px;font-weight:600}.notation-bar__chip{letter-spacing:.4px;cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;background:#ffffff0f;border:none;border-radius:4px;align-items:center;padding:3px 7px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px;font-weight:700;transition:background .12s;display:inline-flex}.notation-bar__chip:hover{background:#ffffff1f}.notation-bar__chip--x{color:#5ac8fa}.notation-bar__chip--o{color:#ff6b6b}.notation-bar__chip--active{background:#ffffff29;box-shadow:0 0 0 1.5px}.player-hud{background:0 0;flex:none;align-items:center;gap:10px;padding:5px 14px;display:flex}.player-hud--active .player-hud__name{font-weight:800}.player-hud--x.player-hud--active{border-left:3px solid var(--color-x);padding-left:11px}.player-hud--o.player-hud--active{border-left:3px solid var(--color-o);padding-left:11px}.player-hud__avatar{border:2px solid #0000001f;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.player-hud--x .player-hud__avatar{background:var(--color-x)}.player-hud--o .player-hud__avatar{background:var(--color-o)}.player-hud__info{flex-direction:column;gap:0;min-width:0;display:flex}.player-hud__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.player-hud__boards{color:var(--color-text-light);font-size:11px}.player-hud__spacer{flex:1}.player-hud__clock{color:var(--color-text);letter-spacing:-.5px;flex:none;font-family:SF Mono,Monaco,Consolas,monospace;font-size:20px;font-weight:800}.player-hud__clock--low{color:var(--color-o);animation:.8s ease-in-out infinite clock-pulse}.game-action-bar{background:#161820f7;border-top:.5px solid #ffffff14;flex:none;align-items:center;height:56px;padding:0 4px;display:flex}.game-action-bar--replay{border-top-color:#5ac8fa59}.game-action-bar__btn{color:#ffffff8c;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;height:100%;transition:color .15s;display:flex}.game-action-bar__btn:hover,.game-action-bar__btn:active{color:#fff}.game-action-bar__label{letter-spacing:.2px;font-size:10px;font-weight:600}.game-action-bar__divider{background:#ffffff1f;width:.5px;height:28px}.game-action-bar__nav{color:#ffffff8c;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;flex:1;justify-content:center;align-items:center;height:100%;transition:color .15s;display:flex}.game-action-bar__nav:not(:disabled):hover,.game-action-bar__nav:not(:disabled):active{color:#fff}.game-action-bar__nav:disabled{opacity:.22;cursor:default}.board-zoom-overlay{background:var(--color-bg);z-index:20;flex-direction:column;align-items:stretch;gap:12px;padding:10px;animation:.22s cubic-bezier(.34,1.28,.64,1) forwards zoom-expand;display:flex;position:absolute;inset:0}.board-zoom-overlay--out{animation:.18s ease-in forwards zoom-collapse}@keyframes zoom-expand{0%{opacity:.6;transform:scale(.333)}to{opacity:1;transform:scale(1)}}@keyframes zoom-collapse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.333)}}.board-zoom-overlay__board{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.board-zoom-overlay__board .mini-board{aspect-ratio:1;width:min(100%,min(95vw,380px));box-shadow:none;border-radius:10px;padding:10px}.board-zoom-overlay__board .mini-board-grid{gap:6px}.board-zoom-overlay .cell-x.cell-aged-heavy:after{background:repeating-linear-gradient(135deg,#0000 0 9px,#126a9e 9px 18px)}.board-zoom-overlay .cell-x.cell-aged-light:after{background:repeating-linear-gradient(135deg,#0000 0 21px,#5fc4f5 21px 30px)}.board-zoom-overlay .cell-o.cell-aged-heavy:after{background:repeating-linear-gradient(135deg,#0000 0 9px,#b71c1c 9px 18px)}.board-zoom-overlay .cell-o.cell-aged-light:after{background:repeating-linear-gradient(135deg,#0000 0 21px,#ff6b60 21px 30px)}.board-zoom-overlay__close{color:#00000080;letter-spacing:.2px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#0000000f;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:14px;font-weight:600;transition:background .12s;display:flex}.board-zoom-overlay__close:hover,.board-zoom-overlay__close:active{background:#0000001f}.chat-panel__backdrop{z-index:80;background:#0000004d;position:fixed;inset:0}.chat-panel{z-index:81;background:#1e2033;border-radius:18px;flex-direction:column;width:min(92vw,340px);padding:16px;animation:.22s cubic-bezier(.34,1.16,.64,1) chat-window-in;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 60px #0000008c,0 0 0 .5px #ffffff1a}@keyframes chat-window-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.88)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.chat-panel__grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.chat-panel__chip{color:#ffffffd1;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:#ffffff12;border:none;border-radius:10px;padding:10px;font-size:12px;font-weight:500;line-height:1.3;transition:background .12s}.chat-panel__chip:hover,.chat-panel__chip:active{background:#ffffff24}.chat-panel__header{justify-content:space-between;align-items:center;padding:0 4px 10px;display:flex}.chat-panel__header-title{color:#ffffffe0;font-size:16px;font-weight:700}.chat-panel__close-btn{color:#ffffff8c;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.chat-panel__log{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex-direction:column;flex:1;gap:6px;min-height:100px;max-height:180px;margin-bottom:12px;padding:4px 0;display:flex;overflow-y:auto}.chat-panel__empty{color:#ffffff4d;text-align:center;margin:auto;font-size:13px}.chat-panel__bubble{word-break:break-word;border-radius:16px;max-width:78%;padding:8px 12px;font-size:14px;font-weight:500;line-height:1.35}.chat-panel__bubble--me{background:var(--color-x);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat-panel__bubble--them{color:#ffffffe0;background:#ffffff1f;border-bottom-left-radius:4px;align-self:flex-start}.chat-panel__quick-label{color:#ffffff59;text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px;font-size:11px;font-weight:600}.game-menu-sheet__backdrop{z-index:90;background:#00000073;position:fixed;inset:0}.game-menu-sheet{z-index:91;flex-direction:column;gap:10px;width:100%;max-width:430px;padding:12px 16px 34px;animation:.28s cubic-bezier(.34,1.1,.64,1) slide-up;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.game-menu-sheet__handle{background:#ffffff4d;border-radius:2px;width:36px;height:4px;margin:0 auto 10px}.game-menu-sheet__group{-webkit-backdrop-filter:blur(20px);background:#1c1c1ef0;border:.5px solid #ffffff1f;border-radius:14px;overflow:hidden}.game-menu-sheet__row{cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:background .12s;display:flex}.game-menu-sheet__row:hover,.game-menu-sheet__row:active{background:#ffffff12}.game-menu-sheet__row-icon{background:var(--color-x);color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.game-menu-sheet__row-icon--destructive{background:var(--color-o)}.game-menu-sheet__row-label{color:#ffffffeb;flex:1;font-size:17px;font-weight:500}.game-menu-sheet__row--destructive .game-menu-sheet__row-label{color:#ff6b6b}.game-menu-sheet__row-chevron{color:#ffffff40;font-size:18px;font-weight:300}.game-menu-sheet__separator{background:#ffffff1a;height:.5px;margin:0 16px}.game-menu-sheet__cancel{width:100%;color:var(--color-x);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(20px);background:#1c1c1ef0;border:.5px solid #ffffff1f;border-radius:14px;padding:16px;font-size:17px;font-weight:600;transition:background .12s}.game-menu-sheet__cancel:hover,.game-menu-sheet__cancel:active{background:#2c2c2ef0}.leagues-page{padding:var(--space-xl);flex:1;justify-content:center;align-items:center;display:flex}.leagues-page__coming-soon{align-items:center;gap:var(--space-md);color:var(--color-text-light);text-align:center;flex-direction:column;display:flex}.leagues-page__coming-soon svg{opacity:.35;color:var(--color-text)}.leagues-page__coming-soon h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.leagues-page__coming-soon p{font-size:var(--font-size-md);margin:0}@media (width>=600px){html,body,#root{background:#dde0e8;overflow:auto}.app-shell{border-radius:30px;max-width:500px;height:auto;min-height:680px;margin:36px auto;overflow:hidden;box-shadow:0 24px 80px #0000003d,0 0 0 1px #0000000f}.home-menu,.game-screen{min-height:680px}}@media (width<=380px){.player-header{gap:var(--space-xs);padding:var(--space-sm)}.player-side .player-avatar{width:44px;height:44px}.turn-badge{width:52px;height:52px}.turn-badge-letter{font-size:var(--font-size-xl)}.avatar-letter{font-size:var(--font-size-lg)}}@media (height>=800px){.board-container{padding:var(--space-xl)}.meta-board{width:min(90vw,400px)}}.symbol{justify-content:center;align-items:center;line-height:1;display:flex}.symbol__svg{width:100%;height:100%;display:block}.symbol--sm{width:16px;height:16px}.symbol--md{width:24px;height:24px}.symbol--lg{width:36px;height:36px}.symbol--xl{width:48px;height:48px}.symbol--cell{width:70%;height:70%}.symbol--x,.symbol--o{color:var(--color-text-inverse)}.symbol--hero{filter:drop-shadow(0 2px 4px #0003)}.symbol--ghost{opacity:.5}.symbol--draw .symbol__draw{background:var(--color-text-muted);border-radius:var(--radius-full);width:100%;height:4px;transform:rotate(-45deg)}@keyframes piecePlace{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.cell-x,.cell-o{animation:piecePlace .25s var(--transition-bounce)}@keyframes lastMoveGlow{0%,to{box-shadow:0 0 0 2px var(--color-last-move-glow), inset 0 -2px 0 #0003}50%{box-shadow:0 0 0 4px var(--color-last-move-glow), 0 0 12px var(--color-last-move-glow), inset 0 -2px 0 #0003}}@keyframes turnBadgePop{0%{transform:scale(.9)}50%{transform:scale(1.1)}to{transform:scale(1)}}.turn-badge{animation:turnBadgePop .3s var(--transition-bounce)}.icon-button{border-radius:var(--radius-full);width:44px;height:44px;box-shadow:var(--shadow-button);cursor:pointer;transition:all var(--transition-normal);background:linear-gradient(135deg,#f0f0f0 0%,#d8d8d8 100%);border:none;justify-content:center;align-items:center;display:flex;position:relative}.icon-button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.icon-button:active{box-shadow:var(--shadow-xs);transform:translateY(1px)}.icon-button__inner{color:var(--color-text);justify-content:center;align-items:center;display:flex}.icon-button__inner svg{fill:currentColor;width:20px;height:20px}.icon-button--floating{background:var(--color-text);color:#fff;width:56px;height:56px}.icon-button--floating .icon-button__inner{color:#fff}.icon-button--floating:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)scale(1.05)}.icon-button__badge{background:var(--color-o);color:#fff;border-radius:var(--radius-full);min-width:18px;height:18px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);justify-content:center;align-items:center;padding:0 4px;display:flex;position:absolute;top:-4px;right:-4px}.player-panel{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-panel-bg);border-radius:var(--radius-lg);transition:all var(--transition-normal);display:flex}.player-panel--inactive{opacity:.6;filter:saturate(.7)}.player-panel--active{opacity:1;filter:none;box-shadow:var(--shadow-sm)}.player-panel__avatar-wrap{position:relative}.player-panel__avatar{border-radius:var(--radius-full);border:3px solid var(--color-text-muted);background:var(--color-tile-bg);justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.player-panel--x .player-panel__avatar{border-color:var(--color-x)}.player-panel--o .player-panel__avatar{border-color:var(--color-o)}.player-panel__avatar img{object-fit:cover;width:100%;height:100%}.player-panel__placeholder{background:linear-gradient(135deg,#ccc 0%,#aaa 100%);width:100%;height:100%}.player-panel__meta{flex:1;min-width:0}.player-panel__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-panel__subrow{gap:var(--space-sm);font-size:var(--font-size-xs);color:var(--color-text-light);display:flex}.player-panel__rating{font-weight:var(--font-weight-semibold)}.turn-badge{border-radius:var(--radius-full);background:var(--color-ring-dark);width:64px;height:64px;box-shadow:var(--shadow-lg);justify-content:center;align-items:center;display:flex;position:relative}.turn-badge__inner{border-radius:var(--radius-full);justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:inset 0 2px 4px #0003}.turn-badge--x .turn-badge__inner{background:var(--color-x-gradient)}.turn-badge--o .turn-badge__inner{background:var(--color-o-gradient)}.turn-badge:after{content:"";border-radius:var(--radius-full);pointer-events:none;background:linear-gradient(#fff6 0%,#0000 100%);height:12px;position:absolute;top:4px;left:12px;right:12px}.ultimate-board{gap:var(--mini-board-gap);aspect-ratio:1;width:min(95vw,380px);padding:var(--board-padding);background:var(--color-board-shell);border-radius:var(--radius-lg);box-shadow:var(--shadow-md), inset 0 1px 0 #fff3;grid-template-columns:repeat(3,1fr);display:grid}.mini-board--active{z-index:auto;background:#fff;transform:none}.mini-board--inactive{opacity:1;background:#fff}.mini-board--won-x,.mini-board--won-o,.mini-board--drawn{background:#fff}.mini-board--playable{cursor:pointer}.mini-board--locked{cursor:default}.mini-board__grid{gap:var(--cell-gap);flex:1;grid-template-columns:repeat(3,1fr);display:grid}.mini-board__overlay{border-radius:inherit;z-index:var(--z-overlay);justify-content:center;align-items:center;animation:.3s ease-out overlayFadeIn;display:flex;position:absolute;inset:0}@keyframes overlayFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.mini-board--won-x .mini-board__overlay{background:var(--color-x-wash)}.mini-board--won-o .mini-board__overlay{background:var(--color-o-wash)}.mini-board__overlay .symbol--hero{width:70%;height:70%;color:var(--color-text-inverse);filter:drop-shadow(0 4px 8px #0000004d)}.mini-board--won-x .mini-board__overlay .symbol--hero{color:var(--color-x)}.mini-board--won-o .mini-board__overlay .symbol--hero{color:var(--color-o)}.cell--empty{background:var(--color-cell-empty)}.cell--playable{background:var(--color-cell-playable);cursor:pointer}.cell--playable:hover{background:var(--color-cell-playable-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.cell--blocked{background:var(--color-cell-blocked);cursor:default}.cell--pressable{cursor:pointer}.cell--pressable:active{transform:scale(.95)}.cell:focus-visible,.icon-button:focus-visible,.landing-button:focus-visible,.game-menu button:focus-visible{outline:3px solid var(--color-x);outline-offset:2px}@media (prefers-contrast:high){.mini-board-active{outline:3px solid var(--color-text)}.cell-last-move{outline:3px solid var(--color-draw);outline-offset:-3px}.cell-x,.cell-o{border:2px solid var(--color-text)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.time-control-overlay{z-index:200;-webkit-backdrop-filter:blur(12px)saturate(1.6);background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.time-control-modal{border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;width:100%;max-width:500px;padding:8px 0 max(20px, env(safe-area-inset-bottom));background:#fffffffa;animation:.32s cubic-bezier(.25,.46,.45,.94) both sheet-slide-up;position:relative;box-shadow:0 -4px 40px #0000002e}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.time-control-close{background:var(--color-fill);width:30px;height:30px;color:var(--color-text-light);cursor:pointer;transition:opacity var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:14px;right:16px}.time-control-close:hover{opacity:.7}.time-control-title{text-align:center;color:var(--color-text);margin:12px 0 16px;padding:0 52px;font-size:17px;font-weight:700}.time-control-grid{flex-direction:column;gap:0;display:flex}.time-control-option{border:none;border-bottom:.5px solid var(--color-separator);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;align-items:center;gap:14px;padding:15px 20px;display:flex}.time-control-option:last-child{border-bottom:none}.time-control-option:hover{background:var(--color-fill)}.time-control-option:active{background:var(--color-fill-secondary)}.time-control-icon{text-align:center;width:36px;font-size:24px}.time-control-name{color:var(--color-text);flex:1;font-size:17px;font-weight:500}.time-control-desc{color:var(--color-text-light);text-align:right;font-size:14px}.app-bar{-webkit-backdrop-filter:blur(20px)saturate(1.8);border-bottom:.5px solid var(--color-separator);z-index:100;background:#ffffffeb;flex:0 0 52px;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.app-bar__wordmark{letter-spacing:1.2px;color:var(--color-text);-webkit-user-select:none;user-select:none;font-size:17px;font-weight:800}.app-bar__x{color:var(--color-x)}.app-bar__o{color:var(--color-o)}.app-bar__profile-btn{background:var(--color-fill);width:34px;height:34px;color:var(--color-text-light);cursor:pointer;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.app-bar__profile-btn:hover{background:var(--color-fill-secondary);color:var(--color-text)}.app-bar__profile-btn--active{background:var(--color-x-bg);color:var(--color-x)}.bottom-nav{-webkit-backdrop-filter:blur(20px)saturate(1.8);border-top:.5px solid var(--color-separator);background:#ffffffeb;flex:0 0 62px;align-items:stretch;display:flex}.bottom-nav__tab{cursor:pointer;color:var(--color-text-muted);transition:color var(--transition-fast);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:0;display:flex}.bottom-nav__tab:active{opacity:.6}.bottom-nav__tab--active{color:var(--color-x)}.bottom-nav__icon{justify-content:center;align-items:center;display:flex}.bottom-nav__label{letter-spacing:.3px;text-transform:uppercase;font-size:10px;font-weight:600}.profile-page{gap:var(--space-lg);padding:var(--space-lg) var(--space-lg) var(--space-xl);background:var(--color-bg);flex-direction:column;height:100%;display:flex;overflow-y:auto}.profile-page--loading{justify-content:center;align-items:center}.profile-page__spinner{border:3px solid var(--color-tile-bg);border-top-color:var(--color-x);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.profile-page__hero{align-items:center;gap:var(--space-sm);padding:var(--space-xl) 0 var(--space-md);flex-direction:column;display:flex}.profile-page__avatar{background:var(--color-x-gradient);color:#fff;width:72px;height:72px;box-shadow:var(--shadow-avatar);letter-spacing:1px;border-radius:50%;justify-content:center;align-items:center;font-size:26px;font-weight:700;display:flex}.profile-page__name-row{align-items:center;gap:var(--space-sm);display:flex}.profile-page__username{color:var(--color-text);font-size:20px;font-weight:700}.profile-page__guest-badge{background:var(--color-tile-bg);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px;border-radius:10px;padding:2px 6px;font-size:10px;font-weight:600}.profile-page__email{color:var(--color-text-light);font-size:13px}.profile-page__signin-btn{margin-top:var(--space-sm);background:var(--color-x);color:#fff;cursor:pointer;box-shadow:var(--shadow-x);border:none;border-radius:20px;padding:8px 20px;font-size:14px;font-weight:600}.profile-page__section{gap:var(--space-sm);flex-direction:column;display:flex}.profile-page__section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);margin:0 4px;font-size:11px;font-weight:700}.profile-page__ratings-grid{gap:var(--space-sm);grid-template-columns:repeat(5,1fr);display:grid}.profile-page__rating-cell{background:var(--color-panel-bg);border-radius:var(--radius-md);padding:var(--space-sm) 4px;box-shadow:var(--shadow-xs);flex-direction:column;align-items:center;gap:2px;display:flex}.profile-page__rating-tc{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);font-size:9px;font-weight:600}.profile-page__rating-val{color:var(--color-text);font-size:16px;font-weight:700}.profile-page__rating-games{color:var(--color-text-muted);font-size:9px}.profile-page__matches{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.profile-page__match{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-panel-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);font-size:13px;display:flex}.profile-page__match-result{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex}.profile-page__match--win .profile-page__match-result{color:#fff;background:#66bb6a}.profile-page__match--loss .profile-page__match-result{background:var(--color-o);color:#fff}.profile-page__match--draw .profile-page__match-result{color:#333;background:#ffca28}.profile-page__match-tc{color:var(--color-text-light);flex:1}.profile-page__match-change{color:var(--color-text);font-weight:600}.profile-page__match--win .profile-page__match-change{color:#66bb6a}.profile-page__match--loss .profile-page__match-change{color:var(--color-o)}.profile-page__match-time{color:var(--color-text-muted);flex-shrink:0;font-size:11px}.profile-page__muted{color:var(--color-text-muted);text-align:center;padding:var(--space-md) 0;font-size:13px}.profile-page__offline{text-align:center;padding:var(--space-xl);color:var(--color-text-muted);font-size:14px}.play-page{flex-direction:column;height:100%;display:flex;overflow:hidden}.play-page__mode-tabs{border-bottom:1px solid var(--color-ring-dark);background:var(--color-shell);flex-shrink:0;display:flex}.play-page__mode-tab{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:12px;font-size:14px;font-weight:600;transition:color .15s,border-color .15s}.play-page__mode-tab--active{color:var(--color-x);border-bottom-color:var(--color-x)}.play-page__online{padding:var(--space-lg);gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.play-page__offline-banner{color:#ff6b6b;padding:var(--space-md);text-align:center;background:#3d2020;border-radius:10px;font-size:13px}.play-page__guest-prompt{text-align:center;padding:var(--space-2xl) var(--space-xl);align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.play-page__signin-btn{background:var(--color-x);color:#fff;cursor:pointer;box-shadow:var(--shadow-x);border:none;border-radius:20px;padding:10px 24px;font-size:15px;font-weight:600}.play-page__tc-picker{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.play-page__tc-label{color:var(--color-text-muted);font-size:12px;font-weight:600}.play-page__tc-btn{border:1.5px solid var(--color-ring-dark);color:var(--color-text-light);cursor:pointer;background:0 0;border-radius:14px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .15s}.play-page__tc-btn--active{border-color:var(--color-x);background:var(--color-x-bg);color:var(--color-x)}.play-page__online-tabs{gap:var(--space-sm);display:flex}.play-page__online-tab{background:var(--color-tile-bg);color:var(--color-text-light);cursor:pointer;border:none;border-radius:14px;padding:4px 14px;font-size:12px;font-weight:600}.play-page__online-tab--active{background:var(--color-x);color:#fff}.play-page__muted{text-align:center;color:var(--color-text-muted);padding:var(--space-xl) 0;font-size:13px}.play-page__user-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.play-page__user-item{align-items:center;gap:var(--space-md);background:var(--color-panel-bg);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow-xs);border-radius:12px;display:flex}.play-page__user-info{align-items:center;gap:var(--space-sm);flex:1;display:flex}.play-page__user-dot--online{background:#66bb6a;box-shadow:0 0 0 2px #66bb6a4d}.play-page__user-rating{color:var(--color-text-muted);font-size:12px}.play-page__challenge-btn{border:1.5px solid var(--color-x);color:var(--color-x);cursor:pointer;background:0 0;border-radius:14px;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.play-page__challenge-btn:not(:disabled):active{background:var(--color-x-bg)}.stats-page{gap:var(--space-lg);padding:var(--space-lg) var(--space-lg) var(--space-xl);background:var(--color-bg);flex-direction:column;height:100%;display:flex;overflow-y:auto}.stats-page__title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.stats-page__spinner{border:3px solid var(--color-tile-bg);border-top-color:var(--color-x);border-radius:50%;align-self:center;width:32px;height:32px;animation:.7s linear infinite spin}.stats-page__error,.stats-page__offline,.stats-page__empty{text-align:center;color:var(--color-text-muted);padding:var(--space-xl) 0;font-size:14px}.stats-page__section{gap:var(--space-sm);flex-direction:column;display:flex}.stats-page__section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);margin:0 4px;font-size:11px;font-weight:700}.stats-page__wld{gap:var(--space-sm);grid-template-columns:repeat(4,1fr);display:grid}.stats-page__wld-cell{padding:var(--space-md);background:var(--color-panel-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;align-items:center;display:flex}.stats-page__wld-cell--win .stats-page__wld-num{color:#66bb6a}.stats-page__wld-cell--loss .stats-page__wld-num{color:var(--color-o)}.stats-page__wld-cell--draw .stats-page__wld-num{color:#ffca28}.stats-page__table{border-collapse:collapse;background:var(--color-panel-bg);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-xs);font-size:13px;overflow:hidden}.stats-page__table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:.5px solid var(--color-separator);padding:8px 14px;font-size:11px;font-weight:600}.stats-page__table td{color:var(--color-text);border-bottom:.5px solid var(--color-separator);padding:11px 14px}.stats-page__table tr:last-child td{border-bottom:none}.stats-page__match-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.stats-page__match{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-panel-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);font-size:13px;display:flex}.stats-page__match-result{min-width:36px;font-size:12px;font-weight:700}.stats-page__match--win .stats-page__match-result{color:#66bb6a}.stats-page__match--loss .stats-page__match-result{color:var(--color-o)}.stats-page__match--draw .stats-page__match-result{color:#ffca28}.stats-page__match-tc{color:var(--color-text-light);flex:1}.stats-page__match-change{font-weight:600}.stats-page__match--win .stats-page__match-change{color:#66bb6a}.stats-page__match--loss .stats-page__match-change{color:var(--color-o)}.stats-page__match-time{color:var(--color-text-muted);font-size:11px}.settings-page{gap:var(--space-lg);padding:var(--space-lg) var(--space-lg) var(--space-xl);background:var(--color-bg);flex-direction:column;height:100%;display:flex;overflow-y:auto}.settings-page__title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.settings-page__section{gap:var(--space-sm);background:var(--color-panel-bg);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-xs);flex-direction:column;display:flex}.settings-page__section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);margin:0 0 var(--space-xs);font-size:11px;font-weight:700}.settings-page__row{align-items:center;gap:var(--space-md);display:flex}.settings-page__row--col{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.settings-page__row-label{color:var(--color-text);flex:1;font-size:14px;font-weight:500}.settings-page__value{color:var(--color-text-light);font-size:14px}.settings-page__theme-btns{gap:4px;display:flex}.settings-page__theme-btn{border:1.5px solid var(--color-ring-dark);color:var(--color-text-light);cursor:pointer;background:0 0;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .15s}.settings-page__theme-btn--active{border-color:var(--color-x);background:var(--color-x-bg);color:var(--color-x)}.settings-page__edit-row{align-items:center;gap:var(--space-sm);width:100%;display:flex}.settings-page__input{background:var(--color-fill);border:1.5px solid var(--color-separator-opaque);border-radius:var(--radius-sm);color:var(--color-text);min-width:0;font-size:15px;font-family:var(--font-family);transition:border-color var(--transition-fast);outline:none;flex:1;padding:9px 12px}.settings-page__input:focus{border-color:var(--color-x)}.settings-page__save-btn{border-radius:var(--radius-sm);background:var(--color-x);color:#fff;cursor:pointer;border:none;flex-shrink:0;padding:9px 16px;font-size:14px;font-weight:600}.settings-page__cancel-btn{border-radius:var(--radius-sm);border:1.5px solid var(--color-separator);color:var(--color-text-light);cursor:pointer;background:0 0;flex-shrink:0;padding:9px 14px;font-size:14px}.settings-page__edit-btn{border:1.5px solid var(--color-ring-dark);color:var(--color-text-light);cursor:pointer;background:0 0;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:600}.settings-page__error{color:var(--color-o);margin:0;font-size:12px}.settings-page__action-btn{border-radius:var(--radius-md);background:var(--color-x-bg);width:100%;color:var(--color-x);cursor:pointer;text-align:center;transition:opacity var(--transition-fast);border:none;padding:14px;font-size:15px;font-weight:600}.settings-page__action-btn--danger{background:var(--color-o-bg);color:var(--color-o)}.settings-page__action-btn:disabled{opacity:.45;cursor:default}.settings-page__about-desc{color:var(--color-text-muted);margin:0;font-size:13px}.settings-toggle{align-items:center;gap:var(--space-md);cursor:pointer;padding:2px 0;display:flex}.settings-toggle__label{font-size:var(--font-size-md);color:var(--color-text);font-weight:var(--font-weight-medium);flex:1}.settings-toggle__btn{border-radius:var(--radius-full);background:var(--color-fill-secondary);cursor:pointer;width:51px;height:31px;transition:background var(--transition-normal);border:none;flex-shrink:0;padding:0;position:relative}.settings-toggle__btn--on{background:var(--color-win)}.settings-toggle__thumb{width:27px;height:27px;transition:transform var(--transition-normal);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0000002e}.settings-toggle__btn--on .settings-toggle__thumb{transform:translate(20px)}.auth-page{min-height:100%;padding:var(--space-xl) var(--space-lg);background:var(--color-bg);flex-direction:column;justify-content:center;align-items:center;display:flex;overflow-y:auto}.auth-page__card{gap:var(--space-lg);flex-direction:column;width:100%;max-width:380px;display:flex;position:relative}.auth-page__back{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:0;font-size:22px;line-height:1;position:absolute;top:0;left:0}.auth-page__logo-img{width:120px;height:auto;margin:var(--space-2xl) auto var(--space-lg);border-radius:16px;display:block}.auth-page__title{color:var(--color-text);text-align:center;margin:0;font-size:22px;font-weight:800}.auth-page__subtitle{color:var(--color-text-light);text-align:center;margin:0;font-size:14px}.auth-page__form{gap:var(--space-md);flex-direction:column;display:flex}.auth-page__label{color:var(--color-text-light);font-size:13px;font-weight:600}.auth-page__input{border:1.5px solid var(--color-separator-opaque);border-radius:var(--radius-md);color:var(--color-text);transition:border-color var(--transition-fast);box-sizing:border-box;width:100%;font-size:17px;font-family:var(--font-family);background:#fff;outline:none;padding:14px 16px}.auth-page__input:focus{border-color:var(--color-x);box-shadow:0 0 0 3px var(--color-x-bg)}.auth-page__error{color:var(--color-o);margin:0;font-size:13px}.auth-page__btn{border-radius:var(--radius-full);background:var(--color-x);color:#fff;cursor:pointer;box-shadow:var(--shadow-x);transition:opacity var(--transition-fast);border:none;padding:15px;font-size:17px;font-weight:700}.auth-page__btn--secondary{background:var(--color-x-bg);color:var(--color-x);box-shadow:none}.auth-page__btn:disabled{opacity:.45;cursor:default}.auth-page__sent{align-items:center;gap:var(--space-md);text-align:center;flex-direction:column;display:flex}.auth-page__sent-icon{font-size:48px}.auth-page__sent-msg{color:var(--color-text);margin:0;font-size:15px}.auth-page__dev-hint{color:var(--color-text-muted);margin:0;font-size:12px}.auth-page__resend{color:var(--color-x);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600;text-decoration:underline}.auth-page__footer{color:var(--color-text-muted);text-align:center;padding-top:var(--space-sm);margin:0;font-size:12px}.inner-bar{-webkit-backdrop-filter:blur(20px)saturate(1.8);border-bottom:.5px solid var(--color-separator);z-index:100;background:#ffffffeb;flex:0 0 52px;align-items:center;gap:6px;padding:0 12px;display:flex}.inner-bar__back{border-radius:var(--radius-full);height:36px;color:var(--color-x);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--transition-fast);background:0 0;border:none;align-items:center;gap:4px;padding:0 8px 0 4px;font-size:15px;font-weight:500;display:flex}.inner-bar__back:active{opacity:.5}.inner-bar__admin{border-radius:var(--radius-full);cursor:pointer;opacity:.7;-webkit-tap-highlight-color:transparent;width:36px;height:36px;transition:opacity var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.inner-bar__admin:active{opacity:.4}.inner-bar__title{color:var(--color-text);letter-spacing:-.2px;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:17px;font-weight:700;overflow:hidden}.home-controls{padding:14px 20px max(20px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)saturate(1.8);border-top:.5px solid var(--color-separator);background:#ffffffeb;flex-direction:column;flex:none;gap:0;display:flex}.home-controls__play{border-radius:var(--radius-full);color:#fff;letter-spacing:2px;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;width:100%;transition:opacity var(--transition-fast), transform var(--transition-fast);background:linear-gradient(135deg,#2196f3 0%,#1565c0 100%);border:none;margin-bottom:14px;padding:17px;font-size:17px;font-weight:700;box-shadow:0 4px 18px #2196f361}.home-controls__play:active{opacity:.82;transform:scale(.97)}.home-controls__circles{justify-content:space-around;display:flex}.home-controls__circle{cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--color-text-light);border-radius:var(--radius-lg);transition:color var(--transition-fast), opacity var(--transition-fast);background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:6px 10px;display:flex}.home-controls__circle:active{opacity:.55;color:var(--color-text)}.home-controls__circle--active{color:var(--color-primary,#2196f3)}.home-controls__circle--active .nav-icon--dark{filter:brightness(0)saturate()invert(44%)sepia(72%)saturate(2082%)hue-rotate(193deg)brightness()contrast(96%)}.home-controls__circle span:last-child{letter-spacing:.4px;text-transform:uppercase;font-size:10px;font-weight:600}.nav-icon{width:26px;height:26px;display:block}.nav-icon--blue{filter:brightness(0)saturate()invert(44%)sepia(72%)saturate(2082%)hue-rotate(193deg)brightness()contrast(96%)}.nav-icon--gold{filter:brightness(0)saturate()invert(85%)sepia(50%)saturate(900%)hue-rotate(2deg)brightness(108%)}.nav-icon--green{filter:brightness(0)saturate()invert(59%)sepia(60%)saturate(500%)hue-rotate(90deg)brightness(95%)}.nav-icon--red{filter:brightness(0)saturate()invert(26%)sepia(96%)saturate(1452%)hue-rotate(348deg)brightness(103%)contrast(97%)}.nav-icon--dark{filter:brightness(0)saturate()invert(15%)}.nav-icon--thick{filter:brightness(0)saturate()invert(15%)drop-shadow(0 0 1px #1a1a1a)drop-shadow(0 0 1px #1a1a1a)}.more-page{background:#f2f2f7;flex:1;overflow-y:auto}.more-page__row{border:none;border-bottom:.5px solid var(--color-separator);cursor:pointer;-webkit-tap-highlight-color:transparent;text-align:left;background:#fff;align-items:center;gap:14px;width:100%;padding:16px 20px;display:flex}.more-page__row:first-child{border-top:.5px solid var(--color-separator);margin-top:20px}.more-page__row:active{background:#f0f0f5}.more-page__row-icon{flex-shrink:0;width:24px;height:24px}.more-page__row-text{flex-direction:column;flex:1;gap:2px;display:flex}.more-page__row-label{color:var(--color-text);font-size:16px;font-weight:600}.more-page__row-desc{color:var(--color-text-muted);font-size:12px}.more-page__row-chevron{color:var(--color-text-muted);font-size:20px;line-height:1}.placeholder-page{flex:1;justify-content:center;align-items:center;display:flex}.placeholder-page__text{color:var(--color-text-muted);font-size:16px}.home-page{flex-direction:column;flex:1;gap:0;display:flex;overflow-y:auto}.screen--home{overflow:hidden}.home-level{border-bottom:.5px solid var(--color-separator);background:#fff;align-items:center;gap:14px;padding:18px 20px 16px;display:flex}.home-level__circle{background:linear-gradient(135deg,#42a5f5 0%,#1565c0 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative;box-shadow:0 3px 12px #2196f347}.home-level__circle-wrap{flex-shrink:0;position:relative}.home-level__circle--avatar-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:#e0e0e0;border:none;padding:0;overflow:hidden;box-shadow:0 3px 12px #00000026}.home-level__circle--avatar-btn:active{opacity:.7}.home-level__avatar{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.home-level__avatar--grey{filter:grayscale()}.home-level__initials{color:#fff;letter-spacing:1px;font-size:18px;font-weight:700}.home-level__badge{color:#fff;background:#ef5350;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:-2px;right:-2px}.home-level__right{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.home-level__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.home-level__bar-wrap{background:#00000014;border-radius:3px;height:6px;overflow:hidden}.home-level__bar{background:linear-gradient(90deg,#2196f3 0%,#1565c0 100%);border-radius:3px;min-width:4px;height:100%;transition:width .4s}.home-level__xp-label{color:var(--color-text-muted);font-size:11px;font-weight:500}.home-your-move-header{background:#f2f2f7;align-items:center;padding:20px 20px 10px;display:flex}.home-your-move-header__title{color:var(--color-text);letter-spacing:-.3px;font-size:22px;font-weight:800}.home-section{padding:6px 20px 10px}.home-section__title{text-transform:uppercase;letter-spacing:1.2px;color:var(--color-text-muted);margin:0 0 8px;font-size:11px;font-weight:700}.game-slot{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;border:none;align-items:center;gap:12px;min-height:68px;margin-bottom:8px;padding:13px 16px;display:flex}.game-slot__preview{background:#0000001a;border-radius:6px;flex-shrink:0;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:2px;width:54px;height:54px;padding:3px;display:grid}.game-slot__preview-board{background:#00000012;border-radius:2px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:1px;padding:1px;display:grid}.game-slot__preview-board--x{background:#2196f340}.game-slot__preview-board--o{background:#e5393540}.game-slot__preview-board--draw{background:#0000001f}.game-slot__preview-cell{border-radius:1px}.game-slot__preview-cell--x{background:var(--color-x)}.game-slot__preview-cell--o{background:var(--color-o)}.game-slot__preview-cell--empty{background:#ffffff8c}.game-slot__add-btn{background:var(--color-fill);width:44px;height:44px;color:var(--color-text-light);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:300;display:flex}.game-slot__add-btn:active{opacity:.55}.game-slot__label{color:#aaa;font-size:14px;font-weight:500}.game-slot--active .game-slot__label,.game-slot--over .game-slot__label{color:var(--color-text)}.game-slot__info{flex-direction:column;flex:1;gap:3px;display:flex}.game-slot__title{color:var(--color-text);font-size:14px;font-weight:700}.game-slot__sub{color:var(--color-text-light);font-size:12px}.game-slot__actions{align-items:center;gap:6px;display:flex}.game-slot__continue-btn{border-radius:var(--radius-full);background:var(--color-x);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;padding:8px 16px;font-size:13px;font-weight:700;box-shadow:0 2px 8px #2196f34d}.game-slot__clear-btn{width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex}.history-list{flex-direction:column;gap:6px;display:flex}.history-item{border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;align-items:center;gap:10px;padding:12px 14px;display:flex}.history-item__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex}.history-item--win .history-item__icon{color:#2e7d32;background:#4ecd6426}.history-item--loss .history-item__icon{color:#c62828;background:#ef535026}.history-item--draw .history-item__icon{color:#607d8b;background:#00000012}.history-item__tc{color:var(--color-text);flex:1;font-size:13px;font-weight:500}.history-item__change{font-size:12px;font-weight:700}.history-item__change--pos{color:#2e7d32}.history-item__change--neg{color:#c62828}.history-item__time{color:var(--color-text-muted);font-size:11px}.home-empty{text-align:center;flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.home-empty p{color:var(--color-text-muted);font-size:15px;line-height:1.5}.play-page{padding:var(--space-lg) var(--space-lg) var(--space-xl);gap:var(--space-lg);background:var(--color-bg);flex-direction:column;height:100%;display:flex;overflow-y:auto}.play-page__section{flex-direction:column;gap:10px;display:flex}.play-page__section-label{text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);margin:0;font-size:11px;font-weight:700}.play-page__modes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.play-page__mode{border:1.5px solid var(--color-separator);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;align-items:flex-start;gap:3px;padding:16px 14px;display:flex;position:relative}.play-page__mode--active{border-color:var(--color-x);background:var(--color-x-bg);box-shadow:0 0 0 1px var(--color-x), var(--shadow-xs)}.play-page__mode--disabled{opacity:.5;cursor:default}.play-page__mode-icon{margin-bottom:2px;font-size:22px;line-height:1}.play-page__mode-img{object-fit:contain;width:32px;height:32px;display:block}.play-page__mode-label{color:var(--color-text);font-size:13px;font-weight:700;line-height:1.2}.play-page__mode-desc{color:var(--color-text-muted);font-size:11px;line-height:1.3}.play-page__mode-lock{opacity:.6;font-size:12px;position:absolute;top:10px;right:10px}.play-page__tc-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.play-page__tc-tile{border:1.5px solid var(--color-separator);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;align-items:center;gap:3px;padding:12px 6px;display:flex}.play-page__tc-tile--active{border-color:var(--color-x);background:var(--color-x-bg);box-shadow:0 0 0 1px var(--color-x), var(--shadow-xs)}.play-page__tc-tile-icon{font-size:18px;line-height:1}.play-page__tc-tile-img{object-fit:contain;width:28px;height:28px;display:block}.play-page__tc-tile-label{color:var(--color-text);font-size:12px;font-weight:700}.play-page__tc-tile-sub{color:var(--color-text-muted);font-size:10px}.play-page__start{border-radius:var(--radius-full);background:var(--color-x);color:#fff;letter-spacing:.3px;cursor:pointer;-webkit-tap-highlight-color:transparent;width:100%;transition:opacity var(--transition-fast), transform var(--transition-fast);border:none;margin-top:auto;padding:17px;font-size:17px;font-weight:700;box-shadow:0 4px 18px #2196f352}.play-page__start:active{opacity:.82;transform:scale(.97)}.play-page__muted{color:var(--color-text-muted);margin:0;padding:4px 0;font-size:13px}.play-page__user-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.play-page__user-item{border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;align-items:center;gap:10px;padding:12px 16px;display:flex}.play-page__user-info{flex:1;align-items:center;gap:8px;display:flex}.play-page__user-dot{background:#ccc;border-radius:50%;flex-shrink:0;width:8px;height:8px}.play-page__user-dot--online{background:#4caf50}.play-page__user-name{color:var(--color-text);font-size:14px;font-weight:600}.play-page__challenge-btn{border-radius:var(--radius-full);background:var(--color-x);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;padding:8px 18px;font-size:13px;font-weight:700;box-shadow:0 2px 8px #2196f347}.play-page__challenge-btn:disabled{opacity:.4;cursor:not-allowed}.play-page__guest-prompt{text-align:center;align-items:center;gap:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;padding:28px 20px;display:flex}.play-page__guest-prompt p{color:var(--color-text-light);margin:0;font-size:14px}.play-page__signin-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2196f3,#1565c0);border:none;border-radius:20px;padding:10px 24px;font-size:14px;font-weight:700}.stats-page__period-filter{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.stats-page__period-btn{border-radius:var(--radius-full);border:1.5px solid var(--color-separator);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:6px 16px;font-size:12px;font-weight:600}.stats-page__period-btn--active{border-color:var(--color-x);background:var(--color-x-bg);color:var(--color-x)}.stats-page__wld{gap:8px;margin-bottom:16px;display:flex}.stats-page__wld-cell{border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;flex:1;align-items:center;padding:14px 8px;display:flex}.stats-page__wld-cell--win{border-top:3px solid var(--color-win)}.stats-page__wld-cell--loss{border-top:3px solid var(--color-o)}.stats-page__wld-cell--draw{border-top:3px solid var(--color-text-muted)}.stats-page__wld-num{color:var(--color-text);font-size:22px;font-weight:800}.stats-page__wld-label{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);font-size:10px;font-weight:600}.stats-page__categories{flex-direction:column;gap:10px;display:flex}.stats-cat-card{text-align:left;border-radius:var(--radius-lg);cursor:pointer;-webkit-tap-highlight-color:transparent;width:100%;transition:opacity var(--transition-fast);box-shadow:var(--shadow-sm);background:#fff;border:none;padding:15px 18px}.stats-cat-card:active{opacity:.7}.stats-cat-card__header{align-items:center;gap:10px;display:flex}.stats-cat-card__icon{font-size:20px}.stats-cat-card__name{color:var(--color-text);flex:1;font-size:16px;font-weight:700}.stats-cat-card__rating{color:#2196f3;font-size:20px;font-weight:800}.stats-cat-card__wld{gap:10px;margin-top:8px;font-size:13px;font-weight:600;display:flex}.stats-cat-card__w{color:#2e7d32}.stats-cat-card__d{color:var(--color-text-muted)}.stats-cat-card__l{color:#c62828}.stats-cat-card__empty{color:var(--color-text-muted);margin-top:6px;font-size:12px}.stats-drill__header{align-items:center;gap:10px;margin-bottom:20px;display:flex}.stats-drill__back{width:36px;height:36px;color:var(--color-text);cursor:pointer;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.stats-drill__icon{font-size:22px}.stats-drill__title{color:var(--color-text);font-size:20px;font-weight:800}.stats-drill__rating-row{gap:8px;margin-bottom:20px;display:flex}.stats-drill__stat{box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;flex-direction:column;flex:1;align-items:center;padding:14px 8px;display:flex}.stats-drill__stat-val{color:var(--color-text);font-size:20px;font-weight:800}.stats-drill__stat-label{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);font-size:10px;font-weight:600}.stats-drill__graph{background:#fff;border:1px solid #00000012;border-radius:12px;justify-content:center;align-items:center;height:120px;margin-bottom:20px;display:flex}.stats-drill__graph-placeholder{color:var(--color-text-muted);font-size:13px}.stats-drill__history{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.stats-drill__row{background:#fff;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.stats-drill__row-icon{border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.stats-drill__row--win .stats-drill__row-icon{color:#2e7d32;background:#4ecd6426}.stats-drill__row--loss .stats-drill__row-icon{color:#c62828;background:#ef535026}.stats-drill__row--draw .stats-drill__row-icon{color:#607d8b;background:#00000012}.stats-drill__row-tc{color:var(--color-text);flex:1;font-size:13px}.stats-drill__row-change{font-size:12px;font-weight:700}.stats-drill__row-change.pos{color:#2e7d32}.stats-drill__row-change.neg{color:#c62828}.stats-drill__row-time{color:var(--color-text-muted);font-size:11px}.stats-drill__empty{color:var(--color-text-muted);text-align:center;padding:24px;font-size:14px}.stats-page{flex-direction:column;gap:0;height:100%;padding:20px 16px;display:flex;overflow-y:auto}.stats-page__spinner{border:3px solid #0000001a;border-top-color:#2196f3;border-radius:50%;width:32px;height:32px;margin:20px auto;animation:.7s linear infinite spin}.stats-page__error,.stats-page__offline,.stats-page__empty{color:var(--color-text-muted);text-align:center;padding:24px;font-size:14px}.trophies-page{justify-content:center;align-items:center;height:100%;padding:40px 20px;display:flex}.trophies-page__coming-soon{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.trophies-page__icon{font-size:64px}.trophies-page__title{color:var(--color-text);margin:0;font-size:24px;font-weight:800}.trophies-page__desc{color:var(--color-text-muted);max-width:260px;margin:0;font-size:14px;line-height:1.6}.trophies-page__badge{color:#e65100;letter-spacing:.5px;background:#ffaf001f;border:1.5px solid #ffaf0059;border-radius:16px;padding:6px 18px;font-size:13px;font-weight:700;display:inline-block}.awards-page{background:var(--color-bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.awards-page__header{flex-direction:column;flex-shrink:0;gap:6px;padding:16px 16px 10px;display:flex}.awards-page__title{color:var(--color-text);letter-spacing:-.3px;margin:0;font-size:22px;font-weight:800}.awards-page__sync-row{align-items:center;gap:10px;display:flex}.awards-page__sync-time{color:var(--color-text-muted);font-size:12px}.awards-page__sync-btn{color:var(--color-accent);border:1.5px solid var(--color-accent);cursor:pointer;background:0 0;border-radius:8px;padding:3px 10px;font-size:12px;font-weight:700;transition:opacity .15s}.awards-page__sync-btn:disabled{opacity:.45}.awards-page__error{color:#f56;margin:0;font-size:12px}.awards-page__offline-note{color:var(--color-text-muted);margin:0;font-size:12px}.awards-page__muted{color:var(--color-text-muted);grid-column:1/-1;padding:20px 0;font-size:14px}.awards-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-shrink:0;gap:6px;padding:0 12px 10px;display:flex;overflow-x:auto}.awards-tabs::-webkit-scrollbar{display:none}.awards-tab{background:var(--color-surface);border:1.5px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:10px;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:62px;padding:8px 10px 6px;transition:border-color .15s,background .15s;display:flex;position:relative}.awards-tab__icon{font-size:20px;line-height:1}.awards-tab__label{color:var(--color-text-muted);letter-spacing:.2px;font-size:10px;font-weight:600}.awards-tab__count{background:var(--color-accent);color:#fff;border-radius:6px;padding:1px 4px;font-size:9px;font-weight:800;line-height:1.4;position:absolute;top:4px;right:4px}.awards-tab--active{border-color:var(--color-accent);background:#00ccff14}.awards-tab--active .awards-tab__label{color:var(--color-accent)}.awards-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;padding:4px 12px 24px;display:grid;overflow-y:auto}.award-card{border:1.5px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:14px 10px 12px;transition:box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.award-card--earned{background:#00ccff0a;border-color:#00ccff73}.award-card--earned:hover{box-shadow:0 0 10px 2px #0cf3}.award-card--locked{opacity:.55}.award-card--hidden{opacity:.38}.award-card--new{border-color:#ffd700b3;animation:1s ease-in-out 3 award-pulse}@keyframes award-pulse{0%,to{box-shadow:0 0 #ffd70000}50%{box-shadow:0 0 14px 4px #ffd70073}}.award-card--stamp{border:2.5px dashed #00ccff80;border-radius:4px}.award-card--stamp.award-card--earned{border-style:solid;border-color:#00ccffb3}.passport-stamp-svg{filter:drop-shadow(0 1px 4px #00000080);flex-shrink:0;display:block}.calendar-icon{filter:drop-shadow(0 1px 3px #0000004d);flex-shrink:0;display:block}.award-card__new-banner{color:#222;letter-spacing:.5px;background:gold;padding:2px 16px;font-size:9px;font-weight:900;position:absolute;top:6px;right:-12px;transform:rotate(30deg)}.award-card__icon{font-size:28px;line-height:1}.award-anniversary{justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative}.award-anniversary__base{object-fit:contain;width:48px;height:48px;display:block}.award-anniversary--gold .award-anniversary__base{filter:saturate(1.15)brightness(1.05)}.award-anniversary--bronze .award-anniversary__base{filter:sepia()saturate(220%)hue-rotate(-20deg)brightness(62%)contrast(110%)}.award-anniversary--bronze .award-anniversary__num{color:#4a1a00}.award-anniversary--silver .award-anniversary__base{filter:grayscale(85%)brightness(115%)}.award-anniversary--silver .award-anniversary__num{color:#3a3a4a}.award-anniversary__num{aspect-ratio:1;color:#4a3f8c;letter-spacing:-.5px;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:54%;font-size:14px;font-weight:800;line-height:1;display:flex;position:absolute;top:15%;left:50%;transform:translate(-50%)}.award-anniversary__tc{object-fit:contain;z-index:2;filter:drop-shadow(0 1px 2px #00000080);width:18px;height:18px;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.award-card__name{color:var(--color-text);font-size:12px;font-weight:700;line-height:1.25}.award-card__desc{color:var(--color-text-muted);font-size:10px;line-height:1.35}.award-card__date{color:var(--color-accent);font-size:10px;font-weight:600}.award-card__repeat-list{scrollbar-width:none;flex-direction:column;gap:2px;width:100%;max-height:72px;display:flex;overflow-y:auto}.award-card__repeat-list::-webkit-scrollbar{display:none}.award-card__repeat-entry{color:var(--color-accent);font-size:9px;font-weight:600}.award-card__progress{background:var(--color-border);border-radius:7px;width:100%;height:14px;margin-top:4px;position:relative;overflow:hidden}.award-card__progress-bar{background:linear-gradient(90deg, var(--color-accent), #007aff);border-radius:7px;height:100%;transition:width .4s}.award-card__progress-label{color:#fff;mix-blend-mode:difference;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex;position:absolute;inset:0}.profile-page__nationality{margin-top:8px}.profile-page__nationality-display{border:1.5px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:14px;transition:border-color .15s}.profile-page__nationality-display:hover{border-color:var(--color-accent)}.profile-page__nationality-edit{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.profile-page__nationality-select{background:var(--color-surface);border:1.5px solid var(--color-border);color:var(--color-text);border-radius:8px;max-width:200px;padding:6px 10px;font-size:14px}.profile-page__nationality-save,.profile-page__nationality-cancel{cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:700;transition:opacity .15s}.profile-page__nationality-save{background:var(--color-accent);color:#fff}.profile-page__nationality-cancel{background:var(--color-surface);color:var(--color-text-muted);border:1.5px solid var(--color-border)}.profile-page__nationality-save:disabled,.profile-page__nationality-cancel:disabled{opacity:.45}.play-page__bot-diff-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.play-page__bot-diff{cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-xs);background:#fff;border:1.5px solid #0000001a;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:14px 8px 12px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.play-page__bot-diff--active{box-shadow:0 0 0 1px #2196f3, var(--shadow-xs);background:#2196f30f;border-color:#2196f3}.play-page__bot-diff-icon{justify-content:center;align-items:center;font-size:24px;line-height:1;display:flex}.speedometer-icon{flex-shrink:0;display:block}.play-page__bot-diff-label{color:var(--color-text);font-size:13px;font-weight:700;line-height:1.2}.play-page__bot-diff-desc{color:var(--color-text-muted);font-size:10px;line-height:1.3}.guest-gate{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;padding:48px 24px;display:flex}.guest-gate__icon{font-size:48px;line-height:1}.guest-gate__title{color:var(--color-text-primary);margin:0;font-size:20px;font-weight:700}.guest-gate__body{color:var(--color-text-muted);max-width:280px;margin:0;font-size:15px;line-height:1.5}.guest-gate__btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-top:8px;padding:14px 40px;font-size:16px;font-weight:700}.play-page__tc-tile--disabled{opacity:.38;cursor:not-allowed;pointer-events:none;position:relative}.play-page__tc-tile-lock{font-size:11px;line-height:1;position:absolute;top:4px;right:4px}.play-page__guest-tc-note{color:var(--color-text-muted);text-align:center;margin-top:8px;font-size:12px}.play-page__guest-active-game{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 24px;display:flex}.play-page__guest-active-game p{color:var(--color-text-primary);margin:0;font-size:15px;font-weight:600}.play-page__guest-active-game .play-page__start{margin-top:16px}
