@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,650&family=Manrope:wght@400;600;700&display=swap";:root{color-scheme:dark;--bg0: #0f2740;--bg1: #163652;--bg2: #1d4668;--sand: #e8dcc8;--ink: #f4f0e8;--muted: #b7c5d4;--accent: #3db8a0;--accent-2: #f0a05a;--danger: #e07070;--card: rgba(255, 255, 255, .06);--border: rgba(232, 220, 200, .16);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Palatino, serif;--font-body: "Manrope", "Avenir Next", "Segoe UI", sans-serif;--shell-pad-top: 1rem;--shell-pad-x: 1rem;--shell-pad-bottom: 1rem;--page-header-min-height: 2.5rem;--page-header-margin-bottom: 1.1rem;--page-header-gap: .55rem;--page-header-title-size: 1.35rem;--page-header-icon-size: 1.5rem;--page-header-logo-size: 28px;--page-header-menu-size: 2.5rem;font-family:var(--font-body);background:radial-gradient(1200px 600px at 10% -10%,#24557a 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#2a6b5c 0%,transparent 50%),linear-gradient(160deg,var(--bg0),var(--bg1) 45%,#102033);color:var(--ink);line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;background-color:#0f2740}html,body{overscroll-behavior-x:none}body{min-height:100dvh}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:calc(var(--shell-pad-top) + var(--safe-top)) var(--shell-pad-x) calc(var(--shell-pad-bottom) + var(--safe-bottom));max-width:960px;margin:0 auto}.topnav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:var(--page-header-margin-bottom);min-height:var(--page-header-min-height)}.topnav--with-back{display:grid;grid-template-columns:minmax(var(--page-header-menu-size),1fr) minmax(0,auto) minmax(var(--page-header-menu-size),1fr);align-items:center;gap:.5rem}.topnav--with-back>.page-title-back{justify-self:start;min-width:0}.topnav--with-back>.page-title{justify-self:center;max-width:100%}.topnav--with-back>.menu-btn{justify-self:end}.topnav-spacer{width:var(--page-header-menu-size);flex-shrink:0}.page-title{display:inline-flex;align-items:center;gap:var(--page-header-gap);min-width:0;font-family:var(--font-display);font-size:var(--page-header-title-size);letter-spacing:.02em;line-height:1.2}.page-title-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-title-icon{display:inline-grid;place-items:center;width:var(--page-header-icon-size);height:var(--page-header-icon-size);color:var(--accent);flex-shrink:0}.page-title-avatar{width:var(--page-header-logo-size);height:var(--page-header-logo-size);font-size:.75rem}.page-title-game-logo{width:var(--page-header-logo-size)!important;height:var(--page-header-logo-size)!important;flex-shrink:0}.page-title-favorite{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--page-header-logo-size);height:var(--page-header-logo-size);margin:0;padding:0;border:none;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--ink) 55%,var(--muted));cursor:pointer}.page-title-favorite:hover,.page-title-favorite:focus-visible{color:color-mix(in srgb,var(--game-accent, var(--accent)) 70%,var(--ink));outline:none}.page-title-favorite:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent, var(--accent)) 55%,transparent)}.page-title-favorite--on{color:var(--game-accent, var(--accent))}.page-title-favorite--on:hover,.page-title-favorite--on:focus-visible{color:color-mix(in srgb,var(--game-accent, var(--accent)) 85%,var(--ink))}.page-title-rankings{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--page-header-logo-size);height:var(--page-header-logo-size);margin:0;padding:0;border:none;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--ink) 55%,var(--muted));cursor:pointer;transition:color .16s ease,background .16s ease}.page-title-rankings:hover,.page-title-rankings:focus-visible{color:color-mix(in srgb,var(--game-accent, var(--accent)) 70%,var(--ink));background:#ffffff0d;outline:none}.page-title-rankings:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent, var(--accent)) 55%,transparent)}.page-title-back{display:inline-flex;align-items:center;gap:.2rem;flex-shrink:0;min-height:var(--page-header-menu-size);padding:0 .35rem 0 .15rem;margin:0 .1rem 0 -.15rem;border-radius:10px;border:1px solid transparent;background:transparent;font-family:var(--font-body);font-size:.85rem;font-weight:600;letter-spacing:.01em;color:var(--muted);line-height:1;text-decoration:none;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease}.page-title-back:hover,.page-title-back:focus-visible{color:var(--ink);background:var(--card);border-color:var(--border);outline:none}.page-title-back svg{flex-shrink:0;color:var(--accent)}.page-title-back--disabled,.page-title-back:disabled{opacity:.4;cursor:default;pointer-events:none}.page-title-back--disabled:hover,.page-title-back--disabled:focus-visible,.page-title-back:disabled:hover,.page-title-back:disabled:focus-visible{color:var(--muted);background:transparent;border-color:transparent}.page-heading{display:inline-flex;align-items:center;gap:var(--page-header-gap);margin:0;font-family:var(--font-display);font-size:var(--page-header-title-size);letter-spacing:.02em;line-height:1.2;font-weight:650}.page-heading .page-title-icon{color:var(--accent)}.btn.with-icon{display:inline-flex;align-items:center;gap:.55rem}.btn.with-icon .page-title-icon{width:var(--page-header-icon-size);height:var(--page-header-icon-size)}.page-lede{margin:0 0 .15rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.games-challenges-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;text-decoration:none;color:inherit;transition:background .16s ease,border-color .16s ease}.games-challenges-cta:hover{background:#ffffff0d;border-color:#e8dcc838}.games-challenges-cta-icon{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:2.4rem;height:2.4rem;border-radius:12px;background:#ffffff0f;color:var(--sand)}.games-challenges-cta-copy{flex:1 1 10rem;min-width:0;display:grid;gap:.15rem}.games-challenges-cta-copy strong{font-size:1rem;letter-spacing:.01em}.games-challenges-cta-copy .muted{font-size:.88rem;line-height:1.35}.games-challenges-cta-btn{pointer-events:none;flex:0 0 auto;margin-left:auto}.games-filters{display:flex;flex-direction:column;gap:.65rem;margin:.15rem 0 .35rem}.games-filters-row{display:flex;gap:.5rem;flex-wrap:wrap}.games-filters-search{flex:1 1 10rem;min-width:0}.games-filters-search input{width:100%;box-sizing:border-box;padding:.55rem .75rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;color:var(--ink);font:inherit}.games-filters-search input:focus-visible{outline:none;border-color:#e8dcc873}.games-filters-sort{flex:0 0 auto}.games-filters-sort select{appearance:none;padding:.55rem 2rem .55rem .75rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23c8c2b8' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E") no-repeat right .7rem center;color:var(--ink);font:inherit;cursor:pointer}.games-filters-sort select:focus-visible{outline:none;border-color:#e8dcc873}.games-filters-chips{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.games-filter-chip{appearance:none;display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .7rem;border-radius:999px;border:1px solid var(--border);background:#ffffff08;color:var(--muted);font:inherit;font-size:.85rem;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.games-filter-chip svg{width:.95rem;height:.95rem}.games-filter-chip:hover,.games-filter-chip:focus-visible{border-color:#e8dcc859;color:var(--ink);outline:none}.games-filter-chip--active{border-color:#3db8a073;background:#3db8a024;color:var(--ink)}.games-filter-chip--fav.games-filter-chip--active{border-color:#e8788c80;background:#e8788c24}.games-filter-clear{appearance:none;margin-left:.15rem;padding:.35rem .55rem;border:none;background:transparent;color:var(--muted);font:inherit;font-size:.85rem;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.games-filter-clear:hover,.games-filter-clear:focus-visible{color:var(--ink);outline:none}.games-filters-empty{grid-column:1 / -1}.menu-btn{appearance:none;position:relative;display:inline-grid;place-items:center;width:var(--page-header-menu-size);height:var(--page-header-menu-size);padding:0;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--ink);cursor:pointer;flex-shrink:0;transition:background .16s ease,border-color .16s ease}.menu-btn:hover,.menu-btn:focus-visible{border-color:#e8dcc859;outline:none}.nav-badge{position:absolute;top:-.28rem;right:-.28rem;min-width:1.1rem;height:1.1rem;padding:0 .28rem;border-radius:999px;display:inline-grid;place-items:center;font-size:.65rem;font-weight:800;line-height:1;color:#0b1c28;background:var(--accent-2);border:1.5px solid color-mix(in srgb,var(--card) 70%,#0b1c28);pointer-events:none}.side-menu-edge{position:fixed;top:0;right:0;bottom:0;width:24px;z-index:35;touch-action:pan-y;pointer-events:auto}.app-shell[data-play-focus="1"] .side-menu-edge{width:16px}.side-menu{position:fixed;inset:0;z-index:40;pointer-events:none;touch-action:pan-y}.side-menu.is-open{pointer-events:auto}.side-menu-overlay{appearance:none;position:absolute;inset:0;border:0;padding:0;margin:0;background:#08121e8c;opacity:0;transition:opacity .18s ease;cursor:pointer}.side-menu.is-open .side-menu-overlay{opacity:1}.side-menu-panel{position:absolute;top:0;right:0;height:100%;width:min(20rem,88vw);display:flex;flex-direction:column;gap:.75rem;padding:calc(1rem + var(--safe-top)) 1rem calc(1rem + var(--safe-bottom));background:linear-gradient(180deg,#1d4668fa,#0f2740fa);border-left:1px solid var(--border);box-shadow:-12px 0 40px #00000059;transform:translate(105%);transition:transform .2s ease}.side-menu.is-open .side-menu-panel{transform:translate(0)}.side-menu-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.side-menu-title{font-family:var(--font-display);font-size:1.15rem;margin:0}.side-menu-nav{display:flex;flex-direction:column;gap:.4rem;margin-top:.35rem}.side-menu-link{appearance:none;position:relative;display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;padding:.75rem .85rem;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer;font:inherit;text-decoration:none}.side-menu-link>.nav-badge{position:static;margin-left:auto;flex-shrink:0}.side-menu-link:hover,.side-menu-link:focus-visible{background:#ffffff0f;border-color:var(--border);outline:none}.side-menu-link.active{background:#3db8a01f;border-color:#3db8a047}.side-menu-link-icon{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;color:var(--accent);flex-shrink:0}.side-menu-link-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.side-menu-link-text strong{font-weight:700}.side-menu-logout{margin-top:.5rem;border-top:1px solid var(--border);border-radius:0 0 12px 12px;padding-top:1rem}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.3rem;border-radius:14px;border:1px solid var(--border);background:#0000002e}.auth-tab{appearance:none;border:0;border-radius:10px;padding:.65rem .75rem;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:600}.auth-tab.is-active{background:#3db8a029;color:var(--ink)}.auth-lede{margin:0}.auth-page{max-width:26rem}.hero{padding:.75rem 0 1.1rem}.hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(1.55rem,4.5vw,2.35rem);line-height:1.15;margin:0 0 .4rem}.hero p,.lede{color:var(--muted);max-width:36rem}.hero p{margin:0;font-size:.92rem}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.7rem}.btn{appearance:none;border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:12px;padding:.75rem 1.1rem;cursor:pointer;width:fit-content;align-self:start;transition:transform .16s ease,background .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px);border-color:#e8dcc859}.btn.primary{background:linear-gradient(135deg,var(--accent),#2f9a86);border-color:transparent;color:#06241e;font-weight:700}.btn.ghost{background:transparent}.btn.danger{background:#e0707026;border-color:#e0707059}.btn.icon{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.4rem .55rem;border-radius:10px;font-size:.85rem;line-height:1;background:transparent}.panel{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:1.1rem}.grid-games{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.main-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem}.main-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.05rem;border-radius:16px;border:1px solid var(--border);background:#ffffff0a;transition:transform .18s ease,border-color .18s ease}.main-card:hover{transform:translateY(-2px);border-color:#e8dcc859}.main-card-featured{background:linear-gradient(135deg,#3db8a029,#3db8a00a);border-color:#3db8a059}.main-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:12px;background:#ffffff14;color:var(--accent);flex-shrink:0}.main-card-copy{display:grid;gap:.15rem;min-width:0}.main-card-copy strong{font-family:var(--font-display);font-size:1.02rem}.main-card-copy .muted{font-size:.8rem}.game-logo{display:block;flex-shrink:0;border-radius:7px}.game-logo-sm{width:28px;height:28px}.game-logo-md{width:48px;height:48px}.game-logo-lg{width:68px;height:68px;border-radius:12px}.game-logo-xl{width:92px;height:92px;border-radius:14px}.game-link{--game-accent: var(--accent);--game-link-inset: .65rem;display:flex;flex-direction:column;gap:.3rem;padding:.65rem var(--game-link-inset) .75rem;overflow:hidden;border-radius:14px;border:1px solid var(--border);border-top:3px solid color-mix(in srgb,var(--game-accent) 55%,transparent);background:#ffffff0a;text-align:left;transition:transform .18s ease,border-color .18s ease}.game-link:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--game-accent) 55%,transparent)}.game-link-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.35rem;min-width:0}.game-link-title{margin:0;flex:1;min-width:0;text-align:left;font-family:var(--font-display);font-size:1rem;line-height:1.25}.game-link-body{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.45rem .55rem;margin-top:-.05rem}.game-link-logo{flex-shrink:0;width:48px;height:48px;border-radius:10px}.game-link-stats{display:flex;flex-direction:column;gap:.2rem;min-width:0}.game-link-stat{display:inline-flex;align-items:center;gap:.3rem;line-height:1.15;color:var(--muted)}.game-link-stat-icon{flex-shrink:0;width:18px;height:18px;color:color-mix(in srgb,var(--game-accent) 80%,var(--ink))}.game-link-stat-label{font-size:.8rem;font-weight:600;letter-spacing:.01em}.game-link-stat-value{color:var(--ink);font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:700}.game-link-stars{display:flex;align-items:center;justify-content:flex-start;gap:.05rem;color:color-mix(in srgb,var(--game-accent) 75%,var(--accent-2))}.game-link-star{display:block;flex-shrink:0;width:19px;height:19px}.game-link-desc{margin:0;color:var(--muted);font-size:.8rem;line-height:1.35;text-align:left;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.game-link-favorite{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin:-.2rem -.25rem 0 0;padding:0;border:none;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--ink) 55%,var(--muted));cursor:pointer;pointer-events:auto}.game-link-favorite:hover,.game-link-favorite:focus-visible{color:color-mix(in srgb,var(--game-accent) 70%,var(--ink));outline:none}.game-link-favorite:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent) 55%,transparent)}.game-link-favorite--on{color:var(--game-accent)}.game-link-favorite--on:hover,.game-link-favorite--on:focus-visible{color:color-mix(in srgb,var(--game-accent) 85%,var(--ink))}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-shell-title{display:flex;align-items:center;gap:.55rem;min-width:0}.game-shell{min-height:calc(100vh - 10rem);min-height:calc(100lvh - 10rem);display:flex;flex-direction:column;gap:.55rem}.game-shell-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.game-shell-heading{font-family:var(--font-display);margin:0 0 .1rem;font-size:var(--page-header-title-size);line-height:1.2}.game-shell-body{flex:1;min-height:0;display:flex}.game-shell-logo{width:var(--page-header-logo-size);height:var(--page-header-logo-size);flex-shrink:0}.game-shell-blurb{margin:0;font-size:.78rem;line-height:1.3}.game-play-layout{width:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.65rem}.game-play-hud{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.45rem;align-items:stretch;min-width:0}.game-shortcut-row{margin-top:0}.game-shortcut{--game-accent: var(--accent);display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border-radius:12px;border:1px solid var(--border);background:var(--card);transition:transform .16s ease,border-color .16s ease}.game-shortcut:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--game-accent) 55%,transparent)}.muted{color:var(--muted)}.idle-notice{color:var(--ink);font-size:1.15rem;font-weight:700;letter-spacing:.01em;line-height:1.35}.stage-scene-card h2.idle-notice{color:var(--ink);font-weight:650}.stack{display:grid;gap:.85rem}.game-stage{min-height:0;height:auto;display:grid;place-items:center;border-radius:18px;border:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.05),transparent),#0000002e;position:relative;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none}.target{width:100px;height:100px;border-radius:999px;background:radial-gradient(circle at 35% 30%,#fff6,transparent 45%),var(--accent-2);box-shadow:0 10px 30px #00000040;animation:pop-in .18s ease}.target.sm{width:64px;height:64px}.target.md{width:84px;height:84px}.target.lg{width:112px;height:112px}@keyframes pop-in{0%{transform:translate(-50%,-50%) scale(.6);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.numpad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;width:min(340px,100%)}.pad-btn{min-height:58px;border-radius:12px;border:1px solid var(--border);background:#ffffff0f;color:var(--ink);font-size:1.28rem;font-weight:600}.math-play-board{width:min(360px,100%);justify-items:center}.math-play-prompt{font-family:var(--font-display);font-size:clamp(2.1rem,6vw,2.55rem);line-height:1.1}.math-play-answer{font-size:clamp(1.7rem,4.5vw,2rem);min-height:2.2rem}.world-quiz-board{width:min(440px,100%);justify-items:stretch;gap:.85rem}.world-quiz-progress{text-align:center;font-size:.9rem;letter-spacing:.04em}.world-quiz-prompt{font-family:var(--font-display);font-size:clamp(1.4rem,4.6vw,1.75rem);line-height:1.35;text-align:center;text-wrap:balance}.world-quiz-choices{display:grid;gap:.65rem}.world-quiz-choice{border-radius:12px;border:1px solid var(--border);background:#ffffff0d;color:var(--ink);padding:1rem 1.1rem;font-size:clamp(1.1rem,3.6vw,1.25rem);line-height:1.35;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.world-quiz-choice:disabled{cursor:default}@media(hover:hover)and (pointer:fine){.world-quiz-choice:hover:not(:disabled){background:#ffffff17;border-color:color-mix(in srgb,var(--game-accent, #6b9fff) 55%,var(--border))}}.world-quiz-choice.is-correct{border-color:color-mix(in srgb,#3db8a0 70%,var(--border));background:color-mix(in srgb,#3db8a0 28%,transparent)}.world-quiz-choice.is-wrong{border-color:color-mix(in srgb,#e07070 70%,var(--border));background:color-mix(in srgb,#e07070 22%,transparent)}.stage-scene-footer{margin-top:.85rem;display:flex;justify-content:center}.stage-scene-footer.game-done-actions{flex-direction:column;align-items:stretch;gap:.55rem}.game-done-next-level{width:100%}.stat-row .world-quiz-lang{position:relative;display:flex;align-items:stretch;min-width:0;width:100%;height:100%;z-index:2}.stat.world-quiz-lang-trigger{appearance:none;width:100%;min-width:0;min-height:100%;margin:0;padding:.18rem .22rem .18rem .2rem;column-gap:.16rem;overflow:hidden;color:inherit;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease}.stat.world-quiz-lang-trigger .stat-label,.stat.world-quiz-lang-trigger .world-quiz-lang-code{justify-self:start;text-align:left}.stat.world-quiz-lang-trigger .world-quiz-lang-code{letter-spacing:.01em;font-size:clamp(.85rem,2.1vw,1.2rem);min-width:0;overflow:hidden;text-overflow:ellipsis}.world-quiz-lang-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 55%,var(--border));background:#ffffff14}.world-quiz-lang-trigger:active:not(:disabled){transform:scale(.98)}.world-quiz-lang-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent)) 75%,white);outline-offset:2px}.world-quiz-lang.is-open .world-quiz-lang-trigger{border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 55%,var(--border));background:#ffffff14}.world-quiz-lang-trigger:disabled,.world-quiz-lang.is-disabled .world-quiz-lang-trigger{cursor:default;opacity:.55}.world-quiz-lang-flag{display:block;font-size:clamp(.95rem,2.6vw,1.2rem);line-height:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.stat.world-quiz-lang-trigger .world-quiz-lang-flag{grid-column:1;grid-row:1 / -1;justify-self:start;align-self:center;box-sizing:border-box;width:2.35rem;max-width:2.35rem;min-width:0;height:2.85rem;display:grid;place-items:center;overflow:hidden;font-size:clamp(1.35rem,3.4vw,1.7rem)}.world-quiz-lang-menu{position:absolute;top:calc(100% + .35rem);right:0;left:auto;z-index:40;min-width:max(100%,10.5rem);margin:0;padding:.3rem;list-style:none;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--bg1) 92%,#0a1624);box-shadow:0 12px 28px #00000073}.world-quiz-lang-option{appearance:none;display:flex;align-items:center;gap:.55rem;width:100%;min-height:2.6rem;margin:0;padding:.35rem .55rem;border:0;border-radius:9px;background:transparent;color:var(--ink);font:inherit;font-size:.92rem;font-weight:600;text-align:left;cursor:pointer;transition:background .14s ease}.world-quiz-lang-option .world-quiz-lang-flag{font-size:1.25rem;flex-shrink:0}.world-quiz-lang-name{min-width:0;line-height:1.2}.world-quiz-lang-option:hover,.world-quiz-lang-option:focus-visible{outline:none;background:#ffffff14}.world-quiz-lang-option.is-active{background:color-mix(in srgb,var(--game-accent, var(--accent)) 22%,transparent)}.memory-grid{display:grid;gap:.7rem;width:min(380px,100%)}.memory-grid.n4{grid-template-columns:repeat(2,1fr)}.memory-grid.n6{grid-template-columns:repeat(3,1fr)}.memory-cell{aspect-ratio:1;border-radius:14px;border:1px solid var(--border);background:#ffffff0d;transition:background .12s ease,transform .12s ease}.memory-cell.lit{background:linear-gradient(135deg,var(--accent),#57d0ba);transform:scale(.98)}.memory-cell.active{outline:2px solid var(--sand)}.number-dash-play{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(420px,100%);max-height:100%;min-height:0;box-sizing:border-box}.number-dash-grid{display:grid;gap:.45rem;width:100%;min-height:0;touch-action:manipulation}.number-dash-rule{width:100%;margin:0 0 .65rem;flex-shrink:0;text-align:center;font-family:var(--font-display);font-size:clamp(.95rem,3.2vw,1.1rem);font-weight:600;color:color-mix(in srgb,var(--ink) 88%,var(--game-accent, var(--accent-2)));letter-spacing:.01em}.number-dash-rule-next{font-weight:500;color:var(--muted, color-mix(in srgb, var(--ink) 65%, transparent))}.number-dash-cell{appearance:none;aspect-ratio:1;min-width:0;min-height:0;width:100%;height:auto;border-radius:14px;border:1px solid var(--border);background:#ffffff0f;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.15rem,4.2vw,1.85rem);font-weight:650;cursor:pointer;transition:background .12s ease,transform .12s ease,opacity .12s ease,border-color .12s ease;-webkit-tap-highlight-color:transparent}.number-dash-cell.next{border-color:color-mix(in srgb,var(--game-accent, var(--accent-2)) 70%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--game-accent, var(--accent-2)) 35%,transparent)}.number-dash-cell.done{opacity:.28;cursor:default;transform:scale(.96)}.number-dash-cell:not(.done):active{transform:scale(.96);background:color-mix(in srgb,var(--game-accent, var(--accent)) 35%,transparent)}.game-stage.number-dash-wrong{animation:number-dash-shake .18s ease}.word-hunt-play{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;width:min(520px,100%);max-height:100%;min-height:0;box-sizing:border-box}.word-hunt-wordlist{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem .55rem;width:100%;flex-shrink:0;max-height:4.5rem;overflow:auto}.word-hunt-word{font-family:var(--font-display);font-size:clamp(.78rem,2.6vw,.95rem);font-weight:600;letter-spacing:.04em;color:color-mix(in srgb,var(--ink) 88%,transparent);padding:.15rem .35rem;border-radius:6px}.word-hunt-word.found{text-decoration:line-through;text-decoration-thickness:2px;color:var(--wh-word-color, var(--game-accent, var(--accent)));opacity:.72}.word-hunt-grid{display:grid;grid-template-columns:repeat(var(--wh-size, 8),1fr);gap:.2rem;width:min(100%,420px);aspect-ratio:1;max-height:min(100%,68dvh);touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair}.word-hunt-cell{display:grid;place-items:center;min-width:0;min-height:0;border-radius:8px;border:1px solid var(--border);background:#ffffff0d;color:var(--ink);font-family:var(--font-display);font-size:clamp(.7rem,2.8vw,1.15rem);font-weight:650;pointer-events:none;transition:background .1s ease,color .1s ease,border-color .1s ease}.word-hunt-cell.selected{background:color-mix(in srgb,var(--game-accent, var(--accent)) 42%,transparent);border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 70%,white)}.word-hunt-cell.found{background:color-mix(in srgb,var(--wh-cell-color, var(--game-accent)) 38%,transparent);border-color:color-mix(in srgb,var(--wh-cell-color, var(--game-accent)) 65%,white);color:color-mix(in srgb,var(--ink) 90%,var(--wh-cell-color, var(--game-accent)))}.word-hunt-hint{margin:0;flex-shrink:0;text-align:center;font-size:.9rem}.game-stage.word-hunt-wrong{animation:word-hunt-shake .18s ease}@keyframes word-hunt-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes number-dash-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.tray-puzzle-play{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.85rem;width:min(420px,100%);height:auto;max-height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.game-stage:has(.tray-puzzle-play){place-items:start center;align-content:start;padding:.55rem .55rem .7rem}.tray-puzzle-board{display:grid;gap:.45rem;width:min(100%,calc(min(52vh,340px) * var(--tray-board-aspect, 1)));flex:0 0 auto;min-height:0;aspect-ratio:var(--tray-board-aspect, 1);height:auto;max-width:100%;touch-action:none}.tray-puzzle-slot{appearance:none;position:relative;border-radius:12px;border:1px dashed color-mix(in srgb,var(--border) 80%,transparent);background:#ffffff08;padding:0;cursor:pointer;display:grid;place-items:center;min-width:0;min-height:0;-webkit-tap-highlight-color:transparent;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.tray-puzzle-slot.filled{border-style:solid;border-color:var(--border);background:#ffffff0f;cursor:default}.tray-puzzle-slot-ghost{display:grid;place-items:center;width:70%;height:70%;opacity:.22;pointer-events:none}.tray-puzzle-tray{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem;width:100%;padding:.55rem;border-radius:16px;border:1px solid var(--border);background:#0000002e;min-height:4.2rem;touch-action:none}.tray-puzzle-piece{appearance:none;width:clamp(2.6rem,12vw,3.35rem);height:clamp(2.6rem,12vw,3.35rem);border-radius:12px;border:1px solid var(--border);background:#ffffff0f;padding:.35rem;cursor:grab;display:grid;place-items:center;touch-action:none;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,opacity 80ms ease}.tray-puzzle-piece.selected{border-color:color-mix(in srgb,var(--game-accent, var(--accent-2)) 70%,white);box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent, var(--accent-2)) 35%,transparent);transform:translateY(-2px)}.tray-puzzle-piece.dragging{opacity:.35;cursor:grabbing}.tray-puzzle-shape{display:block;width:100%;height:100%;background:var(--piece-color, var(--game-accent, var(--accent)))}.tray-puzzle-shape-rect{border-radius:6px}.tray-puzzle-shape-circle{border-radius:50%}.tray-puzzle-shape-triangle{background:transparent;clip-path:polygon(50% 8%,92% 88%,8% 88%);background-color:var(--piece-color, var(--game-accent, var(--accent)))}.tray-puzzle-shape-diamond{border-radius:3px;transform:rotate(45deg) scale(.72)}.tray-puzzle-shape.ghost{opacity:1}.tray-puzzle-drag-ghost{position:fixed;z-index:80;width:clamp(2.6rem,12vw,3.35rem);height:clamp(2.6rem,12vw,3.35rem);padding:.35rem;border-radius:12px;border:1px solid var(--border);background:#0f2740eb;pointer-events:none;box-shadow:0 8px 24px #00000059;display:grid;place-items:center}.game-stage.tray-puzzle-wrong{animation:tray-puzzle-shake .18s ease}@keyframes tray-puzzle-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.tray-puzzle-piece:focus-visible,.tray-puzzle-slot:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent-2)) 75%,white);outline-offset:2px}.picture-puzzle-play{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.85rem;width:min(420px,100%);height:auto;max-height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.game-stage:has(.picture-puzzle-play){place-items:start center;align-content:start;padding:.55rem .55rem .7rem}.picture-puzzle-board{display:grid;gap:0;width:min(100%,calc(min(52vh,340px) * var(--pic-board-aspect, 1.333)));flex:0 0 auto;min-height:0;aspect-ratio:var(--pic-board-aspect, 1.333);height:auto;max-width:100%;touch-action:none;position:relative;isolation:isolate;overflow:hidden;border-radius:12px;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);background:#08122033;grid-auto-rows:minmax(0,1fr);grid-auto-columns:minmax(0,1fr)}.picture-puzzle-board-guide{position:absolute;inset:0;z-index:0;border-radius:0;background-size:100% 100%;background-repeat:no-repeat;background-position:0 0;opacity:.19;pointer-events:none;grid-column:1 / -1;grid-row:1 / -1}.picture-puzzle-toolbar{display:flex;justify-content:flex-end;width:100%;flex:0 0 auto}.picture-puzzle-preview-btn{color:var(--sand);border-color:color-mix(in srgb,var(--border) 85%,transparent);background:#0000002e}.picture-puzzle-preview-btn:hover{border-color:color-mix(in srgb,var(--game-accent, var(--accent-2)) 45%,var(--border))}.picture-puzzle-preview-btn svg{width:1.15rem;height:1.15rem}.picture-puzzle-preview-modal{width:min(36rem,100%);max-height:min(88dvh,640px);overflow:auto;padding:1rem 1.05rem 1.15rem;border-radius:18px;border:1px solid var(--border);background:linear-gradient(165deg,#1d4668fa,#0f2740fa);box-shadow:0 18px 48px #00000073;display:grid;gap:.85rem}.picture-puzzle-preview-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.picture-puzzle-preview-title{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:650;color:var(--sand);line-height:1.2}.picture-puzzle-preview-image{display:block;width:100%;height:auto;max-height:min(68dvh,520px);object-fit:contain;border-radius:12px;border:1px solid var(--border);background:#00000038}.picture-puzzle-slot{appearance:none;position:relative;z-index:1;border-radius:0;border:none;background:transparent;padding:0;cursor:pointer;display:grid;place-items:stretch;min-width:0;min-height:0;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:box-shadow .12s ease,background .12s ease}.picture-puzzle-slot:not(.filled):after{content:"";position:absolute;inset:3px;border-radius:4px;border:1px dashed color-mix(in srgb,var(--border) 70%,transparent);background:#0812201a;pointer-events:none}.picture-puzzle-slot.filled{cursor:default;background:transparent}.picture-puzzle-slot.hint:not(.filled):after{border-color:color-mix(in srgb,var(--game-accent, var(--accent-2)) 70%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--game-accent, var(--accent-2)) 35%,transparent);background:color-mix(in srgb,var(--game-accent, var(--accent-2)) 12%,transparent)}.picture-puzzle-slot-ghost{display:block;width:100%;height:100%;background:transparent}.picture-puzzle-tray{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem;width:100%;padding:.55rem;border-radius:16px;border:1px solid var(--border);background:#0000002e;min-height:4.2rem;touch-action:none}.picture-puzzle-piece{appearance:none;width:clamp(2.6rem,12vw,3.35rem);height:clamp(2.6rem,12vw,3.35rem);border-radius:10px;border:1px solid var(--border);background:#ffffff0f;padding:0;cursor:grab;display:grid;place-items:stretch;overflow:hidden;touch-action:none;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,opacity 80ms ease}.picture-puzzle-piece.selected{border-color:color-mix(in srgb,var(--game-accent, var(--accent-2)) 70%,white);box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent, var(--accent-2)) 35%,transparent)}.picture-puzzle-piece.dragging{opacity:.25}.picture-puzzle-face{display:block;width:100%;height:100%;min-width:0;min-height:0;background-repeat:no-repeat;background-origin:padding-box;background-clip:padding-box}.picture-puzzle-drag-ghost{position:fixed;z-index:40;width:clamp(2.6rem,12vw,3.35rem);height:clamp(2.6rem,12vw,3.35rem);border-radius:10px;overflow:hidden;pointer-events:none;transform:scale(1.85);transition:transform 80ms ease;box-shadow:0 14px 36px #0000008c}.game-stage.picture-puzzle-wrong{animation:picture-puzzle-shake .18s ease}@keyframes picture-puzzle-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.picture-puzzle-piece:focus-visible,.picture-puzzle-slot:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent-2)) 75%,white);outline-offset:2px}.game-stage:has(.connect-dots-canvas){padding:.5rem;place-items:center}.connect-dots-canvas{position:relative;width:min(100%,min(70vh,560px));max-height:min(70vh,560px);aspect-ratio:1;border-radius:14px;border:1px solid var(--border);background:radial-gradient(circle at 18% 20%,rgba(61,184,160,.1),transparent 42%),radial-gradient(circle at 82% 78%,rgba(240,160,90,.1),transparent 40%),#ffffff09;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:crosshair;overflow:hidden}.connect-dots-svg{display:block;width:100%;height:100%;pointer-events:none}.connect-dots-stroke{stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.92}.connect-dots-stroke-draft{opacity:.78;stroke-dasharray:none}.connect-dots-endpoint{stroke:color-mix(in srgb,white 35%,transparent);stroke-width:.55;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 1.2px color-mix(in srgb,currentColor 40%,transparent))}.connect-dots-endpoint.done{opacity:.95;stroke:color-mix(in srgb,white 55%,transparent)}.connect-dots-hint{position:absolute;left:.65rem;right:.65rem;bottom:.5rem;margin:0;text-align:center;font-size:.78rem;pointer-events:none;text-shadow:0 1px 8px rgba(0,0,0,.45)}.game-stage.connect-dots-wrong{animation:connect-dots-shake .18s ease}@keyframes connect-dots-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.level-list{display:flex;flex-wrap:wrap;gap:.45rem}.level-chip{appearance:none;display:flex;flex-direction:row;align-items:center;gap:.4rem;flex:1 1 0;min-width:6.5rem;padding:.4rem .55rem;min-height:0;border-radius:14px;border:1px solid var(--border);background:#ffffff0a;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.level-chip:hover{border-color:color-mix(in srgb,var(--game-accent) 40%,transparent);transform:translateY(-1px)}.level-chip.is-selected{border-color:color-mix(in srgb,var(--game-accent) 70%,transparent);background:color-mix(in srgb,var(--game-accent) 14%,transparent)}.level-chip-icon-wrap{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:8px;background:#ffffff12;color:var(--game-accent, var(--accent));flex-shrink:0}.level-chip-icon-wrap .level-icon{width:1rem;height:1rem}.level-chip-index{display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:6px;background:#ffffff14;font-size:.72rem;font-weight:700;flex-shrink:0}.level-chip-index.is-completed{background:color-mix(in srgb,var(--game-accent) 75%,#06241e);color:#06241e}.level-chip-label{display:flex;flex-direction:row;align-items:center;gap:.35rem;min-width:0;width:100%}.level-icon{flex-shrink:0;width:1rem;height:1rem;color:var(--game-accent, var(--accent))}.level-chip-name{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600}.level-chip-meta{display:flex;align-items:center;justify-content:flex-start;gap:.25rem;flex-shrink:0;width:auto}.level-chip-score{color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums;flex-shrink:0}.level-active-bar{display:flex;align-items:center;gap:.5rem;padding:.35rem .55rem;min-height:2.25rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--game-accent, var(--accent)) 45%,transparent);background:color-mix(in srgb,var(--game-accent, var(--accent)) 10%,transparent)}.level-active-bar .level-chip-label{flex:1;flex-direction:row;align-items:center;gap:.35rem;width:auto;text-align:left}.level-active-bar .level-icon{width:1rem;height:1rem}.list-row{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.8rem .95rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a}.list-row-main{display:inline-flex;align-items:center;gap:.55rem;min-width:0}.list-row-logo{width:22px;height:22px}.app-shell[data-coarse="1"] .level-chip{min-height:0;padding-block:.55rem}.app-shell[data-coarse="1"] .level-active-bar{min-height:2.5rem}.stat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.45rem}.stat{min-width:0;padding:.18rem .35rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:.28rem;row-gap:0}button.hud-stat{width:100%;margin:0;font:inherit;color:inherit;text-align:inherit;appearance:none;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease}button.hud-stat:hover{border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 55%,var(--border));background:#ffffff14}button.hud-stat:active{transform:scale(.98)}button.hud-stat:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent)) 75%,white);outline-offset:2px}.stat>svg{grid-column:1;grid-row:1 / -1;width:2.85rem;height:2.85rem;align-self:center;color:var(--game-accent, var(--accent))}.stat-label{grid-column:2;grid-row:1;align-self:end;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.1;text-align:center;min-width:0;white-space:nowrap}.stat strong{grid-column:2;grid-row:2;align-self:start;display:block;font-size:clamp(.95rem,2.4vw,1.4rem);font-family:var(--font-display);font-variant-numeric:tabular-nums;line-height:1.15;text-align:center;min-width:0;overflow:hidden;text-overflow:ellipsis}.game-controls-row{min-width:0}.game-hud-level{position:relative;min-height:100%}.game-hud-level:has(.game-session-status) .game-controls-level{opacity:.32;filter:saturate(.6)}.game-controls-level{min-width:0;height:100%;min-height:5.85rem;padding:.4rem .55rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;display:flex;flex-direction:column;justify-content:center;gap:.25rem}.level-picker-row{display:flex;align-items:center;gap:.45rem;min-width:0}.level-picker-row--single .level-single-name{flex:1;min-width:0;font-weight:600;font-size:.95rem}.level-picker-row .level-picker{flex:1;min-width:0}.level-detail-row{display:flex;align-items:flex-start;gap:.5rem;min-width:0}.level-detail-row>.level-icon,.level-detail-row>.level-icon-placeholder{width:2.75rem;height:2.75rem;flex-shrink:0}.level-icon-placeholder{display:block;border-radius:10px;background:#ffffff0f}.level-picker{position:relative}.level-picker-trigger{width:100%;display:flex;align-items:center;gap:.35rem;padding:.28rem .45rem;border-radius:10px;border:1px solid var(--border);background:#0003;color:var(--ink);cursor:pointer;text-align:left;font-size:.78rem}.level-picker-trigger span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-picker-menu{position:absolute;z-index:10;top:calc(100% + .35rem);left:0;right:0;max-height:16rem;overflow:auto;padding:.3rem;border:1px solid var(--border);border-radius:12px;background:#163652;box-shadow:0 12px 30px #00000059}.level-picker-option{width:100%;display:flex;align-items:center;gap:.45rem;padding:.4rem;border:0;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer;text-align:left;font-size:.8rem}.level-picker-option[aria-selected=true],.level-picker-option:hover:not(:disabled){background:color-mix(in srgb,var(--game-accent) 16%,transparent)}.level-picker-option.is-locked{opacity:.55;cursor:not-allowed}.level-picker-option.is-endless:not(.is-locked) strong{color:color-mix(in srgb,var(--game-accent) 70%,var(--ink))}.level-picker-option-copy{display:grid;gap:.1rem;min-width:0}.level-picker-option-copy strong{font-size:.8rem}.level-picker-option small{color:var(--muted);font-size:.66rem}.level-info-name{flex-shrink:0;font-weight:700;font-size:.95rem;letter-spacing:.01em}.level-summary{margin:0;font-size:.72rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-width:0;flex:1;min-height:calc(.72rem * 1.25 * 3)}.level-summary-trigger{color:inherit;background:none;border:none;padding:0;text-align:left;cursor:pointer;border-radius:4px}.level-summary-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html[data-ui-lock="1"] .app-shell{pointer-events:none}html[data-ui-lock="1"] .level-desc-overlay,html[data-ui-lock="1"] .hud-help-overlay{pointer-events:auto}.level-desc-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:1.25rem;background:#081220b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;touch-action:none}.level-desc-modal{width:min(32rem,100%);max-height:min(85dvh,560px);overflow:auto;padding:1.45rem 1.5rem 1.55rem;border-radius:18px;border:1px solid var(--border);background:linear-gradient(165deg,#1d4668fa,#0f2740fa);box-shadow:0 18px 48px #00000073;display:grid;gap:.75rem;justify-items:start}.level-desc-modal-title{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:650;color:var(--sand);line-height:1.2}.level-desc-modal-text{margin:0;font-size:1.28rem;line-height:1.45;color:var(--ink)}.level-desc-modal-icon .level-icon{width:2.35rem;height:2.35rem}.level-desc-modal-tip{margin:.1rem 0 0;padding:.65rem .8rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--game-accent, var(--accent)) 35%,var(--border));background:color-mix(in srgb,var(--game-accent, var(--accent)) 12%,transparent);font-size:1.12rem;line-height:1.45;color:var(--ink)}.level-how-to-demo{width:100%;margin:.1rem 0;display:grid;gap:.35rem;pointer-events:none}.level-how-to-demo-stage{height:8rem;overflow:hidden;border:1px solid color-mix(in srgb,var(--game-accent, var(--accent)) 34%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--game-accent, var(--accent)) 8%,rgba(5,19,34,.48))}.level-how-to-demo svg{display:block;width:100%;height:100%}.level-how-to-demo figcaption{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.level-how-to-demo .demo-board,.level-how-to-demo .demo-tray{fill:#ffffff14;stroke:color-mix(in srgb,var(--game-accent, var(--accent)) 55%,transparent);stroke-width:1.5}.level-how-to-demo .demo-slot{fill:color-mix(in srgb,var(--game-accent, var(--accent)) 20%,transparent);stroke:var(--game-accent, var(--accent));stroke-width:1.5}.level-how-to-demo .demo-moving-shape,.level-how-to-demo .demo-target{fill:var(--game-accent, var(--accent))}.level-how-to-demo text{fill:var(--ink);font-family:var(--font-body);font-size:10px;font-weight:700;text-anchor:middle}.level-how-to-demo .demo-moving-shape{animation:demo-slide-shape 6s ease-in-out infinite}.level-how-to-demo .demo-question{font-size:11px}.level-how-to-demo--number-dash .demo-dash-label{fill:var(--muted);font-size:9px;animation:demo-dash-label 6s linear infinite}.level-how-to-demo--number-dash .demo-dash-cell rect{fill:#ffffff12;stroke:var(--border);stroke-width:1}.level-how-to-demo--number-dash .demo-dash-cell--1,.level-how-to-demo--number-dash .demo-dash-cell--2,.level-how-to-demo--number-dash .demo-dash-cell--3{animation:demo-dash-done 6s ease-in-out infinite}.level-how-to-demo--number-dash .demo-dash-cell--2{animation-delay:.55s}.level-how-to-demo--number-dash .demo-dash-cell--3{animation-delay:1.1s}.level-how-to-demo--number-dash .demo-dash-cell--1 rect,.level-how-to-demo--number-dash .demo-dash-cell--2 rect,.level-how-to-demo--number-dash .demo-dash-cell--3 rect{animation:demo-dash-cell-fill 6s ease-in-out infinite}.level-how-to-demo--number-dash .demo-dash-cell--2 rect{animation-delay:.55s}.level-how-to-demo--number-dash .demo-dash-cell--3 rect{animation-delay:1.1s}.level-how-to-demo--number-dash .demo-dash-cell--4 rect{animation:demo-dash-next 6s ease-in-out infinite}.level-how-to-demo--picture-puzzle .demo-picture-board,.level-how-to-demo--picture-puzzle .demo-picture-tray{fill:#ffffff0e;stroke:color-mix(in srgb,var(--game-accent, var(--accent)) 50%,var(--border));stroke-width:1.2}.level-how-to-demo--picture-puzzle .demo-picture-slot rect{fill:color-mix(in srgb,var(--game-accent, var(--accent)) 10%,transparent);stroke:color-mix(in srgb,var(--game-accent, var(--accent)) 62%,transparent);stroke-dasharray:3 2}.level-how-to-demo--picture-puzzle .demo-picture-slot path{opacity:.17}.level-how-to-demo--picture-puzzle .demo-picture-piece rect{fill:#527c8d;stroke:#ffffffb8;stroke-width:.7}.level-how-to-demo--picture-puzzle .demo-picture-piece path{fill:#efae61}.level-how-to-demo--picture-puzzle .demo-picture-piece--still path{fill:#5bc2a7}.level-how-to-demo--picture-puzzle .demo-picture-piece--last path{fill:#c57da4}.level-how-to-demo--picture-puzzle .demo-picture-piece--moving{animation:demo-picture-place 6s ease-in-out infinite}.level-how-to-demo--picture-puzzle .demo-picture-slot--1{animation:demo-picture-filled-slot 6s ease-in-out infinite}.level-how-to-demo--connect-dots .demo-connect-board{fill:#ffffff09;stroke:var(--border);stroke-width:1.2}.level-how-to-demo--connect-dots .demo-connect-solid,.level-how-to-demo--connect-dots .demo-connect-line,.level-how-to-demo--connect-dots .demo-connect-draft{fill:none;stroke-linecap:round;stroke-width:3.2}.level-how-to-demo--connect-dots .demo-connect-solid--teal{stroke:#3db8a0}.level-how-to-demo--connect-dots .demo-connect-draft{stroke:#f0a05a;stroke-dasharray:4 4;animation:demo-connect-draft 6s linear infinite}.level-how-to-demo--connect-dots .demo-connect-line--orange{stroke:#f0a05a;stroke-dasharray:90;animation:demo-connect-draw 6s ease-in-out infinite}.level-how-to-demo--connect-dots .demo-connect-dot--teal{fill:#3db8a0}.level-how-to-demo--connect-dots .demo-connect-dot--orange{fill:#f0a05a}.level-how-to-demo--pattern-memory .demo-memory-label{fill:var(--muted);font-size:9px;animation:demo-memory-label 6s linear infinite}.level-how-to-demo--pattern-memory .demo-memory-pad{fill:#ffffff16;stroke:color-mix(in srgb,var(--game-accent, var(--accent)) 40%,var(--border));stroke-width:1.2}.level-how-to-demo--pattern-memory .demo-memory-pad--0{animation:demo-memory-zero 6s ease-in-out infinite}.level-how-to-demo--pattern-memory .demo-memory-pad--3{animation:demo-memory-three 6s ease-in-out infinite}.level-how-to-demo--pattern-memory .demo-memory-pad--1{animation:demo-memory-one 6s ease-in-out infinite}.level-how-to-demo--math-sprint .demo-math-equation,.level-how-to-demo--math-sprint .demo-math-answer{font-size:15px}.level-how-to-demo--math-sprint .demo-math-answer{animation:demo-math-answer 6s ease-in-out infinite}.level-how-to-demo--math-sprint .demo-math-answer-line{stroke:var(--muted);stroke-width:1}.level-how-to-demo--math-sprint .demo-math-key rect{fill:#ffffff14;stroke:var(--border);stroke-width:.8}.level-how-to-demo--math-sprint .demo-math-key text{font-size:7px}.level-how-to-demo--math-sprint .demo-math-key--nine{animation:demo-math-nine 6s ease-in-out infinite}.level-how-to-demo--math-sprint .demo-math-key--ok{animation:demo-math-ok 6s ease-in-out infinite}.level-how-to-demo--reaction-tap .demo-reaction-stage{fill:#ffffff09;stroke:var(--border);stroke-width:1.2}.level-how-to-demo--reaction-tap .demo-reaction-wait{fill:var(--muted);font-size:11px;animation:demo-reaction-wait 6s linear infinite}.level-how-to-demo--reaction-tap .demo-reaction-target{fill:var(--game-accent, var(--accent))}.level-how-to-demo--reaction-tap .demo-reaction-target--one{transform-origin:165px 37px;animation:demo-reaction-one 6s ease-in-out infinite}.level-how-to-demo--reaction-tap .demo-reaction-target--two{transform-origin:79px 72px;animation:demo-reaction-two 6s ease-in-out infinite}.level-how-to-demo--reaction-tap .demo-reaction-tap{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;animation:demo-reaction-tap 6s ease-in-out infinite}.level-how-to-demo--world-quiz .demo-quiz-choice-bg{fill:#ffffff0d;stroke:var(--border);stroke-width:1}.level-how-to-demo--world-quiz .demo-quiz-choice-label{fill:var(--ink);font-size:9.5px;font-weight:650;text-anchor:start}.level-how-to-demo--world-quiz .demo-quiz-check{stroke:#3db8a0;opacity:0}.level-how-to-demo--world-quiz .demo-quiz-choice--correct .demo-quiz-choice-bg{animation:demo-quiz-mark-correct 6s ease-in-out infinite}.level-how-to-demo--world-quiz .demo-quiz-choice--correct .demo-quiz-check{animation:demo-quiz-check-in 6s ease-in-out infinite}.level-how-to-demo--world-quiz .demo-quiz-choice:not(.demo-quiz-choice--correct){animation:demo-quiz-idle 6s ease-in-out infinite}.level-how-to-demo--word-hunt .demo-wh-cell rect{fill:#ffffff0f;stroke:var(--border);stroke-width:1}.level-how-to-demo--word-hunt .demo-wh-cell text{fill:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:700;text-anchor:middle}.level-how-to-demo--word-hunt .demo-wh-cell--hit rect{fill:color-mix(in srgb,#3db8a0 40%,transparent);stroke:#3db8a0}.level-how-to-demo--word-hunt .demo-wh-stroke{fill:none;stroke:#3db8a0;stroke-width:3;stroke-linecap:round;stroke-dasharray:60;animation:demo-wh-draw 4s ease-in-out infinite}@keyframes demo-wh-draw{0%,15%{stroke-dashoffset:60;opacity:.2}40%,70%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:.85}}@keyframes demo-flash{0%,10%,to{opacity:.3}4%,7%{opacity:1;filter:drop-shadow(0 0 5px var(--game-accent, var(--accent)))}}@keyframes demo-slide-shape{0%,15%{transform:translate(42px,42px);opacity:1}46%,72%{transform:translate(150px,37px);opacity:1}82%,to{transform:translate(150px,37px);opacity:0}}@keyframes demo-dash-label{0%,18%{opacity:1}25%,to{opacity:.56}}@keyframes demo-dash-done{0%,16%{opacity:1}25%,78%{opacity:.55}90%,to{opacity:1}}@keyframes demo-dash-cell-fill{0%,16%,to{fill:#ffffff12;stroke:var(--border)}25%,78%{fill:color-mix(in srgb,#3db8a0 42%,transparent);stroke:#3db8a0}}@keyframes demo-dash-next{0%,26%,to{stroke:var(--border);stroke-width:1}34%,72%{stroke:var(--game-accent, var(--accent));stroke-width:2.2}}@keyframes demo-picture-place{0%,22%{transform:translate(71px,76px);opacity:1}49%,80%{transform:translate(169px,16px);opacity:1}91%,to{transform:translate(169px,16px);opacity:0}}@keyframes demo-picture-filled-slot{0%,43%{opacity:1}50%,82%{opacity:.05}91%,to{opacity:1}}@keyframes demo-connect-draft{0%,20%,to{opacity:0;stroke-dashoffset:0}30%,53%{opacity:.8;stroke-dashoffset:-20}60%,76%{opacity:0}}@keyframes demo-connect-draw{0%,43%{stroke-dashoffset:90;opacity:0}60%,80%{stroke-dashoffset:0;opacity:1}92%,to{stroke-dashoffset:0;opacity:0}}@keyframes demo-memory-label{0%,50%{opacity:1}58%,83%{opacity:.55}to{opacity:1}}@keyframes demo-memory-zero{0%,7%,51%,58%,to{fill:#ffffff16}12%,19%,63%,70%{fill:var(--game-accent, var(--accent))}}@keyframes demo-memory-three{0%,20%,64%,71%,to{fill:#ffffff16}25%,32%,76%,83%{fill:var(--game-accent, var(--accent))}}@keyframes demo-memory-one{0%,33%,77%,84%,to{fill:#ffffff16}38%,45%,89%,96%{fill:var(--game-accent, var(--accent))}}@keyframes demo-math-answer{0%,35%{opacity:.28}43%,82%{opacity:1}94%,to{opacity:.28}}@keyframes demo-math-nine{0%,32%,to{transform:translate(137px,68px)}39%,46%{transform:translate(137px,70px)}}@keyframes demo-math-ok{0%,46%,to{transform:translate(137px,83px)}54%,72%{transform:translate(137px,85px)}}@keyframes demo-reaction-wait{0%,25%,83%,to{opacity:1}32%,76%{opacity:0}}@keyframes demo-reaction-one{0%,25%,to{opacity:0;transform:scale(.2)}33%,56%{opacity:1;transform:scale(1)}63%,to{opacity:0;transform:scale(.2)}}@keyframes demo-reaction-two{0%,59%,to{opacity:0;transform:scale(.2)}67%,87%{opacity:1;transform:scale(1)}94%,to{opacity:0;transform:scale(.2)}}@keyframes demo-reaction-tap{0%,35%,56%,to{opacity:0}41%,50%{opacity:1}}@keyframes demo-quiz-idle{0%,to{opacity:1}38%,78%{opacity:.55}}@keyframes demo-quiz-mark-correct{0%,32%{fill:#ffffff0d;stroke:var(--border)}38%,78%{fill:color-mix(in srgb,#3db8a0 28%,transparent);stroke:color-mix(in srgb,#3db8a0 70%,var(--border))}88%,to{fill:#ffffff0d;stroke:var(--border)}}@keyframes demo-quiz-check-in{0%,36%{opacity:0}42%,78%{opacity:1}88%,to{opacity:0}}@media(prefers-reduced-motion:reduce){.level-how-to-demo *{animation:none!important}.level-how-to-demo .demo-moving-shape,.level-how-to-demo--number-dash .demo-dash-cell--1,.level-how-to-demo--number-dash .demo-dash-cell--2,.level-how-to-demo--number-dash .demo-dash-cell--3{opacity:1}.level-how-to-demo .demo-moving-shape{transform:translate(150px,37px)}.level-how-to-demo--picture-puzzle .demo-picture-piece--moving{transform:translate(169px,16px);opacity:1}.level-how-to-demo--picture-puzzle .demo-picture-slot--1{opacity:.05}.level-how-to-demo--connect-dots .demo-connect-draft{opacity:0}.level-how-to-demo--connect-dots .demo-connect-line--orange{stroke-dashoffset:0;opacity:1}.level-how-to-demo--pattern-memory .demo-memory-pad--0,.level-how-to-demo--pattern-memory .demo-memory-pad--1,.level-how-to-demo--pattern-memory .demo-memory-pad--3{fill:var(--game-accent, var(--accent))}.level-how-to-demo--math-sprint .demo-math-answer{opacity:1}.level-how-to-demo--reaction-tap .demo-reaction-wait,.level-how-to-demo--reaction-tap .demo-reaction-target--two,.level-how-to-demo--reaction-tap .demo-reaction-tap{opacity:0}.level-how-to-demo--reaction-tap .demo-reaction-target--one{opacity:1;transform:scale(1)}.level-how-to-demo--world-quiz .demo-quiz-choice--correct .demo-quiz-choice-bg{fill:color-mix(in srgb,#3db8a0 28%,transparent);stroke:color-mix(in srgb,#3db8a0 70%,var(--border))}.level-how-to-demo--world-quiz .demo-quiz-choice--correct .demo-quiz-check{opacity:1}}.hud-help-modal{width:min(32rem,100%);max-height:min(85dvh,560px);overflow:auto;padding:1.45rem 1.5rem 1.55rem;border-radius:18px;border:1px solid var(--border);background:linear-gradient(165deg,#1d4668fa,#0f2740fa);box-shadow:0 18px 48px #00000073;display:grid;gap:.75rem;justify-items:start}.hud-help-modal-icon{display:grid;place-items:center;width:3.75rem;height:3.75rem;border-radius:14px;background:#ffffff0f;border:1px solid var(--border);color:var(--game-accent, var(--accent))}.hud-help-modal-icon svg{width:2.35rem;height:2.35rem}.hud-help-modal-title{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:650;color:var(--sand);line-height:1.2}.hud-help-modal-lead{margin:0;font-size:1.28rem;line-height:1.45;color:var(--ink)}.hud-help-modal-bullets{margin:.15rem 0 0;padding-left:1.25rem;display:grid;gap:.55rem;font-size:1.18rem;line-height:1.45;color:var(--ink)}.hud-help-modal-bullets li::marker{color:var(--game-accent, var(--accent))}.hud-rank-modal{width:min(36rem,100%);max-height:min(90dvh,720px);overflow:hidden;padding:0;display:flex;flex-direction:column;gap:0;justify-items:stretch;touch-action:auto}.level-desc-overlay:has(.hud-rank-modal){touch-action:auto}.hud-rank-modal-chrome{flex-shrink:0;display:grid;gap:.65rem;padding:1.25rem 1.35rem .85rem;border-bottom:1px solid var(--border)}.hud-rank-modal-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem .85rem;align-items:start;width:100%}.hud-rank-modal-heading{display:grid;gap:.35rem;min-width:0}.hud-rank-modal-heading .hud-help-modal-lead{font-size:1.05rem}.hud-rank-modal-close{width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid var(--border);background:#ffffff0f;color:var(--sand);display:grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0}.hud-rank-modal-close:hover,.hud-rank-modal-close:focus-visible{border-color:var(--game-accent, var(--accent));outline:none}.hud-rank-info-strip{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;gap:.35rem;width:100%}.hud-rank-info-chip{display:flex;flex-direction:row;flex:1 1 0;gap:.35rem;align-items:center;min-width:0;padding:.4rem .45rem;border-radius:8px;border:1px solid var(--border);background:#ffffff0a;overflow:hidden}.hud-rank-info-chip-icon{display:grid;place-items:center;flex-shrink:0;width:1.55rem;height:1.55rem;border-radius:6px;background:color-mix(in srgb,var(--game-accent, var(--accent)) 14%,transparent);border:1px solid color-mix(in srgb,var(--game-accent, var(--accent)) 32%,var(--border));color:var(--game-accent, var(--accent))}.hud-rank-info-chip-icon svg{width:.95rem;height:.95rem}.hud-rank-info-chip-text{display:grid;gap:.05rem;min-width:0;overflow:hidden}.hud-rank-info-chip-text strong{font-size:.72rem;font-weight:700;color:var(--sand);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-rank-info-chip-text span{font-size:.62rem;line-height:1.2;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-rank-status-strip{margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:100%}.hud-rank-status-metric{min-width:0;display:grid;gap:.15rem}.hud-rank-status-metric dt{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.hud-rank-status-metric dd{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--sand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:420px){.hud-rank-info-strip{gap:.28rem}.hud-rank-info-chip{flex-direction:row;align-items:center;gap:.28rem;padding:.34rem .32rem}.hud-rank-info-chip-icon{width:1.35rem;height:1.35rem;border-radius:5px}.hud-rank-info-chip-icon svg{width:.82rem;height:.82rem}.hud-rank-info-chip-text strong{font-size:.68rem}.hud-rank-info-chip-text span{display:block;font-size:.55rem}}.hud-rank-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:.75rem 1.15rem 1.15rem;display:grid;gap:.55rem;align-content:start;width:100%}.hud-rank-me-bar{flex-shrink:0;padding:.55rem 1.15rem .85rem;border-top:1px solid rgba(61,184,160,.35);background:color-mix(in srgb,var(--bg1) 92%,#0a1a28);display:grid;gap:.25rem;width:100%}@media(max-width:540px){.hud-rank-modal{max-height:min(92dvh,720px)}.hud-rank-modal-chrome{padding:1.1rem 1rem .85rem}.hud-rank-modal-body{padding:.65rem .85rem 1rem}.hud-rank-modal-heading .hud-help-modal-title{font-size:1.28rem}.hud-rank-modal-heading .hud-help-modal-lead{font-size:.98rem}}.game-start-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:100%;min-height:100%;align-self:stretch;white-space:nowrap;font-size:1.2rem}.game-start-action svg{width:1.65rem;height:1.65rem}.game-session-status{position:absolute;inset:0;z-index:2;display:grid;place-items:center;min-width:0;padding:.55rem .75rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--game-accent, var(--accent)) 52%,white);background:color-mix(in srgb,var(--game-accent, var(--accent)) 32%,rgba(8,12,22,.88));box-shadow:inset 0 1px #ffffff24;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;font-size:.98rem;font-weight:700;text-align:center;line-height:1.25;text-shadow:0 1px 2px rgba(0,0,0,.6);pointer-events:auto}.game-session-status strong{font-size:1.05rem;letter-spacing:.01em}.game-session-stop{cursor:pointer;grid-template-columns:auto auto;gap:.4rem;border:1px solid color-mix(in srgb,var(--danger, #e05d6f) 62%,white)}.game-session-stop-label{display:inline-flex;align-items:center;gap:.3rem}.game-session-stop-label svg{width:.9rem;height:.9rem;color:color-mix(in srgb,var(--danger, #e05d6f) 80%,white)}.game-session-stop strong{color:color-mix(in srgb,var(--danger, #e05d6f) 80%,white)}.game-session-stop:hover{background:color-mix(in srgb,var(--danger, #e05d6f) 35%,rgba(8,12,22,.9))}@media(max-width:560px){.game-session-status{font-size:.92rem}}.btn:focus-visible,.level-picker-trigger:focus-visible,.level-picker-option:focus-visible,.pad-btn:focus-visible,.memory-cell:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent)) 75%,white);outline-offset:2px}.number-dash-cell:focus-visible{outline:3px solid color-mix(in srgb,var(--game-accent, var(--accent-2)) 75%,white);outline-offset:2px}.btn:disabled,.level-picker-trigger:disabled{opacity:.6;cursor:not-allowed;transform:none}.game-stage-frozen{pointer-events:none;-webkit-user-select:none;user-select:none}.game-done-overlay{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:1rem;box-sizing:border-box;pointer-events:auto}.game-done-scrim{position:absolute;inset:0;background:#060e1a85;backdrop-filter:grayscale(.35) brightness(.88);-webkit-backdrop-filter:grayscale(.35) brightness(.88);pointer-events:none}.game-done-card{position:relative;z-index:1;background:#0c1c2eeb;box-shadow:0 12px 36px #00000059}.game-stage-scene{width:100%;height:100%;display:grid;place-items:center;padding:1rem;position:relative;isolation:isolate}.stage-scene-card{z-index:1;width:min(28rem,100%);min-height:14.5rem;padding:1.35rem;border:1px solid color-mix(in srgb,var(--game-accent) 35%,var(--border));border-radius:16px;background:#0f2740c7;text-align:center;box-sizing:border-box}.stage-scene-icon-slot{width:2.5rem;height:2.5rem;margin:0 auto .4rem;display:grid;place-items:center}.stage-scene-icon{width:2.5rem;height:2.5rem;margin:0}.stage-scene-eyebrow{margin:0;color:var(--game-accent);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stage-scene-card h2{margin:.3rem 0 .4rem;font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.8rem);min-height:2.4em;line-height:1.2}.stage-scene-card p{margin:.3rem 0}.stage-scene-summary{font-size:.8rem;color:var(--sand);min-height:2.5em;line-height:1.25}.stage-decoration{position:absolute;inset:0;overflow:hidden;pointer-events:none}.stage-decoration i{position:absolute;display:grid;place-items:center;font-style:normal;color:var(--game-accent);opacity:.22}.game-stage-scene-math-sprint .stage-decoration i{font-size:3rem}.game-stage-scene-math-sprint .stage-decoration i:nth-child(1){top:15%;left:14%}.game-stage-scene-math-sprint .stage-decoration i:nth-child(2){right:14%;bottom:18%}.game-stage-scene-math-sprint .stage-decoration i:nth-child(3){right:19%;top:16%}.game-stage-scene-reaction-tap .stage-decoration i{border:2px solid var(--accent-2);border-radius:50%;width:10rem;height:10rem;left:50%;top:50%;transform:translate(-50%,-50%)}.game-stage-scene-reaction-tap .stage-decoration i:nth-child(2){width:16rem;height:16rem;opacity:.13}.game-stage-scene-reaction-tap .stage-decoration i:nth-child(3){width:23rem;height:23rem;opacity:.08}.game-stage-scene-pattern-memory .stage-decoration{display:grid;grid-template-columns:repeat(2,5rem);grid-template-rows:repeat(2,5rem);gap:.8rem;justify-content:center;align-content:center;opacity:.18}.game-stage-scene-pattern-memory .stage-decoration i{position:static;border-radius:12px;background:var(--game-accent)}.game-stage-scene-number-dash .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-number-dash .stage-decoration i{position:static;border-radius:12px;background:#ffffff0f;border:1px solid var(--border);display:grid;place-items:center;font-style:normal;font-family:var(--font-display);font-size:1.4rem;font-weight:650;color:var(--sand)}.game-stage-scene-number-dash .stage-decoration i:nth-child(2){background:color-mix(in srgb,var(--accent-2) 55%,transparent);color:var(--bg0)}.game-stage-scene-tray-puzzle .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-tray-puzzle .stage-decoration i{position:static;border-radius:12px;background:color-mix(in srgb,var(--game-accent, #6b9fff) 45%,transparent);border:1px dashed var(--border)}.game-stage-scene-tray-puzzle .stage-decoration i:nth-child(2){border-radius:50%;background:color-mix(in srgb,var(--accent-2) 45%,transparent)}.game-stage-scene-tray-puzzle .stage-decoration i:nth-child(3){clip-path:polygon(50% 12%,90% 88%,10% 88%);border:none;border-radius:0}.game-stage-scene-tray-puzzle .stage-decoration i:nth-child(4){transform:rotate(45deg) scale(.78)}.game-stage-scene-picture-puzzle .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.55rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-picture-puzzle .stage-decoration i{position:static;border-radius:10px;background:color-mix(in srgb,var(--game-accent, #c47a9a) 50%,transparent)}.game-stage-scene-picture-puzzle .stage-decoration i:nth-child(2){background:color-mix(in srgb,var(--accent-2) 45%,transparent)}.game-stage-scene-picture-puzzle .stage-decoration i:nth-child(3){background:color-mix(in srgb,#f0a05a 45%,transparent)}.game-stage-scene-picture-puzzle .stage-decoration i:nth-child(4){background:color-mix(in srgb,#6b9fff 45%,transparent)}.game-stage-scene-connect-dots .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-connect-dots .stage-decoration i{position:static;border-radius:50%;background:color-mix(in srgb,var(--game-accent, #7ec8e3) 55%,transparent)}.game-stage-scene-connect-dots .stage-decoration i:nth-child(2){background:color-mix(in srgb,#f0a05a 50%,transparent)}.game-stage-scene-connect-dots .stage-decoration i:nth-child(3){background:color-mix(in srgb,#3db8a0 50%,transparent)}.game-stage-scene-connect-dots .stage-decoration i:nth-child(4){background:color-mix(in srgb,#6b9fff 50%,transparent)}.game-stage-scene-world-quiz .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-world-quiz .stage-decoration i{position:static;border-radius:12px;display:grid;place-items:center;font-style:normal;font-family:var(--font-display);font-size:1.6rem;color:color-mix(in srgb,var(--game-accent, #6b9fff) 80%,white);background:color-mix(in srgb,var(--game-accent, #6b9fff) 40%,transparent)}.game-stage-scene-world-quiz .stage-decoration i:nth-child(2){background:color-mix(in srgb,#3db8a0 45%,transparent)}.game-stage-scene-world-quiz .stage-decoration i:nth-child(3){background:color-mix(in srgb,#f0a05a 45%,transparent)}.game-stage-scene-world-quiz .stage-decoration i:nth-child(4){background:color-mix(in srgb,#7ec8e3 45%,transparent)}.game-stage-scene-word-hunt .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.22}.game-stage-scene-word-hunt .stage-decoration i{position:static;border-radius:12px;display:grid;place-items:center;font-style:normal;font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:color-mix(in srgb,var(--game-accent, #3db8a0) 80%,white);background:color-mix(in srgb,var(--game-accent, #3db8a0) 40%,transparent)}.game-stage-scene-word-hunt .stage-decoration i:nth-child(2){background:color-mix(in srgb,#f0a05a 45%,transparent)}.game-stage-scene-word-hunt .stage-decoration i:nth-child(3){background:color-mix(in srgb,#6b9fff 45%,transparent)}.game-stage-scene-word-hunt .stage-decoration i:nth-child(4){background:color-mix(in srgb,#c47a9a 45%,transparent)}.form-row{display:grid;gap:.35rem}.form-row input,.form-row select{border-radius:10px;border:1px solid var(--border);background:#0003;color:var(--ink);padding:.7rem .8rem}.form-row input:disabled{opacity:.7;cursor:not-allowed}.form-label-with-icon{display:inline-flex;align-items:center;gap:.4rem;color:var(--sand)}.form-label-with-icon .field-icon{color:var(--muted);flex-shrink:0}.form-readonly-control{display:block;width:100%;text-align:left;border-radius:10px;border:1px solid var(--border);background:#0003;color:var(--ink);padding:.7rem .8rem;opacity:.7;cursor:pointer;font:inherit}.form-readonly-control:hover,.form-readonly-control:focus-visible{opacity:.9;outline:none;border-color:#e8dcc859}.section-title{font-family:var(--font-display);font-size:1.15rem;margin:0}.profile-page{position:relative}.profile-toast{position:sticky;top:.75rem;z-index:20;padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(61,184,160,.35);background:#163652f2;color:var(--sand);box-shadow:0 8px 24px #00000040}.profile-identity{display:flex;align-items:center;gap:1rem}.avatar-lg,.avatar-sm{display:inline-grid;place-items:center;border-radius:999px;overflow:hidden;background:#ffffff14;border:1px solid var(--border);flex-shrink:0;font-weight:700;color:var(--sand)}.avatar-lg{width:72px;height:72px;font-size:1.35rem}.avatar-sm{width:22px;height:22px;font-size:.7rem}.avatar-lg img,.avatar-sm img{width:100%;height:100%;object-fit:cover}.avatar-picker{position:relative;flex-shrink:0}.avatar-picker-edit{position:absolute;right:-2px;bottom:-2px;width:28px;height:28px;border-radius:999px;border:1px solid var(--border);background:var(--bg2);color:var(--sand);display:grid;place-items:center;cursor:pointer;padding:0}.avatar-picker-edit:hover:not(:disabled),.avatar-picker-edit:focus-visible{border-color:var(--accent);outline:none}.avatar-picker-edit:disabled{opacity:.6;cursor:not-allowed}.avatar-modal-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#081220b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.avatar-modal{width:min(360px,100%);max-height:min(90dvh,640px);overflow:auto;padding:1rem 1rem 1.1rem;border-radius:16px;border:1px solid var(--border);background:linear-gradient(165deg,#1d4668fa,#0f2740fa);box-shadow:0 18px 48px #00000073;display:grid;gap:.85rem}.avatar-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.avatar-modal-title{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:650}.avatar-modal-close{width:32px;height:32px;border-radius:999px;border:1px solid var(--border);background:#ffffff0f;color:var(--sand);display:grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0}.avatar-modal-close:hover:not(:disabled),.avatar-modal-close:focus-visible{border-color:var(--accent);outline:none}.avatar-modal-close:disabled{opacity:.6;cursor:not-allowed}.avatar-modal-body{display:grid;gap:.65rem}.avatar-picker-heading{margin:0;font-size:.85rem;color:var(--muted)}.avatar-cropper{display:grid;gap:.75rem}.avatar-crop-viewport{position:relative;width:min(280px,100%);aspect-ratio:1;margin:0 auto;border-radius:16px;overflow:hidden;touch-action:none;cursor:grab;background:#00000059;border:1px solid var(--border);-webkit-user-select:none;user-select:none}.avatar-crop-viewport:active{cursor:grabbing}.avatar-crop-image{position:absolute;top:50%;left:50%;max-width:none;pointer-events:none;transform-origin:center center}.avatar-crop-mask{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 999px #0812208c;pointer-events:none}.avatar-crop-zoom{display:grid;gap:.35rem;font-size:.85rem;color:var(--muted)}.avatar-crop-zoom input[type=range]{width:100%;accent-color:var(--accent)}.avatar-crop-error{margin:0;font-size:.85rem;color:var(--danger)}.avatar-preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.avatar-preset-btn{width:100%;aspect-ratio:1;border-radius:999px;border:2px solid transparent;padding:0;overflow:hidden;background:#ffffff0f;cursor:pointer}.avatar-preset-btn img{width:100%;height:100%;object-fit:cover;display:block}.avatar-preset-btn:hover:not(:disabled),.avatar-preset-btn:focus-visible{border-color:#3db8a08c;outline:none}.avatar-preset-btn.is-selected{border-color:var(--accent)}.avatar-preset-btn:disabled{opacity:.6;cursor:not-allowed}.avatar-picker-actions{display:flex;flex-wrap:wrap;gap:.4rem}.nav-profile{display:inline-flex;align-items:center;gap:.4rem}.danger-zone{border-color:#e0707047}.banner{padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(240,160,90,.35);background:#f0a05a1f;color:var(--sand)}.banner--ok{border-color:#3db8a059;background:#3db8a01f}.under-construction-notice{flex-shrink:0;padding:.7rem .9rem;border-radius:12px;border:1px solid rgba(240,160,90,.32);background:#f0a05a1a}.under-construction-notice-title{display:block;font-family:var(--font-display);font-size:.95rem;font-weight:650;color:var(--sand);letter-spacing:.01em}.under-construction-notice-copy{margin:.25rem 0 0;font-size:.85rem;line-height:1.4;color:var(--muted)}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;gap:.75rem;align-items:center;color:var(--muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--border)}@keyframes dash-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dash-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.dash-fade{animation:dash-fade-in .28s ease both}.dash-section-title{font-family:var(--font-display);font-size:1.15rem;margin:0}.dash-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}@media(min-width:720px){.dash-stats{grid-template-columns:repeat(4,1fr)}}.dash-stat{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:.55rem;row-gap:.1rem;padding:.75rem .85rem;border-radius:14px;border:1px solid var(--border);border-top:3px solid color-mix(in srgb,var(--accent) 55%,transparent);background:#ffffff0a;align-items:center}.dash-stat:nth-child(2){border-top-color:color-mix(in srgb,var(--accent-2) 60%,transparent)}.dash-stat:nth-child(4){border-top-color:color-mix(in srgb,var(--accent-2) 45%,transparent)}.dash-stat-icon{grid-row:1 / span 2;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:10px;color:var(--accent);background:#3db8a01f}.dash-stat:nth-child(2) .dash-stat-icon,.dash-stat:nth-child(4) .dash-stat-icon{color:var(--accent-2);background:#f0a05a1f}.dash-stat strong{font-family:var(--font-display);font-size:1.35rem;line-height:1.1}.dash-stat-label{grid-column:2;color:var(--muted);font-size:.78rem}.dash-games{display:grid;grid-template-columns:1fr;gap:.75rem}@media(min-width:720px){.dash-games{grid-template-columns:repeat(3,1fr)}}.dash-game-card{--game-accent: var(--accent);display:flex;flex-direction:column;gap:.75rem;padding:1rem .95rem .9rem;border-radius:16px;border:1px solid var(--border);border-top:3px solid color-mix(in srgb,var(--game-accent) 55%,transparent);background:#ffffff0a;transition:transform .18s ease,border-color .18s ease}.dash-game-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--game-accent) 55%,transparent)}.dash-game-top{display:flex;flex-direction:column;gap:.45rem;min-width:0}.dash-game-heading{display:flex;align-items:center;gap:.7rem;min-width:0;min-height:60px}.dash-game-logo{flex-shrink:0;width:60px;height:60px}.dash-game-name{margin:0;min-width:0;font-family:var(--font-display);font-size:1.2rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-game-desc{margin:0;font-size:.82rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-game-progress{display:grid;gap:.35rem}.dash-progress-track{height:6px;border-radius:999px;background:#ffffff14;overflow:hidden}.dash-progress-fill{height:100%;border-radius:inherit;background:var(--game-accent);transition:width .22s ease}.dash-progress-label{font-size:.78rem}.dash-game-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.45rem;margin-top:auto}.dash-game-cta{padding:.45rem .9rem;font-size:.9rem}.dash-last-played{font-size:.78rem}.dash-browse{margin:0;font-size:.85rem}.dash-browse a:hover{color:var(--ink);text-decoration:underline}.dash-activity{gap:.55rem}.dash-activity-item{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;transition:transform .16s ease,border-color .16s ease}.dash-activity-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.dash-activity-main{display:inline-flex;align-items:center;gap:.55rem;min-width:0}.dash-activity-logo{width:28px;height:28px}.dash-activity-text{display:grid;gap:.15rem;min-width:0}.dash-activity-game{font-weight:600;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-activity-level{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem}.dash-level-icon{width:14px;height:14px;flex-shrink:0}.dash-activity-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;flex-shrink:0}.dash-activity-score{font-family:var(--font-display);font-size:1.05rem;line-height:1}.dash-activity-time{font-size:.75rem}.dash-status{display:inline-block;padding:.12rem .45rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em;text-transform:lowercase}.dash-status-completed{color:var(--accent);background:#3db8a029}.dash-status-started{color:var(--muted);background:#ffffff14}.dash-status-other{color:var(--accent-2);background:#f0a05a24}.dash-activity-empty{display:grid;gap:.75rem;justify-items:start;padding:.35rem 0 .15rem}.dash-empty-logos{display:flex;gap:.55rem;align-items:center}.dash-skel,.dash-skel-block{background:linear-gradient(90deg,#ffffff0a,#ffffff1a 45%,#ffffff0a);background-size:200% 100%;animation:dash-shimmer 1.2s ease-in-out infinite;border-radius:12px;border:1px solid var(--border)}.dash-skel-block{min-height:4.25rem}.dash-skel-card{min-height:10.5rem}.dash-skel-list{min-height:8rem}@media(max-width:560px){.game-shell{min-height:0}.game-start-action{min-height:2.75rem}.stat-row{gap:.3rem}.stat{padding:.12rem .2rem;column-gap:.22rem}.stat>svg{width:2.15rem;height:2.15rem}.stat.world-quiz-lang-trigger{padding:.12rem .14rem .12rem .12rem;column-gap:.12rem}.stat.world-quiz-lang-trigger .world-quiz-lang-flag{width:1.85rem;max-width:1.85rem;height:2.15rem;font-size:clamp(1.1rem,3vw,1.35rem)}.stat.world-quiz-lang-trigger .world-quiz-lang-code{font-size:clamp(.78rem,2.8vw,.98rem)}.stat-label{font-size:.58rem;letter-spacing:.02em}.stat strong{font-size:clamp(.82rem,3.2vw,1.1rem)}.level-detail-row>.level-icon{width:2.35rem;height:2.35rem}.game-stage{min-height:16rem}}.app-shell[data-play-focus="1"]{--shell-pad-x: .75rem;--shell-pad-bottom: .55rem;position:fixed;inset:0 0 auto;width:100%;height:var(--app-height, 100dvh);min-height:var(--app-height, 100dvh);max-height:var(--app-height, 100dvh);grid-template-rows:auto 1fr;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}.app-shell[data-play-focus="1"] main{min-height:0;display:flex;flex-direction:column}.app-shell[data-play-focus="1"] main>*{flex:1;min-height:0;display:flex;flex-direction:column}.app-shell[data-play-focus="1"] .game-shell{flex:1;min-height:0;height:100%;gap:.35rem}.app-shell[data-play-focus="1"] .game-play-hud{flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.35rem;overflow:visible}.app-shell[data-play-focus="1"] .stat-row{min-height:0;height:auto}.app-shell[data-play-focus="1"] .game-controls-row{min-height:0;height:auto;max-height:none}.app-shell[data-play-focus="1"] .game-play-layout{flex:1;min-height:0;height:100%;gap:.55rem;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.app-shell[data-play-focus="1"] .game-play-layout:not(:has(>.game-play-hud)):not(:has(>.race-hud-strip)){grid-template-rows:minmax(0,1fr)}.app-shell[data-play-focus="1"] .race-play-chrome:not(.race-play-chrome--hidden){flex:1;min-height:0;width:100%}.app-shell[data-play-focus="1"] .race-play-chrome>.game-shell-body{flex:1;min-height:0;width:100%;flex-direction:column}.app-shell[data-play-focus="1"] .race-play-chrome .game-play-layout{width:100%;min-width:0}.app-shell[data-play-focus="1"] .game-stage{min-height:0;height:auto;overflow:hidden}.app-shell[data-play-focus="1"] .game-stage:has(.number-dash-play){height:100%;min-height:0;place-items:center;align-content:center;padding:.35rem}.app-shell[data-play-focus="1"] .number-dash-play{height:100%;max-height:100%;width:min(680px,100%,calc((100dvh - 16rem) * var(--nd-cols, 3) / var(--nd-rows, 4)))}.app-shell[data-play-focus="1"] .number-dash-grid{aspect-ratio:var(--nd-cols, 3) / var(--nd-rows, 4);width:min(100%,calc((100% - 2.75rem) * var(--nd-cols, 3) / var(--nd-rows, 4)));max-height:calc(100% - 2.75rem);height:auto}.app-shell[data-play-focus="1"] .game-stage:has(.word-hunt-play){height:100%;min-height:0;place-items:center;align-content:center;padding:.35rem}.app-shell[data-play-focus="1"] .word-hunt-play{height:100%;max-height:100%;width:min(560px,100%)}.app-shell[data-play-focus="1"] .word-hunt-grid{width:min(100%,calc(100dvh - 18rem));max-height:calc(100% - 5.5rem)}.app-shell[data-play-focus="1"] .number-dash-cell{min-width:0;min-height:0}.app-shell[data-play-focus="1"] .race-play-chrome .game-shell-body .game-shell-body{flex:1;min-height:0;width:100%;flex-direction:column}.app-shell[data-play-focus="1"] .game-shell-body>.game-play-layout{flex:1;min-height:0;width:100%}.app-shell[data-play-focus="1"] .game-stage:has(.connect-dots-canvas){height:100%;min-height:0;padding:.45rem}.app-shell[data-play-focus="1"] .connect-dots-canvas{width:min(100%,70vh,560px);max-width:100%;max-height:100%;height:auto;aspect-ratio:1}html[data-play-scroll-lock="1"],html[data-play-scroll-lock="1"] body,html[data-play-scroll-lock="1"] #root{overflow:hidden;overscroll-behavior:none;height:var(--app-height, 100dvh);max-height:var(--app-height, 100dvh)}.rankings{padding-bottom:4.5rem}.rankings-scope{position:relative;display:grid;gap:.45rem}.rankings-scope-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.3rem;border-radius:14px;border:1px solid var(--border);background:#0000002e}.rankings-scope-btn{appearance:none;border:0;border-radius:10px;padding:.55rem .4rem;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:600;font-size:.82rem;line-height:1.1}.rankings-scope-btn.is-active,.rankings-scope-btn.is-open{background:#3db8a029;color:var(--ink)}.rankings-scope-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #e8dcc873}.rankings-scope-glyph{flex-shrink:0;width:1.55rem;height:1.55rem;border-radius:8px;display:inline-grid;place-items:center;background:#ffffff0f;border:1px solid rgba(232,220,200,.12);color:inherit;overflow:hidden}.rankings-scope-btn.is-active .rankings-scope-glyph,.rankings-scope-btn.is-open .rankings-scope-glyph{background:#3db8a02e;border-color:#3db8a059;color:var(--accent)}.rankings-scope-logo{width:18px!important;height:18px!important;object-fit:contain}.rankings-scope-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rankings-scope-chevron{flex-shrink:0;opacity:.7;transition:transform .15s ease}.rankings-scope-chevron.is-open{transform:rotate(180deg)}.rankings-scope-menu{position:absolute;z-index:12;top:calc(100% + .35rem);left:0;right:0;max-height:min(18rem,55vh);overflow:auto;padding:.35rem;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--bg1) 92%,#0a1a28);box-shadow:0 14px 34px #0006;display:grid;gap:.2rem}.rankings-scope-menu-empty{margin:0;padding:.65rem .55rem;font-size:.88rem}.rankings-scope-option{appearance:none;width:100%;display:flex;align-items:center;gap:.65rem;padding:.5rem .55rem;border:0;border-radius:10px;background:transparent;color:var(--ink);cursor:pointer;text-align:left;font:inherit}.rankings-scope-option:hover,.rankings-scope-option:focus-visible{background:#ffffff0f;outline:none}.rankings-scope-option.is-selected{background:#3db8a024}.rankings-scope-option-icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:10px;display:inline-grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(232,220,200,.12),transparent 55%),#00000038;border:1px solid rgba(232,220,200,.12);overflow:hidden}.rankings-scope-option-icon .game-logo{width:28px!important;height:28px!important;object-fit:contain}.rankings-scope-option-icon--cat{color:var(--accent-2)}.rankings-scope-option-copy{min-width:0;display:grid;gap:.08rem}.rankings-scope-option-copy strong{font-size:.9rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rankings-scope-option-copy small{color:var(--muted);font-size:.72rem}.rankings-periods{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}@media(max-width:380px){.rankings-scope-btn{font-size:.74rem;padding:.5rem .28rem;gap:.28rem}.rankings-scope-glyph{width:1.4rem;height:1.4rem}}.rankings-board{padding:.65rem .75rem .85rem;display:grid;gap:.55rem}.rankings-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}.rankings-row{display:grid;grid-template-columns:2.1rem minmax(0,1fr) auto;align-items:center;gap:.35rem .55rem;padding:.45rem .55rem;border-radius:12px;border:1px solid transparent;background:#ffffff08}.rankings-row:has(.rankings-meta){grid-template-columns:2.1rem minmax(0,1fr) auto auto}.rankings-rank{font-variant-numeric:tabular-nums;font-weight:700;font-size:.95rem;color:var(--muted);text-align:center}.rankings-medal{display:block;width:1.65rem;height:1.65rem;margin:-.18rem auto}.rankings-medal--gold{color:#e8c96a}.rankings-medal--silver{color:#c5d0dc}.rankings-medal--bronze{color:#d4a07a}.rankings-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:inline-flex;align-items:center;gap:.4rem}.rankings-avatar{width:22px;height:22px;font-size:.65rem}.rankings-you-tag{flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid rgba(61,184,160,.4);border-radius:999px;padding:.08rem .4rem}.rankings-meta{font-size:.75rem;white-space:nowrap}.rankings-score{font-variant-numeric:tabular-nums;font-weight:700;justify-self:end;white-space:nowrap}.rankings-score-unit{margin-left:.1rem;font-weight:600;font-size:.8rem}.rankings-row--gold,.rankings-row--silver,.rankings-row--bronze{border-color:color-mix(in srgb,currentColor 16%,transparent);background:linear-gradient(90deg,color-mix(in srgb,currentColor 12%,transparent),#ffffff06 58%);border-left-width:3px}.rankings-row--gold{color:#e8c96a}.rankings-row--silver{color:#c5d0dc}.rankings-row--bronze{color:#d4a07a}.rankings-row--gold .rankings-name,.rankings-row--gold .rankings-score,.rankings-row--silver .rankings-name,.rankings-row--silver .rankings-score,.rankings-row--bronze .rankings-name,.rankings-row--bronze .rankings-score{color:var(--ink)}.rankings-row--you{border-color:#3db8a059;background:#3db8a01a}.rankings-empty,.rankings-unranked{margin:.35rem 0 0;font-size:.9rem}.rankings-empty--trophy{display:flex;align-items:center;gap:.55rem}.rankings-empty-trophy{display:grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;border-radius:9px;color:#e8c96aa6;background:#e8c96a14}.rankings-empty-trophy svg{width:1.25rem;height:1.25rem}.rankings-total{margin:.15rem 0 0;font-size:.8rem;text-align:right}.rankings-me-bar{position:sticky;bottom:calc(.35rem + var(--safe-bottom));z-index:5;margin-top:-.25rem;padding:.55rem .65rem .65rem;border-radius:16px;border:1px solid rgba(61,184,160,.4);background:color-mix(in srgb,var(--bg1) 88%,#0a1a28);box-shadow:0 -8px 28px #00000059;display:grid;gap:.35rem}.rankings-me-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.rankings-row--sticky{background:transparent;border-color:transparent;padding:.15rem .1rem}@media(min-width:720px){.app-shell[data-play-focus="1"]{max-width:min(1100px,100%)}.stage-scene-card{width:min(40rem,100%);min-height:18rem;padding:1.85rem}.stage-scene-card h2{font-size:clamp(1.7rem,2.8vw,2.35rem)}.stage-scene-summary{font-size:1rem}.stage-scene-eyebrow{font-size:.9rem}.tray-puzzle-play{width:min(90%,780px)}.tray-puzzle-board{width:min(100%,calc(min(72vh,560px) * var(--tray-board-aspect, 1)))}.tray-puzzle-piece,.tray-puzzle-drag-ghost{width:clamp(3.4rem,9vw,4.75rem);height:clamp(3.4rem,9vw,4.75rem)}.picture-puzzle-play{width:min(90%,780px)}.picture-puzzle-board{width:min(100%,calc(min(72vh,560px) * var(--pic-board-aspect, 1.333)))}.picture-puzzle-piece,.picture-puzzle-drag-ghost{width:clamp(3.4rem,9vw,4.75rem);height:clamp(3.4rem,9vw,4.75rem)}.connect-dots-canvas{width:min(100%,85vh,860px);max-height:min(85vh,860px)}.app-shell[data-play-focus="1"] .connect-dots-canvas{width:min(100%,85vh,860px)}.connect-dots-hint{font-size:1rem}.world-quiz-board{width:min(720px,100%)}.world-quiz-progress{font-size:1.1rem}.world-quiz-prompt{font-size:clamp(1.7rem,3.2vw,2.45rem)}.world-quiz-choice{padding:1.35rem 1.5rem;font-size:clamp(1.3rem,2.6vw,1.7rem)}.math-play-board{width:min(580px,100%)}.numpad{width:min(560px,100%)}.pad-btn{min-height:76px;font-size:1.55rem}.math-play-prompt{font-size:clamp(2.5rem,5.5vw,3.2rem)}.math-play-answer{font-size:clamp(2.1rem,4.5vw,2.6rem)}.memory-grid{width:min(640px,94%,78vh);gap:1rem}.number-dash-play{width:min(680px,100%)}.app-shell[data-play-focus="1"] .number-dash-play{width:min(680px,100%,calc((100dvh - 16rem) * var(--nd-cols, 3) / var(--nd-rows, 4)))}.number-dash-cell{font-size:clamp(1.35rem,3.8vw,2.3rem)}.app-shell[data-play-focus="1"] .number-dash-cell{min-width:0;min-height:0}.number-dash-rule{font-size:clamp(1.15rem,2.8vw,1.45rem)}.target{width:148px;height:148px}.target.sm{width:92px;height:92px}.target.md{width:120px;height:120px}.target.lg{width:168px;height:168px}}.challenges-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}.challenges-lede{margin:0;flex:1 1 14rem}.challenges-section-title{margin:0 0 .65rem;font-size:.95rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.challenges-create{display:grid;gap:.85rem}.challenges-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.challenge-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem .7rem;padding:.65rem .7rem;border-radius:14px;border:1px solid transparent;background:#ffffff08;color:inherit;text-decoration:none;transition:background .16s ease,border-color .16s ease}.challenge-row:hover{background:#ffffff0f;border-color:#e8dcc82e}.challenge-row-logo{display:flex;align-items:center}.challenge-row-copy{min-width:0;display:grid;gap:.15rem}.challenge-row-copy strong,.challenge-row-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.challenge-status{flex-shrink:0;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .5rem;border:1px solid var(--border);color:var(--muted)}.challenge-status--open{color:var(--accent);border-color:#3db8a066;background:#3db8a01a}.challenge-status--finished{color:var(--muted);opacity:.9}.challenge-status--locked{color:#e8c96a;border-color:#e8c96a59;background:#e8c96a14}.challenge-detail-hero{display:grid;gap:.9rem}.challenge-detail-title-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem}.challenge-detail-title{margin:0;font-family:var(--font-display);font-size:clamp(1.25rem,3.5vw,1.65rem);font-weight:600;line-height:1.2}.challenge-detail-level{margin:.2rem 0 0;font-size:.92rem}.challenge-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:0}.challenge-meta>div{display:grid;gap:.15rem}.challenge-meta dt{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.challenge-meta dd{margin:0;font-weight:600}.challenge-actions{align-items:center}.challenge-submitted-note{margin:0;width:100%}.challenge-participants{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.challenge-participant{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem .65rem;padding:.4rem .35rem}.challenge-participant-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:inline-flex;align-items:center;gap:.4rem}.realtime-player-medal{display:inline-flex;flex:0 0 auto;margin-left:.2rem}.realtime-player-medal .rankings-medal{width:1.15rem;height:1.15rem;margin:0}.challenge-participant-status{font-size:.8rem}.challenge-play-banner{margin-bottom:.65rem}.game-done-mp-scores{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.35rem .65rem;margin:.35rem 0 0;font-size:1.05rem}.realtime-lobby--playing .realtime-lobby-header{margin-bottom:.45rem}.realtime-lobby--playing .challenges-section-title{font-size:.95rem;text-transform:none;letter-spacing:0;color:inherit;font-weight:700}.mp-friends-pick .list-row{align-items:center}.mp-friends-pick .btn{flex:0 0 auto}.match-history-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.match-history-stat{display:grid;gap:.15rem;padding:.65rem .55rem;text-align:center;border-radius:10px;background:color-mix(in srgb,var(--panel) 88%,var(--border));border:1px solid var(--border)}.match-history-stat strong{font-size:1.25rem;line-height:1.1}.match-history-list .match-history-row{align-items:flex-start;gap:.65rem}.match-history-game{flex:0 0 auto;margin-top:.15rem}.match-history-main{display:grid;gap:.2rem;min-width:0}.match-history-meta{font-size:.85rem}.match-history-vs{display:inline-flex;align-items:center;gap:.4rem;font-size:.92rem;flex-wrap:wrap}.match-history-avatars{display:inline-flex;align-items:center;flex:0 0 auto}.match-history-avatar-stack{margin-left:-.35rem;box-shadow:0 0 0 1.5px var(--panel, #fff)}.match-history-avatar-stack:first-child{margin-left:0}.match-history-avatar-more{margin-left:.25rem;font-size:.78rem;color:var(--muted)}.match-history-places{display:inline;font-size:.85rem}.match-history-scores{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem}.match-history-outcome{font-weight:700;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.match-history-outcome--win{color:#1f8a4c}.match-history-outcome--loss{color:#c23b3b}.match-history-outcome--draw{color:var(--muted)}.match-history-outcome--pending,.match-history-outcome--open{color:var(--accent, #2a6fdb)}.match-history-actions{margin:0;flex:0 0 auto}@media(max-width:520px){.match-history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.realtime-lobby-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;margin-bottom:.65rem}.realtime-lobby-header .challenges-section-title{margin:0}.realtime-lobby-meta{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem}.realtime-conn{font-weight:600}.realtime-conn--open{color:var(--ok, #1a7f4b)}.realtime-conn--connecting{color:var(--muted, #6b7280)}.realtime-conn--error,.realtime-conn--closed{color:var(--danger, #b42318)}.realtime-lobby-error{margin-bottom:.65rem}.realtime-lobby-players{margin-bottom:.75rem}.realtime-lobby-hint{margin-top:.65rem}.form-row select:disabled{opacity:.7;cursor:not-allowed}.challenges-create-hint{margin:0 0 .75rem;font-size:.9rem}.rt-game{margin-top:1rem;padding-top:.85rem;border-top:1px solid color-mix(in srgb,var(--border, #2a3a4d) 80%,transparent)}.rt-game-status{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;margin-bottom:.75rem}.rt-game-hint{margin-top:.5rem}.rt-game-solo{max-width:36rem}.rt-ttt-seats{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.75rem;font-size:.85rem}.rt-seat--you{color:var(--text, inherit);font-weight:600}.rt-ttt-board{display:grid;grid-template-columns:repeat(3,minmax(0,4.5rem));gap:.4rem;width:max-content;max-width:100%}.rt-ttt-cell{aspect-ratio:1;width:4.5rem;max-width:22vw;border:1px solid color-mix(in srgb,var(--border, #2a3a4d) 90%,transparent);border-radius:.45rem;background:color-mix(in srgb,var(--panel, #122033) 92%,#000);color:var(--text, #e8eef7);font-size:1.65rem;font-weight:700;cursor:pointer}.rt-ttt-cell:disabled{cursor:default;opacity:1}.rt-ttt-cell:not(:disabled):hover{border-color:var(--accent, #3db8a0)}.rt-ttt-cell--X{color:#f0a05a}.rt-ttt-cell--O{color:#3db8a0}.rt-ttt-local,.rt-ttt-solo,.game-stage .rt-ttt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;width:100%;margin-top:0;padding-top:0;border-top:none}.game-stage .rt-ttt .rt-game-status{margin-bottom:0;justify-content:center}.rt-ttt-local-actions{margin-top:.85rem;justify-content:center}.rt-ttt-thinking{display:inline-flex;align-items:center;gap:.35rem}.rt-ttt-thinking:after{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--game-accent, var(--accent, #f0a05a));animation:rt-ttt-pulse .9s ease-in-out infinite}@keyframes rt-ttt-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.rt-ships-layout,.rt-ships-boards,.rt-ships-top{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:.55rem;width:100%!important;max-width:100%;min-width:0;grid-template-columns:none!important;grid-template-rows:none!important;grid-template-areas:none!important;grid-auto-flow:row!important;grid-auto-columns:unset!important}.rt-ships-battle-hud{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:.35rem .55rem;width:100%;padding:.4rem .45rem .45rem;border-radius:10px;background:color-mix(in srgb,#0d2133 82%,#163652);border:1px solid color-mix(in srgb,#3db8a0 22%,transparent);box-sizing:border-box;flex:0 0 auto}.rt-ships-hud-side{display:flex;align-items:center;gap:.45rem;min-width:0}.rt-ships-hud-side--opp{justify-content:flex-end;text-align:right}.rt-ships-hud-meta{display:flex;flex-direction:column;gap:.12rem;min-width:0}.rt-ships-hud-meta--opp{align-items:flex-end}.rt-ships-hud-name{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;font-weight:650;color:var(--sand, #f2efe8);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.rt-ships-hud-ai-tag{flex-shrink:0;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.08rem .28rem;border-radius:4px;color:color-mix(in srgb,#0a1522 90%,#3db8a0);background:color-mix(in srgb,#3db8a0 72%,#163652)}.rt-ships-hud-last{display:block;min-height:1.05em;font-size:.7rem;font-weight:600;letter-spacing:.01em;color:color-mix(in srgb,#8ec8ff 75%,#8a97a8);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:9.5rem}.rt-ships-hud-last.is-empty{opacity:.35}.rt-ships-hud-avatar{display:inline-grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:999px;overflow:hidden;flex-shrink:0;font-size:.85rem;font-weight:700;color:var(--sand, #f2efe8);background:color-mix(in srgb,#163652 80%,#0a1522);border:2px solid color-mix(in srgb,#3db8a0 35%,transparent);box-shadow:0 0 0 0 transparent;transition:border-color .25s ease,box-shadow .25s ease}.rt-ships-hud-avatar img{width:100%;height:100%;object-fit:cover}.rt-ships-hud-avatar--ai{color:color-mix(in srgb,#3db8a0 85%,#f2efe8);background:color-mix(in srgb,#0d2133 70%,#163652);border-color:color-mix(in srgb,#3db8a0 55%,transparent)}.rt-ships-ai-icon{width:1.35rem;height:1.35rem}.rt-ships-hud-center{display:flex;align-items:center;justify-content:center;padding-top:.2rem}.rt-ships-hud-turn{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.28rem .55rem;border-radius:999px;color:color-mix(in srgb,#f2efe8 88%,#8a97a8);background:color-mix(in srgb,#0a1522 55%,transparent);border:1px solid color-mix(in srgb,#3db8a0 28%,transparent);white-space:nowrap}.rt-ships-hud-turn--mine{color:#0a1522;background:color-mix(in srgb,#6b9fff 78%,#3db8a0);border-color:transparent}.rt-ships-hud-turn--theirs{color:color-mix(in srgb,#f2efe8 92%,#f0a05a);background:color-mix(in srgb,#163652 70%,#3a2010);border-color:color-mix(in srgb,#f0a05a 40%,transparent)}.rt-ships-hud-turn--done{color:#0a1522;background:color-mix(in srgb,#3db8a0 75%,#6b9fff);border-color:transparent;text-transform:none;letter-spacing:.01em}.rt-ships-hud-side.is-active .rt-ships-hud-avatar{border-color:color-mix(in srgb,#6b9fff 85%,white);animation:rt-ships-turn-pulse 1.6s ease-in-out infinite}.rt-ships-hud-side.is-active .rt-ships-hud-name{text-decoration:underline;text-decoration-color:color-mix(in srgb,#6b9fff 70%,transparent);text-underline-offset:.18em;text-decoration-thickness:1.5px}.rt-ships-hud-side.is-winner .rt-ships-hud-avatar{border-color:color-mix(in srgb,#3db8a0 90%,white);box-shadow:0 0 0 2px color-mix(in srgb,#3db8a0 35%,transparent)}@keyframes rt-ships-turn-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,#6b9fff 0%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,#6b9fff 28%,transparent)}}@media(max-width:420px){.rt-ships-battle-hud{gap:.25rem .35rem;padding:.35rem .35rem .4rem}.rt-ships-hud-avatar{width:2.05rem;height:2.05rem;font-size:.75rem}.rt-ships-hud-name{font-size:.74rem}.rt-ships-hud-last{max-width:6.5rem;font-size:.65rem}.rt-ships-hud-turn{font-size:.64rem;padding:.22rem .4rem}}.rt-ships-meta{display:flex;flex-direction:column;gap:.55rem;min-width:0;width:100%;flex:0 0 auto}.rt-ships-peek,.rt-ships-secondary{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start;flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0}.rt-ships-focus,.rt-ships-main{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start;flex:1 1 auto!important;width:100%!important;max-width:100%!important;min-width:0;min-height:0}.rt-ships-place-top{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:flex-start!important;justify-content:space-between;gap:.45rem .6rem;width:100%!important;max-width:100%;min-width:0;flex:0 0 auto!important;grid-template-columns:none!important;grid-template-areas:none!important}.rt-ships-place-top .rt-ships-place-tools{flex:1 1 auto;min-width:0;max-width:calc(100% - 7.5rem)}.rt-ships-place-top .rt-ships-peek{flex:0 0 auto!important;width:auto!important;max-width:none!important;align-items:flex-end!important}.rt-ships-place-tools{margin:0;align-items:stretch;gap:.3rem;row-gap:.3rem}.rt-ships-place-tools .btn{padding:.28rem .55rem;border-radius:8px;font-size:.78rem;line-height:1.2;align-self:stretch}.rt-ships-place-tools .rt-ships-confirm{flex:1 1 100%;width:100%;padding:.35rem .6rem;font-size:.82rem;font-weight:650}.rt-ships-tool{display:flex;flex-direction:column;gap:.15rem;font-size:.72rem;color:var(--muted, #8a97a8);min-width:5.5rem}.rt-ships-tool select{padding:.28rem .4rem;border-radius:8px;font-size:.78rem;line-height:1.2;max-width:9rem}.rt-ships--placing .rt-ships-meta{gap:.35rem}.rt-ships--placing .rt-ships-meta .rt-game-status{margin-bottom:0}.rt-ships--placing .rt-ships-layout{gap:.4rem}.rt-ships--placing .rt-ships-board--peek,.rt-ships--placing .rt-ships-peek .rt-ships-board-wrap,.rt-ships--placing .rt-ships-board--peek .rt-ships-grid,.rt-ships--placing .rt-ships-peek .rt-ships-grid{width:7rem!important;max-width:7rem!important}.rt-ships--placing .rt-ships-board--peek .rt-ships-board-title{margin-bottom:.2rem;font-size:.7rem}.rt-ships--placing .rt-ships-focus,.rt-ships--placing .rt-ships-main{flex:0 1 auto!important;min-height:0}.rt-ships--placing .rt-ships-board--focus .rt-ships-board-title{margin-bottom:.25rem}.rt-ships-board-wrap{min-width:0;width:100%}.rt-ships-board-title{margin:0 0 .35rem;font-size:.9rem;font-weight:600}.rt-ships-grid{--ships-n: 10;display:grid;grid-template-columns:repeat(var(--ships-n),minmax(0,1fr));gap:2px;width:100%;aspect-ratio:1;transition:width .4s cubic-bezier(.22,1,.36,1),max-width .4s cubic-bezier(.22,1,.36,1)}.rt-ships-board--peek,.rt-ships-peek .rt-ships-board-wrap,.rt-ships-secondary .rt-ships-board-wrap{width:8rem!important;max-width:8rem!important;flex:0 0 auto!important}.rt-ships-board--peek .rt-ships-grid,.rt-ships-peek .rt-ships-grid,.rt-ships-secondary .rt-ships-grid{width:8rem!important;max-width:8rem!important;min-width:0!important}.rt-ships-board--peek .rt-ships-board-title,.rt-ships-peek .rt-ships-board-title,.rt-ships-secondary .rt-ships-board-title{font-size:.75rem;opacity:.85;text-align:center}.rt-ships-board--focus,.rt-ships-focus .rt-ships-board-wrap,.rt-ships-main .rt-ships-board-wrap,.rt-ships-board--focus .rt-ships-grid,.rt-ships-focus .rt-ships-grid,.rt-ships-main .rt-ships-grid{width:min(100%,26rem)!important;max-width:min(100%,26rem)!important}@keyframes rt-ships-enemy-to-top{0%{opacity:.75;transform:translateY(.45rem) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rt-ships-mine-to-bottom{0%{opacity:.7;transform:translateY(-.35rem) scale(1.06)}to{opacity:1;transform:translateY(0) scale(1)}}.rt-ships--battle .rt-ships-focus,.rt-ships--battle .rt-ships-main{animation:rt-ships-enemy-to-top .5s cubic-bezier(.22,1,.36,1) both}.rt-ships--battle .rt-ships-peek,.rt-ships--battle .rt-ships-secondary{animation:rt-ships-mine-to-bottom .45s cubic-bezier(.22,1,.36,1) both}.rt-ships--battle .rt-ships-layout{gap:.5rem}.rt-ships--battle .rt-ships-peek,.rt-ships--battle .rt-ships-secondary{order:3}.rt-ships--battle .rt-ships-focus,.rt-ships--battle .rt-ships-main{order:2}.rt-ships--battle .rt-ships-battle-hud{order:1}@media(prefers-reduced-motion:reduce){.rt-ships-grid{transition:none}.rt-ships--battle .rt-ships-peek,.rt-ships--battle .rt-ships-secondary,.rt-ships--battle .rt-ships-focus,.rt-ships--battle .rt-ships-main{animation:none}.rt-ships-hud-side.is-active .rt-ships-hud-avatar{animation:none;box-shadow:0 0 0 3px color-mix(in srgb,#6b9fff 30%,transparent)}}.rt-ships-cell{border:none;border-radius:2px;background:color-mix(in srgb,#163652 85%,#0a1522);padding:0;min-width:0;min-height:0;cursor:pointer}.rt-ships-cell:disabled{cursor:default}.rt-ships-cell:not(:disabled):hover{outline:1px solid var(--accent, #6b9fff);outline-offset:0;z-index:1}.rt-ships-cell--ship{background:color-mix(in srgb,#6b9fff 55%,#163652)}.rt-ships-cell--hit{background:color-mix(in srgb,#b42318 70%,#163652)}.rt-ships-cell--miss{background:color-mix(in srgb,#8a97a8 35%,#163652)}.rt-ships-cell--sunk{box-shadow:inset 0 0 0 2px #f0a05a;background:color-mix(in srgb,#b42318 55%,#3a2010)}.rt-ships-cell--preview{background:color-mix(in srgb,#6b9fff 40%,#163652);outline:1px dashed color-mix(in srgb,#6b9fff 80%,white);outline-offset:-1px;z-index:1}.rt-ships-cell--preview-invalid{background:color-mix(in srgb,#b42318 35%,#163652);outline:1px dashed color-mix(in srgb,#b42318 70%,white);outline-offset:-1px;z-index:1}.rt-ships{position:relative}.game-stage-scene-ships .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.2}.game-stage-scene-ships .stage-decoration i{position:static;border-radius:4px;background:color-mix(in srgb,var(--game-accent) 55%,transparent);width:4.5rem;height:1.1rem;align-self:center;justify-self:center}.game-stage-scene-ships .stage-decoration i:nth-child(2){width:3.6rem;background:color-mix(in srgb,var(--accent-2, #3db8a0) 55%,transparent)}.game-stage-scene-ships .stage-decoration i:nth-child(3){width:2.8rem}.game-stage-scene-ships .stage-decoration i:nth-child(4){width:2rem;background:color-mix(in srgb,#f0a05a 50%,transparent)}.game-stage-scene-tic-tac-toe .stage-decoration{display:grid;grid-template-columns:repeat(2,4.5rem);grid-template-rows:repeat(2,4.5rem);gap:.7rem;justify-content:center;align-content:center;opacity:.2}.game-stage-scene-tic-tac-toe .stage-decoration i{position:static;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--game-accent) 40%,transparent);color:var(--bg0);font-size:1.6rem;font-weight:800;font-style:normal;width:4.5rem;height:4.5rem}.game-stage-scene-tic-tac-toe .stage-decoration i:nth-child(2),.game-stage-scene-tic-tac-toe .stage-decoration i:nth-child(3){background:color-mix(in srgb,var(--accent-2, #3db8a0) 45%,transparent)}.app-shell[data-play-focus="1"] .game-stage:has(.ships-mp-panel){height:100%;min-height:0;place-items:center;align-content:center}.app-shell[data-play-focus="1"] .game-stage .ships-mp-panel{max-height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.app-shell[data-play-focus="1"] .game-stage:has(.rt-ships),.app-shell[data-play-focus="1"] .game-stage:has(.rt-ttt){height:100%;min-height:0;place-items:center;align-content:center;overflow:auto}.app-shell[data-play-focus="1"] .game-stage .rt-ships{width:min(100%,42rem);max-height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;padding:.35rem .25rem;box-sizing:border-box;display:flex;flex-direction:column}.app-shell[data-play-focus="1"] .game-stage .rt-ships-layout,.app-shell[data-play-focus="1"] .game-stage .rt-ships-boards,.app-shell[data-play-focus="1"] .game-stage .rt-ships-top{width:100%!important;flex:1 1 auto;min-height:0;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;grid-template-columns:none!important;grid-template-areas:none!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships-focus,.app-shell[data-play-focus="1"] .game-stage .rt-ships-main{flex:1 1 auto!important;min-height:0;align-items:center!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships-board--focus,.app-shell[data-play-focus="1"] .game-stage .rt-ships-focus .rt-ships-board-wrap,.app-shell[data-play-focus="1"] .game-stage .rt-ships-main .rt-ships-board-wrap{width:min(100%,28rem)!important;max-width:min(100%,28rem)!important;max-height:100%}.app-shell[data-play-focus="1"] .game-stage .rt-ships-board--focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships-focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships-main .rt-ships-grid{width:min(100%,28rem)!important;max-width:min(100%,28rem,calc(100dvh - 14rem))!important;max-height:min(100%,calc(100dvh - 14rem));height:auto}.app-shell[data-play-focus="1"] .game-stage .rt-ships--battle .rt-ships-board--focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships--battle .rt-ships-focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships--battle .rt-ships-main .rt-ships-grid{max-width:min(100%,28rem,calc(100dvh - 17.5rem))!important;max-height:min(100%,calc(100dvh - 17.5rem))}.app-shell[data-play-focus="1"] .game-stage .rt-ships--battle .rt-ships-battle-hud{flex:0 0 auto}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-layout{flex:0 1 auto}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-focus,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-main{flex:0 1 auto!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-board--focus,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-focus .rt-ships-board-wrap,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-main .rt-ships-board-wrap{max-height:none}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-board--focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-focus .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-main .rt-ships-grid{max-width:min(100%,26rem,calc(100dvh - 11rem))!important;max-height:min(100%,calc(100dvh - 11rem))}.app-shell[data-play-focus="1"] .game-stage .rt-ships-board--peek,.app-shell[data-play-focus="1"] .game-stage .rt-ships-peek .rt-ships-board-wrap,.app-shell[data-play-focus="1"] .game-stage .rt-ships-secondary .rt-ships-board-wrap{width:7.5rem!important;max-width:7.5rem!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-board--peek,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-peek .rt-ships-board-wrap{width:7rem!important;max-width:7rem!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships-board--peek .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships-peek .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships-secondary .rt-ships-grid{width:7.5rem!important;max-width:7.5rem!important}.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-board--peek .rt-ships-grid,.app-shell[data-play-focus="1"] .game-stage .rt-ships--placing .rt-ships-peek .rt-ships-grid{width:7rem!important;max-width:7rem!important}.play-mode-picker{max-width:28rem;margin:0 auto}.play-mode-picker-title{margin:0 0 .35rem;font-size:1.25rem;letter-spacing:.01em}.play-mode-picker-lede{margin:0 0 1rem;line-height:1.4}.play-mode-picker-actions{justify-content:stretch;margin-top:0}.play-mode-btn{flex:1 1 8rem;min-height:2.75rem}.solo-mp-choice{width:100%}.solo-1v1-group-choice{width:100%;flex-wrap:wrap}.solo-1v1-group-choice--illustrated{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"solo duel" "group group";gap:.5rem;align-items:stretch;flex-wrap:unset}.solo-1v1-group-choice--illustrated.solo-1v1-group-choice--no-group{grid-template-areas:"solo duel"}.play-mode-btn--illustrated{min-width:0;width:auto;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;align-self:stretch;height:100%;box-sizing:border-box;min-height:3.25rem;padding:.55rem .85rem;position:relative;overflow:hidden}.play-mode-btn--illustrated.play-mode-btn--solo{grid-area:solo;flex:unset;padding-inline:1rem;font-size:1.02rem;letter-spacing:.02em;box-shadow:inset 0 -2px color-mix(in srgb,#06241e 18%,transparent)}.play-mode-btn--illustrated.play-mode-btn--duel{grid-area:duel;flex:unset;gap:.38rem;min-height:3.25rem}.play-mode-btn--illustrated.play-mode-btn--duel .play-mode-btn-label{font-weight:800;letter-spacing:.06em}.play-mode-btn--illustrated.play-mode-btn--group{grid-area:group;flex:unset;width:100%;min-height:2.85rem}.play-mode-btn-motif{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;line-height:0}.play-mode-ico{display:block;color:inherit}.play-mode-ico-plate{fill:color-mix(in srgb,currentColor 14%,transparent);stroke:color-mix(in srgb,currentColor 55%,transparent);stroke-width:1.5}.play-mode-ico-plate--outer{fill:color-mix(in srgb,currentColor 8%,transparent);stroke:color-mix(in srgb,currentColor 62%,transparent);stroke-width:1.65}.play-mode-ico-plate--inner{fill:color-mix(in srgb,currentColor 18%,transparent);stroke:color-mix(in srgb,currentColor 38%,transparent);stroke-width:1.15}.btn.primary.play-mode-btn--illustrated .play-mode-ico-plate--outer{fill:color-mix(in srgb,#06241e 6%,transparent);stroke:color-mix(in srgb,#06241e 48%,transparent)}.btn.primary.play-mode-btn--illustrated .play-mode-ico-plate--inner{fill:color-mix(in srgb,#06241e 12%,transparent);stroke:color-mix(in srgb,#06241e 28%,transparent)}.play-mode-btn-label{font-size:.92rem;font-weight:700;letter-spacing:.015em;line-height:1.15;white-space:nowrap;min-width:0}.play-mode-btn--illustrated.play-mode-btn--solo .play-mode-btn-label{font-size:clamp(.72rem,2.6vw,1.02rem);font-weight:800;letter-spacing:.02em;text-transform:uppercase;white-space:normal;text-align:center;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.play-mode-btn--illustrated.mp-entry-btn{background:color-mix(in srgb,var(--card) 78%,transparent);border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 40%,var(--border));box-shadow:inset 3px 0 color-mix(in srgb,var(--game-accent, var(--accent-2, var(--accent))) 55%,transparent)}.play-mode-btn--illustrated:hover:not(:disabled){transform:translateY(-1px)}.play-mode-btn--illustrated.mp-entry-btn:hover:not(:disabled),.play-mode-btn--illustrated.mp-entry-btn:focus-visible{border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 68%,var(--border));background:color-mix(in srgb,var(--game-accent, var(--accent)) 12%,var(--card))}.play-mode-btn--illustrated:active:not(:disabled){transform:translateY(0)}@media(max-width:380px){.solo-1v1-group-choice--illustrated{gap:.4rem;grid-template-columns:1fr 1fr}.play-mode-btn--illustrated{min-height:3.1rem;gap:.38rem;padding:.45rem .55rem;align-self:stretch;height:100%}.play-mode-btn--illustrated.play-mode-btn--solo{padding-inline:.65rem}.play-mode-btn--illustrated.play-mode-btn--solo .play-mode-btn-label{font-size:clamp(.68rem,3.2vw,.92rem)}.play-mode-btn-label{font-size:.82rem}.play-mode-ico{width:24px;height:auto}.play-mode-ico--start{width:26px}.play-mode-ico--player{width:13px}}.stage-scene-footer .solo-mp-choice,.stage-scene-footer .solo-1v1-group-choice{margin-top:0}.nd-mp-panel .mp-queue-wait,.nd-mp-panel .mp-seat-picker,.nd-mp-panel .mp-open-rooms{margin-top:.65rem;text-align:left}.nd-stage-lobby{width:100%;height:100%;max-height:100%;display:grid;place-items:center;overflow:auto;padding:.35rem;box-sizing:border-box}.nd-stage-lobby .nd-stage-lobby-card{margin:0;width:min(28rem,100%);max-height:100%;overflow:auto;text-align:left}.app-shell[data-play-focus="1"] .game-stage:has(.nd-mp-panel),.app-shell[data-play-focus="1"] .game-stage:has(.nd-stage-lobby){height:100%;min-height:0;place-items:center;align-content:center}.app-shell[data-play-focus="1"] .game-stage .nd-mp-panel,.app-shell[data-play-focus="1"] .game-stage .nd-stage-lobby-card{max-height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.nd-stage-lobby .nd-stage-lobby-card .realtime-lobby-header{text-align:center}.nd-stage-lobby .nd-stage-lobby-card h2{min-height:0}.nd-stage-lobby .btn-row.challenge-actions{justify-content:center}.mp-entry-btn{min-height:2.5rem;padding-inline:1.1rem;font-weight:600;letter-spacing:.01em;border-color:color-mix(in srgb,var(--game-accent, var(--accent)) 55%,var(--border));background:color-mix(in srgb,var(--game-accent, var(--accent)) 18%,transparent)}.mp-entry-btn:hover:not(:disabled),.mp-entry-btn:focus-visible{border-color:var(--game-accent, var(--accent));outline:none}.rt-mp-landing{text-align:center}.rt-mp-landing .play-mode-picker-lede{margin-bottom:1.15rem}.rt-mp-landing .solo-mp-choice{justify-content:stretch}.rt-solo-hint{margin:.75rem 0 0;font-size:.9rem}.ships-vs-ai-difficulties{display:grid;gap:.65rem;margin-top:.35rem}.ships-vs-ai-difficulty-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left;min-height:3.1rem;padding-block:.7rem;padding-inline:1rem}.ships-vs-ai-difficulty-label{font-weight:700;letter-spacing:.01em}.ships-vs-ai-difficulty-hint{font-size:.85rem;font-weight:500}.rt-post-match-choice{margin-top:1rem;display:grid;gap:.65rem;justify-items:stretch;text-align:center}.rt-post-match-choice .solo-mp-choice{justify-content:stretch}.rt-countdown{display:grid;place-items:center;gap:.35rem;padding:1.25rem 0 .5rem;text-align:center}.rt-countdown-label{margin:0;font-size:.95rem;opacity:.85}.rt-countdown-seconds{margin:0;font-size:3rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--game-accent, var(--accent, #3d8bfd))}.race-play-chrome{position:relative;min-height:0;flex:1 1 auto;width:100%;display:flex;flex-direction:column}.race-play-chrome--hidden{position:absolute;flex:0 0 0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;pointer-events:none}.race-hud-strip{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;margin:0 0 .55rem;padding:.2rem 0;font-size:.88rem;line-height:1.3;flex-shrink:0}.race-hud-strip-kicker{font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;color:var(--game-accent, var(--accent, #3d8bfd))}.race-hud-strip-vs{font-weight:600}.race-hud-strip-prog{font-size:.82rem}.mp-modal-overlay{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:1rem;background:#081220b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mp-modal{width:min(460px,100%);max-height:min(90dvh,720px);overflow:auto;padding:1rem 1rem 1.15rem;border-radius:16px;display:grid;gap:.85rem;margin:0;box-shadow:0 18px 48px #00000073}.mp-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.mp-modal-title{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:650}.mp-modal-close{width:32px;height:32px;border-radius:999px;border:1px solid var(--border);background:#ffffff0f;color:var(--sand);display:grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0;font-size:1.25rem;line-height:1}.mp-modal-close:hover,.mp-modal-close:focus-visible{border-color:var(--accent);outline:none}.mp-modal-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.35rem;padding:.25rem;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.mp-modal-tab{appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;padding:.55rem .25rem;border-radius:9px;cursor:pointer;white-space:nowrap}.mp-modal-tab--active{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--sand)}.mp-modal-body,.mp-modal-pane{display:grid;gap:.65rem}.mp-modal-lede{margin:0;line-height:1.4}.mp-seat-picker{display:grid;gap:.4rem}.mp-seat-picker-label{margin:0;font-size:.8rem;font-weight:600;color:var(--muted)}.mp-seat-picker-options{display:flex;flex-wrap:wrap;gap:.35rem}.mp-seat-chip{appearance:none;min-width:2.75rem;padding:.45rem .65rem;border-radius:9px;border:1px solid var(--border);background:#ffffff0a;color:var(--sand);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.mp-seat-chip--active{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 22%,transparent)}.mp-seat-picker-hint{margin:0;font-size:.78rem;line-height:1.35}.mp-open-rooms{display:grid;gap:.5rem;margin-top:.35rem;padding-top:.65rem;border-top:1px solid rgba(255,255,255,.08)}.mp-open-rooms-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mp-open-rooms-title{margin:0;font-size:.85rem;font-weight:650}.mp-open-rooms-refresh{padding:.3rem .55rem;font-size:.75rem}.mp-open-rooms-empty{margin:0;font-size:.82rem;line-height:1.4}.mp-open-rooms-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.mp-open-room-row{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.55rem .6rem;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08}.mp-open-room-main{display:grid;gap:.2rem;min-width:0;flex:1}.mp-open-room-host-line{display:flex;align-items:center;gap:.4rem;min-width:0}.mp-open-room-avatar{width:20px;height:20px;font-size:.65rem}.mp-open-room-host-name{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mp-open-room-seats{display:inline-flex;align-items:center;gap:.2rem;flex-shrink:0;margin-left:auto;font-size:.75rem;line-height:1}.mp-open-room-seats-icon{flex-shrink:0;opacity:.85}.mp-open-room-level{display:inline-flex;align-items:center;gap:.3rem;max-width:100%;min-width:0;font-size:.78rem;font-weight:600;line-height:1.25;color:color-mix(in srgb,var(--ink, currentColor) 78%,transparent)}.mp-open-room-level-icon{flex-shrink:0;width:14px;height:14px;opacity:.9}.mp-open-room-level-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mp-open-room-row>.btn{flex-shrink:0}.realtime-host-tag{margin-left:.35rem}.realtime-lobby-invite{display:grid;gap:.4rem;margin:.15rem 0 .5rem;padding:.65rem .7rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 10%,transparent)}.realtime-lobby-invite-label{margin:0;font-size:.85rem;font-weight:650}.realtime-lobby-invite-hint{margin:0;font-size:.78rem;line-height:1.35}.realtime-lobby-pending{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.realtime-lobby-pending li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem}.race-placement-table{width:100%;border-collapse:collapse;font-size:.88rem;margin:.35rem 0 .65rem;text-align:left}.race-placement-table th,.race-placement-table td{padding:.35rem .4rem;border-bottom:1px solid rgba(255,255,255,.08)}.race-placement-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.race-placement-row--you td{font-weight:650;color:var(--sand)}.mp-invite-label{font-size:.8rem;color:var(--muted)}.mp-invite-input{width:100%;box-sizing:border-box;padding:.6rem .7rem;border-radius:10px;border:1px solid var(--border);background:#00000038;color:var(--sand);font:inherit;font-size:.85rem}.mp-invite-actions{margin-top:.15rem}.mp-queue-panel{max-width:32rem;margin:0 auto}.mp-queue-controls{margin-bottom:.75rem}.mp-queue-wait{display:grid;gap:.35rem;padding:.85rem 0 .25rem}.mp-queue-wait-label{margin:0;font-weight:600;letter-spacing:.01em}.match-wait-opponent{margin:.75rem 0 .25rem;padding:.75rem .85rem;border-radius:10px;background:#ffffff0a}.rt-game-hint{margin:.5rem auto 0;max-width:28rem;text-align:center}.friends-page .friends-search{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}.friends-page .friends-search .form-row{flex:1 1 12rem;margin:0}.friends-page .friends-search .btn{margin:0}.friends-list{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.friends-row-actions{margin-top:0;justify-content:flex-end}.friends-player-link{color:inherit;text-decoration:none;min-width:0}.friends-player-link:hover,.friends-player-link:focus-visible{text-decoration:underline;text-underline-offset:.15em}.player-profile-meta{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0}.player-profile-meta dt{color:var(--muted, #6b7280);font-size:.9rem}.player-profile-meta dd{margin:0}.friend-req-toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + var(--page-header-min-height) + var(--page-header-margin-bottom) + .25rem);left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:stretch;gap:.35rem;max-width:min(26rem,calc(100vw - 1.5rem));padding:.35rem;border-radius:14px;border:1px solid rgba(61,184,160,.35);background:#163652f5;color:var(--sand);box-shadow:0 10px 28px #00000059}.friend-req-toast-main{appearance:none;flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0;padding:.55rem .65rem;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.friend-req-toast-main:hover,.friend-req-toast-main:focus-visible{background:#ffffff0f;outline:none}.friend-req-toast-main strong{font-size:.85rem;font-weight:700}.friend-req-toast-main span{font-size:.9rem;opacity:.92}.friend-req-toast-action{appearance:none;align-self:center;flex:0 0 auto;padding:.45rem .7rem;border-radius:10px;border:1px solid rgba(61,184,160,.4);background:#3db8a02e;color:var(--sand);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap}.friend-req-toast-action:hover,.friend-req-toast-action:focus-visible{background:#3db8a047;outline:none}.friend-req-toast-dismiss{appearance:none;align-self:flex-start;flex:0 0 auto;width:2rem;height:2rem;margin:.15rem .1rem 0 0;border:0;border-radius:10px;background:transparent;color:var(--sand);font-size:1.25rem;line-height:1;cursor:pointer}.friend-req-toast-dismiss:hover,.friend-req-toast-dismiss:focus-visible{background:#ffffff14;outline:none}.friend-req-toast.match-invite-toast{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;gap:.4rem;width:calc(100vw - .75rem);max-width:min(36rem,calc(100vw - .75rem));padding:.4rem .35rem .4rem .45rem}.friend-req-toast.match-invite-toast .friend-req-toast-main{cursor:default;flex:1 1 auto;min-width:0;padding:.4rem .35rem}.friend-req-toast.match-invite-toast .friend-req-toast-main span{display:block;line-height:1.35;overflow-wrap:break-word}.match-invite-toast-actions{display:flex;flex-direction:column;justify-content:center;gap:.28rem;flex:0 0 auto;width:auto;max-width:5.75rem;padding:.15rem 0}.friend-req-toast.match-invite-toast .friend-req-toast-action{align-self:stretch;flex:0 0 auto;min-width:0;width:100%;padding:.32rem .5rem;font-size:.72rem;font-weight:700;text-align:center;white-space:nowrap}.friend-req-toast.match-invite-toast .friend-req-toast-dismiss{align-self:flex-start;margin:.05rem .05rem 0 0}
