:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--c-bg:#12110e;--c-surface:#1b1915;--c-surface-2:#24211b;--c-surface-3:#2e2a22;--c-line:#e8dcc41a;--c-line-strong:#e8dcc433;--c-text:#ede6d8;--c-muted:#a89f8e;--c-faint:#7d7566;--c-accent:#d1a04a;--c-accent-hover:#e0b25e;--c-accent-ink:#1b1307;--c-accent-soft:#d1a04a24;--c-danger:#d0654f;--c-danger-soft:#d0654f24;--c-success:#6cc28a;--c-success-soft:#6cc28a29;--c-ok:#8fb36a;--c-online:#7fc36a;--c-scrim:#0807059e;--hex-light:#f3cfa2;--hex-mid:#e5ad73;--hex-dark:#cf8f56;--hex-stroke:#3c230a4d;--hex-river:#3ea7c9;--hex-high-light:#b8621f;--hex-high-mid:#a8581d;--hex-high-dark:#97501b;--castle-white-ring:#2fc49b;--castle-black-ring:#8c6cf0;--move-dot:#26180661;--move-dot-hover:#2618068c;--capture-ring:#962012e0;--font-display:"Alegreya", Georgia, "Times New Roman", serif;--font-ui:"Alegreya Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--fs-xs:12.5px;--fs-sm:14px;--fs-md:16px;--fs-lg:20px;--fs-xl:26px;--fs-2xl:34px;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow-1:0 1px 2px #00000040;--shadow-2:0 18px 50px #00000073;--focus-ring:0 0 0 2px var(--c-bg), 0 0 0 4px var(--c-accent)}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--c-bg:#ece6d9;--c-surface:#faf7f0;--c-surface-2:#f1ebdf;--c-surface-3:#e5ddcd;--c-line:#3c2d141f;--c-line-strong:#3c2d1438;--c-text:#231e15;--c-muted:#665d4e;--c-faint:#8a8070;--c-accent:#9c6d1a;--c-accent-hover:#87600f;--c-accent-ink:#fffaf0;--c-accent-soft:#9c6d1a1f;--c-danger:#b3452f;--c-danger-soft:#b3452f1f;--c-success:#2f7d4a;--c-success-soft:#2f7d4a1f;--c-ok:#5e8a37;--c-online:#4f9a3c;--c-scrim:#281e0f61;--shadow-2:0 18px 50px #3c280a2e}html,body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-ui);font-variant-numeric:lining-nums}button,input,select,textarea{font-family:inherit}h1,h2,h3{font-family:var(--font-display);text-wrap:balance}.ui-btn{--btn-bg:var(--c-surface-2);--btn-bg-hover:var(--c-surface-3);--btn-fg:var(--c-text);--btn-border:var(--c-line-strong);justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--btn-border);border-radius:var(--r-md);background:var(--btn-bg);min-height:40px;color:var(--btn-fg);font:700 15px/1.2 var(--font-ui);letter-spacing:0;text-transform:none;cursor:pointer;-webkit-tap-highlight-color:transparent;padding:9px 16px;transition:background-color .15s,border-color .15s,color .15s,transform 50ms;display:inline-flex;position:relative}.ui-btn:hover:not(:disabled){background:var(--btn-bg-hover)}.ui-btn:active:not(:disabled){transform:translateY(1px)}.ui-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-btn:disabled{opacity:.45;cursor:not-allowed}.ui-btn svg{flex:none;width:18px;height:18px}.ui-btn--primary{--btn-bg:var(--c-accent);--btn-bg-hover:var(--c-accent-hover);--btn-fg:var(--c-accent-ink);--btn-border:transparent}.ui-btn--ghost{--btn-bg:transparent;--btn-bg-hover:var(--c-surface-2);--btn-fg:var(--c-muted);--btn-border:transparent}.ui-btn--ghost:hover:not(:disabled){color:var(--c-text)}.ui-btn--danger{--btn-bg:transparent;--btn-bg-hover:var(--c-danger-soft);--btn-fg:var(--c-muted);--btn-border:transparent}.ui-btn--danger:hover:not(:disabled){color:var(--c-danger)}.ui-btn--sm{min-height:32px;padding:5px 11px;font-size:14px}.ui-btn--lg{min-height:48px;padding:12px 18px;font-size:16px}.ui-btn--block{width:100%}.ui-btn__kbd{font:600 11px/1 var(--font-ui);opacity:.6;border:1px solid;border-radius:4px;padding:3px 5px}.ui-btn--loading{cursor:progress}.ui-btn--loading>.ui-btn__label{visibility:hidden}.ui-btn__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite ui-spin;position:absolute}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ui-btn,.ui-btn__spinner{transition:none;animation-duration:2.4s}}.ui-seg{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);flex-wrap:wrap;gap:3px;padding:3px;display:flex}.ui-seg__option{min-height:34px;color:var(--c-muted);font:500 14.5px/1.2 var(--font-ui);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.ui-seg__option:hover:not(:disabled){color:var(--c-text)}.ui-seg__option[aria-pressed=true]{background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-1), inset 0 0 0 1px var(--c-line-strong)}.ui-seg__option:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-seg__option:disabled{opacity:.45;cursor:not-allowed}.ui-seg__option img{width:22px;height:22px}.ui-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.ui-tile{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);color:var(--c-muted);font:500 14px/1.2 var(--font-ui);cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:9px 4px 8px;display:flex}.ui-tile svg{width:22px;height:22px}.ui-tile:hover{border-color:var(--c-line-strong);color:var(--c-text)}.ui-tile[aria-checked=true]{border-color:var(--c-accent);background:var(--c-accent-soft);color:var(--c-text)}.ui-tile[aria-checked=true] svg{color:var(--c-accent)}.ui-tile:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-field-label{color:var(--c-muted);font:700 12.5px/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px}.ui-hint{color:var(--c-muted);margin:8px 2px 0;font-size:14px;line-height:1.4}.online-account-chip{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface-3);max-width:190px;min-height:36px;color:var(--c-text);cursor:pointer;font:inherit;letter-spacing:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:7px 11px;font-size:.86rem;font-weight:850;line-height:1;display:inline-flex;box-shadow:0 8px 20px #00000029}.online-account-chip:hover{background:var(--c-surface-2);border-color:var(--c-faint)}.online-account-chip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.player-identity-icon{color:currentColor;flex:none;width:18px;height:18px;display:inline-block;position:relative}.player-identity-icon.human:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px;position:absolute;top:2px;left:6px}.player-identity-icon.human:after{content:"";background:currentColor;border-radius:8px 8px 4px 4px;width:12px;height:8px;position:absolute;bottom:2px;left:3px}.player-identity-icon.bot{border:2px solid;border-radius:5px;width:18px;height:18px}.player-identity-icon.bot:before{content:"";background:currentColor;border-radius:999px;width:3px;height:3px;position:absolute;top:6px;left:4px;box-shadow:7px 0}.player-identity-icon.bot:after{content:"";background:currentColor;width:2px;height:5px;position:absolute;top:-6px;left:7px}.online-account-dialog-backdrop{z-index:3200;background:#000000a3;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.online-account-dialog{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface);width:min(390px,100vw - 32px);color:var(--c-muted);font-family:var(--font-ui);border-radius:6px;padding:18px;box-shadow:0 16px 44px #00000073}.online-account-dialog-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.online-account-dialog-kicker{color:var(--c-faint);letter-spacing:0;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:900;display:block}.online-account-dialog h2{color:var(--c-text);letter-spacing:0;margin:0;font-size:1.15rem;font-weight:700}.online-account-dialog-close{border:1px solid var(--c-line-strong);background:var(--c-surface-2);width:38px;height:38px;color:var(--c-text);cursor:pointer;border-radius:4px;font-size:1rem;font-weight:700;line-height:1}.online-account-dialog-close:hover{background:var(--c-surface-3)}.online-account-dialog-description,.online-account-dialog-signed-in p{color:var(--c-muted);margin:12px 0 0;line-height:1.4}.online-account-dialog-signed-in strong{color:var(--c-text);overflow-wrap:anywhere;margin-top:6px;font-size:1rem;font-weight:700;display:block}.online-account-google-link{border:1px solid var(--c-line-strong);background:var(--c-surface-3);width:100%;max-width:340px;min-height:38px;color:var(--c-text);border-radius:4px;justify-content:center;align-items:center;margin-top:14px;padding:8px 12px;font-weight:700;text-decoration:none;display:inline-flex}.online-account-dialog-oauth-message,.online-account-dialog-message{color:var(--c-faint);margin:12px 0 0;font-weight:700;line-height:1.35}.online-account-dialog-oauth-message.error,.online-account-dialog-message.error{color:#d59120}.online-account-dialog-form{gap:12px;width:100%;max-width:340px;margin-top:14px;display:grid}.online-account-dialog-form label{color:#a6a6a6;gap:6px;font-size:.84rem;font-weight:600;display:grid}.online-account-dialog-form input{border:1px solid var(--c-line-strong);background:var(--c-surface-3);min-height:38px;color:var(--c-text);font:inherit;border-radius:4px;padding:8px 10px}.online-account-password-rules{color:var(--c-faint);margin-top:-2px;font-size:.78rem;line-height:1.35}.online-account-password-rules span{font-weight:800;display:block}.online-account-password-rules ul{margin:4px 0 0;padding-left:18px}.online-account-recovery{gap:8px;display:grid}.online-account-recovery-toggle{color:#d7b765;cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;justify-self:start;padding:0;font-size:.84rem;font-weight:800;text-decoration:underline;text-decoration-thickness:1px}.online-account-recovery-panel{background:#46331438;border:1px solid #d7b76547;border-radius:6px;gap:8px;padding:10px;display:grid}.online-account-recovery-panel p{color:var(--c-muted);margin:0;font-size:.82rem;line-height:1.38}.online-account-dialog-form input:focus-visible,.online-account-dialog-button:focus-visible,.online-account-dialog-close:focus-visible,.online-account-google-link:focus-visible,.online-account-recovery-toggle:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}.online-account-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.online-account-dialog-actions.single{margin-top:16px}.online-account-dialog-button{cursor:pointer;min-height:38px;font:inherit;letter-spacing:0;border:0;border-radius:4px;padding:8px 14px;font-size:.88rem;font-weight:700}.online-account-dialog-button.primary{background:var(--c-accent);color:var(--c-accent-ink)}.online-account-dialog-button.subtle{border:1px solid var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.online-account-dialog-button:hover:not(:disabled),.online-account-google-link:hover{filter:brightness(1.08)}.online-account-dialog-button:disabled{cursor:not-allowed;opacity:.68}@media (width<=420px){.online-account-dialog-actions{grid-template-columns:minmax(0,1fr);display:grid}}@media (width<=520px){.online-browser-account-chip{flex:0 0 36px;gap:0;width:36px;min-width:36px;max-width:36px;padding-inline:7px}.online-browser-account-chip .online-account-chip-name{display:none}}[data-theme=light] .online-account-chip{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:0 8px 18px #00000014}[data-theme=light] .online-account-chip:hover{background:var(--c-surface-2);border-color:var(--c-line-strong)}[data-theme=light] .online-account-dialog{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:0 16px 44px #0000002e}[data-theme=light] .online-account-dialog h2,[data-theme=light] .online-account-dialog-signed-in strong{color:var(--c-text)}[data-theme=light] .online-account-dialog-kicker,[data-theme=light] .online-account-dialog-description,[data-theme=light] .online-account-dialog-signed-in p,[data-theme=light] .online-account-dialog-form label,[data-theme=light] .online-account-password-rules,[data-theme=light] .online-account-recovery-panel p,[data-theme=light] .online-account-dialog-oauth-message,[data-theme=light] .online-account-dialog-message{color:var(--c-muted)}[data-theme=light] .online-account-recovery-toggle{color:#8d6b2a}[data-theme=light] .online-account-recovery-panel{background:#fff8e6;border-color:#e7d4a6}[data-theme=light] .online-account-dialog-close,[data-theme=light] .online-account-google-link,[data-theme=light] .online-account-dialog-button.subtle,[data-theme=light] .online-account-dialog-form input{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}.rules-modal-backdrop{z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.rules-modal{background:var(--c-surface);color:var(--c-muted);width:90%;max-width:900px;max-height:85vh;box-shadow:0 20px 60px #000000b3, 0 0 0 1px var(--panel-border), inset 0 1px 1px #ffffff1a;font-family:var(--font-ui);border-radius:8px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:relative}.rules-header{border-bottom:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:8px 8px 0 0;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex}.rules-header h1{color:var(--c-text);text-shadow:none;font-size:1.8rem;font-family:var(--font-ui);letter-spacing:0;flex:1;margin:0}.rules-header-full-link{color:var(--panel-text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;padding:.65rem 1rem;font-weight:800}.rules-header-full-link:hover{background:#ffffff24}.rules-close{color:#aaa;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;transition:all .2s;display:flex}.rules-close:hover{background:var(--c-surface-3);color:var(--c-text);border-color:var(--c-line-strong);transform:rotate(90deg)}.rules-content{padding:2rem;line-height:1.7;overflow-y:auto}.rules-content section{margin-bottom:4rem;scroll-margin-top:2rem}.rules-content h2{color:var(--c-text);border-bottom:1px solid var(--c-line-strong);font-family:var(--font-ui);align-items:center;gap:.5rem;margin-top:0;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.6rem;display:flex}.rules-content h3{color:var(--panel-text);margin-top:2rem;margin-bottom:1rem;font-size:1.3rem}.rules-content h4{color:var(--panel-text-muted);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:8px;margin:1.5rem 0 .5rem;font-size:1.1rem;display:flex}.rules-box{border-left:4px solid var(--c-accent);background:#ffffff0e;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:inset 0 0 20px #0000001a}.rules-note{background:#4682b426;border-left:4px solid #4682b4;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.rules-box.highlight{border-left-color:var(--c-accent);background:#ffffff0e}.rules-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:1.5rem 0;display:grid}.rule-tile{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;transition:transform .2s;display:flex}.rule-tile:hover{background:#ffffff14;transform:translateY(-3px)}.tile-visual-svg{filter:drop-shadow(0 4px 6px #0006);width:60px;height:60px;margin-bottom:.5rem}.tile-visual-svg.small{vertical-align:middle;width:40px;height:40px;margin-bottom:0}.rules-modal .rules-terrain-river{fill:#38afcd;stroke:#aaa;stroke-width:4px}.rules-modal .rules-terrain-castle{fill:#a29bfe;stroke:var(--castle-black-ring);stroke-width:5px;filter:drop-shadow(0 0 8px #8000ff73)}.rules-modal .rules-terrain-high-ground{fill:#af5718;stroke:#aaa;stroke-width:4px}.rules-modal .rules-terrain-sanctuary{fill:var(--sanctuary-wolf,#95a5a6);stroke:#f1c40f;stroke-width:5px;filter:drop-shadow(0 0 8px #95a5a6bf)}.rule-tile span{color:var(--panel-text-muted);font-size:.85rem;line-height:1.4}.rules-table{border-collapse:separate;border-spacing:0;background:var(--button-bg);border:1px solid var(--panel-border);border-radius:8px;width:100%;margin:1.5rem 0;overflow:hidden}.rules-table th,.rules-table td{text-align:left;border-bottom:1px solid var(--panel-border);vertical-align:middle;padding:1rem}.hex-cell{text-align:center;width:60px}.rules-table th{background:var(--panel-border);color:var(--accent-color);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.rules-table tr:last-child td{border-bottom:none}.rules-table tr:hover td{background:#ffffff08}.rule-icon{vertical-align:middle;filter:drop-shadow(0 2px 2px #00000080);width:28px;height:28px;margin-right:8px}.phase-icon{filter:brightness(1.2);width:24px;height:24px}.phase-cards,.victory-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:1.5rem 0;display:grid}.phase-card,.victory-card{text-align:center;background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;padding:1.5rem;transition:transform .2s}.phase-card:hover,.victory-card:hover{background:#ffffff0d;border-color:#bf811d61;transform:translateY(-5px)}.phase-card h4,.victory-card h4{color:var(--accent-color);justify-content:center;align-items:center;margin-top:0;font-size:1.2rem;display:flex}.rules-footer{text-align:center;color:#666;font-style:italic;font-family:var(--font-display);border-top:1px solid #ffffff1a;margin-top:4rem;padding-top:2rem}.rules-content::-webkit-scrollbar{width:8px}.rules-content::-webkit-scrollbar-track{background:#0000004d}.rules-content::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.rules-content::-webkit-scrollbar-thumb:hover{background:#666}@media (width<=600px){.rules-header h1{font-size:1.4rem}.rules-content{padding:1rem}.phase-cards,.victory-cards{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}body{background-color:var(--backgroundColor);margin:0;overflow:hidden}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.board{width:100%;height:100%;margin:0;padding:0;position:relative;overflow:hidden}.hexagon{fill:#ddd;stroke:#aaa;stroke-width:4px}.hexagon-dark{fill:var(--hex-dark);stroke:var(--hex-stroke);stroke-width:2px}.hexagon-mid{fill:var(--hex-mid);stroke:var(--hex-stroke);stroke-width:2px}.hexagon-light{fill:var(--hex-light);stroke:var(--hex-stroke);stroke-width:2px}.hexagon-river{fill:var(--river-color);stroke:var(--hex-stroke);stroke-width:2px}.hexagon-dark.hexagon-high-ground{fill:var(--high-ground-dark);stroke-width:4px;filter:url(#shadow)}.hexagon-mid.hexagon-high-ground{fill:var(--high-ground-mid);stroke-width:4px;filter:url(#shadow)}.hexagon-light.hexagon-high-ground{fill:var(--high-ground-light);stroke-width:4px;filter:url(#shadow)}.hexagon-white-castle{fill:var(--castle-white);stroke:#aaa;stroke-width:4px}.hexagon-black-castle{fill:var(--castle-black);stroke:#aaa;stroke-width:4px}.castle-owned-white{filter:drop-shadow(0 0 3px #2fc49b8c);stroke:var(--castle-white-ring)!important;stroke-width:6px!important}.castle-owned-black{filter:drop-shadow(0 0 3px #8c6cf08c);stroke:var(--castle-black-ring)!important;stroke-width:6px!important}.hexagon-castle-adjacent{fill:red}.hexagon,.hexagon-dark,.hexagon-mid,.hexagon-light,.hexagon-river,.hexagon-castles{transition:fill .3s}.board image{z-index:2;position:relative}.legal{fill:#0f0;stroke:#aaa;stroke-width:4px}.legalMoveDot{fill:var(--move-dot);cursor:pointer}.legalMoveDot:hover{fill:var(--move-dot-hover)}.legalAttackDot{fill:#9620121f;stroke:var(--capture-ring);stroke-width:5px;cursor:pointer}.legalAttackDot:hover{fill:#9620124d}.previewMoveDot{fill:#3498db40;stroke:#3498dbd9;stroke-width:3px;stroke-dasharray:5 5;cursor:pointer}.previewAttackDot{fill:#ff91003d;stroke:#ff9100db;stroke-width:3px;stroke-dasharray:5 5;cursor:pointer}.previewMoveDot.offTurn{fill:#2ecc7138;stroke:#2ecc71cc}.previewAttackDot.offTurn{fill:#f1c40f3d;stroke:#f1c40fd6}.last-move-overlay{pointer-events:none}.last-move-highlight{fill:#ffd6663d;stroke:#312b1bd6;stroke-width:5px;stroke-linejoin:round;filter:drop-shadow(0 0 5px #ffd666bf)}.last-move-highlight-from{fill:#ffd66629}.last-move-highlight-to{fill:#ffd6664d}.last-move-link{stroke:#312b1ba8;stroke-width:5px;stroke-linecap:round;stroke-dasharray:10 11}.legalAbilityDot{fill:#00fbff47;stroke:#ffd700f2;stroke-width:4px;cursor:pointer;filter:drop-shadow(0 0 8px #00fbffe6)}.legalAbilityDot:hover{fill:#ffd70073}.partnershipTargetDot{fill:#77dd773d;stroke:#ffec99fa;stroke-width:5px;cursor:pointer;filter:drop-shadow(0 0 9px #77dd77f2);animation:1.1s ease-in-out infinite alternate partnership-target-pulse}.partnershipTargetDot:hover{fill:#ffec997a}@keyframes partnership-target-pulse{0%{stroke-opacity:.66}to{stroke-opacity:1}}.piece{cursor:pointer;transition:x .15s ease-out,y .15s ease-out}.board.no-transition .piece{transition:none!important}:root{--backgroundColor:var(--c-bg);--colorShadeA:#6aa389;--colorShadeB:#79ba9c;--colorShadeC:#96e8c3;--colorShadeD:#bbe8d3;--colorShadeE:#cdffe8;--river-color:var(--hex-river);--high-ground-dark:var(--hex-high-dark);--high-ground-mid:var(--hex-high-mid);--high-ground-light:var(--hex-high-light);--castle-neutral:purple;--castle-white:#8fd9bd;--castle-black:#b9a8f2;--castle-white-stroke:var(--castle-white-ring);--castle-black-stroke:var(--castle-black-ring);--sanctuary-wolf:#95a5a6;--sanctuary-healer:#1abc9c;--sanctuary-ranger:#2ecc71;--sanctuary-druid:var(--c-accent);--sanctuary-sorcerer:#34495e;--sanctuary-phoenix:#e74c3c;--tutorial-sidebar-bg:var(--c-surface);--tutorial-button-bg:var(--c-surface-2);--tutorial-button-active:var(--c-accent);--tutorial-text-light:var(--c-muted);--tutorial-text-dark:var(--c-accent-ink);--tutorial-title-color:var(--c-text);--tutorial-course-surface:#ffffff12;--tutorial-course-surface-strong:#ffffff1c;--tutorial-course-text:var(--c-text);--tutorial-course-muted:var(--c-muted);--tutorial-course-border:#ffffff1f;--tutorial-course-bg:radial-gradient(circle at 16% 12%, #bf811d14, transparent 30%), linear-gradient(135deg, var(--c-bg), var(--c-surface));--panel-bg:var(--c-surface);--panel-text:var(--c-text);--panel-text-muted:var(--c-muted);--panel-border:var(--c-line);--button-bg:var(--c-surface-2);--button-hover-bg:var(--c-surface-3);--modal-bg:var(--c-surface);--icon-filter:invert(1);--hint-banner-bg:var(--c-surface-2);--accent-color:var(--c-accent)}[data-theme=light]{--backgroundColor:var(--c-bg);--panel-bg:var(--c-surface);--panel-text:var(--c-text);--panel-text-muted:var(--c-muted);--panel-border:var(--c-line);--button-bg:var(--c-surface-2);--button-hover-bg:var(--c-surface-3);--modal-bg:var(--c-surface);--icon-filter:none;--accent-color:var(--c-accent);--tutorial-sidebar-bg:var(--c-surface);--tutorial-button-bg:var(--c-surface-2);--tutorial-button-active:var(--c-accent);--tutorial-text-light:var(--c-text);--tutorial-text-dark:var(--c-accent-ink);--tutorial-title-color:var(--c-text);--tutorial-course-surface:#ffffffd1;--tutorial-course-surface-strong:#fffffff5;--tutorial-course-text:#16201c;--tutorial-course-muted:#4d5c57;--tutorial-course-border:#243e3629;--tutorial-course-bg:linear-gradient(135deg, var(--c-bg), #e8e8e8);--hint-banner-bg:var(--c-surface)}.hexagon-sanctuary{filter:drop-shadow(0 0 5px #ffffff80);cursor:pointer;transition:all .3s;stroke-width:5px!important}.hexagon-sanctuary:hover{filter:drop-shadow(0 0 12px #ffffffe6)brightness(1.2);stroke-width:6px!important}.hexagon-sanctuary-wolf{fill:var(--sanctuary-wolf);filter:drop-shadow(0 0 8px #bdc3c7);stroke:#bdc3c7!important}.hexagon-sanctuary-healer{fill:var(--sanctuary-healer);filter:drop-shadow(0 0 8px var(--sanctuary-healer));stroke:#16a085!important}.hexagon-sanctuary-ranger{fill:var(--sanctuary-ranger);filter:drop-shadow(0 0 8px var(--sanctuary-ranger));stroke:#27ae60!important}.hexagon-sanctuary-druid{fill:var(--sanctuary-druid);filter:drop-shadow(0 0 8px var(--sanctuary-druid));stroke:#2980b9!important}.hexagon-sanctuary-sorcerer{fill:var(--sanctuary-sorcerer);filter:drop-shadow(0 0 8px #2c3e50);stroke:#2c3e50!important}.hexagon-sanctuary-phoenix{fill:var(--sanctuary-phoenix);filter:drop-shadow(0 0 8px var(--sanctuary-phoenix));stroke:#c0392b!important}.hexagon-sanctuary-wolf-cooldown{filter:none;opacity:.75;fill:#4a4f50!important;stroke:#5a6062!important}.hexagon-sanctuary-healer-cooldown{filter:none;opacity:.75;fill:#3a6b64!important;stroke:#2d524d!important}.hexagon-sanctuary-ranger-cooldown{filter:none;opacity:.75;fill:#4a7a56!important;stroke:#3a6044!important}.hexagon-sanctuary-druid-cooldown{filter:none;opacity:.75;fill:#2c3e50!important;stroke:#34495e!important}.hexagon-sanctuary-sorcerer-cooldown{filter:none;opacity:.75;fill:#2a3540!important;stroke:#1e2830!important}.hexagon-sanctuary-phoenix-cooldown{filter:none;opacity:.75;fill:#8a3830!important;stroke:#6e2c25!important}.game-shell{--game-corner-chrome-left:16px;--game-corner-chrome-top:16px;--game-corner-chrome-width:68px;--game-corner-chrome-height:372px;height:var(--app-h);width:var(--app-w);background:var(--backgroundColor);font-family:var(--font-ui);grid-template-columns:minmax(0,1fr) 320px;display:grid;position:relative;overflow:hidden}.game-board-stage{grid-area:1/1;min-width:0;min-height:0;position:relative;overflow:hidden}.tutorial-game-shell{grid-template-columns:minmax(0,1fr);width:100%;height:100%}.tutorial-turn-indicator{z-index:260;min-height:42px;color:var(--c-text);pointer-events:none;background:#1f2423eb;border:1px solid #ffffff29;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:.84rem;font-weight:800;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 10px 24px #00000040}.tutorial-turn-indicator .phase-badge{transform-origin:50%;transform:scale(.78)}.tutorial-turn-player,.tutorial-turn-phase{white-space:nowrap;line-height:1}.tutorial-turn-indicator.w .tutorial-turn-player{color:var(--c-text)}.tutorial-turn-indicator.b .tutorial-turn-player{color:#c6b7ff}.game-panel{width:auto;height:var(--app-h);background:var(--c-surface);border-left:1px solid var(--c-line-strong);z-index:200;box-sizing:border-box;flex-direction:column;grid-area:1/2;gap:12px;min-width:0;padding:18px;display:flex;position:relative;box-shadow:inset 10px 0 22px #00000024}.player-section{flex-direction:column;align-items:center;gap:8px;display:flex}.player-clock-row{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.player-identity-badge{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface-2);min-width:0;min-height:34px;color:var(--c-text);font:inherit;letter-spacing:0;border-radius:6px;flex:auto;align-items:center;gap:7px;padding:6px 8px;font-size:.78rem;font-weight:850;line-height:1;display:inline-flex}.player-identity-badge.bot{color:#34255e;background:#e6deffdb}.player-identity-badge.interactive{cursor:pointer}.player-identity-badge.interactive:hover{border-color:var(--c-faint);background:var(--c-surface-3)}.player-identity-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.notation-section{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.game-controls{border-top:1px solid #0000001a;flex-direction:column;gap:10px;padding-top:12px;display:flex}.control-section{flex-direction:column;gap:6px;display:flex}.control-section-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.control-section-label{color:var(--c-faint);text-transform:uppercase;font-size:.68rem;font-weight:800;line-height:1}.save-status-chip{border:1px solid var(--c-line-strong);background:var(--c-surface-2);min-width:0;max-width:150px;color:var(--c-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:.66rem;font-weight:800;line-height:1;overflow:hidden}.control-button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.control-button{overflow-wrap:anywhere;min-width:0}.play-controls .control-button-row{grid-template-columns:1fr}.mobile-move-history{display:none}.mobile-move-history summary{cursor:pointer;border:1px solid var(--c-line-strong);min-height:36px;color:var(--c-text);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:.82rem;font-weight:800;list-style:none;display:flex}.mobile-move-history summary::-webkit-details-marker{display:none}.mobile-move-history summary span{color:var(--c-muted);font-size:.76rem;font-weight:700}.mobile-move-history-body{max-height:24dvh;margin-top:8px;overflow:auto}[data-theme=light] .game-panel{background:var(--c-bg);border-left:1px solid var(--c-line-strong);box-shadow:inset 10px 0 22px #0000000a}[data-theme=light] .player-identity-badge{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .player-identity-badge.interactive:hover{border-color:var(--c-line-strong);background:var(--c-surface-2)}[data-theme=light] .game-controls{border-top-color:#0000001f}[data-theme=light] .control-section-label{color:var(--c-muted)}[data-theme=light] .save-status-chip{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-muted)}[data-theme=light] .phase-counter{color:var(--c-text);background:#e5e5e5}[data-theme=light] .mobile-move-history summary{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .mobile-move-history summary span{color:var(--c-muted)}[data-theme=light] .history-table-container{background:#ffffffb8!important;border-color:#0000001f!important;box-shadow:inset 0 2px 4px #0000000f!important}[data-theme=light] .history-table-container .variation-block{color:var(--c-muted)!important;background:#0000000a!important}.game-status-toast{left:calc(50% + var(--rail-w) / 2);z-index:500;max-width:min(420px, calc(var(--app-w) - 32px));color:var(--c-text);text-align:center;pointer-events:none;background:#1c1e1ef0;border:1px solid #ffffff2e;border-radius:6px;padding:10px 14px;font-size:.9rem;font-weight:700;position:fixed;top:64px;transform:translate(-50%);box-shadow:0 8px 24px #00000042}.online-session-badge{top:14px;left:calc(var(--game-corner-chrome-left,16px) + var(--game-corner-chrome-width,68px) + 12px);z-index:20;color:#f5f5f5;text-align:center;overflow-wrap:anywhere;pointer-events:none;background:#000000b8;border:1px solid #ffffff2e;border-radius:6px;max-width:none;padding:6px 10px;font-size:.82rem;font-weight:700;line-height:1.25;position:absolute;right:340px;transform:none}@media (width>=761px){.game-shell.has-board-quick-controls .online-session-badge{right:432px}}.game-shell.navigation-open .online-session-badge{opacity:0;visibility:hidden}.online-state-page{--app-shell-mobile-padding-x:24px;--app-shell-mobile-padding-y:24px;height:var(--app-h);min-height:var(--app-h);width:var(--app-w);box-sizing:border-box;color:#f5f5f5;background:#151515;place-items:center;padding:24px;display:grid;overflow-y:auto}.online-state-panel{--app-shell-mobile-padding-x:0px;--app-shell-mobile-padding-y:0px;flex-direction:column;gap:14px;width:min(680px,100%);min-width:0;display:flex}.online-state-panel.compact{width:min(620px,100%)}.online-state-status{max-width:100%;color:var(--c-text);overflow-wrap:anywhere;text-align:left;background:#ffffff14;border:1px solid #ffffff24;border-radius:6px;padding:12px 14px;line-height:1.45}.online-state-actions{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.online-state-button{cursor:pointer;letter-spacing:0;overflow-wrap:anywhere;border:1px solid #ffffff3d;border-radius:6px;width:100%;min-height:44px;padding:10px 12px;font-weight:800}.online-state-button.primary{color:#fff;background:#2b6cb0;border-color:#2b6cb0}.online-state-button.accept{color:#fff;background:#2f855a;border-color:#2f855a}.online-state-button.neutral{border-color:var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.online-state-button.danger{color:#fff;background:#7f1d1d}.online-state-button:disabled{opacity:.55;cursor:not-allowed}.online-state-field{color:#f5f5f5;flex-direction:column;gap:6px;min-width:0;font-weight:800;display:flex}.online-state-field-heading{font-weight:800}.online-state-share-row{grid-template-columns:minmax(0,1fr) minmax(170px,auto);align-items:stretch;gap:10px;display:grid}.online-state-link-preview{background:var(--c-surface-3);min-width:0;color:var(--c-text);overflow-wrap:anywhere;word-break:break-word;border:1px solid #ffffff3d;border-radius:6px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.88rem;font-weight:700;line-height:1.35;display:block}.online-state-copy-button{align-self:stretch}.online-state-inline-status{color:var(--c-text);overflow-wrap:anywhere;font-size:.95rem;font-weight:700}.online-state-input{background:var(--c-surface-3);min-height:42px;color:var(--c-text);font:inherit;border:1px solid #ffffff3d;border-radius:6px;padding:8px 10px}.online-state-report-form{gap:10px;display:grid}.online-state-report-form label{gap:6px;display:grid}.online-state-report-form label>span{font-size:.86rem;font-weight:800}.online-state-report-details{resize:vertical;min-height:84px}.online-state-report-actions{grid-template-columns:minmax(80px,1fr) minmax(140px,auto) minmax(110px,auto);align-items:center;gap:10px;display:grid}.online-state-report-actions span{color:var(--c-text);font-weight:800}@media (width<=760px){.online-state-share-row,.online-state-report-actions{grid-template-columns:minmax(0,1fr)}}.confirm-dialog-backdrop{z-index:3000;background:#00000094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--c-line-strong);background:var(--c-surface);width:min(420px,100%);color:var(--c-muted);border-radius:6px;padding:22px;box-shadow:0 18px 55px #00000061}.confirm-dialog h2{color:var(--c-text);letter-spacing:0;margin:0;font-size:1.25rem}.confirm-dialog p{color:var(--c-muted);margin:10px 0 0;line-height:1.45}.first-run-intro-dialog{width:min(460px,100%)}.first-run-intro-kicker{color:var(--c-faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:900}.confirm-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.confirm-dialog-button{cursor:pointer;letter-spacing:0;border:1px solid #0000;border-radius:4px;min-height:42px;padding:10px 12px;font-weight:800}.confirm-dialog-button.neutral{border-color:var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.confirm-dialog-button.primary{background:var(--c-accent);color:var(--c-accent-ink)}.confirm-dialog-button.danger{color:#fff;background:#c0392b}.save-dialog{flex-direction:column;gap:14px;display:flex}.save-dialog-field{color:var(--c-text);flex-direction:column;gap:6px;font-weight:800;display:flex}.save-dialog-field input{background:var(--c-surface-3);min-height:42px;color:var(--c-text);font:inherit;border:1px solid #ffffff3d;border-radius:6px;padding:9px 10px}.save-dialog-error{color:#ffd7d2;background:#c0392b2e;border-radius:6px;padding:10px 12px;font-weight:800}.player-hud{z-index:200;pointer-events:none;flex-direction:column;gap:24px;display:flex;position:fixed;top:50%;right:40px;transform:translateY(-50%)}.player-status{box-shadow:none;color:var(--c-text);min-width:unset;background:0 0;border:none;border-radius:0;flex-direction:row;justify-content:flex-end;align-items:center;gap:12px;padding:8px 0;display:flex}.phase-badge{font-family:var(--font-ui);color:var(--c-text);background:0 0;flex-direction:row;align-items:center;gap:0;margin-left:0;padding:0 8px;display:flex}.phase-badge span{letter-spacing:.5px;text-transform:uppercase;font-size:1.25rem;font-weight:800;line-height:1.1}.phase-badge img{filter:brightness(0)invert(82%);opacity:1;width:40px;height:40px}.phase-counter{color:#fff;font-size:.85rem;font-weight:700;font-family:var(--font-ui);font-variant-numeric:lining-nums tabular-nums;letter-spacing:1px;text-align:center;background:#282828e6;border-radius:12px;min-width:32px;margin-left:8px;padding:4px 10px;box-shadow:0 2px 6px #0000004d}.clock{font-family:var(--font-ui);font-variant-numeric:lining-nums tabular-nums;color:#fff;box-shadow:none;background:0 0;border:none;margin:0;padding:0;font-size:1.1rem;font-weight:700}.clock-box{text-align:center;font-family:var(--font-ui);font-variant-numeric:lining-nums tabular-nums;border:2px solid #0003;border-radius:8px;min-width:120px;padding:10px 16px;font-size:1.25rem;font-weight:700}.clock-box.w{color:#000;background-color:#fff}.clock-box.b{color:#fff;background-color:#222}.clock-box.active{border-color:#0f0;box-shadow:0 0 10px #00ff004d}.victory-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.5s ease-in fadeIn;display:flex;position:fixed;top:0;left:0}.victory-banner{text-align:center;border-radius:16px;padding:40px 80px;animation:.5s ease-out slideIn;box-shadow:0 10px 40px #00000080}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.victory-banner.w{background:linear-gradient(135deg,gold,#ffb300);border:4px solid #fff}.victory-banner.w h1{color:#333;text-shadow:2px 2px 4px #ffffff80}.victory-banner.b{background:linear-gradient(135deg,#4a0080,#7c00cc);border:4px solid silver}.victory-banner.b h1{color:#fff;text-shadow:2px 2px 4px #00000080}.victory-banner h1{font-size:2.5rem;font-family:var(--font-display);margin:0 0 20px}.victory-banner button{cursor:pointer;color:#fff;background:#333;border:none;border-radius:8px;padding:15px 40px;font-size:1.2rem;font-weight:700;transition:transform .2s,background .2s}.victory-banner button:hover{background:#555;transform:scale(1.05)}.hamburger-container{top:var(--game-corner-chrome-top,16px);left:calc(var(--rail-w) + var(--game-corner-chrome-left,16px));z-index:300;position:fixed}.hamburger-container.open{z-index:4000}.hamburger-button{width:68px;height:48px}.game-corner-bars{max-width:calc(var(--app-w) - 32px);flex-direction:column;align-items:flex-start;gap:8px;display:flex}.game-corner-bar{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.game-corner-nav-column{align-items:stretch}.game-corner-button{color:#f3efe2;width:68px;height:48px;font:inherit;cursor:pointer;background:#20221fe6;border:1px solid #ffffff29;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:1.35rem;font-weight:900;transition:background .16s,border-color .16s,transform .16s;display:inline-flex;position:relative;box-shadow:0 8px 18px #0000003d}.game-corner-button:hover,.game-corner-button:focus-visible{background:#343732f0;border-color:#ffffff47;transform:translateY(-1px)}.game-corner-button.active,.game-corner-button.primary{background:var(--c-accent);color:#10180b;border-color:#77ad32}.game-corner-icon{object-fit:contain;object-position:center;filter:brightness(0)saturate()invert(93%)sepia(12%)saturate(320%)hue-rotate(10deg)brightness(103%)contrast(93%);opacity:.95;pointer-events:none;width:20px;height:20px;display:block}.game-corner-button-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:inherit;letter-spacing:0;pointer-events:none;font-size:.6rem;font-weight:850;line-height:1;display:block;overflow:hidden}.game-corner-button.active .game-corner-icon,.game-corner-button.primary .game-corner-icon{filter:brightness(0)saturate()invert(9%)sepia(9%)saturate(1412%)hue-rotate(42deg)brightness(94%)contrast(94%)}.game-corner-badge{background:var(--c-accent);color:#1b160d;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:950;line-height:1;display:inline-grid;position:absolute;top:-5px;right:-5px;box-shadow:0 2px 5px #0000004d}[data-theme=light] .game-corner-button{color:var(--c-text);background:#fffffff5;border-color:#2222222e;box-shadow:0 6px 16px #00000024}[data-theme=light] .game-corner-button:hover,[data-theme=light] .game-corner-button:focus-visible{background:#f6f6f1;border-color:#22222247}[data-theme=light] .game-corner-button.active,[data-theme=light] .game-corner-button.primary{background:var(--c-accent);color:#10180b;border-color:#5f8f27}[data-theme=light] .game-corner-icon{filter:brightness(0)saturate()invert(13%)sepia(8%)saturate(1012%)hue-rotate(91deg)brightness(88%)contrast(92%)}.hamburger-icon{font-size:1.18rem;line-height:1}.game-board-quick-controls{top:var(--game-corner-chrome-top,16px);z-index:300;align-items:center;gap:8px;display:flex;position:absolute;right:16px}.board-quick-button{width:78px}.hamburger-menu{background:var(--panel-bg);z-index:4002;flex-direction:column;width:260px;height:100vh;transition:left .3s;display:flex;position:fixed;top:0;left:-280px;box-shadow:4px 0 20px #00000080}.hamburger-menu.open{left:0}.menu-header{border-bottom:1px solid var(--panel-border);color:var(--panel-text);justify-content:space-between;align-items:center;padding:20px;font-size:1.2rem;font-weight:600;display:flex}.menu-close{color:#888;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.5rem;transition:color .2s}.menu-close:hover{color:#fff}.menu-items{padding:12px;padding-bottom:calc(28px + env(safe-area-inset-bottom));flex-direction:column;flex:auto;gap:4px;min-height:0;display:flex;overflow-y:auto}.menu-section{flex-direction:column;gap:4px;display:flex}.menu-item{color:var(--panel-text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;padding:14px 16px;font-size:1rem;transition:all .2s;display:flex}.menu-item-badge{background:var(--c-accent);color:#201812;border-radius:999px;place-items:center;min-width:22px;height:20px;margin-left:auto;padding:0 6px;font-size:.72rem;font-weight:900;line-height:1;display:inline-grid}.menu-item>span{overflow-wrap:anywhere;min-width:0}.menu-toggle-item{color:var(--panel-text);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:12px 16px;transition:all .2s;display:flex}.menu-toggle-item:hover{background:var(--panel-border)}.menu-toggle-item input{margin:0}.menu-item.primary{background:#4a90d929;border:1px solid #4a90d957}.menu-item-icon-frame{pointer-events:none;background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.menu-item.primary .menu-item-icon-frame{background:#62992424;border-color:#62992447}.menu-item-icon,.menu-item>img{object-fit:contain;object-position:center;filter:brightness(0)saturate()invert(94%)sepia(11%)saturate(315%)hue-rotate(9deg)brightness(104%)contrast(93%);opacity:.92;pointer-events:none;width:24px;height:24px;display:block}.menu-item.primary .menu-item-icon,.menu-item:hover .menu-item-icon,.menu-item:focus-visible .menu-item-icon,.menu-item:hover .menu-item-icon-frame,.menu-item:focus-visible .menu-item-icon-frame{opacity:1}[data-theme=light] .menu-item-icon,[data-theme=light] .menu-item>img{filter:brightness(0)saturate()invert(11%)sepia(8%)saturate(1012%)hue-rotate(91deg)brightness(90%)contrast(92%)}[data-theme=light] .menu-item-icon-frame{background:#1020180f;border-color:#1020181f}.menu-item-label{align-items:center;gap:12px;min-width:0;display:inline-flex}.menu-item-disclosure{color:var(--panel-text-muted);margin-left:auto;font-size:.9rem;font-weight:800}.menu-submenu{background-color:#0003;border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d}.menu-submenu .menu-toggle-item{padding-left:24px;font-size:.9rem}.menu-toggle-actions{gap:8px;padding:8px 12px;display:flex}.menu-mini-button{color:#ddd;cursor:pointer;font:inherit;background-color:#ffffff1a;border:none;border-radius:4px;flex:1;padding:6px;font-size:.75rem}.menu-section-label{color:var(--panel-text-muted);letter-spacing:.08em;text-transform:uppercase;padding:10px 16px 4px;font-size:.72rem;font-weight:800}.menu-section-note{color:var(--panel-text-muted);margin:-2px 16px 4px;font-size:.8rem;line-height:1.25}.menu-item:hover{background:var(--panel-border);color:var(--panel-text)}.menu-icon{text-align:center;width:24px;font-size:1.2rem}.menu-divider{background:var(--panel-border);height:1px;margin:8px 0}.menu-backdrop{z-index:4001;background:#0006;width:100vw;height:100vh;position:fixed;top:0;left:0}.hexagon-pledging-source{filter:drop-shadow(0 0 10px #fff);z-index:10;stroke:#fff!important}.hexagon-pledge-target{stroke-dasharray:5 5;cursor:pointer;animation:1.5s infinite pulse;fill:#ffffff4d!important;stroke:#fff!important}@keyframes pulse{50%{opacity:.8}to{opacity:.5}}.ability-bar{pointer-events:auto;z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;border-radius:8px;gap:10px;padding:10px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.ability-btn{color:#fff;cursor:pointer;font-family:var(--font-display);background:#4a4a4a;border:1px solid #666;border-radius:4px;padding:8px 16px;font-size:14px;transition:all .2s}.ability-btn:hover{background:#666;border-color:#888}.ability-btn:disabled{cursor:not-allowed;opacity:.62;background:#333;border-color:#555}.ability-btn.active{background:#3b82f6;border-color:#60a5fa;box-shadow:0 0 10px #3b82f680}.tooltip-hint-banner{top:16px;bottom:auto;left:calc(var(--rail-w) + var(--game-corner-chrome-left,16px) + var(--game-corner-chrome-width,68px) + 12px);width:calc(var(--app-w) - 432px);box-sizing:border-box;background:var(--hint-banner-bg);max-width:320px;color:var(--c-text);border:1px solid var(--c-line-strong);border-radius:var(--r-md);box-shadow:var(--shadow-2);z-index:250;align-items:center;gap:18px;padding:14px 24px;font-size:.95rem;font-weight:500;animation:.5s cubic-bezier(.68,-.55,.265,1.55) slideDownBounce;display:flex;position:fixed;right:auto;transform:none}.partnership-target-prompt{z-index:120;color:#fff4be;font-family:var(--font-display);pointer-events:none;background:#111f18e6;border:1px solid #ffec99b8;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:10px 16px;font-weight:700;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #00000073}.partnership-target-prompt span{color:#ffffffb8;font-family:inherit;font-size:.72rem;font-weight:500}@media (width>=761px) and (width<=960px){.game-shell.has-board-quick-controls .tooltip-hint-banner{width:min(260px, calc(var(--app-w) - 526px));gap:10px;max-width:260px;padding:10px 14px;font-size:.84rem}}@keyframes slideDownBounce{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.hint-dismiss-btn{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:5px;padding:6px 14px;font-size:.85rem;font-weight:600;transition:all .2s}.hint-dismiss-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:scale(1.05)}.tutorial-sidebar{background-color:var(--tutorial-sidebar-bg);color:var(--tutorial-text-light)}.tutorial-nav-btn{background-color:var(--tutorial-button-bg);color:var(--tutorial-text-light);cursor:pointer;border:2px solid #0000;border-radius:6px;flex-direction:column;align-items:center;gap:2px;min-width:50px;padding:6px 8px;transition:all .2s;display:flex}.tutorial-nav-btn.active{background-color:var(--tutorial-button-active);color:var(--tutorial-text-dark);border-color:var(--tutorial-button-active)}.tutorial-nav-btn:hover:not(.active){background-color:#ffffff1a}.tutorial-quick-nav{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;gap:6px;padding:8px 0;display:flex}.tutorial-quick-nav-icon{width:28px;height:28px}.tutorial-nav-btn.active .tutorial-quick-nav-icon{filter:brightness(.3)}.tutorial-nav-btn span{font-size:.56rem;font-weight:800;line-height:1.05}.tutorial-description{white-space:pre-wrap;margin:0;line-height:1.6}.tutorial-callout{white-space:pre-wrap;border-radius:8px;padding:12px;font-size:.875rem;line-height:1.6}.tutorial-callout.dark{background:#6299241f;border:1px solid #6299243d}.tutorial-callout.light{background-color:#e8e8f0}.tutorial-list-section h3{color:#2476a6;margin:0 0 8px}.tutorial-list-section.dark h3{color:var(--c-accent)}.tutorial-list-section ul{margin:0;padding-left:20px}.tutorial-list-section li{margin-bottom:4px}.tutorial-objectives{gap:10px;display:grid}.tutorial-objective-list{gap:8px;display:grid}.tutorial-objective-progress{color:var(--panel-text-muted);margin:0;font-size:.86rem;line-height:1.35}.tutorial-objective-item{overflow-wrap:anywhere;background:#ffffff0f;border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:8px;line-height:1.4;display:grid}.tutorial-objective-item input{width:16px;height:16px;accent-color:var(--c-accent);margin:2px 0 0}.tutorial-objective-placeholder{color:var(--panel-text-muted);margin:0;line-height:1.4}.tutorial-review-button{min-height:36px;color:var(--panel-text);cursor:pointer;font:inherit;background:#6299242e;border:1px solid #6299246b;border-radius:6px;padding:9px 12px;font-weight:800}.tutorial-review-button:disabled{color:var(--c-accent-ink);background:var(--c-accent);cursor:default}.tutorial-title{color:var(--tutorial-title-color);margin:0}.tutorial-lesson-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tutorial-lesson-meta{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;min-width:0;display:flex}.tutorial-module-chip,.tutorial-progress-saved-chip,.tutorial-lesson-progress-summary{color:var(--panel-text);white-space:nowrap;background:#ffffff12;border:1px solid #ffffff24;border-radius:6px;flex:none;padding:5px 9px;font-size:.74rem;font-weight:800;line-height:1.2}.tutorial-module-chip{color:var(--c-accent-ink);background:var(--c-accent);border-color:var(--c-accent)}.tutorial-progress-saved-chip{color:var(--c-text);background:#6299241f;border-color:#62992447}.tutorial-reset-short{display:none}.tutorial-container.tutorial-container-course{background:var(--tutorial-course-bg);color:var(--panel-text);font-family:var(--font-ui);grid-template-columns:360px minmax(0,1fr)}.tutorial-course-sidebar{gap:18px}@media (width>=761px) and (width<=1080px){.tutorial-container.tutorial-container-course{grid-template-columns:280px minmax(0,1fr)}}.tutorial-course-progress-card{border:1px solid var(--tutorial-course-border);background:var(--tutorial-course-surface);border-radius:8px;gap:12px;padding:16px;display:grid}.tutorial-course-section-map{border:1px solid var(--tutorial-course-border);background:#ffffff0b;border-radius:8px;gap:8px;padding:14px;display:grid}.tutorial-course-section-map h2{color:var(--tutorial-course-text);letter-spacing:0;text-transform:uppercase;margin:0 0 2px;font-size:.86rem;font-weight:900}.tutorial-course-section-link{min-width:0;color:var(--tutorial-course-text);border:1px solid #0000;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:9px 10px;text-decoration:none;display:grid}.tutorial-course-section-link:hover,.tutorial-course-section-link:focus-visible{background:var(--tutorial-course-surface);border-color:#6299246b}.tutorial-course-section-label{text-overflow:ellipsis;white-space:nowrap;font-weight:850;overflow:hidden}.tutorial-course-section-count{color:var(--tutorial-course-muted);font-weight:800}.tutorial-course-section-track{background:var(--tutorial-course-border);border-radius:999px;grid-column:1/-1;height:5px;overflow:hidden}.tutorial-course-section-track span{border-radius:inherit;background:var(--c-accent);height:100%;display:block}.tutorial-course-progress-heading{color:var(--tutorial-course-text);justify-content:space-between;align-items:baseline;gap:12px;font-weight:800;display:flex}.tutorial-course-progress-heading strong{font-size:1.6rem;line-height:1}.tutorial-course-progress-track{background:var(--tutorial-course-border);border-radius:999px;width:100%;height:10px;overflow:hidden}.tutorial-course-progress-track span{border-radius:inherit;background:var(--c-accent);height:100%;display:block}.tutorial-course-progress-meta{color:var(--tutorial-course-muted);font-weight:700}.tutorial-course-actions{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.tutorial-course-primary-action{background:var(--c-accent);min-height:42px;color:var(--c-accent-ink);cursor:pointer;font:inherit;border:0;border-radius:6px;padding:10px 14px;font-weight:900;line-height:1.1}.tutorial-course-primary-action:hover{filter:brightness(1.05)}.tutorial-course-main{min-width:0;height:var(--app-h);box-sizing:border-box;color:var(--tutorial-course-text);font-family:var(--font-ui);padding:36px clamp(24px,5vw,72px);overflow-y:auto}.tutorial-course-hero{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.tutorial-course-kicker{color:var(--c-accent);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:900}.tutorial-course-hero h2{color:var(--tutorial-course-text);letter-spacing:0;margin:4px 0 0;font-size:clamp(2rem,4vw,3.8rem);line-height:.95}.tutorial-course-current-panel{background:#6299241a;border:1px solid #62992461;border-radius:8px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:28px;padding:18px;display:grid}.tutorial-course-current-visual,.tutorial-course-card-visual{background:#ffffff14;border-radius:6px;place-items:center;display:inline-grid}.tutorial-course-current-visual{width:72px;height:72px}.tutorial-course-current-visual img,.tutorial-course-current-visual svg{object-fit:contain;width:52px;height:52px;filter:var(--icon-filter)}.tutorial-course-current-copy{gap:6px;min-width:0;display:grid}.tutorial-course-current-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tutorial-course-current-meta span,.tutorial-course-current-progress{width:fit-content;max-width:100%;color:var(--tutorial-course-muted);background:#ffffff17;border-radius:999px;padding:5px 8px;font-size:.76rem;font-weight:850;line-height:1.2;display:inline-flex}.tutorial-course-current-meta span:first-child{color:var(--c-accent-ink);background:var(--c-accent)}.tutorial-course-current-panel h3{color:var(--tutorial-course-text);margin:0;font-size:1.42rem;line-height:1.1}.tutorial-course-current-panel p{color:var(--tutorial-course-muted);overflow-wrap:anywhere;margin:0;line-height:1.42}.tutorial-course-modules{gap:28px;display:grid}.tutorial-course-module{gap:12px;display:grid}.tutorial-course-module-heading{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.tutorial-course-module-heading img{object-fit:contain;width:42px;height:42px;filter:var(--icon-filter);opacity:.9}.tutorial-course-module-heading h3{color:var(--tutorial-course-text);margin:0;font-size:1.24rem;line-height:1.1}.tutorial-course-module-heading p{color:var(--tutorial-course-muted);margin:4px 0 0;line-height:1.35}.tutorial-course-module-progress{background:var(--tutorial-course-border);border-radius:999px;width:min(320px,100%);height:6px;margin-top:9px;overflow:hidden}.tutorial-course-module-progress span{border-radius:inherit;background:var(--c-accent);height:100%;display:block}.tutorial-course-module-heading>span{background:var(--tutorial-course-surface);color:var(--tutorial-course-text);white-space:nowrap;border-radius:999px;padding:6px 10px;font-weight:800}.tutorial-course-grid{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:10px;display:grid}.tutorial-course-card{border:1px solid var(--tutorial-course-border);background:var(--tutorial-course-surface);min-height:92px;color:var(--tutorial-course-text);cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.tutorial-course-card:hover{background:var(--tutorial-course-surface-strong);border-color:#6299246b}.tutorial-course-card.current{background:#6299241a;border-color:#62992494}.tutorial-course-card.reviewed{background:#6299241f;border-color:#6299247a}.tutorial-course-card-visual{width:42px;height:42px}.tutorial-course-card-visual img,.tutorial-course-card-visual svg{object-fit:contain;width:42px;height:42px;filter:var(--icon-filter)}.tutorial-course-card-content{gap:4px;min-width:0;display:grid}.tutorial-course-card-title{font-size:1.05rem;font-weight:850;line-height:1.15}.tutorial-course-card-summary{color:var(--tutorial-course-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.35;display:-webkit-box;overflow:hidden}.tutorial-course-card-meta{color:var(--c-accent);overflow-wrap:anywhere;font-size:.78rem;font-weight:800}.tutorial-course-card-status{background:var(--tutorial-course-surface-strong);min-width:42px;color:var(--tutorial-course-text);text-align:center;border-radius:999px;align-self:start;padding:5px 8px;font-weight:850}.tutorial-course-card-status.current,.tutorial-course-card-status.reviewed{background:var(--c-accent);color:var(--c-accent-ink)}.game-setup-shell{height:var(--app-h);background:var(--panel-bg);color:var(--panel-text);grid-template-columns:380px minmax(0,1fr);display:grid;overflow:hidden}.setup-sidebar{background:var(--tutorial-sidebar-bg);box-sizing:border-box;width:380px;height:100%;font-family:var(--font-ui);border-right:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;gap:20px;padding:20px;display:flex;overflow-y:auto}.setup-preview{background:radial-gradient(ellipse at 50% 45%, #d1a04a12, transparent 60%), var(--c-bg);min-width:0;height:100%;position:relative;overflow:hidden}.setup-preview-label{color:var(--c-muted);background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-pill);padding:4px 10px;font-size:13px;position:absolute;bottom:20px;left:20px}.setup-sidebar.new-game-panel{background:var(--c-surface);border-right:1px solid var(--c-line);gap:18px;padding:22px 20px 0}.new-game-panel .app-shell-header{margin-bottom:0}.new-game-panel .app-shell-title-block h1{font-size:var(--fs-xl);margin:0}.new-game-section{min-width:0}.new-game-link{color:var(--c-accent);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.new-game-advanced{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2)}.new-game-advanced>summary{color:var(--c-muted);cursor:pointer;justify-content:space-between;padding:10px 12px;font-weight:500;list-style:none;display:flex}.new-game-advanced>summary::-webkit-details-marker{display:none}.new-game-advanced>summary:after{content:"+";font-weight:700}.new-game-advanced[open]>summary:after{content:"–"}.new-game-advanced-body{gap:16px;padding:4px 12px 14px;display:grid}.new-game-footer.setup-primary-actions{padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid var(--c-line);background:var(--c-surface);border-radius:0;gap:8px;margin:auto -20px 0;position:sticky;bottom:0}.new-game-summary{color:var(--c-muted);font-size:14px}.tutorial-container{height:var(--app-h);width:var(--app-w);background:var(--backgroundColor);grid-template-columns:340px minmax(0,1fr);display:grid;overflow:hidden}.tutorial-sidebar{box-sizing:border-box;background-color:var(--tutorial-sidebar-bg);width:100%;min-width:0;color:var(--tutorial-text-light);z-index:10;font-family:var(--font-ui);flex-direction:column;gap:16px;padding:20px;display:flex;overflow-y:auto}.setup-primary-actions{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;gap:10px;padding:12px;display:grid}.setup-rating-mode{box-sizing:border-box;background:#1e1e1edb;border:1px solid #ffffff14;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px;display:flex}.setup-rating-options{background:#00000038;border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;min-width:148px;padding:3px;display:inline-grid}.setup-rating-option{color:#d8d8d8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;min-width:66px;padding:8px 10px;font-size:.85rem;font-weight:700}.setup-rating-option.selected{background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-1), inset 0 0 0 1px var(--c-line-strong);border-color:#0000}.setup-rating-option:disabled{cursor:not-allowed;opacity:.44}.setup-custom-status{color:#d8d8d8;flex-basis:100%;gap:3px;min-width:0;padding-top:4px;font-size:.78rem;line-height:1.25;display:grid}.setup-custom-status strong{color:#f2c36b;font-size:.8rem}.setup-custom-status span{overflow-wrap:anywhere}.setup-rating-option:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.setup-online-opponent-panel{box-sizing:border-box;background:#1e1e1edb;border:1px solid #ffffff14;border-radius:8px;gap:12px;width:100%;padding:12px;display:grid}.setup-online-opponent-summary,.setup-online-side-picker{gap:5px;min-width:0;display:grid}.setup-online-opponent-summary span,.setup-online-side-picker>span{color:#a8a8a8;text-transform:uppercase;font-size:.78rem;font-weight:850;line-height:1.15}.setup-online-opponent-summary strong{color:#d8d8d8;font-size:.98rem;font-weight:850;line-height:1.2}.setup-online-side-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.setup-side-option{color:#d8d8d8;cursor:pointer;min-width:0;min-height:70px;font:inherit;background:#ffffff0e;border:1px solid #ffffff2e;border-radius:7px;place-items:center;gap:5px;padding:8px 5px;font-size:.82rem;font-weight:750;line-height:1.1;display:grid}.setup-side-option>img{object-fit:contain;width:34px;height:34px}.setup-side-random-icon{width:46px;height:34px;display:block;position:relative}.setup-side-random-icon img{object-fit:contain;width:28px;height:28px;position:absolute;top:3px}.setup-side-random-icon img:first-child{z-index:2;filter:drop-shadow(1px 0 #00000052);left:0}.setup-side-random-icon img:last-child{z-index:1;right:0}.setup-side-option span{overflow-wrap:anywhere;text-align:center;max-width:100%}.setup-side-option.selected{color:#fff;background:#2f855a;border-color:#ffffffb8}.setup-side-option:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}[data-theme=light] .setup-online-opponent-panel{border-color:var(--c-line-strong);background:var(--c-surface)}[data-theme=light] .setup-online-opponent-summary span,[data-theme=light] .setup-online-side-picker>span{color:#666}[data-theme=light] .setup-online-opponent-summary strong{color:var(--c-text)}[data-theme=light] .setup-side-option{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-muted)}[data-theme=light] .setup-side-option.selected{color:var(--c-surface);background:#2f855a;border-color:#2f855a}.setup-action-button{border-radius:var(--r-md);border:1px solid var(--c-line-strong);background:var(--c-surface-2);width:100%;min-height:46px;color:var(--c-text);cursor:pointer;font:inherit;letter-spacing:0;overflow-wrap:anywhere;padding:11px 12px;font-size:.94rem;font-weight:700;line-height:1.15;transition:background-color .15s}.setup-action-button.play{background:var(--c-accent);color:var(--c-accent-ink);border-color:#0000}.setup-action-button.play:hover{background:var(--c-accent-hover)}.setup-action-button:not(.play):hover{background:var(--c-surface-3)}.tutorial-progress{min-height:34px;color:var(--panel-text);background:#ffffff14;border-radius:6px;justify-content:center;align-items:center;padding:0 10px;font-size:.85rem;font-weight:700;display:inline-flex}.tutorial-progress[data-display=screen-reader]{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;min-height:0;margin:-1px;padding:0;position:absolute;overflow:hidden}.tutorial-reset-button{min-height:36px;color:var(--panel-text);border:1px solid var(--panel-border);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-weight:800}.tutorial-reset-button:hover{background:var(--button-hover-bg)}.tutorial-progress-controls{z-index:19;background:var(--tutorial-sidebar-bg);border-bottom:1px solid #ffffff1a;grid-template-columns:1fr;align-items:center;gap:8px;padding:10px 0;display:grid;position:sticky;top:0}.tutorial-control-strip{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;display:grid}.tutorial-lesson-footer-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:4px;display:grid}.tutorial-step-button{color:#fff;cursor:pointer;background:#2a4a7a;border:none;border-radius:6px;flex:1;min-height:36px;padding:10px;font-weight:700}.tutorial-step-button:disabled{color:#666;cursor:not-allowed;background:#333}.tutorial-board-stage{min-width:0;min-height:0;height:var(--app-h);position:relative}@media (width<=760px){.game-shell{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.game-board-stage{grid-area:1/1}.game-panel{height:auto;max-height:calc(var(--app-h) * .46);padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--c-surface);border-left:0;border-top:1px solid var(--c-line-strong);grid-area:2/1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px;display:grid;overflow:hidden auto;box-shadow:0 -8px 24px #00000029}[data-theme=light] .game-panel{background:var(--c-bg);border-top:1px solid var(--c-line-strong);box-shadow:0 -8px 24px #00000014}.notation-section{display:none}.mobile-move-history{display:block}.player-section{gap:4px;min-width:0}.mobile-move-history,.game-controls,.vp-scoreboard{grid-column:1/-1}.clock-box{min-width:104px;padding:8px 12px;font-size:1rem}.phase-badge img{width:32px;height:32px}.phase-counter{padding:4px 8px;font-size:.8rem}.game-controls{gap:8px;padding-top:8px}.control-section-header{justify-content:flex-start;margin-bottom:5px}.control-section{gap:0}.control-section-label{display:none}.save-status-chip{text-align:left;max-width:100%;padding:3px 7px;font-size:.62rem}.control-button-row{gap:8px}.save-controls .control-button-row,.online-link-controls .control-button-row{grid-template-columns:repeat(3,minmax(0,1fr))}.play-controls{display:none}.game-shell.navigation-open .game-panel{visibility:hidden}.ability-bar{bottom:calc(var(--app-h) * .46 + max(var(--bar-h), env(safe-area-inset-bottom,0px)) + 16px);max-width:calc(var(--app-w) - 24px);flex-wrap:wrap;justify-content:center}.control-button.ui-btn{min-height:34px;padding:6px 8px;font-size:14px}.mobile-move-history summary{min-height:40px;padding:6px 10px}.game-shell{--game-corner-chrome-left:12px;--game-corner-chrome-top:12px;--game-corner-chrome-width:44px;--game-corner-chrome-height:44px}.hamburger-container{top:var(--game-corner-chrome-top,12px);left:var(--game-corner-chrome-left,12px)}.game-corner-bars{max-width:calc(var(--app-w) - 24px);gap:6px}.game-corner-bar{gap:5px}.hamburger-button,.game-corner-button{width:44px;height:44px}.game-corner-icon{width:24px;height:24px}.game-corner-button-label,.game-board-quick-controls,.game-corner-button:not(.hamburger-button),.game-corner-button.mobile-optional{display:none}.hamburger-menu{width:min(320px,88vw);height:100dvh;left:min(-320px,-88vw)}.menu-header{padding:16px 18px}.menu-items{gap:2px;padding:10px}.menu-item{padding:12px 14px}.menu-section-label{padding:8px 14px 2px}.menu-section-note{display:none}.game-status-toast,.tooltip-hint-banner{max-width:calc(var(--app-w) - 28px);top:68px}.tooltip-hint-banner{display:none}.online-session-badge{width:min(50vw,220px);max-width:calc(var(--app-w) - 80px);white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;padding:4px 8px;font-size:.68rem;line-height:1.15;top:12px;left:auto;right:12px;overflow:hidden}.game-shell.has-board-quick-controls .online-session-badge{right:12px}.tooltip-hint-banner{gap:10px;padding:12px 14px;font-size:.85rem}.game-setup-shell{height:var(--app-h);background:var(--tutorial-sidebar-bg);display:block;overflow-y:auto}.setup-sidebar{width:100%;height:auto;min-height:var(--app-h);border-right:0;padding:20px}.setup-preview{display:none}.tutorial-container{grid-template-columns:1fr;grid-template-rows:minmax(0, calc(var(--app-h) / 2)) minmax(0, calc(var(--app-h) / 2));height:var(--app-h);overflow:hidden}.tutorial-sidebar{--app-shell-mobile-padding-y:16px;--app-shell-mobile-padding-x:20px;max-height:calc(var(--app-h) / 2);padding:16px 20px;overflow-y:auto}.tutorial-reset-button{flex:130px}.tutorial-progress{flex:none}.tutorial-progress-controls{padding:8px 0 10px;position:static}.tutorial-control-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-reset-full{display:none}.tutorial-reset-short{display:inline}.tutorial-board-stage{height:calc(var(--app-h) / 2);min-height:0}.tutorial-title{font-size:1.25rem}.tutorial-container-course{height:var(--app-h);display:block;overflow-y:auto}.tutorial-container-course .tutorial-course-sidebar{max-height:none}.tutorial-container-course .tutorial-course-progress-card .tutorial-course-actions,.tutorial-container-course .tutorial-course-progress-card .tutorial-progress-saved-chip,.tutorial-course-hero .tutorial-course-primary-action,.tutorial-course-kicker,.tutorial-course-section-map{display:none}.tutorial-course-main{height:auto;padding:4px 16px 24px;overflow:visible}.tutorial-course-hero{flex-direction:column;align-items:stretch;margin-bottom:12px}.tutorial-course-current-panel{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:12px;margin-bottom:20px;padding:14px}.tutorial-course-current-visual{width:48px;height:48px}.tutorial-course-current-visual img,.tutorial-course-current-visual svg{width:34px;height:34px}.tutorial-course-current-panel .tutorial-course-primary-action{grid-column:1/-1}.tutorial-course-current-panel h3{font-size:1.14rem}.tutorial-course-module-heading{grid-template-columns:38px minmax(0,1fr)}.tutorial-course-module-heading>span{grid-column:1/-1;justify-self:start}.tutorial-course-card{grid-template-columns:42px minmax(0,1fr);min-height:84px}.tutorial-course-card-status{grid-column:1/-1;justify-self:start}.tutorial-lesson-footer-actions{grid-template-columns:1fr}}@media (width<=760px) and (height<=720px){.online-state-page{--app-shell-mobile-padding-x:14px;--app-shell-mobile-padding-y:14px;align-items:start;padding:14px}.online-state-panel{gap:10px}.online-state-status{padding:10px 12px;font-size:.9rem}.tutorial-container{grid-template-rows:minmax(0, calc(var(--app-h) * .46)) minmax(0, calc(var(--app-h) * .54))}.tutorial-sidebar{--app-shell-mobile-padding-y:12px;--app-shell-mobile-padding-x:16px;max-height:calc(var(--app-h) * .46);gap:9px;padding:12px 16px}.tutorial-sidebar .app-shell-header{margin-bottom:10px}.tutorial-sidebar .app-shell-title-block{display:none}.tutorial-title{font-size:1.05rem}.tutorial-lesson-header{gap:6px}.tutorial-lesson-progress-summary{padding:4px 7px;font-size:.68rem}.tutorial-module-chip,.tutorial-progress-saved-chip{padding:4px 7px;font-size:.66rem}.tutorial-progress-controls{gap:6px;padding:6px 0 8px}.tutorial-reset-full{display:none}.tutorial-reset-short{display:inline}.tutorial-step-button,.tutorial-reset-button,.tutorial-progress{min-height:34px;font-size:.78rem}.tutorial-quick-nav{gap:4px;padding:5px 0}.tutorial-nav-btn{min-width:42px;padding:4px 5px}.tutorial-quick-nav-icon{width:22px;height:22px}.tutorial-description,.tutorial-callout,.tutorial-list-section{font-size:.86rem;line-height:1.42}.tutorial-objective-item{padding:7px}.tutorial-lesson-footer-actions{gap:6px;padding-top:0}.tutorial-board-stage{height:calc(var(--app-h) * .54)}}.new-game-friends{margin-top:var(--space-4,16px)}.new-game-friend-list{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);flex-direction:column;max-height:264px;display:flex;overflow-y:auto}.new-game-friend{color:var(--c-text);font:500 15px/1.2 var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.new-game-friend+.new-game-friend{border-top:1px solid var(--c-line)}.new-game-friend:hover{background:var(--c-surface-2)}.new-game-friend[aria-checked=true]{border-left-color:var(--c-accent);background:var(--c-accent-soft)}.new-game-friend:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.new-game-friend-avatar{background:var(--c-surface-3);width:32px;height:32px;font:700 15px/1 var(--font-display);border-radius:50%;place-items:center;display:inline-grid;position:relative}.new-game-friend-link{background:var(--c-accent-soft);color:var(--c-accent)}.new-game-friend-link svg{width:17px;height:17px}.new-game-friend-dot{border:2px solid var(--c-surface);background:var(--c-success,#3f9d5a);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.new-game-friend-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.new-game-friend-status{color:var(--c-muted);font-size:13px}.new-game-rule{margin:var(--space-4,16px) 0}.app-shell-header{color:inherit;font-family:var(--font-ui);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;margin-bottom:12px;display:flex}.app-shell-header.nav-only{margin-bottom:8px}.app-shell-nav{align-items:center;gap:10px;min-width:0;display:flex}.app-shell-nav-primary{flex-wrap:nowrap;flex:auto;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.app-shell-nav-actions{flex:0 auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.app-shell-destinations{scrollbar-width:thin;flex-wrap:nowrap;flex:auto;gap:6px;min-width:0;display:flex;overflow-x:auto}.app-shell-back-button,.app-shell-destination{min-height:34px;color:inherit;cursor:pointer;font:inherit;letter-spacing:0;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff2e;border-radius:6px;padding:7px 10px;font-size:.84rem;font-weight:750;line-height:1.1}.app-shell-destination{flex:none;justify-content:center;align-items:center;gap:7px;display:inline-flex}.app-shell-back-button{border-color:var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text);flex:none;justify-content:center;align-items:center;display:inline-flex}.app-shell-back-label{min-width:0}.app-shell-destination.active,.app-shell-destination[aria-current=page]{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink)}.app-shell-destination:disabled{cursor:default;opacity:1}.app-shell-destination-icon{flex:0 0 18px;place-items:center;width:18px;height:18px;display:inline-grid}.app-shell-destination-icon img{object-fit:contain;filter:drop-shadow(0 1px #0000002e);width:16px;height:16px;display:block}.app-shell-destination-label{min-width:0}.app-shell-destination-badge{background:var(--c-accent);color:#201812;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:900;line-height:1;display:inline-grid}.app-shell-back-button:hover:not(:disabled),.app-shell-destination:hover:not(:disabled){background:#ffffff29}.app-shell-back-button:hover:not(:disabled){background:var(--c-line-strong)}.app-shell-title-block{min-width:0}.app-shell-kicker{color:var(--c-accent);letter-spacing:0;text-transform:uppercase;font-size:.76rem;font-weight:800;line-height:1.2}.app-shell-title-block h1{letter-spacing:0;margin:4px 0 0;font-size:clamp(1.18rem,1.7vw,1.56rem);line-height:1.05}.app-shell-title-block p{max-width:760px;color:var(--c-muted);margin:7px 0 0;line-height:1.4}[data-theme=light] .app-shell-back-button,[data-theme=light] .app-shell-destination{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .app-shell-destination.active,[data-theme=light] .app-shell-destination[aria-current=page]{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink)}[data-theme=light] .app-shell-back-button:hover:not(:disabled),[data-theme=light] .app-shell-destination:hover:not(:disabled){background:var(--c-surface-2)}[data-theme=light] .app-shell-title-block p{color:var(--c-muted)}[data-theme=light] .app-shell-destination-icon img{filter:brightness(0)saturate()invert(12%)sepia(0%)saturate(0%)hue-rotate(190deg)brightness(94%)contrast(90%)}[data-theme=light] .app-shell-destination.active .app-shell-destination-icon img,[data-theme=light] .app-shell-destination[aria-current=page] .app-shell-destination-icon img{filter:brightness(0)saturate()invert(9%)sepia(19%)saturate(741%)hue-rotate(90deg)brightness(91%)contrast(91%)}@media (width<=760px){.app-shell-header{gap:7px;margin-bottom:10px}.app-shell-nav-primary{gap:6px}.app-shell-nav{flex-wrap:wrap;align-items:stretch;gap:7px}.app-shell-nav-actions{flex:1 0 100%;justify-content:flex-start;width:100%}.app-shell-nav-actions>*{width:100%}.app-shell-back-button,.app-shell-destination{min-height:34px;padding:7px 9px;font-size:.78rem}.app-shell-destinations{gap:5px}.app-shell-title-block h1{font-size:1.18rem}.app-shell-title-block p{font-size:.86rem}}@media (width<=520px){.app-shell-nav-primary{flex-wrap:wrap;overflow:visible}.app-shell-back-button{color:#0000;width:44px;min-height:44px;padding-inline:7px;position:relative;overflow:hidden}.app-shell-back-button:after{content:"<";color:var(--c-text);place-items:center;font-size:.9rem;font-weight:900;display:grid;position:absolute;inset:0}[data-theme=light] .app-shell-back-button:after{color:var(--c-text)}.app-shell-back-label{display:none}.app-shell-destinations{flex:1 0 100%;width:100%;padding-bottom:2px}.app-shell-destination{width:44px;min-height:44px;padding-inline:7px;position:relative}.app-shell-destination-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-shell-destination-badge{min-width:15px;height:15px;padding:0 4px;font-size:.58rem;position:absolute;top:2px;right:2px}}.setup-sidebar .app-shell-destination,.tutorial-sidebar .app-shell-destination{width:36px;padding-inline:7px;position:relative}.setup-sidebar .app-shell-destination-label,.tutorial-sidebar .app-shell-destination-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.setup-sidebar .app-shell-destination-badge,.tutorial-sidebar .app-shell-destination-badge{min-width:15px;height:15px;padding:0 4px;font-size:.58rem;position:absolute;top:2px;right:2px}.game-library-page{height:var(--app-h);min-height:var(--app-h);box-sizing:border-box;background:linear-gradient(135deg, #1e2322f5, #181e22fa), var(--backgroundColor);color:var(--c-text);font-family:var(--font-ui);padding:clamp(20px,4vw,40px);overflow-y:auto}.game-library-page .app-shell-header{color:var(--c-text)}.game-library-muted,.saved-game-meta,.library-label{color:var(--c-muted)}.game-library-layout{grid-template-columns:minmax(320px,1.2fr) minmax(320px,.8fr);align-items:start;gap:22px;display:grid}.game-library-panel{background:#ffffff12;border:1px solid #ffffff29;border-radius:8px;padding:18px;box-shadow:0 18px 45px #0000003d}.game-library-panel h2{letter-spacing:0;margin:0 0 16px}.game-library-import{display:block}.game-library-import summary{cursor:pointer;align-items:center;min-height:42px;font-size:1.1rem;font-weight:800;list-style:none;display:flex}.game-library-import summary::-webkit-details-marker{display:none}.game-library-import summary:after{content:"+";color:var(--c-accent);margin-left:auto;font-weight:900}.game-library-import[open] summary:after{content:"-"}.game-library-import-body{margin-top:12px}.saved-game-list{flex-direction:column;gap:10px;display:flex}.saved-game-card{text-align:left;cursor:pointer;width:100%;color:var(--c-text);overflow-wrap:anywhere;word-break:break-word;background:#ffffff0f;border:1px solid #ffffff24;border-radius:8px;padding:14px;box-shadow:0 10px 28px #00000029}.saved-game-card.selected{border-color:var(--c-accent);background:#6299242e}.saved-game-card strong{font-size:1.08rem}.saved-game-meta{overflow-wrap:anywhere;word-break:break-word;margin-top:6px;font-size:.9rem}.saved-game-date{color:#aeb7b2;margin-top:4px;font-size:.8rem}.library-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.library-button{cursor:pointer;font:inherit;letter-spacing:0;border:none;border-radius:8px;min-height:40px;padding:10px 14px;font-weight:700}.library-button:disabled{cursor:not-allowed;opacity:.5}.library-button-back,.library-button.neutral{border:1px solid var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.library-button.success{background:var(--c-accent);color:var(--c-accent-ink)}.library-button.info{border:1px solid var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.library-button.danger{color:#fff;background:#d4574d}.library-button.import{margin-top:12px}.library-label{margin-bottom:6px;display:block}.library-input,.library-textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #fff3;border-radius:8px;margin-bottom:12px;padding:10px 12px}.library-textarea{resize:vertical;min-height:190px}.library-message{color:var(--c-accent);overflow-wrap:anywhere;background:#bf811d1a;border:1px solid #bf811d52;border-radius:6px;margin:-4px 0 18px;padding:10px 12px}.library-dialog-backdrop{z-index:3000;background:#00000094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.library-dialog{width:min(420px,100%);color:var(--c-text);background:#1c1f1ffa;border:1px solid #ffffff2e;border-radius:8px;padding:20px;box-shadow:0 18px 55px #00000061}.library-dialog h2{letter-spacing:0;margin:0 0 12px;font-size:1.18rem}.library-dialog p{color:var(--c-muted);overflow-wrap:anywhere;margin:0;line-height:1.45}.library-dialog-form{gap:10px;display:grid}.library-dialog-error{color:#ffd7d2;overflow-wrap:anywhere;background:#c0392b2e;border-radius:6px;padding:10px 12px;font-weight:800}.library-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}@media (width<=760px){.game-library-page{padding:20px}.game-library-header{grid-template-columns:1fr;display:grid}.game-library-layout{grid-template-columns:1fr}.library-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.library-button{width:100%}.library-dialog{padding:18px}}[data-theme=light] .game-library-page{background:var(--c-bg);color:var(--c-text)}[data-theme=light] .game-library-page .app-shell-header{color:var(--c-text)}[data-theme=light] .game-library-page :where(h1,h2,p,strong,span,label,summary){color:inherit}[data-theme=light] .game-library-muted,[data-theme=light] .saved-game-meta,[data-theme=light] .library-label,[data-theme=light] .saved-game-date,[data-theme=light] .library-dialog p{color:var(--c-muted)}[data-theme=light] .game-library-panel,[data-theme=light] .saved-game-card,[data-theme=light] .library-dialog{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:none}[data-theme=light] .library-button-back,[data-theme=light] .library-button.neutral,[data-theme=light] .library-button.info{border:1px solid var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .library-input,[data-theme=light] .library-textarea{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}.expandable-search-control{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:inline-flex;position:relative}.expandable-search-control.expanded{flex:min(320px,100%)}.expandable-search-toggle{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface);min-width:40px;min-height:40px;color:var(--c-text);cursor:pointer;font:inherit;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:8px;display:inline-flex}.expandable-search-toggle svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.expandable-search-input-wrap{flex:auto;gap:5px;min-width:min(220px,100%);display:grid}.expandable-search-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.expandable-search-input-wrap input{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface);width:100%;min-height:40px;color:var(--c-text);font:inherit;border-radius:6px;min-width:0;padding:8px 11px}.expandable-search-toggle:focus-visible,.expandable-search-input-wrap input:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}[data-theme=light] .expandable-search-toggle,[data-theme=light] .expandable-search-input-wrap input{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}.online-browser-page{height:var(--app-h);min-height:var(--app-h);box-sizing:border-box;background:linear-gradient(180deg, #1c1c1afa, #0f0f0efc), var(--backgroundColor);color:var(--c-text);font-family:var(--font-ui);padding:clamp(20px,4vw,40px);overflow-y:auto}.online-browser-page .app-shell-header{color:var(--c-text)}.online-browser-account-topbar{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.online-browser-account-topbar-label{color:var(--c-faint);letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:900}.online-browser-account-topbar-name{max-width:150px;color:var(--c-text);text-overflow:ellipsis;font-size:.84rem;font-weight:850;overflow:hidden}.online-browser-account-topbar-button{box-sizing:border-box;min-height:34px;color:var(--c-text);cursor:pointer;font:inherit;letter-spacing:0;background:#ffffff14;border:1px solid #ffffff2e;border-radius:6px;justify-content:center;align-items:center;padding:7px 10px;font-size:.82rem;font-weight:800;line-height:1.1;text-decoration:none;display:inline-flex}.online-browser-account-topbar-button.primary,.online-browser-account-topbar-oauth{background:var(--c-accent);color:var(--c-accent-ink);border-color:#629924e0}.online-browser-account-topbar-button:hover:not(:disabled){background:#ffffff29}.online-browser-account-topbar-button.primary:hover:not(:disabled),.online-browser-account-topbar-oauth:hover{background:#75a832}.online-browser-account-topbar-button:disabled{cursor:not-allowed;opacity:.5}.online-browser-account-action-short{display:none}.online-browser-account-topbar-status{color:#bdb39f;text-overflow:ellipsis;max-width:150px;font-size:.78rem;font-weight:800;overflow:hidden}.online-browser-visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.online-browser-account-panel{background:#ffffff06;border:1px solid #4b474029;border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(280px,auto);align-items:center;gap:14px;margin-bottom:14px;padding:12px 14px;display:grid}.online-browser-account-handoff{background:#74c7970f;grid-template-columns:minmax(0,1fr) auto}.online-browser-account-copy{min-width:0}.online-browser-account-copy strong{color:var(--c-text);overflow-wrap:anywhere;margin-top:2px;font-size:1rem;display:block}.online-browser-account-copy p{color:var(--c-muted);margin:4px 0 0;line-height:1.35}.online-browser-account-message{font-weight:800;color:var(--c-faint)!important}.online-browser-account-message.error{color:#ffb7a8!important}.online-browser-account-oauth-status{font-size:.9rem;font-weight:800;color:#bdb39f!important}.online-browser-account-oauth-status.error{color:#ffcf8a!important}.online-browser-account-actions{flex-wrap:wrap;justify-content:end;gap:8px;min-width:0;display:flex}.online-browser-account-form{grid-template-columns:repeat(2,minmax(160px,1fr)) auto auto;align-items:end;gap:8px;min-width:0;display:grid}.online-browser-account-form label{color:var(--c-muted);gap:6px;min-width:0;font-size:.9rem;display:grid}.online-browser-account-form input{min-height:38px;font:inherit;border:1px solid #fff3;border-radius:6px;min-width:0;padding:8px 10px}.online-browser-oauth-button{text-align:center;grid-column:1/-1;text-decoration:none}.online-browser-social-panel{background:#ffffff09;border:1px solid #4b474024;border-radius:6px;gap:12px;margin-bottom:14px;padding:14px 16px;display:grid}.online-browser-social-header{border-bottom-color:#4b474024}.online-browser-social-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:end;gap:12px;display:grid}.online-browser-social-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.online-browser-social-search label{color:var(--c-muted);gap:6px;min-width:0;font-size:.9rem;display:grid}.online-browser-social-search input{min-height:42px;font:inherit;border:1px solid #fff3;border-radius:6px;min-width:0;padding:9px 12px}.online-browser-social-search-results{grid-column:1/-1;gap:4px;min-height:0;display:grid}.online-browser-social-search-results:empty{display:none}.online-browser-social-search-results>span,.online-browser-social-search-results button{color:#f1eee7;min-height:38px;font:inherit;background:#ffffff0b;border:1px solid #ffffff24;border-radius:6px;padding:8px 10px;font-weight:700}.online-browser-social-search-results button{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.online-browser-social-search-results button:hover{background:#b985222e;border-color:#b98522}.online-browser-field-hint{color:#bdb39f;grid-column:1/-1;margin-top:-4px;font-size:.82rem;font-weight:700}.online-browser-field-hint.error{color:#ffb7a8}.online-browser-social-message{color:var(--c-faint);margin:0;font-weight:800}.online-browser-social-message.error{color:#ffb7a8}.online-browser-report-panel{background:#40191c4d;border:1px solid #da6f655c;border-radius:6px;gap:10px;padding:12px;display:grid}.online-browser-report-fields{grid-template-columns:minmax(160px,.35fr) minmax(0,1fr);gap:10px;display:grid}.online-browser-report-fields label{gap:6px;min-width:0;display:grid}.online-browser-report-fields label>span{color:var(--c-text);font-size:.86rem;font-weight:800}.online-browser-report-fields select,.online-browser-report-fields textarea{color:#111;width:100%;font:inherit;background:#fffffff5;border:1px solid #ffffff2e;border-radius:6px;padding:9px 10px}.online-browser-report-fields textarea{resize:vertical;min-height:78px}.online-browser-report-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.online-browser-report-actions span{color:var(--c-muted);margin-right:auto;font-size:.82rem;font-weight:800}.online-browser-challenge-notice{background:#46331452;border:1px solid #d7b76557;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.online-browser-challenge-notice>div{min-width:0}.online-browser-challenge-notice strong{color:var(--c-text);overflow-wrap:anywhere;display:block}.online-browser-profile-card,.online-browser-following-list{background:#0f121257;border:1px solid #ffffff1f;border-radius:6px;padding:12px}.online-browser-online-now{background:#172c2238;border:1px solid #74c79742;border-radius:6px;gap:10px;padding:12px;display:grid}.online-browser-online-now-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.online-browser-online-now-overflow{color:#c7dfd7;font-size:.82rem;font-weight:800}.online-browser-online-now-rows{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.online-browser-online-now-card{background:#ffffff0d;border-radius:6px;gap:10px;min-width:0;padding:10px;display:grid}.online-browser-online-now-main{min-width:0}.online-browser-online-now-card strong{color:var(--c-text);overflow-wrap:anywhere;display:block}.online-browser-online-now-actions{flex-wrap:wrap;gap:8px;display:flex}.online-browser-profile-card,.online-browser-following-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.online-browser-profile-main,.online-browser-following-row>div:first-child{min-width:0}.online-browser-profile-main strong,.online-browser-following-row strong{color:var(--c-text);overflow-wrap:anywhere;display:block}.online-browser-social-badges{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.online-browser-social-badges span,.online-browser-following-list-heading span,.online-browser-following-row span{background:var(--c-surface-2);color:var(--c-muted);border-radius:999px;padding:3px 8px;font-size:.82rem;font-weight:800}.online-browser-social-badges span.presence-online,.online-browser-following-row span.presence-online{background:var(--c-success-soft);color:var(--c-success)}.online-browser-social-badges span.presence-recent,.online-browser-following-row span.presence-recent{background:var(--c-accent-soft);color:var(--c-accent)}.online-browser-social-badges span.presence-away,.online-browser-following-row span.presence-away{background:var(--c-surface-2);color:var(--c-muted)}.online-browser-social-badges span.online-browser-pinned-badge,.online-browser-following-row span.online-browser-pinned-badge{background:var(--c-accent-soft);color:var(--c-accent)}.online-browser-social-badges span.online-browser-rating-badge,.online-browser-following-row span.online-browser-rating-badge{background:var(--c-surface-3);color:var(--c-text)}.online-browser-social-badges span.online-browser-expiring-badge,.online-browser-following-row span.online-browser-expiring-badge{background:var(--c-accent-soft);color:var(--c-accent)}.online-browser-rating-rank{justify-content:center;min-width:2ch;margin-right:8px;display:inline-flex}.online-browser-social-badges span.presence-offline,.online-browser-following-row span.presence-offline,.online-browser-social-badges span.presence-hidden,.online-browser-following-row span.presence-hidden{background:var(--c-surface-2);color:var(--c-muted)}.online-browser-social-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.online-browser-following-list{gap:10px;display:grid}.online-browser-following-list-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.online-browser-following-list-title{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.online-browser-following-filter{border-radius:var(--r-md);border:1px solid var(--c-line);background:var(--c-surface-2);gap:4px;padding:3px;display:inline-flex}.online-browser-following-filter button{color:var(--c-text);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;min-height:30px;padding:4px 10px;font-size:.82rem;font-weight:900}.online-browser-following-filter button.active,.online-browser-following-filter button[aria-pressed=true]{background:var(--c-surface);border-color:var(--c-line-strong);color:var(--c-text)}.online-browser-following-filter button:focus-visible{box-shadow:var(--focus-ring);outline:none}.online-browser-account-challenge-actions{justify-content:flex-start;display:flex}.online-browser-account-challenge-side{justify-items:end;gap:8px;min-width:0;display:grid}.online-browser-account-challenge-meta{justify-content:flex-end;max-width:260px}.online-browser-following-list p{color:var(--c-muted);margin:0}.online-browser-rating-policy-note{max-width:680px;font-size:.9rem;line-height:1.4}.online-browser-private-note{max-width:640px;color:var(--c-muted);overflow-wrap:anywhere;background:#46331440;border-left:3px solid #d7b76594;border-radius:4px;gap:4px;margin-top:8px;padding:8px 10px;display:grid}.online-browser-private-note span{color:#d8f0e7;text-transform:uppercase;background:0 0;border-radius:0;padding:0;font-size:.76rem;font-weight:900}.online-browser-private-note-editor{gap:8px;max-width:640px;margin-top:8px;display:grid}.online-browser-private-note-editor label{gap:6px;display:grid}.online-browser-private-note-editor label>span{color:var(--c-text);background:0 0;border-radius:0;padding:0;font-size:.86rem;font-weight:800}.online-browser-private-note-editor textarea{resize:vertical;color:#111;width:100%;min-height:62px;font:inherit;background:#fffffff5;border:1px solid #ffffff2e;border-radius:6px;padding:9px 10px}.online-browser-private-note-actions{flex-wrap:wrap;gap:8px;display:flex}.online-browser-following-rows{gap:8px;display:grid}.online-browser-following-row{background:#ffffff0b;border-radius:6px;padding:10px}.online-browser-toolbar{border-bottom:1px solid #ffffff1a;grid-template-columns:minmax(180px,max-content) minmax(220px,1fr) auto;align-items:center;gap:10px;margin-bottom:8px;padding-bottom:10px;display:grid}.online-browser-toolbar-lobby{box-shadow:none;background:0 0;border-bottom:none;grid-template-columns:minmax(0,1fr);align-items:center;margin-bottom:8px;padding-bottom:0}.online-browser-tabs{flex-wrap:wrap;gap:10px;display:flex}.online-browser-tabs button,.online-browser-button{box-sizing:border-box;cursor:pointer;min-height:40px;font:inherit;letter-spacing:0;text-align:center;border:none;border-radius:6px;justify-content:center;align-items:center;padding:10px 14px;font-weight:700;line-height:1.1;display:inline-flex}.online-browser-page button:focus-visible,.online-browser-search input:focus-visible,.online-browser-account-form input:focus-visible,.online-browser-social-search input:focus-visible,.online-challenge-invite-search input:focus-visible,.online-browser-invite-field input:focus-visible,.online-browser-select select:focus-visible,.online-seek-owner-panel:focus-visible,.online-browser-closed-listing:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px;box-shadow:0 0 0 2px #0a1012e6}.online-browser-tabs button{color:var(--c-muted);background:#ffffff0e;border:1px solid #ffffff24}.online-browser-tabs button.active{color:var(--c-text);background:#d7b7652e;border-color:#d7b765b8}.online-browser-tabs span{opacity:.78;margin-left:6px}.online-browser-filter-panel{color:var(--c-muted);gap:6px;font-size:.9rem;display:grid}.online-browser-search{justify-self:end;width:min(480px,100%)}.online-browser-search:not(.expanded){width:auto}.online-browser-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.online-browser-filter-panel{background:#ffffff09;border:1px solid #ffffff1a;border-radius:6px;grid-column:1/-1;padding:10px 12px}.online-browser-filter-toggle{justify-content:center;align-items:center;gap:7px;display:inline-flex}.online-browser-filter-toggle.active{background:#74c79724;border-color:#74c79773}.online-browser-filter-active-label{color:#d8ffe7;background:#74c79742;border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:900}.online-browser-control-title{color:var(--c-text);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:900}.online-browser-filter-grid{grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr));gap:8px;min-width:0;display:grid}.online-browser-select{color:var(--c-muted);gap:6px;min-width:0;font-size:.9rem;display:grid}.online-browser-invite-field input,.online-browser-select select{min-height:42px;font:inherit;border:1px solid #fff3;border-radius:6px;min-width:0;padding:9px 12px}.online-browser-invite-field{color:var(--c-muted);gap:5px;min-width:0;font-size:.85rem;display:grid}.online-browser-invite-field span{font-weight:800}.online-browser-status-line{min-height:24px;color:var(--c-muted);margin-bottom:12px}.online-browser-status-line:empty{min-height:0;margin-bottom:0}.online-browser-filter-note{color:#c8bfa8;margin-top:-6px;margin-bottom:10px;font-size:.86rem;font-weight:700}.online-browser-filter-note.error{color:#ffb7a8}.online-browser-history-filter-note{min-width:0;color:var(--c-muted);background:#4b474014;border:1px solid #4b474052;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;font-weight:700;display:flex}.online-browser-history-filter-note span{overflow-wrap:anywhere;min-width:0}.online-browser-list{gap:10px;display:grid}.online-game-row,.online-seek-owner-panel,.online-browser-closed-listing,.online-browser-empty{box-shadow:none;background:#ffffff0c;border:1px solid #ffffff1f;border-radius:6px;padding:16px}.online-game-row,.online-seek-owner-panel,.online-browser-closed-listing{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.online-public-game-row{grid-template-columns:82px minmax(0,1fr) auto}.online-game-row-main,.online-game-players{min-width:0}.online-game-board-preview-stack{justify-items:stretch;gap:4px;width:82px;display:grid}.online-game-board-preview{aspect-ratio:1;background:#121615bd;border:1px solid #ffffff1f;border-radius:6px;width:100%;overflow:hidden}.online-game-board-preview svg{width:100%;height:100%;display:block}.online-game-board-preview-cells circle{fill:#d4d4d424}.online-game-board-preview-castles rect{stroke:#d4d4d447;stroke-width:.35px}.online-game-board-preview-castles .owner-w{fill:#bababab8}.online-game-board-preview-castles .owner-b{fill:#58717ac2}.online-game-board-preview-pieces circle{stroke:#090c0cb8;stroke-width:.42px}.online-game-board-preview-pieces .piece-w circle{fill:var(--c-text)}.online-game-board-preview-pieces .piece-b circle{fill:#151918;stroke:#d4d4d485}.online-game-board-preview-pieces text{fill:#101311;pointer-events:none;font-size:5px;font-weight:900}.online-game-board-preview-summary{color:var(--c-muted);text-align:center;gap:2px;font-size:.66rem;line-height:1.12;display:grid}.online-game-board-preview-summary span,.online-game-players strong,.online-game-players span,.online-game-result{overflow-wrap:anywhere}.online-game-players strong{font-size:1.08rem;display:block}.online-game-player-line{flex-wrap:wrap;align-items:baseline;gap:0 4px;display:flex}.online-game-player-link{color:var(--c-text);cursor:pointer;font:inherit;font-weight:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:0;border-radius:4px;padding:0;text-decoration:underline;text-decoration-thickness:1px}.online-game-player-link:hover{color:#d8ffe7}.online-game-player-link:focus-visible{outline-offset:2px;outline:2px solid #8bd1ff}.online-game-players span{color:#aeb7b2;margin-top:4px;font-size:.82rem;display:block}.online-game-player-line>span{color:inherit;font-size:inherit;margin-top:0;display:inline}.online-game-meta{color:var(--c-muted);flex-wrap:wrap;gap:8px;margin-top:8px;font-size:.9rem;display:flex}.online-setup-chip{min-height:24px;color:var(--c-text);white-space:nowrap;background:#ffffff17;border-radius:999px;align-items:center;padding:3px 9px;font-weight:700;line-height:1;display:inline-flex}.online-setup-preview-button{min-height:24px;color:var(--c-text);cursor:pointer;font:inherit;background:#d7b7651f;border:1px solid #d7b76557;border-radius:999px;align-items:center;padding:2px 9px;font-size:.88rem;font-weight:850;line-height:1.1;display:inline-flex}.online-setup-preview-button:hover{background:#d7b76533}.online-setup-preview-popover{width:128px;margin-top:12px}.online-setup-preview{aspect-ratio:1;background:#121615bd;border:1px solid #ffffff1f;border-radius:6px;width:128px;overflow:hidden}.online-setup-preview svg{width:100%;height:100%;display:block}.online-setup-preview-sanctuaries circle{fill:#40c4b39e;stroke:#d4d4d452;stroke-width:.45px}.online-game-pill{border-radius:999px;align-items:center;min-height:24px;padding:2px 8px;font-weight:800;line-height:1;display:inline-flex}.online-game-pill.active{color:#b8d9c7;background:#7bb29733}.online-game-pill.complete{color:#b9e1ff;background:#9bd3ff29}.online-game-pill.accepted{color:#b8d9c7;background:#7bb29733}.online-game-pill.cancelled,.online-game-pill.expired{color:#ffc3b0;background:#ffae9629}.online-game-result{color:var(--c-accent);margin-top:8px;font-weight:800}.online-game-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.online-browser-button.primary{background:var(--c-accent);color:#101815}.online-browser-button.neutral{border:1px solid var(--c-line-strong);background:var(--c-surface-3);color:var(--c-text)}.online-browser-button.subtle{color:var(--c-text);background:#ffffff14;border:1px solid #ffffff29}.online-browser-quick-match-panel{background:#ffffff09;border:1px solid #ffffff1f;border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(190px,270px);align-items:start;gap:14px;padding:14px 16px;display:grid}.online-browser-quick-match-panel.setup-needed{background:#4b47400b;border-color:#4b474029}.online-browser-quick-match-copy{min-width:0}.online-browser-quick-match-copy strong{margin-top:2px;font-size:1rem;display:block}.online-browser-quick-match-copy p{color:var(--c-muted);overflow-wrap:anywhere;margin:4px 0 0;line-height:1.4}.online-browser-quick-match-summary{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.online-browser-quick-match-summary span{color:var(--c-text);white-space:nowrap;background:#ffffff1a;border-radius:999px;padding:4px 9px;font-weight:700}.online-browser-quick-match-actions{grid-template-columns:minmax(0,1fr);gap:8px;min-width:180px;display:grid}.online-quick-pairing-main{gap:12px;min-width:0;display:grid}.online-quick-pairing-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.online-quick-pairing-tabs,.online-quick-pairing-rating{background:#ffffff0f;border-radius:6px;grid-auto-flow:column;gap:4px;padding:3px;display:inline-grid}.online-quick-pairing-tabs button,.online-quick-pairing-rating button{min-height:36px;color:var(--c-muted);cursor:pointer;font:inherit;letter-spacing:0;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;padding:7px 12px;font-weight:650;line-height:1.1;display:inline-flex}.online-quick-pairing-tabs button.active,.online-quick-pairing-rating button.active{color:#e8e1d4;background:#d7b7652e;border-color:#d7b7658a}.online-quick-pairing-tabs button:disabled,.online-quick-pairing-rating button:disabled{cursor:not-allowed;opacity:.78}.online-quick-pairing-grid{grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px;min-width:0;display:grid}.online-quick-pairing-tile{min-height:86px;color:var(--c-text);cursor:pointer;font:inherit;text-align:center;letter-spacing:0;background:linear-gradient(#ffffff12,#ffffff09);border:1px solid #ffffff21;border-radius:7px;align-content:center;place-items:center;gap:5px;padding:12px 10px;display:grid}.online-quick-pairing-tile:hover:not(:disabled){background:#6299242e;border-color:#629924b8}.online-quick-pairing-tile:disabled{cursor:not-allowed;opacity:.78}.online-quick-pairing-board{color:#f0ebe1;font-size:.88rem;font-weight:650}.online-quick-pairing-clock{color:#d7b765;font-size:1.28rem;font-weight:450;line-height:1.1}.online-quick-match-backdrop{z-index:1000;background:#06080894;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.online-quick-match-dialog{background:var(--c-surface);width:min(460px,100%);color:var(--c-text);border:1px solid #ffffff24;border-radius:8px;gap:14px;padding:18px;display:grid;box-shadow:0 18px 60px #0000006b}.online-quick-match-header,.online-quick-match-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.online-quick-match-header h2{margin:2px 0 0;font-size:1.35rem}.online-quick-match-close{width:36px;min-height:36px;color:var(--c-text);cursor:pointer;font:inherit;background:#ffffff12;border:1px solid #ffffff24;border-radius:6px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.online-quick-match-fieldset{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.online-quick-match-fieldset legend,.online-quick-match-grid label span{color:var(--c-muted);font-size:.84rem;font-weight:850}.online-quick-match-presets{grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr));gap:8px;display:grid}.online-quick-match-tabs,.online-quick-match-clock-presets{grid-template-columns:repeat(auto-fit,minmax(min(112px,100%),1fr));gap:6px;min-width:0;display:grid}.online-quick-match-tabs button,.online-quick-match-clock-presets button{min-height:38px;color:var(--c-text);cursor:pointer;font:inherit;background:#ffffff12;border:1px solid #ffffff2e;border-radius:6px;font-size:.88rem;font-weight:750;line-height:1.1;transition:border-color .15s,background .15s,box-shadow .15s;box-shadow:0 1px #ffffff0a,0 2px 8px #00000024}.online-quick-match-tabs button.active,.online-quick-match-clock-presets button.active{background:#62992438;border-color:#629924c7}.online-quick-match-tabs button:hover:not(:disabled):not(.active),.online-quick-match-clock-presets button:hover:not(:disabled):not(.active){background:#ffffff1b;border-color:#d7b765bd}.online-quick-match-tabs button:disabled,.online-quick-match-clock-presets button:disabled{cursor:not-allowed;opacity:.66}.online-quick-match-clock-note{color:var(--c-muted);margin:0;font-size:.9rem;font-weight:700}.online-quick-match-preset,.online-quick-match-rating label{cursor:pointer;background:#ffffff12;border:1px solid #ffffff2e;border-radius:6px;align-items:center;gap:4px;min-width:0;min-height:60px;padding:11px 12px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;box-shadow:0 1px #ffffff0a,0 2px 8px #00000024}.online-quick-match-preset:has(input:checked){background:#62992438;border-color:#629924c7}.online-quick-match-rating label:has(input:checked){background:#62992438;border-color:#629924c7}.online-quick-match-preset:hover:not(:has(input:checked)){background:#ffffff1b;border-color:#d7b765bd}.online-quick-match-rating label:hover:not(:has(input:checked)){background:#ffffff1b;border-color:#d7b765bd}.online-quick-match-preset:focus-within,.online-quick-match-rating label:focus-within,.online-quick-match-tabs button:focus-visible,.online-quick-match-clock-presets button:focus-visible{outline-offset:2px;outline:2px solid #d7b765eb}.online-quick-match-preset input,.online-quick-match-rating input{opacity:0;pointer-events:none;position:absolute}.online-quick-match-preset span,.online-quick-match-rating span{color:var(--c-text);font-weight:900}.online-quick-match-preset small{color:var(--c-muted);font-size:.76rem;font-weight:800}.online-quick-match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.online-quick-match-grid label{gap:6px;min-width:0;display:grid}.online-quick-match-grid input{color:#111;min-width:0;min-height:42px;font:inherit;background:#fffffff5;border:1px solid #ffffff2e;border-radius:6px;padding:8px 10px}.online-quick-match-rating{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.online-challenge-invite-dialog{width:min(560px,100%)}.online-challenge-invite-summary{background:#ffffff0e;border:1px solid #ffffff24;border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;padding:10px;display:grid}.online-challenge-invite-summary span,.online-challenge-invite-summary strong{overflow-wrap:anywhere;min-width:0}.online-challenge-invite-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.online-challenge-invite-search label{gap:8px;min-width:0;display:grid}.online-challenge-invite-search label span,.online-challenge-invite-following>p,.online-challenge-invite-message{color:var(--c-muted)}.online-challenge-invite-search label span{font-size:.84rem;font-weight:800}.online-challenge-invite-search input{color:#111;min-width:0;min-height:42px;font:inherit;background:#fffffff5;border:1px solid #ffffff2e;border-radius:6px;padding:8px 10px}.online-challenge-invite-results{grid-column:1/-1;gap:6px;display:grid}.online-challenge-invite-results>span,.online-challenge-invite-results button{min-width:0;color:var(--c-text);font:inherit;text-align:left;background:#ffffff0e;border:1px solid #ffffff24;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.online-challenge-invite-results button{cursor:pointer}.online-challenge-invite-results button span:first-child{overflow-wrap:anywhere;min-width:0;font-weight:750}.online-challenge-invite-results button span:last-child{color:var(--c-muted);white-space:nowrap;font-size:.86rem;font-weight:700}.online-challenge-invite-following{gap:8px;display:grid}.online-challenge-invite-following>p,.online-challenge-invite-message{margin:0;font-weight:700}.online-challenge-invite-friend-grid{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:8px;display:grid}.online-challenge-invite-friend-grid button{text-align:left;justify-items:start;gap:3px;display:grid}.online-challenge-invite-friend-grid small{color:var(--c-muted);font-size:.76rem;font-weight:700}.online-challenge-invite-message{min-height:20px}.online-browser-closed-listing{background:#ffae9614;border-color:#ffae962e}.online-browser-live-section{gap:10px;padding:4px 0 8px;display:grid}.online-browser-section-header{border-bottom:1px solid #ffffff1f;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:4px 0 10px;display:grid}.online-browser-section-kicker,.online-game-kicker{color:var(--c-faint);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:900;display:block}.online-browser-section-header h2{margin:2px 0 0;font-size:clamp(1.25rem,2vw,1.6rem)}.online-browser-section-header p{color:var(--c-muted);margin:3px 0 0;line-height:1.35}.online-browser-section-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.online-browser-live-list{gap:8px;display:grid}.online-browser-live-overview{grid-template-columns:minmax(140px,.8fr) minmax(140px,.8fr) minmax(220px,1.5fr) minmax(120px,.7fr);gap:8px;display:grid}.online-browser-live-stat{background:#ffffff0b;border:1px solid #ffffff1c;border-radius:6px;min-width:0;padding:10px 12px}.online-browser-live-stat span{color:var(--c-faint);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.online-browser-live-stat strong{color:var(--c-text);overflow-wrap:anywhere;margin-top:4px;font-size:.95rem;display:block}.online-browser-head-to-head-action-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.online-browser-head-to-head-action-row .online-browser-button{min-height:34px;padding:7px 10px}.online-browser-lobby-listings{gap:10px;display:grid}.online-browser-lobby-listings-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:0 2px;display:grid}.online-browser-lobby-listings-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.online-browser-lobby-listings-actions .online-browser-search{justify-self:end}.online-browser-lobby-listings-header .online-browser-filter-panel,.online-browser-lobby-listings-header .online-browser-filter-note{grid-column:1/-1}.online-browser-lobby-listings-summary{min-width:0;min-height:32px;color:var(--c-muted);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:0 2px;display:flex}.online-browser-lobby-listings-summary strong{color:var(--c-text);font-size:1rem;font-weight:700}.online-browser-lobby-listings-summary>span:last-child{font-size:.95rem}.online-browser-section-header-compact{padding-top:0}.online-browser-lobby-listings+.online-browser-live-section{margin-top:4px}.online-browser-watch-surface{gap:10px;display:grid}.online-browser-watch-friends{background:#172c222e;border:1px solid #74c7973d;border-radius:6px;gap:8px;padding:10px 12px;display:grid}.online-browser-watch-friend-rows{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.online-browser-watch-friend-row{background:#ffffff0b;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:grid}.online-browser-watch-friend-main{gap:2px;min-width:0;display:grid}.online-browser-watch-friend-main strong{color:var(--c-text);overflow-wrap:anywhere}.online-browser-watch-friend-main span{color:var(--c-muted);overflow-wrap:anywhere;font-size:.82rem}.online-browser-watch-friend-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.online-browser-watch-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start;gap:10px;display:grid}.online-browser-featured-game,.online-browser-side-list{min-width:0}.online-browser-featured-game{align-self:start}.online-browser-featured-game .online-game-row{align-items:center;min-height:180px}.online-browser-featured-game .online-game-board-preview-stack{width:min(150px,22vw)}.online-browser-featured-game .online-game-players strong{font-size:clamp(1.18rem,1.8vw,1.45rem)}.online-browser-side-list{align-content:start;gap:8px;display:grid}.online-browser-side-list-header{color:var(--c-muted);justify-content:space-between;align-items:end;gap:10px;padding:2px 2px 0;display:flex}.online-browser-side-list-header strong{color:var(--c-text);text-align:right;font-size:.92rem}.online-browser-side-list-heading{gap:2px;display:grid}.online-browser-side-list-heading strong{text-align:left}.online-browser-clear-recent{white-space:nowrap}.online-game-row-featured{background:#4b474012;border-color:#4b474047}.online-game-row-compact{padding:12px 14px}.online-game-row-compact.online-public-game-row{grid-template-columns:64px minmax(0,1fr) auto}.online-game-row-compact .online-game-board-preview-stack{width:64px}.online-game-row-compact .online-game-players strong{font-size:1rem}.online-browser-account-games,.online-browser-recent-games,.online-browser-public-archive{background:#4b47400e;border:1px solid #4b474033;border-radius:6px;gap:8px;padding:14px;display:grid}.online-browser-account-games p,.online-browser-recent-games p,.online-browser-public-archive p{color:var(--c-muted);margin:0 2px 4px;line-height:1.35}.online-browser-account-subsection{gap:8px;display:grid}.online-browser-account-friend-rows{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.online-browser-account-friend-row{background:#ffffff0b;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:grid}.online-browser-account-friend-main{gap:2px;min-width:0;display:grid}.online-browser-account-friend-main strong{color:var(--c-text);overflow-wrap:anywhere}.online-browser-account-friend-main span{color:var(--c-muted);overflow-wrap:anywhere;font-size:.82rem}.online-browser-account-friend-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.online-browser-archive-detail{background:#f7cc7012;border:1px solid #f7cc7047;border-radius:6px;gap:12px;padding:14px;scroll-margin-top:14px;display:grid}.online-browser-archive-detail:focus{outline-offset:2px;outline:2px solid #f7cc708c}.online-browser-archive-detail-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.online-browser-archive-detail-title{gap:3px;min-width:0;display:grid}.online-browser-archive-detail-title strong{color:var(--c-text);overflow-wrap:anywhere;font-size:1.05rem}.online-browser-archive-detail-title span:last-child{color:var(--c-muted);overflow-wrap:anywhere}.online-browser-archive-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.online-browser-archive-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;margin:0;display:grid}.online-browser-archive-detail-grid div{border-top:1px solid #d4d4d41f;gap:3px;min-width:0;padding-top:8px;display:grid}.online-browser-archive-detail-grid dt{color:var(--c-faint);letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:900}.online-browser-archive-detail-grid dd{color:var(--c-text);overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:800}.online-account-active-game-row{background:#74c79712;border-color:#74c79733}.online-game-action-note{color:var(--c-muted);text-align:right;max-width:220px;font-size:.88rem;font-weight:800}.online-recent-game-row{background:#12161580}.online-browser-empty-compact{padding:12px 14px}.online-browser-button:disabled{cursor:not-allowed;opacity:.5}.online-browser-button-danger{color:#ffd7d2;border-color:#da6f658c}.online-browser-load-more{justify-self:center;min-width:min(260px,100%)}.online-browser-empty h2{margin:0 0 8px}.online-browser-empty p{color:var(--c-muted);margin:0}.online-browser-archive-empty{padding:4px 0 0}.online-browser-archive-empty h2{margin:0 0 8px}.online-browser-archive-empty p{color:var(--c-muted);margin:0}@media (width<=900px){.online-browser-page{padding:20px}.online-browser-account-panel,.online-browser-account-form,.online-browser-toolbar,.online-game-row,.online-seek-owner-panel,.online-browser-closed-listing,.online-browser-quick-match-panel,.online-browser-social-grid,.online-browser-social-search,.online-browser-report-fields,.online-browser-profile-card,.online-browser-following-row,.online-browser-section-header,.online-browser-live-overview,.online-browser-watch-friend-row,.online-browser-account-friend-row,.online-browser-watch-grid{grid-template-columns:1fr}.online-browser-account-actions,.online-browser-social-actions{justify-content:stretch}.online-browser-following-list-heading,.online-browser-online-now-heading{flex-wrap:wrap;align-items:flex-start}.online-browser-following-filter{width:100%}.online-browser-following-filter button{flex:1 1 0}.online-browser-account-challenge-actions{display:grid}.online-browser-account-challenge-meta{justify-content:flex-start;max-width:none}.online-browser-account-challenge-side{justify-items:stretch}.online-browser-account-actions .online-browser-button{flex:160px}.online-browser-archive-detail-header{display:grid}.online-browser-archive-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.online-browser-archive-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.online-browser-social-actions .online-browser-button{flex:140px}.online-public-game-row{grid-template-columns:72px minmax(0,1fr)}.online-public-game-row .online-game-actions{grid-column:1/-1}.online-game-board-preview-stack,.online-game-row-compact .online-game-board-preview-stack{width:72px}.online-browser-filter-grid{grid-template-columns:1fr}.online-browser-toolbar-actions{justify-content:stretch}.online-browser-toolbar-actions .online-browser-button{flex:160px}.online-browser-lobby-listings-header{grid-template-columns:1fr}.online-browser-lobby-listings-actions{justify-content:stretch}.online-browser-lobby-listings-actions .online-browser-search{justify-self:stretch;width:100%}.online-game-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.online-browser-quick-match-summary{justify-content:flex-start}.online-browser-quick-match-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.online-quick-pairing-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.online-quick-pairing-topline{flex-direction:column;align-items:stretch}.online-quick-pairing-tabs,.online-quick-pairing-rating{width:100%}.online-browser-section-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.online-browser-history-filter-note{flex-direction:column;align-items:stretch}.online-browser-featured-game .online-game-row{min-height:auto}.online-browser-button,.online-game-actions button{width:100%}.online-browser-account-games .online-browser-side-list-header,.online-browser-recent-games .online-browser-side-list-header,.online-browser-public-archive .online-browser-side-list-header{flex-direction:column;align-items:stretch}.online-game-action-note{text-align:left;max-width:none}}@media (width<=520px){.online-browser-page{padding:10px}.online-browser-toolbar{gap:6px;margin-bottom:6px}.online-browser-quick-match-panel{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;min-width:0;max-width:100%;padding:9px;display:grid}.online-quick-pairing-main{gap:7px;min-width:0;display:grid}.online-quick-pairing-topline{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.online-browser-quick-match-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-width:0}.online-quick-pairing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;min-width:0}.online-quick-pairing-tabs,.online-quick-pairing-rating{grid-auto-flow:column;gap:3px;width:auto;min-width:0;padding:2px}.online-quick-pairing-tabs button,.online-quick-pairing-rating button{min-height:32px;padding:5px 6px;font-size:.76rem}.online-quick-pairing-tile{border-radius:6px;gap:2px;min-height:56px;padding:7px 4px}.online-quick-pairing-board{font-size:.72rem}.online-quick-pairing-clock{font-size:.86rem}.online-challenge-invite-summary,.online-challenge-invite-search{grid-template-columns:minmax(0,1fr)}.online-browser-account-topbar{gap:5px}.online-browser-account-topbar-label,.online-browser-account-action-label,.online-browser-account-topbar-status{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.online-browser-account-action-short{display:inline}.online-browser-account-topbar-button{width:34px;min-height:34px;padding-inline:7px}.online-browser-account-topbar-name{max-width:70px}.online-browser-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.online-browser-tabs button{min-height:34px;padding:7px 6px;font-size:.86rem}.online-browser-section-actions,.online-browser-private-note-actions,.online-browser-social-actions,.online-browser-online-now-actions,.online-browser-watch-friend-actions,.online-browser-account-friend-actions,.online-game-actions{grid-template-columns:1fr;display:grid}.online-public-game-row,.online-game-row-compact.online-public-game-row{grid-template-columns:58px minmax(0,1fr)}.online-game-board-preview-stack,.online-game-row-compact .online-game-board-preview-stack{width:58px}.online-game-board-preview-summary{font-size:.62rem}.online-browser-clear-recent{width:100%}.online-browser-challenge-notice{grid-template-columns:1fr;display:grid}.online-browser-archive-detail-actions,.online-browser-archive-detail-grid{grid-template-columns:1fr}}[data-theme=light] .online-browser-page{background:var(--c-bg);color:var(--c-text)}[data-theme=light] .online-browser-page .app-shell-header{color:var(--c-text)}[data-theme=light] .online-browser-page :where(h1,h2,h3,h4,p,strong,span,dt,dd,label){color:inherit}[data-theme=light] .online-browser-page :where(.online-browser-account-topbar-label,.online-browser-account-topbar-status,.online-browser-account-copy p,.online-browser-account-form label,.online-browser-social-search label,.online-browser-section-header p,.online-browser-control-title,.online-browser-section-kicker,.online-game-kicker,.online-browser-status-line,.online-game-meta,.online-game-players span,.online-browser-live-stat span,.online-browser-side-list-header,.online-browser-filter-note,.online-browser-field-hint){color:var(--c-muted)}[data-theme=light] .online-browser-page :where(.online-browser-account-panel,.online-browser-social-panel,.online-browser-profile-card,.online-browser-following-list,.online-browser-following-row,.online-browser-online-now,.online-browser-online-now-card,.online-browser-toolbar,.online-browser-filter-panel,.online-browser-quick-match-panel,.online-browser-live-stat,.online-browser-watch-friends,.online-game-row,.online-seek-owner-panel,.online-browser-closed-listing,.online-browser-empty,.online-browser-account-games,.online-browser-recent-games,.online-browser-public-archive,.online-browser-archive-detail,.online-browser-watch-friend-row,.online-browser-account-friend-row){border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:none}[data-theme=light] .online-browser-page .online-browser-quick-match-panel{color:var(--c-text);background:#f5f1e8;border-color:#d6cdbc}[data-theme=light] .online-browser-page :where(.online-quick-pairing-tabs,.online-quick-pairing-rating){background:#e7dfd1;border:1px solid #d6cdbc}[data-theme=light] .online-browser-page .online-quick-pairing-tabs button,[data-theme=light] .online-browser-page .online-quick-pairing-rating button{color:var(--c-muted)}[data-theme=light] .online-browser-page .online-quick-match-tabs button,[data-theme=light] .online-browser-page .online-quick-match-clock-presets button{background:var(--c-surface);color:var(--c-muted);border-color:#d8cfbf;box-shadow:0 1px #0000000a,0 2px 8px #00000014}[data-theme=light] .online-browser-page .online-quick-pairing-tabs button.active,[data-theme=light] .online-browser-page .online-quick-pairing-rating button.active,[data-theme=light] .online-browser-page .online-quick-match-tabs button.active,[data-theme=light] .online-browser-page .online-quick-match-clock-presets button.active{color:var(--c-text);background:#fff7e8;border-color:#c58b25}[data-theme=light] .online-browser-page .online-quick-match-tabs button:hover:not(:disabled):not(.active),[data-theme=light] .online-browser-page .online-quick-match-clock-presets button:hover:not(:disabled):not(.active){background:#fffaf0;border-color:#c58b25}[data-theme=light] .online-browser-page .online-quick-pairing-tabs button:disabled,[data-theme=light] .online-browser-page .online-quick-pairing-rating button:disabled{color:#626262}[data-theme=light] .online-browser-page .online-quick-pairing-tile{background:var(--c-surface);color:var(--c-text);border-color:#d8cfbf;box-shadow:0 1px #0000000d}[data-theme=light] .online-browser-page .online-quick-pairing-tile:hover:not(:disabled){border-color:var(--c-accent);background:#edf6e5}[data-theme=light] .online-browser-page .online-quick-pairing-tile:disabled{background:#fbfaf7;border-color:#ddd4c4}[data-theme=light] .online-browser-page .online-quick-pairing-board,[data-theme=light] .online-browser-page .online-quick-pairing-clock{color:var(--c-muted)}[data-theme=light] .online-browser-page .online-quick-match-backdrop{background:#20202059}[data-theme=light] .online-browser-page .online-quick-match-dialog{background:var(--c-surface);color:var(--c-text);border-color:#d8d8d8}[data-theme=light] .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating label){background:var(--c-surface);color:var(--c-text);border-color:#d8cfbf;box-shadow:0 1px #0000000a,0 2px 8px #00000014}[data-theme=light] .online-browser-page :where(.online-quick-match-preset:hover:not(:has(input:checked)),.online-quick-match-rating label:hover:not(:has(input:checked))){background:#fffaf0;border-color:#c58b25}[data-theme=light] .online-browser-page :where(.online-quick-match-preset:has(input:checked),.online-quick-match-rating label:has(input:checked)){color:#1d2d13;background:#e8f4de;border-color:#8aae62}[data-theme=light] .online-browser-page .online-quick-match-preset small{color:#747474}[data-theme=light] .online-browser-page .online-quick-match-close,[data-theme=light] .online-browser-page :where(.online-challenge-invite-summary,.online-challenge-invite-results>span,.online-challenge-invite-results button){border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .online-browser-page :where(.online-challenge-invite-search label span,.online-challenge-invite-results button span:last-child,.online-challenge-invite-following>p,.online-challenge-invite-message,.online-challenge-invite-friend-grid small){color:#5a5a5a}[data-theme=light] .online-browser-page :where(.online-browser-tabs button,.online-browser-button.neutral,.online-browser-button.subtle){border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .online-browser-page .online-browser-filter-toggle.active{color:#1d2d13;background:#e8f4de;border-color:#6299248c}[data-theme=light] .online-browser-page .online-browser-filter-active-label{color:#1d2d13;background:#d4e9c6}[data-theme=light] .online-browser-page .online-browser-tabs button.active{background:var(--c-accent);color:var(--c-accent-ink);border-color:#629924b8}[data-theme=light] .online-browser-page .online-browser-toolbar-lobby{box-shadow:none;background:0 0;border-color:#0000}[data-theme=light] .online-browser-page :where(input,select,textarea){border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}.play-home{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:"lobby actions";align-items:start;gap:20px;display:grid}.play-home>.online-browser-list{grid-area:lobby;min-width:0}.play-home-actions{grid-area:actions;gap:8px;display:grid;position:sticky;top:0}.play-home-shortcuts{gap:8px;display:grid}.play-home-continue{border:1px solid var(--c-line-strong);border-radius:var(--r-lg);background:var(--c-surface);justify-items:start;gap:4px;margin-top:12px;padding:14px;display:grid}.play-home-continue-kicker{color:var(--c-accent);font:700 12px/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.play-home-continue strong{font:700 18px/1.2 var(--font-display);color:var(--c-text)}.play-home-continue-detail{color:var(--c-muted);margin-bottom:8px;font-size:14px}@media (width<=960px){.play-home{grid-template-columns:minmax(0,1fr);grid-template-areas:"actions""lobby"}.play-home-actions{position:static}.play-home-shortcuts{grid-template-columns:1fr 1fr}}.online-browser-quick-match-panel{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr);padding:16px}.online-quick-pairing-sizes{max-width:340px;margin:12px 0 10px}.online-quick-pairing-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.online-quick-pairing-tile{border:1px solid var(--c-line-strong);border-radius:var(--r-md);background:var(--c-surface-2);gap:2px;min-height:72px;padding:12px 6px}.online-quick-pairing-tile:hover:not(:disabled){border-color:var(--c-accent);background:var(--c-accent-soft)}.online-quick-pairing-tile:focus-visible{box-shadow:var(--focus-ring);outline:none}.online-quick-pairing-board{color:var(--c-muted);order:2;font-size:12.5px;font-weight:500}.online-quick-pairing-clock{color:var(--c-text);font:700 22px/1.1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums;order:1}.online-browser-quick-match-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}@media (width<=760px){.online-quick-pairing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.online-quick-pairing-tile{min-height:60px}.online-quick-pairing-clock{font-size:19px}.online-quick-pairing-sizes{max-width:none}.online-browser-page .app-shell-nav-actions:has(.online-browser-account-chip:only-child){display:none}}.play-home .online-browser-quick-match-panel{background:0 0;border:0;padding:0}.play-home-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.play-home-section-head h2,.play-home .online-browser-lobby-listings-summary strong{color:var(--c-text);font:700 22px/1.2 var(--font-display);margin:0}.play-home .online-quick-pairing-sizes{margin:0}.play-home .online-quick-pairing-topline{margin-bottom:10px}.play-home .online-quick-pairing-grid{margin-bottom:8px}.play-home .online-quick-pairing-tile{background:var(--c-surface);border-color:var(--c-line)}.play-home .online-browser-lobby-listings{margin-top:26px}.play-home .online-browser-lobby-listings-summary .online-browser-section-kicker{display:none}.play-home .online-browser-lobby-listings-summary{align-items:baseline;gap:10px;display:flex}.play-home .online-browser-lobby-listings-summary span{color:var(--c-muted);font-size:14px}.play-home-empty{border:1px dashed var(--c-line-strong);border-radius:var(--r-lg);text-align:left;background:0 0;justify-items:start;gap:6px;padding:22px;display:grid}.play-home-empty h2{color:var(--c-text);font:700 18px/1.3 var(--font-display);margin:0}.play-home-empty p{max-width:56ch;color:var(--c-muted);margin:0 0 6px}:root .online-browser-page .play-home .online-browser-quick-match-panel{box-shadow:none;background:0 0;border:0;padding:0}:root .online-browser-page .play-home .play-home-empty{border:1px dashed var(--c-line-strong);box-shadow:none;background:0 0}:root .online-browser-page .watch-empty{border:1px dashed var(--c-line-strong);box-shadow:none;background:0 0;margin-top:8px}.watch-idle{gap:var(--space-3,12px);flex-direction:column;max-width:720px;display:flex}.watch-idle-note{color:var(--c-muted);margin:0;font-size:15px}.watch-inline-error{align-items:center;gap:var(--space-2,8px);color:var(--c-muted);font-size:14px;display:flex}.watch-recent-finished{gap:var(--space-2,8px);margin-top:var(--space-5,24px);flex-direction:column;display:flex}.watch-recent-finished .play-home-section-head h2{margin:0}@media (width>=1100px){.online-browser-page .online-browser-watch-surface{gap:var(--space-6,32px);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.online-browser-page .watch-recent-finished{margin-top:0}}.play-home .lobby-table{--lobby-cols:minmax(0, 2.2fr) minmax(64px, 1fr) minmax(64px, 1fr) minmax(64px, 1fr) 84px;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface);overflow:hidden}.play-home .lobby-table-head,:root .online-browser-page .play-home .lobby-row{grid-template-columns:var(--lobby-cols);align-items:center;gap:12px;padding:10px 16px;display:grid}.play-home .lobby-table-head{border-bottom:1px solid var(--c-line);color:var(--c-muted);font:700 12px/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;padding-top:12px;padding-bottom:8px}:root .online-browser-page .play-home .lobby-row{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;position:relative}:root .online-browser-page .play-home .lobby-row+.lobby-row{border-top:1px solid var(--c-line)}:root .online-browser-page .play-home .lobby-row:hover{background:var(--c-surface-2)}.play-home .lobby-cell{min-width:0;color:var(--c-text);font-size:15px}.play-home .lobby-player{align-items:center;gap:10px;display:flex}.play-home .lobby-avatar{background:var(--c-surface-3);width:30px;height:30px;color:var(--c-text);font:700 14px/1 var(--font-display);border-radius:50%;flex:none;place-items:center;display:inline-grid}.play-home .lobby-avatar-bot{background:var(--c-accent-soft);color:var(--c-accent)}.play-home .lobby-avatar-bot svg{width:18px;height:18px}.play-home .lobby-player-text{flex-direction:column;gap:1px;min-width:0;display:flex}.play-home .lobby-player-text strong{font-size:15.5px}.play-home .lobby-sub,:root .online-browser-page .play-home .lobby-sub.online-game-meta{color:var(--c-muted);flex-wrap:wrap;gap:2px 8px;margin:0;font-size:12.5px;display:flex}.play-home .lobby-rated{border-radius:var(--r-pill);background:var(--c-accent-soft);color:var(--c-accent);font:700 11.5px/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;padding:2px 8px}.play-home .lobby-casual{color:var(--c-muted);font-size:14px}.play-home .lobby-row .online-game-actions{justify-content:flex-end}.play-home .lobby-row .online-setup-preview-popover{grid-column:1/-1}.play-home .lobby-table-note{border-top:1px solid var(--c-line);color:var(--c-muted);margin:0;padding:12px 16px 14px;font-size:14px}.play-home .lobby-table-note strong{color:var(--c-text)}@media (width<=560px){.play-home .lobby-table{--lobby-cols:minmax(0, 1.9fr) minmax(48px, 1fr) minmax(48px, 1fr) 62px}.play-home .lobby-table-head,:root .online-browser-page .play-home .lobby-row{gap:8px;padding-left:12px;padding-right:12px}.play-home .lobby-avatar{display:none}.play-home .lobby-cell{font-size:14px}.play-home .lobby-table-head>:nth-child(4),.play-home .lobby-row>.lobby-cell:nth-child(4){display:none}}@media (width>=561px){.play-home .lobby-table{--lobby-cols:minmax(0, 2.2fr) minmax(90px, 1fr) minmax(90px, 1fr) minmax(90px, 1fr) 110px}.play-home .lobby-table-head,:root .online-browser-page .play-home .lobby-row{gap:16px;padding:14px 22px}.play-home .lobby-table-head{padding-top:16px;padding-bottom:12px;font-size:14.5px}.play-home .lobby-cell{font-size:21px}.play-home .lobby-player{gap:14px}.play-home .lobby-avatar{width:42px;height:42px;font-size:20px}.play-home .lobby-avatar-bot svg{width:24px;height:24px}.play-home .lobby-player-text strong{font-size:21px}.play-home .lobby-sub,:root .online-browser-page .play-home .lobby-sub.online-game-meta{font-size:15.5px}.play-home .lobby-rated{padding:3px 11px;font-size:15px}.play-home .lobby-casual{font-size:20px}:root .online-browser-page .play-home .lobby-row .online-game-actions .online-browser-button{min-height:46px;padding:10px 20px;font-size:18px}.play-home .lobby-table-note{padding:16px 22px 18px;font-size:17px}}.friend-more{position:relative}.friend-more>summary{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);width:36px;height:36px;color:var(--c-muted);cursor:pointer;place-items:center;font-size:20px;line-height:1;list-style:none;display:inline-grid}.friend-more>summary::-webkit-details-marker{display:none}.friend-more>summary:hover,.friend-more[open]>summary{border-color:var(--c-line-strong);color:var(--c-text)}.friend-more>summary:focus-visible{box-shadow:var(--focus-ring);outline:none}.friend-more-menu{z-index:20;border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);min-width:190px;box-shadow:var(--shadow-2,0 8px 24px #0000002e);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}:root .online-browser-page .friend-more-menu .online-browser-button{width:100%;min-height:34px;box-shadow:none;text-align:left;background:0 0;border:0;justify-content:flex-start}:root .online-browser-page .friend-more-menu .online-browser-button:hover:not(:disabled){background:var(--c-surface-2)}.friends-guest .play-home-empty{gap:10px;max-width:560px}:root .online-browser-page .friends-toolbar{background:0 0;border:0;justify-content:flex-end;margin:0;padding:0;display:flex}:root .online-browser-page .friends-toolbar .online-browser-button{width:auto;min-height:32px;padding:5px 12px;font-size:14px}.online-browser-account-challenge-actions .online-browser-button{min-height:32px;padding:5px 12px;font-size:14px}.friends-find-heading{margin-top:var(--space-3,12px);grid-column:1/-1}.friends-find-heading h2{font:700 19px/1.3 var(--font-display);margin:0 0 2px}.friends-find-heading p{color:var(--c-muted);margin:0;font-size:14px}:root .online-browser-page .online-browser-following-row.friend-row{grid-template-columns:40px minmax(0,1fr) auto;align-items:center}.friend-avatar{background:var(--c-surface-3);width:40px;height:40px;color:var(--c-text);font:700 18px/1 var(--font-display);border-radius:50%;place-items:center;display:inline-grid;position:relative}.online-browser-following-row span.friend-avatar{background:var(--c-surface-3);color:var(--c-text);border-radius:50%;padding:0;font-size:18px}.online-browser-following-row span.friend-avatar-dot,.friend-avatar-dot{border:2px solid var(--c-surface);background:var(--c-success);border-radius:50%;width:11px;height:11px;padding:0;position:absolute;bottom:0;right:0}.friend-row strong{font-size:17px}.friends-find-heading+.online-browser-social-search{grid-column:1/-1}:root .online-browser-page .online-quick-match-dialog{border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface);width:min(640px,100vw - 32px);max-width:none;color:var(--c-text);box-shadow:var(--shadow-2,0 18px 48px #00000038);font-family:var(--font-ui);gap:20px;padding:28px}:root .online-browser-page .online-quick-match-header h2{font:700 28px/1.2 var(--font-display);margin:2px 0 0}:root .online-browser-page .online-quick-match-close{border-radius:var(--r-md);width:40px;height:40px;color:var(--c-muted);background:0 0;border:1px solid #0000;place-items:center;padding:0;font-size:26px;line-height:1;display:inline-grid}:root .online-browser-page .online-quick-match-close:hover:not(:disabled){background:var(--c-surface-2);color:var(--c-text)}:root .online-browser-page .online-quick-match-fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}:root .online-browser-page .online-quick-match-fieldset legend,:root .online-browser-page .qm-stepper-label{color:var(--c-muted);font:700 13px/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;padding:0}:root .online-browser-page .online-quick-match-presets,:root .online-browser-page .online-quick-match-rating{gap:8px;display:grid}:root .online-browser-page .online-quick-match-presets{grid-template-columns:repeat(3,minmax(0,1fr))}:root .online-browser-page .online-quick-match-rating{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);grid-template-columns:repeat(2,minmax(0,1fr));padding:3px}:root .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating label){border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);min-height:60px;color:var(--c-text);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:10px;display:flex;position:relative}:root .online-browser-page .online-quick-match-rating label{min-height:44px;color:var(--c-muted);background:0 0;border-color:#0000}:root .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating label) span{font:700 18px/1.2 var(--font-ui)}:root .online-browser-page .online-quick-match-preset small{color:var(--c-muted);font-size:13px}:root .online-browser-page .online-quick-match-preset:has(input:checked){border-color:var(--c-accent);background:var(--c-accent-soft);color:var(--c-text)}:root .online-browser-page .online-quick-match-rating label:has(input:checked){border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-1)}:root .online-browser-page .online-quick-match-rating label:has(input:disabled){opacity:.45;cursor:not-allowed}:root .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating label):hover:not(:has(input:checked)){border-color:var(--c-line-strong)}:root .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating label):focus-within{box-shadow:var(--focus-ring);outline:none}:root .online-browser-page :where(.online-quick-match-preset,.online-quick-match-rating) input{opacity:0;pointer-events:none;position:absolute}:root .online-browser-page .online-quick-match-tabs{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;display:grid}:root .online-browser-page .online-quick-match-tabs button{min-height:42px;color:var(--c-muted);font:600 16px/1.2 var(--font-ui);background:0 0;border:1px solid #0000;border-radius:7px}:root .online-browser-page .online-quick-match-tabs button.active{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-1)}:root .online-browser-page .online-quick-match-clock-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}:root .online-browser-page .online-quick-match-clock-presets button{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);min-height:50px;color:var(--c-text);font:700 18px/1.2 var(--font-ui)}:root .online-browser-page .online-quick-match-clock-presets button.active{border-color:var(--c-accent);background:var(--c-accent-soft);color:var(--c-text)}:root .online-browser-page :where(.online-quick-match-tabs,.online-quick-match-clock-presets) button:hover:not(:disabled):not(.active){border-color:var(--c-line-strong);background:var(--c-surface-2);color:var(--c-text)}:root .online-browser-page :where(.online-quick-match-tabs,.online-quick-match-clock-presets) button:focus-visible{box-shadow:var(--focus-ring);outline:none}:root .online-browser-page .online-quick-match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.qm-stepper-field{flex-direction:column;min-width:0;display:flex}.qm-stepper{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);grid-template-columns:48px minmax(0,1fr) 48px;display:grid;overflow:hidden}.qm-stepper:focus-within{box-shadow:var(--focus-ring)}.qm-stepper button{color:var(--c-muted);font:500 24px/1 var(--font-ui);cursor:pointer;background:0 0;border:0}.qm-stepper button:hover:not(:disabled){background:var(--c-surface-3);color:var(--c-text)}.qm-stepper button:disabled{opacity:.35;cursor:not-allowed}:root .online-browser-page .qm-stepper input{border:0;border-inline:1px solid var(--c-line);background:var(--c-surface);width:100%;min-width:0;min-height:50px;color:var(--c-text);font:700 20px/1 var(--font-ui);text-align:center;appearance:textfield;border-radius:0;padding:0}.qm-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qm-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qm-stepper input:focus{outline:none}:root .online-browser-page .online-quick-match-clock-note{color:var(--c-muted);margin:0;font-size:15px}:root .online-browser-page .online-quick-match-actions{gap:12px;margin-top:4px}:root .online-browser-page .online-quick-match-actions .online-browser-button{min-height:48px;padding:10px 20px;font-size:17px}@media (width<=520px){:root .online-browser-page .online-quick-match-dialog{gap:16px;padding:20px}:root .online-browser-page .online-quick-match-clock-presets button{font-size:16px}:root .online-browser-page .online-quick-match-grid{grid-template-columns:1fr}}.bot-exhibition{border:1px solid var(--c-line);border-radius:var(--r-lg,12px);background:var(--c-surface);box-shadow:var(--shadow-1);flex-direction:column;display:flex;overflow:hidden}.bot-exhibition-board{aspect-ratio:1/.9;max-height:min(56vh,520px);padding:var(--space-3,12px);background:var(--c-surface-2);position:relative}.bot-exhibition-board .board{pointer-events:none;display:block}.bot-exhibition-caption{justify-content:space-between;align-items:center;gap:var(--space-3,12px);border-top:1px solid var(--c-line);padding:12px 16px;display:flex}.bot-exhibition-caption>div{flex-direction:column;gap:2px;min-width:0;display:flex}.bot-exhibition-kicker{color:var(--c-muted);font:700 12px/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;display:inline-flex}.bot-exhibition-live-dot{background:var(--c-accent);border-radius:50%;width:7px;height:7px}.bot-exhibition-caption strong{color:var(--c-text);font:700 17px/1.25 var(--font-display)}.bot-exhibition-status{color:var(--c-muted);font-size:14px}.online-profile-page{height:var(--app-h);min-height:var(--app-h);box-sizing:border-box;scrollbar-gutter:stable;background:var(--c-bg);color:var(--c-muted);font-family:var(--font-ui);padding:clamp(20px,4vw,40px);overflow-y:auto}.online-profile-page .app-shell-header{color:var(--c-text)}.online-profile-hero{border:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;min-width:0;margin-bottom:14px;padding:16px;display:flex}.online-profile-avatar{color:#101815;border:2px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;width:58px;height:58px;font-size:1.35rem;font-weight:950;line-height:1;display:inline-grid;box-shadow:inset 0 0 0 2px #0000002e}.online-profile-avatar-green{background:#74c797}.online-profile-avatar-amber{background:#d7b765}.online-profile-avatar-blue{background:#8bd1ff}.online-profile-avatar-violet{background:#b89cff}.online-profile-avatar-red{background:#ef887d}.online-profile-avatar-slate{background:#a7b0bb}.online-profile-avatar-image{background:var(--c-bg);color:#0000;overflow:hidden}.online-profile-avatar-image img{object-fit:cover;width:100%;height:100%}.online-profile-kicker{color:var(--c-faint);letter-spacing:0;text-transform:uppercase;font-size:.74rem;font-weight:900;line-height:1.2;display:block}.online-profile-display-name{color:var(--c-text);letter-spacing:0;overflow-wrap:anywhere;margin:4px 0 0;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.05;display:block}.online-profile-badges{flex-wrap:wrap;gap:7px;min-width:0;max-width:100%;margin-top:10px;display:flex}.online-profile-badges span,.online-profile-panel>.online-profile-kicker{border-radius:999px}.online-profile-badges span{background:var(--c-surface-3);min-width:0;max-width:100%;min-height:24px;color:var(--c-text);overflow-wrap:anywhere;text-align:center;white-space:normal;flex:0 auto;align-items:center;padding:3px 9px;font-size:.8rem;font-weight:850;line-height:1.15;display:inline-flex}.online-profile-hero-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;gap:8px;max-width:min(520px,46vw);display:flex}.online-profile-action-message{color:var(--c-muted);text-align:right;flex-basis:100%;margin:0;font-size:.82rem;font-weight:750}.online-profile-dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.online-profile-tabs{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.online-profile-tabs button{border:1px solid var(--c-line-strong);background:var(--c-surface);min-height:34px;color:var(--c-text);cursor:pointer;font:inherit;letter-spacing:0;border-radius:4px;padding:7px 12px;font-size:.84rem;font-weight:800}.online-profile-tabs button[aria-pressed=true]{background:var(--c-surface-3);border-color:#8d6b2a}.online-profile-tabs button:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}.online-profile-search{justify-content:flex-end;width:min(320px,100%);display:flex;position:relative}.online-profile-search:not(.expanded){width:auto}.online-profile-search-results{z-index:20;box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:6px;gap:4px;width:min(280px,88vw);max-height:280px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 14px 36px #00000047}.online-profile-search-results p{color:var(--c-muted);margin:6px}.online-profile-search-results button{min-height:36px;color:var(--c-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:7px 9px;font-size:.86rem;font-weight:800;display:flex}.online-profile-search-results button:hover,.online-profile-search-results button:focus-visible{background:var(--c-surface-3)}.online-profile-panel{border:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:6px;min-width:0;padding:14px}.online-profile-panel.error{background:#5e201c33;border-color:#da6f656b}.online-profile-panel h2{color:var(--c-text);letter-spacing:0;margin:5px 0 8px;font-size:1.02rem;line-height:1.15}.online-profile-panel p{color:var(--c-muted);margin:5px 0 0;line-height:1.38}.online-profile-rating-chart{border:1px solid var(--c-line-strong);background:linear-gradient(#8d6b2a0a,#8d6b2a47),repeating-linear-gradient(90deg,#d4d4d417 0 1px,#0000 1px 34px);border-radius:4px;min-height:128px;margin-top:10px;overflow:hidden}.online-profile-rating-chart svg{width:100%;min-height:128px;display:block}.online-profile-rating-chart line{stroke:#d4d4d429;stroke-width:1px}.online-profile-rating-chart text{fill:var(--c-faint);font-size:9px;font-weight:750}.online-profile-rating-chart polyline{fill:none;stroke:#78b84a;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.online-profile-rating-chart circle{fill:#78b84a;stroke:var(--c-surface);stroke-width:2px}.online-profile-rating-chart.empty{place-items:center;min-height:96px;padding:8px;display:grid}.online-profile-rating-chart.empty span{background:var(--c-bg);min-height:24px;color:var(--c-text);border-radius:4px;align-items:center;padding:3px 8px;font-size:.8rem;font-weight:850;display:inline-flex}.online-profile-panel h3{color:var(--c-text);margin:12px 0 6px;font-size:.92rem;line-height:1.2}.online-profile-filter-toggle{min-height:28px;color:var(--c-text);align-items:center;gap:7px;margin-top:10px;font-size:.82rem;font-weight:800;display:inline-flex}.online-profile-filter-toggle input{width:auto;min-height:auto}.online-profile-games-toolbar{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;margin:8px 0 10px;display:flex}.online-profile-games-counts{color:var(--c-text);white-space:nowrap;margin:0;font-weight:850}.online-profile-account-game-search{flex:260px;min-width:0}.online-profile-account-game-search:not(.expanded){flex:none}.online-profile-account-game-search-results{z-index:20;box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:6px;gap:4px;width:min(280px,88vw);max-height:280px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 14px 36px #00000047}.online-profile-account-game-search-results button{min-height:36px;color:var(--c-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:7px 9px;font-size:.86rem;font-weight:800;display:flex}.online-profile-account-game-search-results button:hover,.online-profile-account-game-search-results button:focus-visible{background:var(--c-surface-3)}.online-profile-games-clear-filter{min-height:40px}.online-profile-account-games{gap:12px;margin-top:8px;display:grid}.online-profile-account-games ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.online-profile-account-game-row{border-top:1px solid var(--c-line-strong);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding-top:8px;display:grid}.online-profile-account-game-main{min-width:0}.online-profile-account-game-main strong,.online-profile-account-game-main span{overflow-wrap:anywhere;min-width:0;display:block}.online-profile-account-game-main span{color:var(--c-muted);margin-top:2px;font-size:.82rem}.online-profile-account-game-row .online-game-board-preview-stack{width:78px}.online-profile-rating-history{gap:5px;margin:0;padding:0;list-style:none;display:grid}.online-profile-rating-history li{border-top:1px solid var(--c-line-strong);min-height:30px;color:var(--c-muted);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding-top:5px;font-size:.82rem;display:grid}.online-profile-rating-history.public li{grid-template-columns:minmax(0,1fr) auto auto}.online-profile-rating-history span{overflow-wrap:anywhere;min-width:0}.online-profile-challenge-records{gap:6px;margin:0;padding:0;list-style:none;display:grid}.online-profile-challenge-records li{border-top:1px solid var(--c-line-strong);color:var(--c-muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding-top:6px;font-size:.82rem;display:grid}.online-profile-challenge-records strong,.online-profile-challenge-records span{overflow-wrap:anywhere;min-width:0}.online-profile-challenge-records strong{color:var(--c-text)}.online-profile-inline-link{min-width:0;color:var(--c-text);cursor:pointer;font:inherit;text-align:left;text-underline-offset:3px;overflow-wrap:anywhere;background:0 0;border:0;padding:0;text-decoration:underline;text-decoration-thickness:1px}.online-profile-inline-link:hover{color:#d8ffe7}.online-profile-inline-link:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}.online-profile-settings-form{gap:10px;margin-top:12px;display:grid}.online-profile-avatar-settings{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.online-profile-avatar-settings fieldset{border:1px solid var(--c-line-strong);border-radius:6px;grid-column:2;min-width:0;margin:0;padding:10px}.online-profile-avatar-settings legend{color:var(--c-text);padding:0 4px;font-size:.82rem;font-weight:850}.online-profile-choice-grid{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:7px;display:grid}.online-profile-choice-grid.compact{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.online-profile-choice-grid label{align-items:center;gap:7px;min-height:30px;display:flex}.online-profile-choice-grid input{width:auto;min-height:auto}.online-profile-avatar-upload{gap:8px;display:grid}.online-profile-avatar-upload p{margin:0;font-size:.78rem}.online-profile-public-games{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.online-profile-public-games li{border-top:1px solid var(--c-line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding-top:8px;display:grid}.online-profile-public-games strong,.online-profile-public-games span{overflow-wrap:anywhere;display:block}.online-profile-public-games span{color:var(--c-muted);margin-top:2px;font-size:.82rem}.online-profile-settings-form h3{color:var(--c-text);margin:4px 0 0;font-size:.95rem;line-height:1.2}.online-profile-settings-form label{color:#a6a6a6;gap:5px;font-size:.82rem;font-weight:750;display:grid}.online-profile-settings-form input,.online-profile-settings-form select{box-sizing:border-box;border:1px solid var(--c-line-strong);background:var(--c-surface-3);width:100%;min-height:36px;color:var(--c-text);font:inherit;border-radius:4px;padding:7px 9px}.online-profile-settings-form input:focus-visible,.online-profile-settings-form select:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}.online-profile-security-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.online-profile-delete-panel{background:#5e201c33;border:1px solid #da6f656b;border-radius:6px;margin-top:12px;padding:12px}.online-profile-delete-panel h3{margin-top:0}.online-profile-error{font-weight:800;color:#ffb7a8!important}.online-profile-button{border:1px solid var(--c-line-strong);background:var(--c-surface-3);min-height:36px;color:var(--c-text);cursor:pointer;font:inherit;letter-spacing:0;white-space:nowrap;border-radius:4px;padding:8px 11px;font-size:.84rem;font-weight:800;line-height:1.1}.online-profile-button:hover:not(:disabled){filter:brightness(1.08)}.online-profile-button.subtle{background:var(--c-surface)}.online-profile-button.danger{color:#ffd8d0;background:#4a2722;border-color:#da6f6594}.online-profile-button:focus-visible{outline-offset:2px;outline:2px solid #bf811dad}@media (width<=680px){.online-profile-page{padding:16px}.online-profile-hero{flex-direction:column;align-items:stretch;padding:14px}.online-profile-button{width:100%}.online-profile-hero-actions{justify-content:stretch;max-width:none}.online-profile-action-message{text-align:left}.online-profile-search{width:100%}.online-profile-search-results{width:100%;left:0;right:auto}.online-profile-badges{gap:5px}.online-profile-badges span{padding-inline:7px;font-size:.74rem}.online-profile-avatar-settings,.online-profile-public-games li{grid-template-columns:1fr}.online-profile-avatar-settings fieldset{grid-column:auto}}[data-theme=light] .online-profile-page{background:var(--c-bg);color:var(--c-text)}[data-theme=light] .online-profile-page .app-shell-header{color:var(--c-text)}[data-theme=light] .online-profile-hero,[data-theme=light] .online-profile-panel,[data-theme=light] .online-profile-tabs button,[data-theme=light] .online-profile-search input,[data-theme=light] .online-profile-search-results,[data-theme=light] .online-profile-account-game-search-results{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .online-profile-tabs button[aria-pressed=true]{background:var(--c-surface-2);border-color:#c18a2a}[data-theme=light] .online-profile-display-name,[data-theme=light] .online-profile-panel h2,[data-theme=light] .online-profile-panel h3,[data-theme=light] .online-profile-settings-form h3{color:var(--c-text)}[data-theme=light] .online-profile-kicker,[data-theme=light] .online-profile-panel p,[data-theme=light] .online-profile-action-message,[data-theme=light] .online-profile-settings-form label,[data-theme=light] .online-profile-search label,[data-theme=light] .online-profile-search-results p{color:var(--c-muted)}[data-theme=light] .online-profile-badges span,[data-theme=light] .online-profile-button,[data-theme=light] .online-profile-rating-chart.empty span{border:1px solid var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .online-profile-avatar-settings fieldset,[data-theme=light] .online-profile-public-games li,[data-theme=light] .online-profile-challenge-records li{border-color:var(--c-line-strong)}[data-theme=light] .online-profile-button.subtle{background:var(--c-surface-2)}[data-theme=light] .online-profile-button.danger{color:#8c2f24;background:#fff5f2;border-color:#d67f75}[data-theme=light] .online-profile-delete-panel{background:#fff7f5;border-color:#f0b6ae}[data-theme=light] .online-profile-rating-chart{border-color:var(--c-line-strong);background:linear-gradient(#c18a2a0a,#c18a2a2e),repeating-linear-gradient(90deg,#1f1f1f14 0 1px,#0000 1px 34px)}[data-theme=light] .online-profile-rating-chart line{stroke:#1f1f1f24}[data-theme=light] .online-profile-rating-chart text{fill:var(--c-muted)}[data-theme=light] .online-profile-rating-chart circle{stroke:var(--c-surface)}[data-theme=light] .online-profile-settings-form input,[data-theme=light] .online-profile-settings-form select{border-color:var(--c-line-strong);background:var(--c-surface);color:var(--c-text)}[data-theme=light] .online-profile-search-results button,[data-theme=light] .online-profile-account-game-search-results button{color:var(--c-text)}[data-theme=light] .online-profile-search-results button:hover,[data-theme=light] .online-profile-search-results button:focus-visible,[data-theme=light] .online-profile-account-game-search-results button:hover,[data-theme=light] .online-profile-account-game-search-results button:focus-visible{background:var(--c-surface-2)}[data-theme=light] .online-profile-rating-history li{border-top-color:var(--c-line-strong);color:var(--c-muted)}[data-theme=light] .online-profile-inline-link,[data-theme=light] .online-profile-public-games span,[data-theme=light] .online-profile-challenge-records span{color:var(--c-muted)}[data-theme=light] .online-profile-challenge-records strong{color:var(--c-text)}.rules-manual-page{--rules-bg:linear-gradient(135deg, var(--c-bg) 0%, var(--c-surface) 100%);--rules-surface:var(--c-surface);--rules-section:#ffffff0a;--rules-card:var(--c-surface);--rules-text:var(--c-text);--rules-muted:var(--c-muted);--rules-heading:var(--c-text);--rules-accent:var(--c-accent);--rules-border:var(--c-line-strong);--rules-nav:var(--c-surface);background:var(--rules-bg);height:100vh;color:var(--rules-text);font-family:var(--font-ui);box-sizing:border-box;padding:48px clamp(20px,5vw,72px);overflow-y:auto}[data-theme=light] .rules-manual-page{--rules-bg:var(--c-bg);--rules-surface:var(--c-surface);--rules-section:var(--c-surface);--rules-card:var(--c-surface);--rules-text:var(--c-text);--rules-muted:var(--c-muted);--rules-heading:var(--c-text);--rules-accent:var(--c-accent);--rules-border:var(--c-line-strong);--rules-nav:var(--c-surface)}.rules-manual-hero{border:1px solid var(--rules-border);background:var(--rules-surface);border-radius:8px;max-width:1180px;margin:0 auto 32px;padding:36px;box-shadow:0 18px 48px #0000003d}.rules-manual-kicker{text-transform:uppercase;letter-spacing:.18em;color:var(--rules-accent);margin:0 0 10px;font-size:.78rem;font-weight:700}.rules-manual-hero h1{color:var(--rules-heading);margin:0 0 16px;font-family:inherit;font-size:clamp(2.4rem,6vw,5rem);line-height:.95}.rules-manual-hero p{max-width:760px;color:var(--rules-muted);font-size:1.08rem;line-height:1.65}.rules-manual-back-link,.rules-full-link,.rules-manual-theme-button{border:1px solid var(--rules-accent);background:var(--rules-accent);color:#171717;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.rules-manual-theme-button{color:var(--rules-text);background:0 0}.rules-manual-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.rules-full-link{margin-top:12px}.rules-manual-nav{z-index:2;border:1px solid var(--rules-border);background:var(--rules-nav);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:8px;gap:10px;max-width:1180px;margin:0 auto 32px;padding:14px;display:flex;position:sticky;top:0;overflow-x:auto}.rules-manual-nav a{white-space:nowrap;color:var(--rules-text);background:#ffffff0f;border-radius:6px;padding:8px 12px;text-decoration:none}.rules-manual-page section{border:1px solid var(--rules-border);background:var(--rules-section);border-radius:8px;max-width:1180px;margin:0 auto 42px;padding:28px;scroll-margin-top:92px}.rules-manual-page h2{color:var(--rules-heading);margin:0 0 18px;font-family:inherit;font-size:clamp(1.6rem,3vw,2.4rem)}.rules-manual-page h3{color:var(--rules-text);margin:0 0 10px}.rules-manual-page p{line-height:1.65}.rules-manual-card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.rules-manual-terrain-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.rules-manual-card{background:var(--rules-card);border:1px solid var(--rules-border);border-radius:8px;padding:18px}.rules-manual-terrain-card,.rules-manual-card{position:relative}.rules-manual-terrain-hex{float:right;filter:drop-shadow(0 8px 12px #00000052);width:82px;height:82px;margin-bottom:8px;margin-left:16px}.rules-manual-card p{color:var(--rules-muted);margin-bottom:0}.rules-manual-cycle{flex-wrap:wrap;gap:10px;margin:20px 0 0;padding:0;list-style:none;display:flex}.rules-manual-cycle li{border:1px solid var(--rules-border);color:var(--rules-text);background:#bf811d1f;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:inline-flex}.rules-manual-cycle li:after{content:" ->";color:var(--rules-accent);margin-left:10px}.rules-manual-cycle li:last-child:after{content:""}.rules-manual-cycle-index{width:22px;height:22px;color:var(--rules-heading);background:#bf811d38;border-radius:50%;justify-content:center;align-items:center;font-size:.78rem;display:inline-flex}.rules-manual-cycle-icon{object-fit:contain;filter:drop-shadow(0 2px 2px #0000006b);width:30px;height:30px}.rules-manual-table{border-collapse:collapse;background:var(--rules-card);border:1px solid var(--rules-border);border-radius:8px;width:100%;margin:16px 0 24px;overflow:hidden}.rules-manual-table th,.rules-manual-table td{text-align:left;border-bottom:1px solid var(--rules-border);vertical-align:middle;padding:14px}.rules-manual-table th{color:var(--rules-heading);text-transform:uppercase;letter-spacing:.06em;background:#ffffff0f;font-size:.78rem}.rules-manual-table tr:last-child td{border-bottom:none}.rules-manual-piece-icon{vertical-align:middle;filter:drop-shadow(0 2px 2px #00000080);width:28px;height:28px;margin-right:8px}.rules-terrain-river{fill:#38afcd;stroke:#aaa;stroke-width:4px}.rules-terrain-castle{fill:#a29bfe;stroke:var(--castle-black-ring);stroke-width:5px;filter:drop-shadow(0 0 8px #8000ff73)}.rules-terrain-high-ground{fill:#af5718;stroke:#aaa;stroke-width:4px}.rules-terrain-sanctuary{fill:var(--sanctuary-wolf,#95a5a6);stroke:#f1c40f;stroke-width:5px;filter:drop-shadow(0 0 8px #95a5a6bf)}@media (width<=760px){.rules-manual-page{padding:24px 14px}.rules-manual-hero,.rules-manual-page section{padding:22px}.rules-manual-table{display:block;overflow-x:auto}}:root{--rail-w:0px;--bar-h:0px;--app-w:100vw;--app-h:100dvh}.App.app-has-rail{--rail-w:84px;--app-w:calc(100vw - 84px)}.app-rail{z-index:900;box-sizing:border-box;background:var(--c-surface);border-right:1px solid var(--c-line);width:84px;font-family:var(--font-ui);flex-direction:column;gap:4px;padding:14px 8px;display:flex;position:fixed;top:0;bottom:0;left:0}.App.app-has-rail{padding-left:var(--rail-w);box-sizing:border-box}.app-rail-logo{height:48px;color:var(--c-accent);place-items:center;margin-bottom:10px;display:grid}.app-rail-item{border-radius:var(--r-md);color:var(--c-muted);font:500 12.5px/1.2 var(--font-ui);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:9px 4px;display:flex}.app-rail-item:hover{background:var(--c-surface-2);color:var(--c-text)}.app-rail-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-rail-item[aria-current=page]{background:var(--c-accent-soft);color:var(--c-text)}.app-rail-icon{place-items:center;width:24px;height:24px;display:grid;position:relative}.app-rail-icon svg{width:22px;height:22px;transition:transform .18s}.app-rail-item:active .app-rail-icon svg{transform:scale(.9)}.app-rail-item[aria-current=page] .app-rail-icon{color:var(--c-accent)}.app-rail-item[aria-current=page] .app-rail-icon svg{transform:scale(1.08)}.app-rail-badge{box-sizing:border-box;border-radius:var(--r-pill);background:var(--c-danger);color:#fff;min-width:17px;height:17px;font:700 11px/17px var(--font-ui);text-align:center;padding:0 4px;position:absolute;top:-6px;right:-10px}.app-rail-spacer{flex:1}.app-rail-avatar{background:var(--c-surface-3);width:30px;height:30px;color:var(--c-text);font:700 14px/1 var(--font-display);border-radius:50%;place-items:center;display:grid}.app-rail-account .app-rail-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=760px){.App.app-has-rail{--rail-w:0px;--bar-h:calc(60px + env(safe-area-inset-bottom,0px));--app-w:100vw;--app-h:calc(100dvh - 60px - env(safe-area-inset-bottom,0px))}.app-rail{width:auto;height:var(--bar-h);padding:4px 6px env(safe-area-inset-bottom,0px);border-right:0;border-top:1px solid var(--c-line);flex-direction:row;gap:2px;top:auto;right:0;box-shadow:0 -6px 18px #0000002e}.App.app-has-rail{padding-left:0;padding-bottom:var(--bar-h)}.app-rail-logo,.app-rail-spacer{display:none}.app-rail-item{flex:1;min-width:0;padding:6px 2px}.app-rail-avatar{width:24px;height:24px;font-size:12px}}@media (prefers-reduced-motion:reduce){.app-rail-icon svg{transition:none}}.app-rail-theme{padding:7px 4px}@media (width<=760px){.app-rail-theme{display:none}}
