@plugin "daisyui";:root{--background:#f6f8f7;--foreground:#15211d;--text:var(--foreground);--muted:#5f6f68;--surface:#ffffff;--surface-strong:#fbfdfc;--surface-soft:#edf4f1;--surface-raised:#ffffff;--border:#d9e4df;--border-strong:#bfd2c8;--accent:#14895b;--accent-foreground:#ffffff;--accent-strong:#0f6847;--accent-soft:#dff4ea;--info:#2f6fbb;--danger:#b33145;--warning:#b46b22;--board-light:#f2f5dd;--board-dark:#6f9b55;--piece-light:#fffdf1;--piece-light-stroke:#34302a;--piece-dark:#34312d;--piece-dark-stroke:#0c0b0a;--piece-cutout:#f2f0dc;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--shadow:0 18px 50px rgb(36 54 47/10%);--shadow-card:0 1px 0 rgb(21 33 29/4%),0 12px 28px rgb(36 54 47/8%);--shadow-popover:0 24px 60px rgb(36 54 47/18%);--motion-fast:180ms ease-out;--motion-med:260ms ease-out}.dark{--background:#0d1512;--foreground:#eef6f2;--text:var(--foreground);--muted:#aab9b2;--surface:#141f1b;--surface-strong:#1b2924;--surface-soft:#22332d;--surface-raised:#18251f;--border:#30473e;--border-strong:#446155;--accent:#78d99f;--accent-foreground:#102018;--accent-strong:#a2f1c0;--accent-soft:#193b2a;--info:#8db9ff;--danger:#ff7d8d;--warning:#f0bd77;--board-light:#e4edce;--board-dark:#5d8e47;--piece-light:#fffdf1;--piece-light-stroke:#332f29;--piece-dark:#302d29;--piece-dark-stroke:#080807;--piece-cutout:#e4edce;--shadow:0 18px 60px rgb(0 0 0/34%);--shadow-card:0 1px 0 rgb(255 255 255/3%),0 16px 34px rgb(0 0 0/22%);--shadow-popover:0 24px 70px rgb(0 0 0/42%)}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0}html{color-scheme:light;background:var(--background)}html.dark{color-scheme:dark}body{min-height:100vh;margin:0;overflow-x:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 72%,var(--background)) 0,var(--background) 24rem),var(--background);color:var(--foreground);font-family:Arial,Noto Sans Khmer,Noto Sans Thai,Noto Sans Devanagari,Noto Sans Arabic,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}option,select{background:var(--surface-strong);color:var(--foreground)}.glass{background:color-mix(in srgb,var(--surface-raised) 92%,transparent);box-shadow:var(--shadow)}.glass,.panel{border:1px solid var(--border)}.panel{background:color-mix(in srgb,var(--surface-raised) 96%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.control{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}:where(.action-primary,.action-secondary){display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;gap:.55rem;padding-inline:1rem;line-height:1.1}.action-primary{border-radius:var(--radius-md);background:var(--accent);color:#06130d;font-weight:800;transition:transform var(--motion-fast),filter var(--motion-fast),box-shadow var(--motion-fast)}.action-secondary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);font-weight:700;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}:where(.btn-square.action-primary,.btn-square.action-secondary,.play-icon-button.action-secondary,.play-control-button.action-secondary){padding-inline:0}.action-primary:hover,.action-secondary:hover{transform:translateY(-1px)}.action-primary:hover{filter:saturate(1.06) brightness(1.02);box-shadow:0 10px 22px color-mix(in srgb,var(--accent) 24%,transparent)}.action-secondary:hover{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface-raised))}:where(.app-shell .btn,.language-option.btn,.notification-read-button.btn){min-height:0;border-color:var(--border);text-transform:none;letter-spacing:0}:where(.app-brand.btn,.app-mobile-brand.btn,.app-nav-link.btn){justify-content:flex-start;height:auto}.language-option.btn{height:auto}.language-option{border-radius:var(--radius-md);color:var(--muted);padding:.5rem .7rem;font-size:.88rem;font-weight:850}.language-option:hover{transform:translateY(-1px);background:var(--accent-soft);color:var(--foreground)}.language-option.is-active{background:var(--accent);color:#06130d;font-weight:950}.notification-read-button.btn{height:2rem}.shell-icon-control,.shell-icon-control.btn{position:relative;display:grid;width:2.65rem;height:2.65rem;min-height:2.65rem;place-items:center;border-radius:10px;padding:0;line-height:1;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.shell-icon-control svg{display:block}.app-shell{display:grid;min-height:100vh;grid-template-columns:12.5rem minmax(0,1fr);background:var(--background)}.app-sidebar{position:sticky;top:0;z-index:60;display:grid;height:100vh;grid-template-rows:auto minmax(0,1fr) auto;gap:1rem;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 96%,transparent);padding:.9rem;box-shadow:10px 0 30px rgb(36 54 47/7%)}.dark .app-sidebar{background:color-mix(in srgb,var(--surface) 92%,#050807);box-shadow:10px 0 30px rgb(0 0 0/26%)}.app-brand,.app-mobile-brand,.app-nav-link{display:flex;align-items:center;border-radius:8px}.app-brand{gap:.7rem;padding:.4rem .35rem .85rem}.app-brand-mark{display:grid;flex:0 0 auto;width:2.4rem;height:2.4rem;place-items:center;border-radius:8px;background:var(--accent);color:#07140c}.app-brand-name{display:block;color:var(--foreground);font-size:1.25rem;font-weight:950;line-height:1}.app-brand-tagline{display:block;margin-top:.18rem;color:var(--muted);font-size:.72rem;font-weight:750;line-height:1.25}.app-menu-panel,.app-nav,.app-sidebar-bottom{display:grid;align-content:start;gap:.35rem}.app-sidebar-nav-stack{display:grid;min-height:0;grid-template-rows:minmax(0,1fr) auto;gap:.65rem}.app-nav{min-height:0;overflow-y:auto;padding-right:.15rem;scrollbar-width:thin}.app-nav-link{min-height:2.75rem;gap:.7rem;padding:.62rem .7rem;color:color-mix(in srgb,var(--foreground) 76%,var(--muted));font-size:.95rem;font-weight:900;transition:background var(--motion-fast),color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.app-nav-link.is-active,.app-nav-link:hover{background:var(--accent-soft);color:var(--foreground)}.app-nav-link.is-active{box-shadow:inset 3px 0 0 var(--accent),0 1px 0 color-mix(in srgb,var(--accent) 14%,transparent)}.app-nav-link svg{color:var(--accent)}.app-sidebar-bottom{grid-template-columns:minmax(0,1fr) auto;align-items:center}.app-sidebar-bottom .app-nav-link{min-width:0}.app-sidebar-bottom .app-nav-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav-icon-link{display:grid;width:2.55rem;height:2.55rem;place-items:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);color:var(--muted);transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.app-nav-icon-link.is-active,.app-nav-icon-link:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft));color:var(--foreground);transform:translateY(-1px)}.app-nav-group{display:grid;gap:.2rem}.app-nav-group-summary{display:grid;min-height:2.45rem;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;border-radius:var(--radius-md);padding:.45rem .62rem;color:var(--foreground);font-size:.82rem;font-weight:950;list-style:none}.app-nav-group-summary::-webkit-details-marker{display:none}.app-nav-group-summary svg{color:var(--accent)}.app-nav-group-summary svg:last-child{color:var(--muted);transition:transform .16s ease}.app-nav-group-summary.is-active{background:var(--accent-soft)}.app-nav-group[open] .app-nav-group-summary svg:last-child{transform:rotate(180deg)}.app-nav-sub-link{min-height:2.35rem;margin-left:.45rem;padding-block:.45rem;font-size:.86rem}.app-responsive-tools{display:grid;grid-template-columns:repeat(3,2.65rem);gap:.6rem;justify-content:start;align-items:center;align-self:end;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);padding-top:.65rem}.app-mobile-tools button,.app-mobile-tools summary,.app-responsive-tools button,.app-responsive-tools summary{width:2.65rem;height:2.65rem;border-radius:10px;padding:0}.app-mobile-tools{display:none;align-items:center;gap:.28rem;min-width:0}.app-menu summary::-webkit-details-marker,.language-menu summary::-webkit-details-marker,.notification-menu summary::-webkit-details-marker{display:none}.app-menu summary::marker,.language-menu summary::marker,.notification-menu summary::marker{content:none}.app-menu summary:after,.app-menu summary:before,.language-menu summary:after,.language-menu summary:before,.notification-menu summary:after,.notification-menu summary:before{display:none;content:none}.app-menu summary,.language-menu summary,.notification-menu summary{list-style:none;appearance:none;-webkit-appearance:none;list-style-image:none}.app-menu summary{display:grid;width:2.55rem;height:2.55rem;padding:0}.language-menu-panel,.notification-panel{position:absolute;top:calc(100% + .5rem);right:0;z-index:120;width:min(18rem,calc(100vw - 1rem));max-height:min(24rem,calc(100vh - 5rem));border:1px solid var(--border);border-radius:var(--radius-lg);animation:menu-pop .14s ease-out;background:var(--surface-raised);box-shadow:var(--shadow-popover);color:var(--foreground);isolation:isolate;overflow:auto;transform-origin:top right}.notification-panel{width:min(20rem,calc(100vw - 1rem))}.language-menu:not([open]) .language-menu-panel,.notification-menu:not([open]) .notification-panel{display:none}.app-responsive-tools .language-menu-panel,.app-responsive-tools .notification-panel{position:fixed;top:auto;right:auto;bottom:4.65rem;left:.85rem;width:min(20rem,calc(100vw - 1.7rem));max-height:min(70vh,28rem);transform-origin:bottom left}.language-menu[open],.notification-menu[open]{z-index:120}.language-option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:2.55rem;opacity:1;transition:background var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.language-option:hover{transform:translateX(-2px)}.language-menu-panel .language-option{background:transparent}.language-menu-panel .language-option.is-active{background:var(--accent);color:#06130d}.notification-menu summary{position:relative}.notification-dot{position:absolute;top:.55rem;right:.55rem;width:.48rem;height:.48rem;border:2px solid var(--surface);border-radius:999px;background:var(--accent)}.notification-panel-heading,.notification-row{display:grid;gap:.15rem}.notification-panel-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.45rem .55rem}.notification-panel-heading>span{display:grid;min-width:0;gap:.1rem}.notification-panel-heading strong,.notification-row strong{color:var(--foreground);font-weight:950}.notification-panel-heading span,.notification-row small{color:var(--muted);font-size:.76rem;font-weight:750;line-height:1.25}.notification-row{grid-template-columns:auto minmax(0,1fr);align-items:start;border-radius:var(--radius-md);background:var(--surface-soft);padding:.65rem}.notification-row svg{color:var(--accent);margin-top:.1rem}.notification-row span{display:grid;min-width:0;gap:.12rem}.notification-read-button{min-height:2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--foreground);padding:0 .6rem;font-size:.72rem;font-weight:950;white-space:nowrap}.notification-read-button:disabled{cursor:not-allowed;opacity:.5}.notification-row[data-read=true]{opacity:.72}@keyframes menu-pop{0%{opacity:.94;transform:translateY(-.25rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-main{min-width:0}.app-mobile-header{position:sticky;top:0;z-index:70;display:none;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);padding:.55rem .7rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .18s ease,box-shadow .18s ease;will-change:transform}.app-mobile-header.is-hidden{transform:translateY(-110%);box-shadow:none}.app-mobile-header:has(.language-menu[open]),.app-mobile-header:has(.notification-menu[open]),.app-mobile-header:has(details[open]){transform:translateY(0)}.app-mobile-brand{min-width:0;gap:.5rem;font-weight:950}.app-mobile-brand>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-mobile-brand .app-brand-mark{width:2rem;height:2rem}.app-menu{position:relative}.app-menu-panel{position:absolute;top:2.8rem;right:0;width:min(18rem,calc(100vw - 1rem));border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-popover);padding:.45rem}.app-menu:not([open]) .app-menu-panel{display:none}.app-menu-section,.app-menu-sections{display:grid;gap:.35rem}.app-menu-sections{max-height:min(78vh,34rem);overflow-y:auto;padding-right:.1rem}.app-menu-section{border-bottom:1px solid color-mix(in srgb,var(--border) 76%,transparent);padding-bottom:.45rem}.app-menu-section:last-child{border-bottom:0;padding-bottom:0}.app-menu-section-label{margin:.2rem .35rem 0;color:var(--muted);font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.app-content{width:100%;max-width:1500px;min-width:0;margin-inline:auto;padding:clamp(.75rem,2vw,1.5rem)}@media (min-width:901px){.app-content:has(.play-arena){padding-bottom:0}}.play-arena{position:relative;z-index:1;display:block;min-height:calc(100dvh - 4.5rem);border-radius:var(--radius-md);padding:clamp(.6rem,1.5vw,1rem);background:color-mix(in srgb,var(--surface-strong) 82%,var(--background));color:var(--foreground);overflow:clip}.play-core{min-width:0}.play-context,.play-room-strip{border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow)}.play-header-compact{display:grid;grid-template-columns:minmax(12rem,auto) minmax(16rem,1fr) auto;align-items:center;gap:.8rem;padding:.75rem .9rem}.play-header-compact h1{margin:0 0 .35rem;color:var(--foreground);font-size:clamp(1.35rem,2.5vw,2rem);font-weight:950;line-height:1}.play-objective{color:var(--muted);font-size:.92rem;font-weight:750;line-height:1.35}.play-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.play-unified-header{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.55rem;width:var(--board-fixed-size);max-width:calc(100vw - 1.5rem);margin-inline:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);box-shadow:0 16px 34px rgb(0 0 0/18%);padding:.65rem .7rem;min-width:0}.play-title-block{min-width:0}.play-title-row{display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-width:0;width:100%}.play-title-block h1{margin:0;color:var(--foreground);font-size:clamp(1.18rem,2vw,1.68rem);font-weight:950;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-title-picker{position:relative;flex:1 1 auto;min-width:0}.play-title-button{display:inline-flex;min-width:0;max-width:100%;align-items:center;gap:.35rem;border:0;background:transparent;color:inherit;padding:0;text-align:left}.play-title-button svg{flex:0 0 auto;color:var(--accent)}.play-title-picker-menu{position:absolute;z-index:20;top:calc(100% + .55rem);left:0;display:grid;width:min(31rem,calc(100vw - 2rem));gap:.45rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,black);box-shadow:var(--shadow);padding:.55rem}.play-title-picker-search{display:flex;align-items:center;gap:.45rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-strong);padding:.45rem .55rem}.play-title-picker-search svg{color:var(--muted)}.play-title-picker-search input{width:100%;border:0;outline:0;background:transparent;color:var(--foreground);font-size:.82rem;font-weight:800}.play-title-picker-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,auto);align-items:center;gap:.4rem}.play-title-picker-chips{display:flex;min-width:0;gap:.28rem;overflow-x:auto;padding-bottom:.05rem;scrollbar-width:thin}.play-title-picker-chips button,.play-title-picker-family select{min-height:2rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-strong);color:var(--foreground);font-size:.72rem;font-weight:950}.play-title-picker-chips button{flex:0 0 auto;padding:0 .55rem}.play-title-picker-chips button.is-selected{border-color:color-mix(in srgb,var(--accent) 65%,var(--border));background:color-mix(in srgb,var(--accent) 20%,var(--surface-strong))}.play-title-picker-family select{width:100%;max-width:11rem;padding:0 .45rem}.play-title-picker-list{display:grid;max-height:17rem;gap:.32rem;overflow:auto}.play-title-picker-row{display:flex;align-items:center;justify-content:space-between;gap:.65rem;border-radius:7px;color:var(--foreground);padding:.45rem .5rem;font-size:.8rem;font-weight:950}.play-title-picker-row.is-current,.play-title-picker-row:hover{background:color-mix(in srgb,var(--accent) 15%,var(--surface-strong))}.play-title-picker-list p,.play-title-picker-row small{color:var(--muted);font-size:.68rem;font-weight:900}.play-header-command-actions{max-width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:.08rem;scrollbar-width:thin}.play-header-command-actions button{min-height:2.35rem;flex:0 0 auto;border-radius:7px;padding-block:.42rem;font-size:.78rem}.board-player-card{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(5rem,auto);align-items:center;gap:.65rem;width:var(--board-fixed-size);max-width:calc(100vw - 1.5rem);min-height:3.15rem;margin-inline:auto;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface-raised) 96%,transparent);padding:.45rem .6rem;box-shadow:var(--shadow-card)}.play-arena .board-player-card{min-height:2.65rem;padding:.32rem .5rem}.play-arena .player-avatar{width:1.95rem;height:1.95rem}.play-arena .player-card-row span,.play-arena .player-card-row strong{font-size:.86rem}.play-arena .player-card-main p{margin-top:.04rem;font-size:.68rem}.board-player-card.is-active{border-color:color-mix(in srgb,var(--accent) 64%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),var(--shadow-card)}.dark .board-player-card{border-color:rgb(255 255 255/8%);background:#24231f;box-shadow:0 10px 20px rgb(0 0 0/14%)}.dark .board-player-card.is-active{border-color:rgb(115 184 80/62%);box-shadow:0 0 0 1px rgb(115 184 80/18%),0 10px 20px rgb(0 0 0/14%)}.player-avatar{display:grid;width:2.2rem;height:2.2rem;place-items:center;border-radius:7px;background:var(--accent-soft);color:var(--accent-strong);font-size:.72rem;font-weight:950;text-transform:uppercase}.dark .player-avatar{background:linear-gradient(160deg,#3c3a34,#191815);color:#fffdf7}.player-card-main{min-width:0}.player-card-row{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-width:0}.player-card-row strong{overflow:hidden;color:var(--foreground);font-size:.92rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.player-card-row span{color:var(--accent);font-size:.95rem;font-weight:950;white-space:nowrap}.player-card-main p{margin:.1rem 0 0;overflow:hidden;color:var(--muted);font-size:.75rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.dark .player-card-row strong{color:#fffdf7}.dark .player-card-main p{color:#bbb3a4}.captured-strip{display:flex;justify-content:flex-end;align-items:center;gap:0;min-width:5.75rem;min-height:1.65rem;padding-left:.42rem;overflow:hidden;isolation:isolate}.player-piece-rail{gap:.18rem;min-width:6rem}.hand-tray,.player-piece-rail{display:grid;justify-items:end}.hand-tray{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.28rem;max-width:100%}.hand-tray-status{display:inline-flex;align-items:center;gap:.24rem;min-width:0;max-width:7.2rem;min-height:1.45rem;border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent));border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 84%,var(--accent-soft));color:var(--foreground);padding:.12rem .4rem;font-size:.64rem;font-weight:950;line-height:1;white-space:nowrap}.hand-tray-status span,.hand-tray-status strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.hand-tray-status strong{color:var(--muted);text-transform:uppercase}.hand-tray-status span{color:var(--accent-strong)}.hand-tray[data-hand-state=ready] .hand-tray-status,.hand-tray[data-hand-state=selected] .hand-tray-status{border-color:color-mix(in srgb,var(--accent) 60%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--surface-raised))}.hand-tray[data-skin=mini-wedge] .hand-tray-status,.hand-tray[data-skin=wedge] .hand-tray-status{border-radius:.45rem;background:color-mix(in srgb,#d9b878 42%,var(--surface-raised))}.hand-strip{display:flex;justify-content:flex-end;align-items:center;gap:.22rem;min-width:0;max-width:100%;overflow:hidden}.hand-strip.is-empty{min-height:1.45rem}.hand-strip[data-skin=mini-wedge],.hand-strip[data-skin=wedge]{gap:.3rem}.hand-piece-button{display:inline-grid;grid-template-columns:1rem auto;align-items:center;gap:.12rem;min-width:2.15rem;min-height:1.45rem;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 86%,var(--accent-soft));color:var(--foreground);padding:.12rem .32rem;font-size:.68rem;font-weight:950;cursor:grab}.hand-piece-button[data-skin=mini-wedge],.hand-piece-button[data-skin=wedge]{border-radius:.45rem;background:color-mix(in srgb,#d9b878 72%,var(--surface-raised));color:#1f160c}.hand-piece-button[data-skin=disc]{border-radius:999px;background:color-mix(in srgb,#dbc28d 70%,var(--surface-raised))}.hand-piece-button[data-skin=checker],.hand-piece-button[data-skin=stone]{min-width:2rem}.hand-piece-button:disabled{cursor:not-allowed;opacity:.58}.hand-empty-pill{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;min-height:1.35rem;border:1px dashed color-mix(in srgb,var(--border) 82%,var(--muted));border-radius:999px;background:color-mix(in srgb,var(--surface) 76%,transparent);color:var(--muted);padding:.08rem .42rem;font-size:.64rem;font-weight:950;line-height:1;white-space:nowrap}.hand-strip[data-skin=mini-wedge] .hand-empty-pill,.hand-strip[data-skin=wedge] .hand-empty-pill{border-radius:.45rem}.hand-piece-button.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.hand-piece-button[data-hand-state=ready]:hover{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));transform:translateY(-1px)}.hand-piece-button[data-hand-state=selected]{cursor:grabbing}.hand-piece-button .native-piece-symbol,.hand-piece-button .piece-svg,.hand-piece-button .piece-symbol{width:1rem;height:1rem;font-size:.9rem}.captured-piece{display:grid;position:relative;width:1.36rem;height:1.36rem;place-items:center;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--border) 34%,#fff8dc);border-radius:.32rem;background:linear-gradient(145deg,#fff8dc,#e3d39e 58%,#bba166);box-shadow:inset 0 0 0 1px rgb(255 255 255/42%),0 .08rem .18rem rgb(0 0 0/26%)}.captured-piece[data-captured-owner=white]{border-color:color-mix(in srgb,var(--border) 40%,#3b3325);background:linear-gradient(145deg,#3c372d,#242019 54%,#100f0d);box-shadow:inset 0 0 0 1px rgb(255 255 255/12%),0 .08rem .18rem rgb(0 0 0/28%)}.captured-piece[data-captured-owner=black],.captured-piece[data-captured-owner=blue],.captured-piece[data-captured-owner=gote]{border-color:color-mix(in srgb,var(--border) 24%,#fff3bf);background:linear-gradient(145deg,#fff9da,#ead99e 56%,#c3aa66);box-shadow:inset 0 0 0 1px rgb(255 255 255/54%),0 .08rem .18rem rgb(0 0 0/26%)}.captured-piece+.captured-piece{margin-left:-.64rem}.captured-piece .native-piece-symbol,.captured-piece .piece-svg,.captured-piece .piece-symbol{width:1.28rem;height:1.28rem;font-size:1.08rem;stroke-width:5px;filter:drop-shadow(0 1px 0 rgb(255 255 255/28%))}.captured-piece[data-captured-owner=white] .native-piece-symbol,.captured-piece[data-captured-owner=white] .piece-svg,.captured-piece[data-captured-owner=white] .piece-symbol{filter:drop-shadow(0 1px 0 rgb(0 0 0/34%))}.captured-material{flex:0 0 auto;margin-left:.4rem;border:0;background:transparent;color:var(--accent-strong);padding:0;font-size:.78rem;font-weight:950;line-height:1;white-space:nowrap}.dark .captured-material{color:#8ef0ad}.captured-overflow{flex:0 0 auto;margin-left:.24rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);padding:.18rem .32rem;font-size:.68rem;font-weight:950;line-height:1;white-space:nowrap}.captured-empty{color:var(--muted);font-size:.7rem;font-weight:850;white-space:nowrap}.dark .captured-empty{color:#8d8679}.game-board-layout{display:grid;align-items:start;justify-content:center;--board-fixed-size:clamp(320px,min(58vw,calc(100vh - 8rem)),760px)}.home-board-preview{overflow:hidden}.home-board-preview .game-board-layout{grid-template-columns:minmax(0,1fr);--board-fixed-size:min(100%,38rem)}.home-board-preview .game-side-panel{display:none}.home-command-center{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem}.home-command-copy{display:grid;gap:.55rem}.home-command-copy h1{font-size:clamp(2.15rem,6vw,4.8rem);font-weight:950;line-height:.95}.home-command-copy p,.home-next-steps p{margin:0;max-width:48rem;color:var(--muted);font-size:.96rem;font-weight:720;line-height:1.5}.home-action-grid,.home-stat-grid{display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.home-action-card{display:grid;min-height:7rem;align-content:center;justify-items:center;gap:.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);color:var(--foreground);padding:.85rem;text-align:center;box-shadow:var(--shadow-card);transition:border-color var(--motion-fast),transform var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.home-action-card:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:color-mix(in srgb,var(--accent) 9%,var(--surface-raised));box-shadow:0 16px 34px rgb(36 54 47/13%);transform:translateY(-2px)}.home-action-card.is-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 20%,var(--surface-strong)),var(--surface))}.home-action-card svg,.home-stat-card svg{color:var(--accent);stroke-width:2.7}.home-action-card span{font-size:1rem;font-weight:950}.home-action-card small,.home-stat-card span{color:var(--muted);font-size:.78rem;font-weight:820}.home-stat-card{display:grid;gap:.25rem;padding:.9rem}.home-stat-card strong{font-size:1.55rem;font-weight:950;line-height:1}.home-next-steps{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem}.home-next-steps h2{margin:0 0 .35rem;font-size:1.15rem;font-weight:950}.intro-page{display:grid;gap:clamp(.9rem,2vw,1.25rem);min-height:calc(100vh - 3rem);align-content:center}.intro-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,25rem);align-items:center;gap:clamp(1rem,4vw,3rem);min-height:min(34rem,calc(100vh - 10rem));border:1px solid var(--border);border-radius:8px;background:radial-gradient(circle at 72% 28%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),linear-gradient(140deg,var(--surface-strong),var(--surface));padding:clamp(1.1rem,4vw,3rem);overflow:hidden}.intro-copy{display:grid;gap:1rem;max-width:43rem}.intro-copy h1{margin:0;color:var(--foreground);font-size:clamp(3rem,9vw,7.5rem);font-weight:950;letter-spacing:0;line-height:.86}.intro-copy p{max-width:36rem;margin:0;color:var(--muted);font-size:clamp(1.02rem,1.8vw,1.35rem);font-weight:780;line-height:1.35}.intro-actions,.intro-proof,.intro-shortcuts{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.intro-proof span{border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--background) 42%,transparent);color:var(--muted);padding:.34rem .68rem;font-size:.78rem;font-weight:900;white-space:nowrap}.intro-board-orbit{position:relative;display:grid;width:min(100%,23rem);aspect-ratio:1;place-items:center;justify-self:center}.intro-board{display:grid;width:86%;aspect-ratio:1;grid-template-columns:repeat(8,minmax(0,1fr));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:8px;overflow:hidden;box-shadow:0 24px 70px rgb(0 0 0/20%);transform:rotate(-4deg);--board-fixed-size:min(20rem,86vw);--board-cols:8;--board-rows:8}.intro-board>span{display:grid;min-width:0;min-height:0;place-items:center}.intro-board>span.is-dark{background:#71934f}.intro-board>span.is-light{background:#e9ebcf}.intro-board .piece-svg{width:112%;height:112%;stroke-width:6px}.intro-board .piece-svg[data-owner=white]{filter:drop-shadow(0 1px 0 rgb(0 0 0/24%))}.intro-board .piece-svg[data-owner=black]{filter:drop-shadow(0 1px 0 rgb(255 255 255/12%))}.intro-orbit-piece{position:absolute;display:grid;width:clamp(2.7rem,7vw,4.1rem);aspect-ratio:1;place-items:center;border:1px solid rgb(255 255 255/18%);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 16px 34px rgb(0 0 0/20%);color:var(--foreground);font-size:clamp(1.05rem,2.6vw,1.55rem);font-weight:950;animation:intro-float 4.8s ease-in-out infinite}.intro-orbit-piece.is-king{top:6%;right:6%}.intro-orbit-piece.is-knight{left:0;bottom:14%;animation-delay:-1.4s}.intro-orbit-piece.is-pawn{right:12%;bottom:0;color:#07140c;background:var(--accent);animation-delay:-2.6s}@keyframes intro-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.6rem)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.intro-orbit-piece{animation:none}}.intro-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.intro-workflow-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.12rem .55rem;align-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);padding:.85rem;transition:border-color .15s ease,background .15s ease,transform .15s ease}.intro-workflow-step:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--surface-soft);transform:translateY(-1px)}.intro-shortcuts svg,.intro-workflow-step svg{color:var(--accent);stroke-width:2.6}.intro-workflow-step strong{overflow:hidden;color:var(--foreground);font-weight:950;text-overflow:ellipsis;white-space:nowrap}.intro-workflow-step span{grid-column:2;color:var(--muted);font-size:.8rem;font-weight:760;line-height:1.3}.intro-shortcuts{justify-content:center}.intro-shortcuts a{display:inline-flex;align-items:center;gap:.42rem;min-height:2.45rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--foreground);padding:0 .85rem;font-size:.86rem;font-weight:900}.intro-shortcuts a:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--surface-soft)}.play-arena .game-board-layout{--board-fixed-size:clamp(360px,min(44vw,calc(100dvh - 13.75rem)),760px);grid-template-columns:var(--board-fixed-size) minmax(22rem,34rem);justify-content:center;min-width:0;width:100%;max-width:calc(var(--board-fixed-size) + 34rem + 1rem);margin-inline:auto}.board-column{min-width:0}.board-shell{width:var(--board-fixed-size);max-width:calc(100vw - 1.5rem);margin-inline:auto;flex:0 0 auto;contain:layout paint}.board-shell,.board-stage{aspect-ratio:var(--board-cols) /var(--board-rows)}.board-stage{position:relative;width:100%;isolation:isolate}.terrain-key{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem;width:var(--board-fixed-size);max-width:calc(100vw - 1.5rem);margin:.42rem auto 0;color:var(--muted);font-size:.62rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.terrain-key-label{min-height:1.25rem}.terrain-key-item,.terrain-key-label{display:inline-flex;align-items:center;color:var(--muted)}.terrain-key-item{gap:.24rem;min-height:1.32rem;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface) 58%,transparent);padding:.12rem .42rem;font-size:.62rem;font-weight:950;letter-spacing:0;line-height:1;text-transform:none;white-space:nowrap}.terrain-key-item i{display:inline-block;width:.78rem;height:.78rem;border-radius:.18rem;border:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.terrain-key-item[data-terrain=promotion-zone] i{background:color-mix(in srgb,var(--warning) 28%,transparent)}.terrain-key-item[data-terrain=palace] i{background:linear-gradient(45deg,transparent calc(50% - 1px),color-mix(in srgb,var(--accent) 42%,transparent) 50%,transparent calc(50% + 1px)),color-mix(in srgb,var(--accent) 16%,transparent)}.terrain-key-item[data-terrain=river] i{background:color-mix(in srgb,var(--info) 32%,transparent)}.terrain-key-item[data-terrain=den] i{background:color-mix(in srgb,var(--danger) 28%,transparent)}.terrain-key-item[data-terrain=trap] i{border-style:dashed;background:color-mix(in srgb,var(--warning) 20%,transparent)}.terrain-key-item[data-terrain=camp] i{background:color-mix(in srgb,var(--accent) 22%,transparent)}.board-grid{display:grid;width:100%;height:100%;aspect-ratio:var(--board-cols) /var(--board-rows);background:var(--border);grid-template-rows:repeat(var(--board-rows),minmax(0,1fr));box-shadow:inset 0 0 0 1px rgb(0 0 0/16%);touch-action:none;-webkit-user-select:none;user-select:none}.board-shell[data-variant=mini-shogi]{--board-light:#f2cf79;--board-dark:#bc7a36}.board-shell[data-variant=mini-shogi][data-board-theme=classic]{--board-light:#f2f5dd;--board-dark:#6f9b55}.board-shell[data-variant=mini-shogi][data-board-theme=jade]{--board-light:#dceadf;--board-dark:#4f8f74}.board-shell[data-variant=mini-shogi][data-board-theme=ocean]{--board-light:#d7ecf0;--board-dark:#347c8f}.board-shell[data-variant=mini-shogi][data-board-theme=contrast]{--board-light:#f7f3d4;--board-dark:#4d5b3c}.board-shell[data-board-theme=classic]{--board-light:#f2f5dd;--board-dark:#6f9b55}.board-shell[data-board-theme=wood]{--board-light:#f1d184;--board-dark:#b77536}.board-shell[data-board-theme=jade]{--board-light:#dceadf;--board-dark:#4f8f74}.board-shell[data-board-theme=ocean]{--board-light:#d7ecf0;--board-dark:#347c8f}.board-shell[data-board-theme=contrast]{--board-light:#f7f3d4;--board-dark:#4d5b3c}.board-shell[data-variant=mini-shogi] .board-grid{border-color:#7a421c;background:linear-gradient(90deg,rgb(255 255 255/12%),transparent 24%,rgb(70 35 11/14%) 75%,transparent),#9c5c24;box-shadow:inset 0 0 0 2px rgb(74 36 13/42%),0 1rem 2.4rem rgb(0 0 0/18%)}.board-square{display:grid;position:relative;place-items:center;min-width:0;min-height:0;padding:0;border:0;aspect-ratio:1;cursor:pointer;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .82);transition:box-shadow .18s ease,transform .18s ease;-webkit-user-select:none;user-select:none}.board-square[data-piece-label]:after{position:absolute;left:50%;bottom:.2rem;z-index:12;max-width:calc(100% - .35rem);transform:translate(-50%,.18rem) scale(.98);border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent));border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:0 .35rem .9rem rgb(0 0 0/18%);color:var(--foreground);content:attr(data-piece-label);font-size:clamp(.58rem,calc((var(--board-fixed-size) / var(--board-cols)) * .12),.78rem);font-weight:950;line-height:1;opacity:0;overflow:hidden;padding:.18rem .34rem;pointer-events:none;text-align:center;text-overflow:ellipsis;transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.board-square[data-piece-label]:is(:hover,:focus-visible):after{opacity:1;transform:translate(-50%) scale(1)}.board-square[data-piece-label]:is(:hover,:focus-visible){z-index:6}.board-square[data-terrain=promotion-zone]:before{position:absolute;inset:.18rem;border:1px solid rgb(255 255 255/18%);border-radius:.22rem;background:linear-gradient(135deg,rgb(255 238 177/14%),transparent 38%),color-mix(in srgb,var(--warning) 11%,transparent);content:"";pointer-events:none}.board-square[data-terrain=promotion-zone][data-square-state]:before{opacity:.42}.board-square[data-terrain=den]:before,.board-square[data-terrain=palace]:before,.board-square[data-terrain=river]:before,.board-square[data-terrain=trap]:before{position:absolute;inset:.18rem;border-radius:.22rem;content:"";pointer-events:none}.board-square[data-terrain=palace]:before{border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);background:linear-gradient(45deg,transparent calc(50% - 1px),color-mix(in srgb,var(--accent) 28%,transparent) 50%,transparent calc(50% + 1px)),linear-gradient(-45deg,transparent calc(50% - 1px),color-mix(in srgb,var(--accent) 22%,transparent) 50%,transparent calc(50% + 1px)),color-mix(in srgb,var(--accent) 7%,transparent)}.board-square[data-terrain=river]:before{border:1px solid color-mix(in srgb,var(--info) 46%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--info) 20%,transparent),transparent 45%),color-mix(in srgb,var(--info) 13%,transparent)}.board-square[data-terrain=den]:before{border:1px solid color-mix(in srgb,var(--danger) 42%,transparent);background:radial-gradient(circle at center,color-mix(in srgb,var(--danger) 22%,transparent),transparent 58%),color-mix(in srgb,var(--danger) 9%,transparent)}.board-square[data-terrain=trap]:before{border:1px dashed color-mix(in srgb,var(--warning) 48%,transparent);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--warning) 11%,transparent) 0 .22rem,transparent .22rem .44rem),color-mix(in srgb,var(--warning) 7%,transparent)}.board-square[data-terrain=den][data-square-state]:before,.board-square[data-terrain=palace][data-square-state]:before,.board-square[data-terrain=river][data-square-state]:before,.board-square[data-terrain=trap][data-square-state]:before{opacity:.38}.board-shell[data-variant=mini-shogi] .board-square{box-shadow:inset 0 0 0 1px rgb(92 48 17/28%),inset 0 .18rem .45rem rgb(255 238 177/16%)}.board-planning-layer{position:absolute;inset:0;z-index:7;overflow:visible;pointer-events:none}.board-planning-layer line{marker-end:url(#board-planning-arrow);stroke:color-mix(in srgb,var(--accent) 82%,#ffffff);stroke-linecap:round;stroke-width:1.35;filter:drop-shadow(0 .08rem .16rem rgb(0 0 0/32%));opacity:.78}.board-planning-layer marker path{fill:color-mix(in srgb,var(--accent) 82%,#ffffff)}.board-planning-layer line[data-planning-preview=true]{stroke-dasharray:2.2 1.6;opacity:.68}.board-planning-layer line[data-mode=erase]{stroke:color-mix(in srgb,var(--danger) 80%,#ffdf64)}.piece-drag-preview{position:fixed;left:-1000px;top:-1000px;z-index:9999;display:grid;place-items:center;border:0;background:transparent;box-shadow:none;opacity:1;pointer-events:none}.piece-drag-preview .piece-icon{width:100%;height:100%;font-size:inherit}.board-drag-ghost{position:fixed;z-index:2147483000;display:grid;width:var(--drag-piece-size,calc((var(--board-fixed-size) / var(--board-cols)) * .86));height:var(--drag-piece-size,calc((var(--board-fixed-size) / var(--board-cols)) * .86));place-items:center;border:0;background:transparent;box-shadow:none;pointer-events:none;transform:translate(-50%,-50%);will-change:left,top,transform}.board-drag-ghost .piece-icon{width:100%;height:100%;border:0;background:transparent;box-shadow:none;font-size:calc(var(--drag-piece-size, calc(var(--board-fixed-size) / var(--board-cols))) * .95);filter:drop-shadow(0 .34rem .36rem rgb(0 0 0/26%))}.board-square[data-dragging=true]{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--accent) 72%,transparent)}.board-square[data-dragging=true] .piece-icon{opacity:0;transform:scale(.9);transition:opacity .15s ease,transform .15s ease}.board-square[data-planning-origin=true]{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--warning) 76%,transparent),inset 0 0 1.6rem rgb(255 225 117/18%)}.board-square[data-invalid-drop=true]{animation:invalid-drop-flash .52s ease-out}@keyframes invalid-drop-flash{0%,to{box-shadow:inset 0 0 0 0 color-mix(in srgb,var(--danger) 0%,transparent)}35%{box-shadow:inset 0 0 0 4px color-mix(in srgb,var(--danger) 72%,transparent)}}.board-coordinate{position:absolute;z-index:14;border:0;border-radius:0;background:transparent;color:#274f1b;font-size:clamp(.78rem,calc((var(--board-fixed-size) / var(--board-cols)) * .18),1.12rem);font-weight:950;line-height:1;padding:0;pointer-events:none;text-align:center;text-shadow:0 1px 0 rgb(255 255 255/86%),0 0 .22rem rgb(255 255 255/72%);text-transform:none}.board-square[data-tone=dark] .board-coordinate{color:#fff8c7;text-shadow:0 1px 1px rgb(0 0 0/46%),0 0 .18rem rgb(0 0 0/42%)}.board-shell:not([data-variant=classic]):not([data-variant=chess960]):not([data-variant=antichess]):not([data-variant=horde]):not([data-variant=king-of-the-hill]):not([data-variant=three-check]):not([data-variant=racing-kings]) .board-coordinate{border:1px solid rgb(255 255 255/30%);border-radius:999px;background:rgb(12 18 14/58%);color:#fff8d6;padding:.08rem .18rem;text-shadow:0 1px 1px rgb(0 0 0/62%)}.board-rank{left:.16rem;top:.16rem}.board-file{right:.16rem;bottom:.16rem;text-transform:lowercase}.piece-symbol{display:grid;width:82%;height:82%;place-items:center;font-family:Noto Sans Symbols\ 2,DejaVu Sans,Segoe UI Symbol,Apple Symbols,"Noto Serif CJK SC",serif;line-height:1;opacity:1;filter:none;text-shadow:none;transform:none;-webkit-text-stroke:0;pointer-events:none;-webkit-user-select:none;user-select:none}.piece-svg{fill:var(--piece-light);stroke:var(--piece-light-stroke);stroke-linecap:round;stroke-linejoin:round;stroke-width:5.4px;paint-order:stroke fill;filter:none;shape-rendering:geometricPrecision;overflow:visible;width:86%;height:86%}.piece-svg[data-skin=makruk]{fill:color-mix(in srgb,var(--piece-light) 88%,#d6b46e);stroke:color-mix(in srgb,var(--piece-light-stroke) 82%,#6d522b)}.piece-svg[data-skin=silhouette]{fill:color-mix(in srgb,var(--piece-light) 88%,#faf1d2);stroke:color-mix(in srgb,var(--piece-light-stroke) 92%,#503b1f);stroke-linejoin:round;stroke-width:5.4}.piece-svg[data-owner=black],.piece-svg[data-owner=blue],.piece-svg[data-owner=gote]{fill:var(--piece-dark);stroke:var(--piece-dark-stroke)}.piece-svg[data-skin=makruk][data-owner=black]{fill:color-mix(in srgb,var(--piece-dark) 88%,#6d522b);stroke:color-mix(in srgb,var(--piece-dark-stroke) 82%,#d6b46e)}.piece-svg[data-skin=silhouette][data-owner=black],.piece-svg[data-skin=silhouette][data-owner=blue],.piece-svg[data-skin=silhouette][data-owner=gote]{fill:color-mix(in srgb,var(--piece-dark) 88%,#17120d);stroke:color-mix(in srgb,var(--piece-dark-stroke) 78%,#d8bd7a)}.western-theme-piece[data-skin=castle]{fill:color-mix(in srgb,var(--piece-light) 82%,#eef5dc);stroke:color-mix(in srgb,var(--piece-light-stroke) 86%,#28543a);stroke-width:5.8px}.western-theme-piece[data-skin=castle][data-owner=black],.western-theme-piece[data-skin=castle][data-owner=blue],.western-theme-piece[data-skin=castle][data-owner=gote]{fill:color-mix(in srgb,var(--piece-dark) 84%,#203327);stroke:color-mix(in srgb,var(--piece-dark-stroke) 70%,#b7d29b)}.western-theme-piece[data-skin=pirate]{fill:color-mix(in srgb,var(--piece-light) 78%,#ffe1a3);stroke:color-mix(in srgb,var(--piece-light-stroke) 84%,#4f351b);stroke-width:5.8px}.western-theme-piece[data-skin=pirate][data-owner=black],.western-theme-piece[data-skin=pirate][data-owner=blue],.western-theme-piece[data-skin=pirate][data-owner=gote]{fill:color-mix(in srgb,var(--piece-dark) 84%,#2f241a);stroke:color-mix(in srgb,var(--piece-dark-stroke) 74%,#f1c66d)}.western-theme-piece[data-skin=castle] [data-detail*=door],.western-theme-piece[data-skin=castle] [data-detail*=eye],.western-theme-piece[data-skin=pirate] [data-detail*=eye],.western-theme-piece[data-skin=pirate] [data-detail*=hole]{fill:var(--piece-cutout);stroke:var(--piece-cutout)}.western-glyph-piece{width:88%;height:88%;color:var(--piece-light);font-family:Georgia,Times New Roman,Noto Sans Symbols\ 2,Segoe UI Symbol,serif;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .82);font-weight:900;line-height:.92;-webkit-text-stroke:1.2px var(--piece-light-stroke);text-shadow:0 .04em 0 color-mix(in srgb,var(--piece-light-stroke) 42%,transparent),0 .1em .16em rgb(0 0 0/28%)}.western-glyph-piece[data-owner=black],.western-glyph-piece[data-owner=blue],.western-glyph-piece[data-owner=gote]{color:var(--piece-dark);-webkit-text-stroke-color:var(--piece-dark-stroke);text-shadow:0 .04em 0 color-mix(in srgb,white 18%,transparent),0 .1em .16em rgb(0 0 0/34%)}.western-monogram-piece{position:relative;width:78%;height:78%;border:2px solid color-mix(in srgb,var(--piece-light-stroke) 82%,#ffffff);border-radius:31% 31% 42% 42%;background:linear-gradient(145deg,rgb(255 255 255/72%) 0 14%,transparent 15%),linear-gradient(160deg,#fff7dc 0 52%,#d8b56d 53% 100%);color:#2d2419;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .48);font-weight:950;letter-spacing:0;line-height:1;box-shadow:inset 0 0 0 2px rgb(255 255 255/34%),inset 0 -.24em 0 rgb(90 62 29/16%),0 .08em 0 color-mix(in srgb,var(--piece-light-stroke) 58%,transparent),0 .18em .28em rgb(0 0 0/24%)}.western-monogram-piece:before{position:absolute;inset:10% 16% auto;height:.16em;border-radius:999px;background:currentColor;content:"";opacity:.42}.western-monogram-letter{position:relative;display:grid;width:100%;height:100%;place-items:center;transform:translateY(.02em)}.western-monogram-piece[data-owner=black],.western-monogram-piece[data-owner=blue],.western-monogram-piece[data-owner=gote]{border-color:color-mix(in srgb,var(--piece-dark-stroke) 76%,#ffffff);background:linear-gradient(145deg,rgb(255 255 255/16%) 0 14%,transparent 15%),linear-gradient(160deg,#4c4639 0 52%,#201d19 53% 100%);color:#fff3cf;box-shadow:inset 0 0 0 2px rgb(255 255 255/10%),inset 0 -.24em 0 rgb(0 0 0/28%),0 .08em 0 color-mix(in srgb,var(--piece-dark-stroke) 48%,transparent),0 .18em .3em rgb(0 0 0/32%)}.piece-svg[data-skin=checker][data-piece=checker-king],.piece-svg[data-skin=checker][data-piece=checker-man]{width:82%;height:82%}.piece-svg[data-skin=stone]{fill:color-mix(in srgb,var(--piece-light) 84%,#7f8b7b);stroke:color-mix(in srgb,var(--piece-light-stroke) 74%,#d8dfd2)}.piece-svg[data-skin=stone][data-owner=black]{fill:color-mix(in srgb,var(--piece-dark) 80%,#151915);stroke:color-mix(in srgb,var(--piece-dark-stroke) 70%,#9da694)}.native-piece-symbol{width:82%;height:82%;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .72);font-weight:950;color:var(--piece-light);-webkit-text-stroke:1.25px var(--piece-light-stroke);text-shadow:none;font-family:"Noto Serif CJK SC","Noto Serif CJK JP",Noto Sans Symbols\ 2,Segoe UI Symbol,serif}.native-piece-symbol[data-skin=disc],.native-piece-symbol[data-variant=janggi],.native-piece-symbol[data-variant=xiangqi]{width:90%;height:90%;border:3px solid;border-radius:999px;background:radial-gradient(circle at 34% 25%,rgb(255 255 255/28%),transparent 24%),linear-gradient(145deg,#ead9ac,#c7a36d);color:#b62525;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .54);-webkit-text-stroke:0;box-shadow:inset 0 -.22rem 0 rgb(91 58 26/20%),0 .1rem .18rem rgb(0 0 0/28%)}.native-piece-symbol[data-variant=janggi][data-owner=blue],.native-piece-symbol[data-variant=xiangqi][data-owner=black]{color:#26322e}.native-piece-symbol[data-skin=mini-wedge],.native-piece-symbol[data-skin=wedge],.native-piece-symbol[data-variant=mini-shogi],.native-piece-symbol[data-variant=shogi]{width:88%;height:95%;clip-path:polygon(50% 0,93% 23%,83% 100%,17% 100%,7% 23%);background:linear-gradient(135deg,rgb(255 255 255/26%),transparent 34%),linear-gradient(160deg,#e0bd78,#b88743);color:#241a10;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .48);-webkit-text-stroke:0;box-shadow:inset 0 -.24rem 0 rgb(92 55 20/25%),0 .14rem .22rem rgb(0 0 0/25%)}.native-piece-symbol[data-skin=mini-wedge],.native-piece-symbol[data-variant=mini-shogi]{width:82%;height:90%;background:linear-gradient(135deg,rgb(255 255 255/34%),transparent 34%),linear-gradient(160deg,#f0c982,#a96d36);font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .42)}.native-piece-symbol[data-skin=mini-wedge][data-owner=gote],.native-piece-symbol[data-skin=wedge][data-owner=gote],.native-piece-symbol[data-variant=mini-shogi][data-owner=gote],.native-piece-symbol[data-variant=shogi][data-owner=gote]{transform:rotate(180deg)}.native-piece-symbol[data-skin=tile],.native-piece-symbol[data-variant=jungle]{width:90%;height:90%;border:3px solid color-mix(in srgb,currentcolor 82%,#111);border-radius:7px;background:linear-gradient(140deg,rgb(255 255 255/18%),transparent 36%),linear-gradient(160deg,color-mix(in srgb,var(--surface) 58%,var(--board-light)),color-mix(in srgb,var(--surface) 42%,var(--board-dark)));color:#245d39;font-size:calc((var(--board-fixed-size) / var(--board-cols)) * .56);-webkit-text-stroke:0;box-shadow:inset 0 -.18rem 0 rgb(0 0 0/14%),0 .1rem .18rem rgb(0 0 0/24%)}.native-piece-symbol[data-skin=tile][data-owner=black],.native-piece-symbol[data-skin=tile][data-owner=blue],.native-piece-symbol[data-skin=tile][data-owner=gote],.native-piece-symbol[data-variant=jungle][data-owner=black]{color:#553f87}.native-piece-symbol[data-owner=black],.native-piece-symbol[data-owner=blue],.native-piece-symbol[data-owner=gote]{color:var(--piece-dark);-webkit-text-stroke-color:var(--piece-dark-stroke)}.piece-symbol[data-dark=true]{filter:none;text-shadow:none;-webkit-text-stroke:0}.match-result-banner,.win-celebration{position:absolute;pointer-events:none;z-index:4}.match-result-modal{position:absolute;z-index:95}.match-result-banner{left:clamp(.75rem,3vw,1.25rem);right:clamp(.75rem,3vw,1.25rem);top:clamp(.75rem,3vw,1.25rem);display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow);padding:.7rem .85rem;font-size:.9rem}.match-result-banner span{color:var(--muted);font-size:.78rem;font-weight:700;text-align:right}.match-result-modal{left:50%;top:50%;width:min(88%,26rem);max-height:min(88vh,34rem);overflow:auto;transform:translate(-50%,-50%);border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.4rem);text-align:center;pointer-events:auto}.match-result-close{position:absolute;right:.6rem;top:.6rem;display:grid;width:2.35rem;height:2.35rem;place-items:center;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--foreground)}.match-result-close:hover{background:var(--surface-strong)}.match-result-modal h2{margin:.25rem 0 .4rem;font-size:clamp(1.35rem,4vw,2rem);font-weight:950;line-height:1.05}.match-result-modal p{margin:0;color:var(--muted);font-size:.95rem;font-weight:700}.match-result-context{display:grid;gap:.42rem;margin:.85rem 0 0;padding:0;list-style:none;text-align:left}.match-result-context li{border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:.5rem .6rem;color:var(--foreground);font-size:.82rem;font-weight:750;line-height:1.35}.match-result-win{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.match-result-loss{border-color:color-mix(in srgb,var(--danger) 34%,var(--border))}.match-result-draw{border-color:color-mix(in srgb,var(--info) 34%,var(--border))}.win-celebration{inset:0;overflow:hidden}.win-celebration:after,.win-celebration:before{content:"";position:absolute;top:12%;width:.55rem;height:.55rem;border-radius:2px;background:var(--accent);box-shadow:2.5rem 1.2rem var(--warning),5rem .2rem var(--info),7rem 2.4rem var(--accent-strong),10rem .8rem var(--warning),13rem 2rem var(--info),16rem .4rem var(--accent);animation:celebration-fall 1.6s ease-out infinite}.win-celebration:before{left:12%}.win-celebration:after{left:42%;animation-delay:.32s}@keyframes celebration-fall{0%{transform:translateY(-1rem) rotate(0deg);opacity:.95}to{transform:translateY(15rem) rotate(120deg);opacity:0}}.move-list{overscroll-behavior:contain}.game-side-panel{max-height:none;overflow:visible}.play-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.play-arena .game-side-panel{width:100%;max-height:calc(var(--board-fixed-size) + 7.8rem);overflow:auto;scrollbar-width:thin}.play-panel-title{display:flex;align-items:center;justify-content:flex-start;gap:.75rem;border-radius:6px;background:var(--surface-strong);padding:.8rem;text-align:left}.play-panel-title h2{margin:0;color:var(--foreground);font-size:clamp(1.08rem,2.1vw,1.35rem);font-weight:950;line-height:1}.play-panel-match-header{display:grid;border-radius:var(--radius-md);background:var(--surface-strong);padding:.72rem;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--foreground) 5%,transparent)}.play-panel-match-header .play-title-row{align-items:center;flex-wrap:nowrap;gap:.45rem}.play-panel-match-header .play-title-block h1{font-size:clamp(1.08rem,1.65vw,1.42rem);white-space:nowrap}.play-title-actions{display:flex;flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-end;gap:.42rem;margin-left:auto;min-width:0}.play-share-menu>button,.play-title-actions>button{min-width:2.55rem;min-height:2.55rem;border-radius:7px;justify-content:center;padding:.42rem .54rem;font-size:.72rem;line-height:1;text-align:center;white-space:nowrap}.play-panel-match-header .play-share-menu>button,.play-panel-match-header .play-title-actions>button{width:2.55rem;padding:.42rem}.play-panel-match-header .play-title-actions .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.play-share-menu{position:relative;display:inline-flex}.play-share-menu-panel{position:absolute;top:calc(100% + .45rem);right:0;z-index:42;display:grid;width:min(19rem,calc(100vw - 2rem));gap:.45rem;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:10px;background:var(--surface-raised);padding:.65rem;box-shadow:0 18px 42px rgb(0 0 0/22%)}.play-share-code,.play-share-copy-button,.play-share-option{display:grid;min-width:0;align-items:center;gap:.38rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);padding:.55rem;text-align:left}.play-share-code{grid-template-columns:minmax(0,1fr) auto auto}.play-share-code span,.play-share-menu-panel p,.play-share-option small{color:var(--muted);font-size:.68rem;font-weight:900;line-height:1.15}.play-share-code code{max-width:8rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft));color:var(--accent-strong);padding:.18rem .45rem;font-size:.72rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.play-share-code button{min-width:1.75rem;min-height:1.75rem;padding:.2rem}.play-share-option-row{display:grid;grid-template-columns:minmax(0,1fr) 2.35rem;gap:.35rem}.play-share-option{grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none}.play-share-copy-button svg,.play-share-option svg{color:var(--accent)}.play-share-copy-button,.play-share-option span{font-size:.78rem;font-weight:950}.play-share-copy-button:hover,.play-share-option:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.play-share-copy-button{justify-content:center;min-height:2.45rem;padding:0}.play-share-menu-panel p{margin:0;border-radius:999px;background:color-mix(in srgb,var(--info) 12%,var(--surface));color:var(--info);padding:.3rem .5rem}.play-panel-match-header .play-header-command-actions{display:flex;flex-wrap:wrap;gap:.4rem;overflow:visible;padding:0}.play-panel-match-header .play-header-command-actions button{min-width:0;min-height:2.25rem;justify-content:center;padding:.42rem .62rem;font-size:.78rem;line-height:1}.play-panel-match-header .play-header-command-actions .button-label{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:nowrap}.play-command-bar{display:grid;grid-template-columns:minmax(12rem,1fr) minmax(0,auto);align-items:center;gap:.75rem;min-height:4.35rem;padding:.55rem;overflow:hidden}.play-command-actions,.play-command-status{display:flex;flex-wrap:nowrap;align-items:center;gap:.45rem;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:.1rem}.play-command-status{color:var(--foreground);font-size:.9rem;min-width:0;min-height:2.55rem}.play-command-status span:last-of-type{border-radius:999px;background:color-mix(in srgb,var(--foreground) 8%,transparent);padding:.22rem .55rem;color:var(--muted);font-size:.76rem;font-weight:900}.play-command-status strong{color:var(--info);font-size:.8rem;white-space:nowrap}.play-command-select{width:auto;min-width:8.5rem;max-width:11rem;flex:0 0 auto}.play-command-actions>button{flex:0 0 auto}.play-command-actions>button:disabled{opacity:.48}.play-section-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;border-radius:8px;background:var(--surface-soft);padding:.35rem}.play-section-tabs button{display:flex;align-items:center;justify-content:center;gap:.35rem;border:0;border-radius:6px;background:transparent;color:var(--muted);padding:.62rem .5rem;font-size:.8rem;font-weight:950;text-transform:capitalize}.play-section-tabs button.is-active{background:var(--surface-strong);color:var(--foreground);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--foreground) 6%,transparent)}.play-section-tabs button svg{color:var(--accent)}.play-section-tabs button>*{pointer-events:none}.play-tab-panel{min-height:0;overflow:auto;padding-right:.1rem}.play-mode-grid{display:grid;gap:.32rem;grid-template-columns:repeat(5,minmax(3.35rem,1fr));overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.play-setup-stack{display:grid;gap:.55rem}.play-time-grid-compact{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0;padding:0}.play-mode-stack-button,.play-setup-select-card,.play-start-button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:3.05rem;border-radius:8px;padding:0 .85rem;font-weight:950}.play-mode-stack-button,.play-setup-select-card{border:1px solid var(--border);background:linear-gradient(180deg,var(--surface-strong),var(--surface));color:var(--foreground)}.play-mode-stack-button svg,.play-setup-select-card svg{color:var(--accent)}.play-setup-select-card select{width:100%;min-width:0;border:0;background:transparent;color:inherit;font-weight:950}.play-start-button{display:inline-grid;grid-template-columns:auto auto;justify-content:center;min-height:3.2rem;border:0;font-size:1rem}.play-mode-stack{display:grid;gap:.45rem}.play-mode-stack-button{width:100%;text-align:left}.play-mode-stack-button:disabled{cursor:not-allowed;opacity:.48}.play-mode-stack-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-mode-stack-button.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.play-mode-button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.28rem;align-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);min-height:2.45rem;padding:.45rem .5rem;text-align:center}.play-mode-button svg{color:var(--accent)}.play-mode-button span{overflow:hidden;font-size:.7rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.play-mode-button.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.play-setup-field{display:grid;gap:.35rem;color:var(--muted);font-size:.78rem;font-weight:950}.play-setup-field select{min-height:2.45rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);padding:0 .65rem;font-size:.86rem;font-weight:850}.play-setup-field.is-disabled{opacity:.58}.play-setup-field.is-disabled select{cursor:not-allowed;color:var(--muted)}.pregame-board-overlay{position:absolute;inset:auto auto clamp(.55rem,3vw,1rem) clamp(.55rem,3vw,1rem);z-index:3;display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 10px 24px rgb(0 0 0/22%);padding:.42rem .62rem}.pregame-board-overlay strong{color:var(--foreground);font-size:.78rem;font-weight:950}.promotion-choice-card{position:absolute;left:50%;top:clamp(.55rem,3vw,1rem);z-index:24;display:grid;min-width:min(16rem,calc(100% - 1.4rem));max-width:calc(100% - 1.4rem);transform:translateX(-50%);gap:.45rem;border:1px solid color-mix(in srgb,var(--accent) 58%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:0 .9rem 2.2rem rgb(0 0 0/24%);padding:.58rem}.promotion-choice-card>span{display:grid;min-width:0;gap:.16rem}.promotion-choice-card strong{color:var(--foreground);font-size:.78rem;font-weight:950}.promotion-choice-card small,.promotion-choice-card strong{overflow:hidden;line-height:1;text-align:center;text-overflow:ellipsis;white-space:nowrap}.promotion-choice-card small{color:var(--muted);font-size:.64rem;font-weight:850}.promotion-choice-card div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem}.promotion-choice-card button{display:inline-flex;align-items:center;justify-content:center;gap:.32rem;min-width:0;min-height:2.25rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);font-size:.78rem;font-weight:950;line-height:1.1;overflow-wrap:anywhere;padding:.38rem .5rem;transition:background .18s ease,border-color .18s ease,transform .18s ease}.promotion-choice-card button .piece-icon{flex:0 0 auto;width:1.35rem;height:1.35rem;font-size:1rem}.promotion-choice-card button span{min-width:0}.promotion-choice-card button:first-child{border-color:color-mix(in srgb,var(--accent) 64%,var(--border));background:var(--accent);color:#06130d}.promotion-choice-card button:hover{transform:translateY(-1px)}.drop-selection-card{position:absolute;left:50%;bottom:clamp(.55rem,3vw,1rem);z-index:22;display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:min(19rem,calc(100% - 1.4rem));max-width:calc(100% - 1.4rem);transform:translateX(-50%);border:1px solid color-mix(in srgb,var(--info) 58%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:0 .9rem 2.2rem rgb(0 0 0/20%);padding:.48rem}.drop-piece-preview{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border:1px solid color-mix(in srgb,var(--info) 46%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 84%,var(--accent-soft))}.drop-piece-preview .piece-icon{width:1.65rem;height:1.65rem;font-size:1.18rem}.drop-selection-card>span:not(.drop-piece-preview){display:grid;min-width:0;gap:.16rem}.drop-selection-card em,.drop-selection-card small,.drop-selection-card strong{min-width:0;overflow:hidden;line-height:1.08;text-overflow:ellipsis;white-space:nowrap}.drop-selection-card strong{color:var(--foreground);font-size:.78rem;font-weight:950}.drop-selection-card small{color:var(--muted);font-size:.64rem;font-weight:850}.drop-selection-card em{display:-webkit-box;color:color-mix(in srgb,var(--info) 78%,var(--muted));font-size:.58rem;font-style:normal;font-weight:820;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal}.drop-selection-card button{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-width:0;min-height:2.15rem;border:1px solid color-mix(in srgb,var(--border) 78%,var(--danger));border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);padding:.36rem .55rem;font-size:.7rem;font-weight:950;transition:background .18s ease,border-color .18s ease,transform .18s ease}.drop-selection-card button:hover{border-color:color-mix(in srgb,var(--danger) 64%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--surface));transform:translateY(-1px)}.play-section-label{margin:0 0 -.55rem;color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.play-action-stack{display:grid;gap:.55rem}.play-disclosure{border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.play-disclosure>summary{cursor:pointer;list-style:none;padding:.8rem .9rem;color:var(--foreground);font-size:.86rem;font-weight:950}.play-disclosure>summary::-webkit-details-marker{display:none}.play-disclosure>summary:after{content:"⌄";float:right;color:#bdb6aa}.play-disclosure[open]>summary:after{transform:rotate(180deg)}.play-disclosure>summary:after{content:"v";color:var(--muted)}.play-disclosure .play-options-card,.play-disclosure .play-review-card,.play-disclosure .play-table-card{border-inline:0;border-bottom:0;border-radius:0}.play-action-card{display:grid;grid-template-columns:3rem minmax(0,1fr);align-items:center;gap:.85rem;min-height:5.7rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);color:var(--foreground);padding:.8rem .95rem;text-align:left;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--foreground) 5%,transparent)}.play-action-card:hover{background:color-mix(in srgb,var(--surface-strong) 86%,var(--accent));border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}.play-action-card svg{color:var(--accent);stroke-width:2.6}.play-action-card small,.play-action-card strong{display:block}.play-action-card strong{font-size:1.35rem;font-weight:950;line-height:1.05}.play-action-card small{margin-top:.2rem;color:var(--muted);font-size:.84rem;font-weight:700;line-height:1.25}.play-clock-card,.play-control-card,.play-options-card,.play-table-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.72rem}.play-chat-panel{display:grid;gap:.55rem;min-width:0}.play-chat-header{display:flex;align-items:center;justify-content:space-between;gap:.55rem}.play-chat-header>span{display:inline-flex;align-items:center;gap:.38rem;color:var(--foreground);font-size:.78rem;font-weight:950}.play-chat-header svg{color:var(--accent)}.play-chat-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem;min-width:min(13rem,62%)}.play-chat-channels button{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;min-width:0;min-height:2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);padding:.32rem .48rem;font-size:.68rem;font-weight:950;line-height:1;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.play-chat-channels button span{min-width:0;overflow:hidden;text-overflow:ellipsis}.play-chat-channels button b{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;border-radius:999px;background:color-mix(in srgb,var(--muted) 14%,transparent);color:var(--foreground);font-size:.58rem;font-weight:950;line-height:1}.play-chat-channels button:hover,.play-chat-channels button[data-active=true]{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--foreground)}.play-chat-channels button:disabled{cursor:not-allowed;opacity:.52}.play-chat-context{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 8%,var(--surface));padding:.42rem .55rem}.play-chat-context a,.play-chat-context strong{min-width:0;color:var(--foreground);font-size:.68rem;font-weight:950;line-height:1.1}.play-chat-context a{flex:0 0 auto;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:999px;color:var(--accent-strong);padding:.18rem .42rem;text-decoration:none}.play-chat-room-meta{display:flex;align-items:center;gap:.4rem;min-width:0;margin:-.18rem 0 0;color:var(--muted);font-size:.62rem;font-weight:900;line-height:1}.play-chat-room-meta code,.play-chat-room-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-chat-room-meta code{border:1px solid color-mix(in srgb,var(--border) 76%,transparent);border-radius:999px;background:var(--surface);color:var(--foreground);padding:.16rem .34rem}.play-chat-log{display:grid;align-content:start;gap:.38rem;min-height:5.8rem;max-height:9.5rem;overflow-y:auto;overscroll-behavior:contain;padding-right:.1rem;scrollbar-width:thin}.play-chat-message{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.42rem;margin:0;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:var(--radius-sm);background:var(--surface);padding:.42rem .52rem}.play-chat-message[data-tone=user]{border-color:color-mix(in srgb,var(--accent) 44%,var(--border));background:color-mix(in srgb,var(--accent) 11%,var(--surface))}.play-chat-message[data-tone=system]{background:color-mix(in srgb,var(--info) 7%,var(--surface))}.play-chat-message[data-tone=opponent],.play-chat-message[data-tone=spectator]{background:color-mix(in srgb,var(--muted) 8%,var(--surface))}.play-chat-message small,.play-chat-message span{color:var(--muted);font-size:.62rem;font-weight:950;white-space:nowrap}.play-chat-message strong{min-width:0;overflow-wrap:anywhere;color:var(--foreground);font-size:.74rem;font-weight:850;line-height:1.2}.play-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 2.35rem;gap:.38rem}.play-chat-form input,.play-chat-form label{min-width:0;width:100%}.play-chat-form input{min-height:2.35rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);padding:.4rem .58rem;font-size:.78rem;font-weight:800}.play-chat-form input:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 30%,transparent)}.play-chat-form button{display:inline-grid;place-items:center;min-width:0;min-height:2.35rem;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:var(--radius-sm);background:var(--accent);color:#06130d;transition:transform .18s ease,filter .18s ease}.play-chat-form button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.play-chat-form button:disabled{cursor:not-allowed;opacity:.45}.compact-status-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.compact-status-heading p,.compact-status-heading strong{margin:0}.compact-status-heading p{color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.compact-status-heading strong{display:block;margin-top:.1rem;color:var(--foreground);font-size:1.14rem;font-weight:950;line-height:1.05;text-transform:capitalize}.compact-status-heading>span{border-radius:999px;background:color-mix(in srgb,var(--foreground) 7%,transparent);color:var(--muted);padding:.18rem .5rem;font-size:.68rem;font-weight:950;white-space:nowrap}.play-control-card{display:grid;gap:.58rem;background:var(--surface-strong)}.play-control-heading{display:flex;align-items:center;gap:.45rem;color:var(--foreground)}.play-control-heading svg{color:var(--accent)}.play-control-heading strong{font-size:.78rem;font-weight:950}.play-control-heading span{margin-left:auto;border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:.14rem .4rem;font-size:.62rem;font-weight:950;text-transform:uppercase}.play-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.42rem}.play-control-grid button{min-width:0;min-height:2.35rem;border-radius:7px;font-size:.78rem;line-height:1}.play-control-groups{display:grid;gap:.52rem}.play-control-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}.play-control-section{display:grid;gap:.34rem}.play-control-group-label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:var(--foreground);font-size:.64rem;font-weight:950;letter-spacing:.04em;line-height:1;text-transform:uppercase}.play-control-group-label small{max-width:52%;overflow:hidden;color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:0;text-align:right;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.play-control-group{display:grid;gap:.42rem}.play-control-group-primary{grid-template-columns:repeat(2,minmax(5.65rem,1fr)) repeat(5,minmax(2.4rem,.48fr));align-items:center;overflow-x:visible;overscroll-behavior-x:contain;padding-bottom:.08rem;scrollbar-width:thin}.play-control-group-match{grid-template-columns:repeat(4,minmax(0,1fr))}.play-control-button,.play-icon-button{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-width:0;width:100%;min-height:2.36rem;border-radius:var(--radius-sm);padding:.42rem .52rem;font-size:.68rem;font-weight:950;line-height:1}.play-control-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-skin-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.4rem,1fr));gap:.36rem;min-width:0}.play-look-disclosure{border:1px solid color-mix(in srgb,var(--border) 82%,var(--accent));border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.play-look-disclosure>summary{display:flex;align-items:center;gap:.45rem;cursor:pointer;list-style:none;min-height:2.35rem;padding:.44rem .58rem}.play-look-disclosure>summary::-webkit-details-marker{display:none}.play-look-disclosure>summary:after{margin-left:auto;color:var(--muted);content:"v";font-size:.68rem;font-weight:950;line-height:1;transition:transform .18s ease}.play-look-disclosure[open]>summary:after{transform:rotate(180deg)}.play-look-disclosure summary small,.play-look-disclosure summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-look-disclosure summary span{color:var(--foreground);font-size:.74rem;font-weight:950}.play-look-disclosure summary small{color:var(--muted);font-size:.62rem;font-weight:900}.play-look-grid{display:grid;gap:.5rem;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);padding:.58rem}.play-look-grid label{display:grid;gap:.24rem;min-width:0}.play-look-grid label>span{color:var(--muted);font-size:.64rem;font-weight:950;line-height:1;text-transform:uppercase}.play-look-grid select{width:100%;min-height:2.3rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--foreground);font-size:.76rem;font-weight:900;padding:.34rem .52rem}.play-look-option-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.9rem,1fr));gap:.42rem}.play-look-option{display:grid;grid-template-columns:1.3rem 1.35rem minmax(0,1fr);align-items:center;gap:.45rem;min-width:0;min-height:2.25rem;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--foreground);padding:.35rem .48rem;text-align:left;transition:background .18s ease,border-color .18s ease,transform .18s ease}.play-look-option:hover{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));background:color-mix(in srgb,var(--accent-soft) 36%,var(--surface));transform:translateY(-1px)}.play-look-option[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 72%,var(--border));background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface))}.play-look-option>.play-look-swatch,.play-look-piece-sample{display:block;width:1.35rem;height:1.35rem;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:.38rem;box-shadow:inset 0 0 0 1px rgb(255 255 255/14%)}.play-look-set-row{grid-template-columns:repeat(auto-fit,minmax(8.75rem,1fr))}.play-look-option strong{min-width:0;overflow:hidden;font-size:.72rem;font-weight:950;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.play-look-option[data-board-theme-option=classic]>.play-look-swatch{background:linear-gradient(135deg,#e8ecc9 0 50%,#719553 50% 100%)}.play-look-option[data-board-theme-option=wood]>.play-look-swatch{background:linear-gradient(135deg,#f1d184 0 50%,#b77536 50% 100%)}.play-look-option[data-board-theme-option=jade]>.play-look-swatch{background:linear-gradient(135deg,#dceadf 0 50%,#4f8f74 50% 100%)}.play-look-option[data-board-theme-option=ocean]>.play-look-swatch{background:linear-gradient(135deg,#d7ecf0 0 50%,#347c8f 50% 100%)}.play-look-option[data-board-theme-option=contrast]>.play-look-swatch{background:linear-gradient(135deg,#f7f3d4 0 50%,#4d5b3c 50% 100%)}.play-look-piece-sample{display:grid;place-items:center;overflow:hidden;background:color-mix(in srgb,var(--surface-raised) 78%,var(--board-light))}.play-look-piece-sample .piece-icon{width:1.05rem;height:1.05rem;font-size:.92rem}.play-look-piece-sample .native-piece-symbol[data-skin=mini-wedge],.play-look-piece-sample .native-piece-symbol[data-skin=wedge],.play-look-piece-sample .native-piece-symbol[data-variant=mini-shogi],.play-look-piece-sample .native-piece-symbol[data-variant=shogi]{font-size:.72rem}.play-look-piece-sample .western-glyph-piece{font-size:1.18rem}.play-look-piece-sample .western-monogram-piece{border-width:1px;font-size:.64rem}.play-look-option[data-piece-skin-option=checker]>.play-look-piece-sample,.play-look-option[data-piece-skin-option=disc]>.play-look-piece-sample,.play-look-option[data-piece-skin-option=stone]>.play-look-piece-sample{border-radius:999px}.play-look-option[data-piece-skin-option=mini-wedge]>.play-look-piece-sample,.play-look-option[data-piece-skin-option=wedge]>.play-look-piece-sample{clip-path:polygon(50% 0,88% 18%,76% 100%,24% 100%,12% 18%)}.play-look-option[data-piece-skin-option=tile]>.play-look-piece-sample{border-radius:.22rem}.play-look-option[data-selected=true]>.play-look-piece-sample,.play-look-option[data-selected=true]>.play-look-swatch{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 64%,transparent),inset 0 0 0 1px rgb(255 255 255/16%)}.play-skin-chip{display:inline-flex;align-items:center;justify-content:flex-start;gap:.36rem;min-width:0;min-height:2.18rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);padding:.34rem .48rem;font-size:.68rem;font-weight:950;line-height:1;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.play-skin-chip:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));transform:translateY(-1px)}.play-skin-chip.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface-raised));color:var(--accent-strong)}.play-skin-chip>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-skin-swatch{width:.86rem;height:.86rem;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--border) 72%,var(--foreground));border-radius:999px;background:linear-gradient(135deg,var(--accent) 0 48%,var(--surface-raised) 48% 100%);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface) 54%,transparent)}.play-skin-chip[data-skin-option=mini-wedge] .play-skin-swatch,.play-skin-chip[data-skin-option=wedge] .play-skin-swatch{border-radius:.22rem;background:linear-gradient(135deg,#d9b878 0 52%,#7b4f21 52% 100%)}.play-skin-chip[data-skin-option=tile] .play-skin-swatch{border-radius:.18rem;background:linear-gradient(135deg,#edf4da 0 48%,#5f7d43 48% 100%)}.play-skin-chip[data-skin-option=disc] .play-skin-swatch{background:radial-gradient(circle at 45% 40%,#f3deac 0 42%,#a85932 44% 100%)}.play-skin-chip[data-skin-option=makruk] .play-skin-swatch{background:linear-gradient(135deg,#f2d19d 0 46%,#6f3f20 46% 100%)}.play-skin-chip[data-skin-option=glyph] .play-skin-swatch{border-radius:.18rem;background:radial-gradient(circle at 34% 28%,#fffdf1 0 18%,transparent 19%),linear-gradient(135deg,#fffdf1 0 48%,#302d29 48% 100%)}.play-skin-chip[data-skin-option=monogram] .play-skin-swatch{border-radius:.22rem .22rem .32rem .32rem;background:linear-gradient(145deg,rgb(255 255 255/68%) 0 18%,transparent 19%),linear-gradient(135deg,#fff7dc 0 50%,#201d19 50% 100%)}.play-skin-chip[data-skin-option=checker] .play-skin-swatch{background:linear-gradient(#f6f1df 0 46%,#1f2420 46% 100%)}.play-skin-chip[data-skin-option=stone] .play-skin-swatch{background:radial-gradient(circle at 38% 34%,#faf9ef 0 38%,#2c302c 42% 100%)}.play-control-button svg,.play-header-command-actions svg,.play-icon-button svg{flex:0 0 auto}.play-control-button.is-main{min-height:2.36rem;font-size:.7rem}.play-control-button.is-selected{border-color:var(--accent);background:var(--accent);color:#06130d}.play-icon-button{width:2.36rem;aspect-ratio:auto;padding-inline:.42rem}.play-control-group-primary .play-icon-button{width:100%}.play-control-button.is-danger{border:1px solid var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--surface-raised));color:var(--danger)}.play-control-button:disabled,.play-header-command-actions button:disabled,.play-icon-button:disabled{cursor:not-allowed;opacity:.42;filter:grayscale(.35);background:color-mix(in srgb,var(--surface) 70%,black);color:var(--muted)}.play-control-button:disabled:hover,.play-header-command-actions button:disabled:hover,.play-icon-button:disabled:hover{transform:none}.play-options-heading,.play-options-row{display:flex;align-items:center;gap:.55rem;color:var(--foreground);font-weight:950}.play-options-row{margin-top:.8rem;justify-content:space-between;font-size:.92rem}.play-options-row span{margin-right:auto}.active-setup-summary{display:grid;gap:.28rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.65rem .72rem}.active-setup-summary small,.active-setup-summary span,.active-setup-summary strong{display:block}.active-setup-summary span{color:var(--muted);font-size:.74rem;font-weight:950;text-transform:uppercase}.active-setup-summary strong{color:var(--foreground);font-size:1.1rem;font-weight:950}.active-setup-summary small{color:var(--muted);font-size:.78rem;font-weight:760;line-height:1.35}.play-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.play-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.75rem}.play-time-grid button{min-height:2.45rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--foreground);font-size:.86rem;font-weight:900}.play-time-grid button.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.play-toggle-list{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem .85rem;margin-top:.9rem;align-items:center;color:var(--foreground);font-size:.88rem;font-weight:700}.toggle-pill{position:relative;width:2.8rem;height:1.45rem;border-radius:999px;background:var(--surface-soft)}.toggle-pill:after{content:"";position:absolute;top:.18rem;left:.18rem;width:1.08rem;height:1.08rem;border-radius:50%;background:var(--foreground)}.toggle-pill.is-on{background:var(--accent)}.toggle-pill.is-on:after{left:1.54rem}.play-clock-card p{margin:0;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.play-clock-card strong{display:block;margin-top:.15rem;color:var(--foreground);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.35rem}.play-clock-card span{display:inline-flex;margin-top:.28rem;border-radius:999px;background:color-mix(in srgb,var(--foreground) 7%,transparent);color:var(--muted);padding:.16rem .42rem;font-size:.65rem;font-weight:950;text-transform:uppercase}.play-clock-card.is-active{border-color:color-mix(in srgb,var(--accent) 54%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.play-clock-card.is-active span{background:var(--accent);color:var(--accent-foreground)}.bot-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;margin-top:.55rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.55rem}.bot-profile-card svg{color:var(--accent)}.bot-profile-card span,.bot-profile-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bot-profile-card strong{color:var(--foreground);font-size:.82rem;font-weight:950}.bot-profile-card span{color:var(--muted);font-size:.68rem;font-weight:800}.bot-profile-card small{border-radius:999px;background:rgb(82 194 139/14%);color:var(--accent);padding:.18rem .38rem;font-size:.62rem;font-weight:950;white-space:nowrap}.bot-profile-card-with-select{grid-template-columns:auto minmax(0,1fr) auto minmax(6.75rem,.68fr)}.bot-profile-card-with-select select{width:100%;min-width:0;border:1px solid var(--border);border-radius:7px;background:var(--background);color:var(--foreground);padding:.35rem .45rem;font-size:.74rem;font-weight:900}.play-status-note{margin:.45rem 0 0;font-size:.78rem;font-weight:850;line-height:1.25}.status-mode-card span{white-space:normal}.status-mode-card{grid-template-columns:auto minmax(0,1fr)}.status-mode-card small{background:color-mix(in srgb,var(--foreground) 8%,transparent);color:var(--muted)}.online-search-card{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:.75rem;border:1px solid color-mix(in srgb,var(--info) 42%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--info) 10%,var(--surface));padding:.75rem}.online-search-card svg{flex:0 0 auto;color:var(--info)}.online-search-card div{display:grid;flex:1 1 13rem;gap:.2rem;min-width:0}.online-search-card strong{color:var(--foreground);font-size:.9rem;font-weight:950}.online-search-card span{color:var(--muted);font-size:.78rem;font-weight:750;line-height:1.35}.online-queue-tags{display:flex;flex-wrap:wrap;gap:.32rem;margin-top:.25rem}.online-queue-tags span{border:1px solid color-mix(in srgb,var(--info) 34%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--info) 10%,var(--surface));color:var(--foreground);padding:.18rem .48rem;font-size:.68rem;font-weight:950}.online-search-cancel{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:.34rem;min-height:2.2rem;border:1px solid color-mix(in srgb,var(--warning) 42%,var(--border));border-radius:7px;background:color-mix(in srgb,var(--warning) 10%,var(--surface));color:var(--foreground);padding:.36rem .62rem;font-size:.72rem;font-weight:950}.online-search-cancel svg{color:var(--warning)}.online-search-cancel:hover{border-color:color-mix(in srgb,var(--warning) 64%,var(--border));background:color-mix(in srgb,var(--warning) 18%,var(--surface))}.opponent-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;margin-top:.35rem;max-width:100%}.opponent-search-field{display:flex;min-width:0;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:7px;background:color-mix(in srgb,var(--background) 68%,transparent);padding:.38rem .5rem}.opponent-search-field svg{color:var(--muted)}.opponent-search-field input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--foreground);font-size:.78rem;font-weight:800}.opponent-search-field input::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}.bot-tier-note{margin:.55rem 0 0;color:var(--muted);font-size:.78rem;font-weight:760;line-height:1.35}.bot-readiness-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.bot-readiness-row span{border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);padding:.22rem .5rem;font-size:.68rem;font-weight:950;text-transform:uppercase}.bot-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-top:.65rem}.compact-bot-stat-grid{margin-top:.55rem}.bot-stat-grid span{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.5rem}.bot-stat-grid small,.bot-stat-grid strong{display:block}.bot-stat-grid small{color:var(--muted);font-size:.64rem;font-weight:950;letter-spacing:.03em;text-transform:uppercase}.bot-stat-grid strong{overflow:hidden;color:var(--foreground);font-size:.82rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.bot-explanation-card{display:grid;gap:.35rem;margin-top:.65rem;border:1px solid color-mix(in srgb,var(--info) 28%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--info) 8%,var(--surface-soft));padding:.7rem;color:var(--muted);font-size:.78rem;font-weight:720;line-height:1.35}.bot-explanation-card p{margin:0;color:var(--foreground);font-size:.8rem;font-weight:900}.bot-explanation-card span{display:block}.play-review-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.play-review-compact{display:grid;grid-template-rows:auto auto minmax(5rem,1fr) auto auto;max-height:min(24rem,calc(100dvh - 16rem));min-height:0;overflow:hidden}.play-review-compact .review-engine-row,.play-review-compact .review-summary-row{padding:.55rem .7rem}.play-review-compact .review-position-card{gap:.18rem;padding:.5rem .65rem}.play-review-compact .review-position-card.is-live{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding-block:.42rem}.play-review-compact .review-position-card small,.play-review-compact .review-position-card span{display:block;font-size:.72rem}.play-review-compact .review-position-card.is-live span{overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:900;text-align:right;text-overflow:ellipsis;white-space:nowrap}.play-review-compact .review-move-list{min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.play-review-compact .review-move-list li button{min-height:1.85rem;padding:.32rem .65rem}.play-review-compact .review-controls{gap:.35rem;padding:0 .65rem .55rem}.play-review-compact .review-controls button{min-height:2.35rem}.review-inline-actions{display:flex;gap:.45rem;padding:0 .65rem .65rem}.review-inline-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.15rem;flex:1 1;border-radius:7px;font-size:.78rem;font-weight:950}.review-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--border)}.review-tabs button{min-height:3rem;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:800}.review-tabs button.is-active{border-color:var(--foreground);color:var(--foreground)}.review-engine-row,.review-summary-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;color:var(--muted);font-size:.84rem;font-weight:800}.review-title{display:inline-flex;flex:0 0 auto;align-items:center;gap:.42rem;color:var(--foreground);font-weight:950;white-space:nowrap}.review-summary-pills{display:flex;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:.32rem}.review-summary-pills em,.review-summary-pills span{border-radius:999px;background:color-mix(in srgb,var(--foreground) 8%,transparent);padding:.15rem .45rem;color:var(--muted);font-size:.68rem;font-style:normal;font-weight:950;line-height:1.1;white-space:nowrap}.review-position-card{display:grid;gap:.35rem;border-block:1px solid var(--border);background:var(--surface-strong);padding:.85rem .9rem}.review-position-card p,.review-position-card small,.review-position-card span,.review-position-card strong{margin:0}.review-position-card p{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.review-position-card strong{color:var(--foreground);font-size:1rem;font-weight:950}.review-position-card.is-live strong{overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.review-position-card small,.review-position-card span{color:var(--muted);font-size:.82rem;font-weight:700;line-height:1.35}.review-move-list{margin:0;padding:0;list-style:none}.review-move-list li button{display:grid;width:100%;grid-template-columns:2.4rem minmax(0,1fr) minmax(4.4rem,auto);gap:.5rem;align-items:center;border:0;border-radius:0;background:transparent;color:var(--foreground);padding:.5rem .9rem;text-align:left}.review-move-list li:nth-child(2n) button{background:color-mix(in srgb,var(--foreground) 3%,transparent)}.review-move-list li.is-active button{background:color-mix(in srgb,var(--accent) 24%,var(--surface-strong));box-shadow:inset 3px 0 0 var(--accent)}.review-move-side{display:inline-flex;min-width:2.05rem;min-height:1.35rem;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent-strong);font-size:.62rem;font-weight:950;line-height:1;text-transform:uppercase}.review-move-side[data-owner=black],.review-move-side[data-owner=blue],.review-move-side[data-owner=gote]{border-color:color-mix(in srgb,var(--piece-dark) 56%,var(--border));background:color-mix(in srgb,var(--piece-dark) 16%,var(--surface));color:var(--foreground)}.review-move-piece{display:inline-flex;min-width:0;align-items:center;gap:.42rem}.review-move-piece .piece-icon{width:1.35rem;height:1.35rem;flex:0 0 1.35rem;font-size:1.05rem}.review-move-meta{display:grid;justify-items:end;gap:.14rem;min-width:0}.review-move-meta small{max-width:6.6rem;color:var(--muted);font-size:.62rem;font-weight:900;line-height:1}.review-move-list strong,.review-move-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-move-list strong{font-weight:950}.review-move-list em,.review-summary-row span{border-radius:999px;background:color-mix(in srgb,var(--foreground) 8%,transparent);padding:.15rem .45rem;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:950}.review-summary-pills [data-review=best],.review-summary-row [data-review=best],[data-review=best] em{background:#7dbd43;color:#0b1207}.review-summary-pills [data-review=excellent],.review-summary-row [data-review=excellent],[data-review=excellent] em{background:#4a9f5f;color:#f8fff8}.review-summary-pills [data-review=blunder],.review-summary-row [data-review=blunder],[data-review=blunder] em{background:#d64242;color:#fff7f7}[data-review=mistake] em{background:#b6782d;color:#fff7ed}[data-review=inaccuracy] em{background:#7a7895;color:#f9f8ff}.review-live-button,.review-primary-button{display:flex;width:calc(100% - 1.5rem);min-height:3.8rem;align-items:center;justify-content:center;gap:.65rem;margin:.75rem;border:0;border-radius:8px;background:var(--accent);color:var(--accent-foreground);font-size:1.2rem;font-weight:950;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--foreground) 18%,transparent),0 12px 22px rgb(0 0 0/20%)}.review-live-button{min-height:2.8rem;background:var(--surface-strong);color:var(--foreground);font-size:.9rem}.review-controls{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;padding:0 .75rem .75rem}.review-controls button{display:grid;min-height:3rem;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted)}.review-controls button.is-main{background:var(--surface-strong);color:var(--foreground)}.review-controls button:disabled,.review-primary-button:disabled{cursor:not-allowed;opacity:.46}.lobby-dashboard{display:grid;align-items:start;gap:clamp(.9rem,1.8vw,1.25rem);grid-template-columns:minmax(0,1fr) minmax(13.5rem,17rem)}.lobby-main-stack{display:grid;gap:clamp(.85rem,1.5vw,1.05rem)}.lobby-stat-rail{position:sticky;top:1rem;display:grid;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);padding:clamp(.8rem,1.4vw,1rem);box-shadow:var(--shadow)}.lobby-content-grid{display:grid;align-items:start;gap:clamp(.85rem,1.5vw,1.05rem);grid-template-columns:minmax(0,1.15fr) minmax(17rem,.85fr)}.lobby-section-card{display:grid;gap:.75rem;min-width:0}.section-title{margin:0;color:var(--foreground);font-size:1.08rem;font-weight:950;line-height:1.1}.section-subtitle{margin:.25rem 0 0;color:var(--muted);font-size:.86rem;font-weight:700;line-height:1.35}.compact-page-heading,.compact-section-heading,.compact-title-row{display:flex;align-items:center;gap:.55rem;min-width:0}.compact-page-heading{justify-content:space-between;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);padding-bottom:clamp(.75rem,1.5vw,1rem)}.compact-page-heading h1{margin:0;max-width:100%;overflow-wrap:anywhere;font-size:clamp(2.2rem,6vw,3rem);font-weight:950;line-height:.98}.compact-section-heading{justify-content:flex-start}.compact-title-row h1,.compact-title-row h2{margin:0}.info-hint{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}.info-hint summary::-webkit-details-marker{display:none}.info-hint-trigger{display:grid;width:1.65rem;height:1.65rem;cursor:pointer;place-items:center;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);transition:background .14s ease,color .14s ease,transform .14s ease;list-style:none}.info-hint-trigger:focus-visible,.info-hint:focus-within .info-hint-trigger,.info-hint:hover .info-hint-trigger,.info-hint[open] .info-hint-trigger{background:var(--accent);color:#07140c;outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px;transform:translateY(-1px)}.info-hint-bubble{position:absolute;right:0;top:calc(100% + .45rem);z-index:45;width:max-content;max-width:min(16.5rem,calc(100vw - 2rem));border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);box-shadow:var(--shadow);color:var(--foreground);font-size:.78rem;font-weight:750;line-height:1.35;opacity:0;overflow-wrap:anywhere;padding:.65rem;pointer-events:none;transform:translateY(.25rem);transition:opacity .14s ease,transform .14s ease}.info-hint:not(:hover):not(:focus-within):not([open]) .info-hint-bubble{display:none}.info-hint-trigger:focus-visible+.info-hint-bubble,.info-hint:focus-within .info-hint-bubble,.info-hint:hover .info-hint-bubble,.info-hint[open] .info-hint-bubble{display:block;opacity:1;transform:translateY(0)}.lobby-tool-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.5rem;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:var(--radius-lg);background:var(--surface-strong);padding:.8rem;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.lobby-tool-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 32%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface-strong));box-shadow:0 14px 28px rgb(36 54 47/10%)}.lobby-tool-link{display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:center;gap:.75rem;color:var(--foreground);font-weight:900}.lobby-tool-link span:first-child{display:inline-flex;min-width:0;align-items:center;gap:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-tool-link span:last-child{border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.72rem;font-weight:950;padding:.18rem .5rem}.lobby-tool-info{display:none}.settings-stack{display:grid;gap:0;overflow:visible}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.25rem;padding:.85rem 1rem}.settings-row+.settings-row{border-top:1px solid var(--border)}.settings-row-title{display:flex;align-items:center;gap:.55rem;min-width:0}.settings-row-title h2{margin:0;font-size:1rem;font-weight:950}.lobby-action-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;padding:clamp(.8rem,1.4vw,1rem)}.lobby-action-button{display:inline-flex;min-height:2.75rem;min-width:0;align-items:center;justify-content:center;gap:.55rem;padding:.6rem .9rem;text-align:center;font-size:.84rem;font-weight:950;line-height:1.15;white-space:normal}.lobby-action-button svg,.watch-action-button svg,.watch-filter-chip svg,.watch-room-tools button svg{flex:0 0 auto}.lobby-stat-grid{display:grid;gap:.55rem;grid-template-columns:1fr}.lobby-stat-card{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);gap:.15rem .65rem;align-items:center;padding:.72rem}.lobby-stat-card svg{grid-row:span 2;color:var(--accent)}.lobby-stat-card strong{font-size:1.25rem;font-weight:950;line-height:1}.catalog-card p,.catalog-card-meta,.catalog-count,.leaderboard-card p,.lobby-family-strip span,.lobby-stat-card span{color:var(--muted);font-size:.86rem;font-weight:700}.lobby-family-strip{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.7rem}.lobby-family-strip a{display:grid;min-height:4.95rem;align-content:space-between;gap:.45rem;min-width:0;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:8px;background:var(--surface);padding:.6rem;text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.lobby-family-strip a:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:var(--surface-soft)}.lobby-family-strip strong{display:-webkit-box;min-width:0;overflow:hidden;color:var(--foreground);font-size:.95rem;font-weight:950;line-height:1.12;-webkit-box-orient:vertical;-webkit-line-clamp:2}.lobby-family-strip span{width:fit-content;max-width:100%;overflow:hidden;border-radius:999px;background:var(--surface-soft);padding:.18rem .48rem;text-overflow:ellipsis;white-space:nowrap}.lobby-featured-card{display:grid;min-height:7.25rem;align-content:start;gap:.62rem;padding:.85rem;text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.lobby-featured-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface-raised));box-shadow:0 16px 34px rgb(36 54 47/13%);transform:translateY(-2px)}.lobby-featured-head{display:grid;min-width:0;gap:.5rem;grid-template-columns:1fr;align-items:start}.lobby-featured-head strong{min-width:0;overflow-wrap:anywhere;color:var(--foreground);font-size:1rem;font-weight:950;line-height:1.12}.lobby-featured-head span{width:fit-content;max-width:100%;overflow:hidden;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.72rem;font-weight:950;padding:.22rem .5rem;text-overflow:ellipsis;white-space:nowrap}.lobby-featured-body{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.82rem;font-weight:750;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.watch-empty-state{display:grid;gap:.85rem;padding:1rem}.watch-empty-state h2{margin:0;font-size:1.15rem;font-weight:950}.watch-empty-state p{margin:0;color:var(--muted);font-size:.92rem;font-weight:650}.watch-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.75rem),1fr));gap:.65rem;width:100%}.watch-room-lookup{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;border:1px solid color-mix(in srgb,var(--accent) 54%,var(--border));border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 48%,transparent),transparent 60%),var(--surface-raised);color:var(--foreground);padding:.82rem;text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.watch-room-lookup:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 72%,var(--border));box-shadow:0 16px 34px rgb(36 54 47/14%)}.watch-room-lookup span{display:grid;min-width:0;gap:.18rem}.watch-room-lookup small,.watch-room-lookup strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-room-lookup strong{font-size:.9rem;font-weight:950}.watch-room-lookup small{color:var(--muted);font-size:.74rem;font-weight:820}.watch-action-button{display:inline-flex;min-height:2.75rem;min-width:0;width:100%;align-items:center;justify-content:center;gap:.55rem;padding:.6rem .9rem;text-align:center;font-size:.84rem;font-weight:950;line-height:1.15;overflow-wrap:anywhere;white-space:normal}.watch-room-tools{display:grid;gap:.65rem;grid-template-columns:minmax(12rem,1fr) auto}.watch-filter-chip,.watch-room-search,.watch-room-tools button{display:inline-flex;min-height:2.65rem;align-items:center;justify-content:center;gap:.45rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);color:var(--text);font-size:.84rem;font-weight:900;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast)}.watch-room-search{justify-content:flex-start;padding:0 .7rem}.watch-room-search input{min-width:0;width:100%;border:0;background:transparent;color:var(--text);font:inherit;outline:0}.watch-room-search input::placeholder{color:var(--muted)}.watch-filter-chip{text-decoration:none}.watch-filter-chip:hover,.watch-room-tools button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 44%,var(--border));background:var(--accent-soft);color:var(--foreground)}.watch-filter-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));gap:.45rem;grid-column:1/-1}.watch-filter-list .watch-filter-chip{min-width:0;width:100%}.watch-filter-chip.is-active{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));background:var(--accent-soft);color:var(--accent)}.watch-room-list{display:grid;gap:.5rem}.watch-room-card{display:grid;align-items:center;gap:.55rem;grid-template-columns:minmax(0,1fr) repeat(2,minmax(4rem,.35fr));border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);padding:.7rem;text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.watch-room-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 36%,var(--border));box-shadow:0 16px 34px rgb(36 54 47/13%)}.watch-room-card span{display:grid;min-width:0;gap:.15rem}.watch-room-card strong{color:var(--text);font-size:.88rem;font-weight:950;text-transform:capitalize}.watch-room-card small,.watch-room-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-room-card small{color:var(--muted);font-size:.72rem;font-weight:820}@media (max-width:520px){.review-move-list li button{grid-template-columns:2.05rem minmax(0,1fr) minmax(3.6rem,auto);gap:.35rem}.review-move-side{min-width:1.8rem;font-size:.56rem}.review-move-piece{gap:.3rem}.review-move-piece .piece-icon{width:1.1rem;height:1.1rem;flex-basis:1.1rem;font-size:.9rem}.review-move-meta small{max-width:4.4rem}.watch-actions,.watch-room-card,.watch-room-tools{grid-template-columns:1fr}}.record-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;padding:clamp(.75rem,1.4vw,1rem)}.record-filter-row .catalog-search{flex:1 1 18rem}.record-filter-row.is-empty{opacity:.78}.record-filter-row.is-empty .catalog-search,.record-filter-row.is-empty .record-filter-chip{cursor:not-allowed}.record-filter-chip{display:inline-flex;align-items:center;justify-content:center;padding:0 .75rem;color:var(--muted);transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast)}.record-filter-chip,.record-filter-select{min-height:2.3rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);font-size:.84rem;font-weight:850}.record-filter-select{padding:0 .7rem;color:var(--text)}.record-filter-chip:hover,.record-filter-select:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-soft);color:var(--foreground)}.record-filter-chip:disabled,.record-filter-select:disabled{cursor:not-allowed;opacity:.66}.account-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem}.account-stat-grid{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.account-profile-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.35rem}.account-profile-meta span{border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:900;padding:.24rem .55rem}.account-stat-card{display:grid;gap:.25rem;padding:.9rem}.account-empty-state svg,.account-stat-card svg{color:var(--accent)}.account-stat-card span{color:var(--muted);font-size:.84rem;font-weight:800}.account-stat-card strong{font-size:1.4rem;font-weight:950;line-height:1.1}.account-empty-state{display:grid;gap:.8rem;padding:1rem}.account-empty-state h2{margin:0;font-size:1.15rem;font-weight:950}.account-empty-state p{margin:0;max-width:54rem;color:var(--muted);font-size:.92rem;font-weight:650;line-height:1.45}.profile-history-list{display:grid;gap:.75rem;padding:1rem}.profile-history-list>div:last-child{display:grid;gap:.45rem}.profile-history-row{display:grid;grid-template-columns:minmax(6rem,1fr) auto minmax(8rem,1.2fr) auto;align-items:center;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);padding:.65rem .75rem;color:var(--text);font-size:.88rem;font-weight:800}.profile-history-row span{min-width:0;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.profile-history-row strong{color:var(--accent);text-transform:capitalize}.analysis-command-bar,.leaderboard-filter-bar{display:grid;grid-template-columns:minmax(12rem,1fr) auto repeat(2,minmax(7.5rem,auto));align-items:center;justify-content:space-between;gap:.75rem;padding:clamp(.75rem,1.4vw,1rem)}.analysis-command-bar span,.leaderboard-filter-stat{display:inline-flex;min-height:2.25rem;justify-content:center;gap:.45rem;font-size:.84rem;font-weight:850;text-align:center;white-space:normal}.analysis-command-bar span,.leaderboard-filter-stat,.leaderboard-scope-field{align-items:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);padding:0 .75rem;color:var(--muted)}.leaderboard-scope-field{display:grid;min-height:2.65rem;grid-template-columns:auto auto minmax(0,1fr);gap:.55rem;min-width:0;overflow:hidden;transition:border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.leaderboard-scope-field:focus-within,.leaderboard-scope-field:hover{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent-soft) 36%,var(--surface-strong))}.leaderboard-scope-field>span{color:var(--muted);font-size:.78rem;font-weight:900}.leaderboard-scope-field select{min-width:0;width:100%;border:0;background:transparent;color:var(--foreground);font:inherit;font-size:.9rem;font-weight:900;outline:0}.leaderboard-filter-submit{display:inline-flex;min-height:2.65rem;min-width:0;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent) 52%,var(--border));border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);padding:0 .9rem;font-size:.86rem;font-weight:950;white-space:nowrap;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast)}.leaderboard-filter-submit:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 70%,var(--border));background:color-mix(in srgb,var(--accent) 18%,var(--surface-soft));color:var(--foreground)}.leaderboard-filter-bar.is-empty{opacity:.82}.leaderboard-filter-bar.is-empty .leaderboard-filter-stat{cursor:not-allowed}.leaderboard-feature-grid{display:grid;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.leaderboard-family-list{display:grid;gap:.75rem;padding:1rem}.analysis-review-shell h2,.leaderboard-family-list h2{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.05rem;font-weight:950}.leaderboard-family-list>div{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-review-rows span,.leaderboard-family-list article{display:flex;min-height:2.6rem;align-items:center;justify-content:space-between;gap:.8rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.65rem .75rem}.leaderboard-family-list strong{font-size:.9rem;font-weight:900}.leaderboard-family-list span{color:var(--muted);font-size:.8rem;font-weight:800}.analysis-grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)}.analysis-review-shell{display:grid;align-content:start;gap:.85rem;padding:1rem}.analysis-summary-card{display:grid;align-content:start;gap:.75rem;padding:1rem}.analysis-summary-card h2,.analysis-summary-card p{margin:0}.analysis-summary-card p{color:var(--muted);font-size:.94rem;font-weight:760;line-height:1.45}.analysis-summary-card dl{display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-summary-card dl div{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.6rem}.analysis-summary-card dt{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.analysis-summary-card dd{margin:.2rem 0 0;overflow:hidden;color:var(--text);font-size:.85rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.analysis-label-counts{display:flex;flex-wrap:wrap;gap:.4rem}.analysis-label-counts span{display:inline-flex;align-items:center;gap:.3rem;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,var(--surface-strong));color:var(--text);font-size:.76rem;font-weight:900;padding:.24rem .55rem;text-transform:capitalize}.analysis-label-counts strong{color:var(--accent);font-weight:950}.analysis-label-counts span[data-label=positive],.analysis-move-list em[data-label=positive],.analysis-selected-move em[data-label=positive]{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong));color:var(--accent)}.analysis-label-counts span[data-label=warning],.analysis-move-list em[data-label=warning],.analysis-selected-move em[data-label=warning]{border-color:color-mix(in srgb,var(--warning) 52%,var(--border));background:color-mix(in srgb,var(--warning) 12%,var(--surface-strong));color:var(--warning)}.analysis-label-counts span[data-label=critical],.analysis-move-list em[data-label=critical],.analysis-selected-move em[data-label=critical]{border-color:color-mix(in srgb,var(--danger) 52%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--surface-strong));color:var(--danger)}.analysis-label-counts span[data-label] strong{color:currentColor}.analysis-detail-list{display:grid;gap:.45rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.75rem}.analysis-detail-list h3{margin:0;color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.analysis-detail-list a,.analysis-detail-list span{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.65rem;color:var(--text);font-size:.84rem;font-weight:850;text-decoration:none}.analysis-detail-list a:hover{color:var(--accent)}.analysis-detail-list strong{color:var(--accent);font-size:.78rem;font-weight:950;text-transform:capitalize}.analysis-detail-list strong[data-label=positive]{color:var(--accent)}.analysis-detail-list strong[data-label=warning]{color:var(--warning)}.analysis-detail-list strong[data-label=critical]{color:var(--danger)}.analysis-review-shell svg{color:var(--accent)}.analysis-review-rows{display:grid;gap:.45rem}.analysis-review-controls{display:grid;gap:.45rem;grid-template-columns:repeat(auto-fit,minmax(5.4rem,1fr))}.analysis-review-controls a,.analysis-review-controls button{display:inline-flex;min-height:2.35rem;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);color:var(--text);font-size:.82rem;font-weight:900;text-decoration:none}.analysis-review-controls button:disabled{cursor:not-allowed;opacity:.66}.analysis-review-rows span{justify-content:flex-start;color:var(--muted);font-size:.86rem;font-weight:800}.analysis-selected-move{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid color-mix(in srgb,var(--accent) 52%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong));padding:.55rem .7rem}.analysis-selected-move strong{color:var(--accent);font-size:.82rem;font-weight:950}.analysis-selected-move span{overflow:hidden;color:var(--text);font-size:.88rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.analysis-move-list{display:grid;max-height:24rem;gap:.35rem;overflow:auto;padding:0;list-style:none}.analysis-move-list li{min-width:0}.analysis-move-list li a{display:grid;min-height:2.25rem;align-items:center;gap:.5rem;grid-template-columns:3rem minmax(0,1fr) auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.45rem .6rem;text-decoration:none}.analysis-move-list li.is-active a{border-color:color-mix(in srgb,var(--accent) 64%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong))}.analysis-move-list strong{color:var(--accent);font-size:.8rem;font-weight:950}.analysis-move-list span{overflow:hidden;color:var(--text);font-size:.86rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.analysis-move-list em,.analysis-selected-move em{border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);border-radius:999px;color:var(--accent);font-size:.68rem;font-style:normal;font-weight:950;padding:.12rem .4rem;text-transform:capitalize}.auth-form-card,.auth-intro{align-content:start;padding:1rem}.auth-error{border:1px solid color-mix(in srgb,var(--danger) 44%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--danger) 10%,var(--surface-raised));color:var(--danger);font-size:.88rem;font-weight:850;line-height:1.35;padding:.75rem .85rem}.auth-intro{display:grid;gap:1rem}.auth-intro h1{margin:0;max-width:34rem;font-size:clamp(2.25rem,6vw,4.2rem);font-weight:950;letter-spacing:0;line-height:.95}.auth-intro p{margin:0;max-width:40rem;color:var(--muted);font-size:1rem;font-weight:700;line-height:1.55}.auth-benefits{display:flex;flex-wrap:wrap;gap:.45rem}.auth-benefits span{border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.8rem;font-weight:900;padding:.3rem .65rem}.auth-google-button,.auth-input,.auth-submit-primary,.auth-submit-secondary{min-height:3rem;border-radius:var(--radius-md);font-weight:850;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast),box-shadow var(--motion-fast)}.auth-input{width:100%;border:1px solid var(--border);background:var(--surface-strong);color:var(--foreground);padding:0 .85rem}.auth-input:focus,.auth-input:hover{border-color:color-mix(in srgb,var(--accent) 44%,var(--border))}.auth-google-button,.auth-submit-primary,.auth-submit-secondary{display:inline-flex;align-items:center;justify-content:center;padding:0 1rem}.auth-submit-primary{border:1px solid var(--foreground);background:var(--foreground);color:var(--background)}.auth-google-button,.auth-submit-secondary{border:1px solid var(--border);background:var(--surface-raised);color:var(--foreground)}.auth-google-button{width:100%}.auth-google-button:hover,.auth-submit-primary:hover,.auth-submit-secondary:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 46%,var(--border));box-shadow:0 12px 24px rgb(36 54 47/11%)}.auth-google-button:hover,.auth-submit-secondary:hover{background:var(--accent-soft)}.variant-card{display:grid;gap:1rem;padding:clamp(.9rem,1.5vw,1rem);transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.variant-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface-raised));box-shadow:0 16px 34px rgb(36 54 47/13%)}.variant-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.variant-card-head h3{margin:0;font-size:1.18rem;font-weight:950;line-height:1.15}.variant-card-head p,.variant-card-objective,.variant-rule-preview{color:var(--muted)}.variant-card-head p{margin:.18rem 0 0;font-size:.86rem;font-weight:780;text-transform:capitalize}.variant-board-size,.variant-feature-list span{border-radius:var(--radius-sm);background:var(--surface-soft);color:color-mix(in srgb,var(--foreground) 72%,var(--muted));font-size:.74rem;font-weight:900;padding:.24rem .5rem}.variant-board-size{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;white-space:nowrap}.variant-card-objective{min-height:3rem;margin:0;font-size:.9rem;font-weight:720;line-height:1.5}.variant-rule-preview{display:grid;gap:.35rem;margin:0;padding:0;font-size:.78rem;font-weight:760;list-style:none}.variant-rule-preview li{display:flex;gap:.45rem}.variant-rule-preview strong{color:var(--foreground);font-weight:950}.variant-feature-list{display:flex;flex-wrap:wrap;gap:.45rem}.variant-start-link{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;padding:0 1rem;text-align:center}.catalog-browser{display:grid;gap:.85rem}.catalog-toolbar{position:relative;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) auto auto;align-items:start;padding:clamp(.75rem,1.5vw,1rem)}.catalog-filter-group,.catalog-search,.catalog-select{display:flex;min-height:2.7rem;align-items:center;gap:.55rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);padding:0 .75rem}.catalog-filter-popover{position:relative;z-index:25}.catalog-filter-trigger,.catalog-reset{display:inline-flex;min-height:2.7rem;align-items:center;justify-content:center;gap:.45rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);color:var(--foreground);padding:0 .85rem;font-size:.86rem;font-weight:900;white-space:nowrap;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast),box-shadow var(--motion-fast)}.catalog-filter-trigger:hover,.catalog-reset:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 58%,var(--border));background:var(--accent-soft);color:var(--accent)}.catalog-filter-count{display:grid;min-width:1.25rem;height:1.25rem;place-items:center;border-radius:999px;background:var(--accent);color:#111;font-size:.72rem;font-weight:950}.catalog-filter-panel{position:absolute;top:calc(100% + .5rem);right:0;display:grid;width:min(22rem,calc(100vw - 2rem));gap:.8rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-raised);box-shadow:var(--shadow-popover);padding:.85rem}.catalog-filter-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.catalog-filter-panel-head strong{font-size:.9rem;font-weight:950}.catalog-filter-panel-head div{display:inline-flex;align-items:center;gap:.35rem}.catalog-filter-clear,.catalog-filter-close{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--accent);font-size:.78rem;font-weight:900}.catalog-filter-close{width:2rem;height:2rem;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted)}.catalog-filter-close:hover{color:var(--foreground)}.catalog-filter-field{position:relative;display:grid;gap:.35rem;border-radius:var(--radius-lg);background:var(--surface-soft);padding:.65rem}.catalog-filter-field>span{color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.catalog-filter-field select{width:100%;min-height:2.55rem;appearance:none;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);color:var(--foreground);padding:0 2.35rem 0 .8rem;font-size:.88rem;font-weight:760;outline:0}.catalog-filter-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.catalog-filter-field svg{position:absolute;right:1.25rem;bottom:1.48rem;color:var(--muted);pointer-events:none}.catalog-filter-group{min-height:auto;align-items:flex-start;padding:.55rem}.catalog-filter-group-compact{align-items:center}.catalog-filter-icon{display:grid;width:1.95rem;height:1.95rem;flex:0 0 auto;place-items:center;border-radius:999px;background:var(--surface-soft);color:var(--accent)}.catalog-chip-list{display:flex;min-width:0;flex:1 1 auto;flex-wrap:wrap;gap:.4rem}.catalog-filter-chip{display:inline-flex;min-height:1.95rem;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:.32rem .62rem;font-size:.78rem;font-weight:950;white-space:nowrap;transition:border-color .14s ease,background .14s ease,color .14s ease}.catalog-filter-chip.is-active,.catalog-filter-chip:hover{border-color:color-mix(in srgb,var(--accent) 72%,transparent);background:color-mix(in srgb,var(--accent) 18%,var(--surface-soft));color:var(--accent)}.catalog-search input,.catalog-select select{width:100%;min-width:0;border:0;background:transparent;color:var(--foreground);outline:0}.catalog-search input:disabled,.catalog-select select:disabled{color:var(--muted);cursor:not-allowed}.catalog-grid{display:grid;gap:clamp(.85rem,1.5vw,1.05rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}.catalog-card{display:grid;gap:.7rem;align-content:start;min-height:13.25rem;padding:clamp(.9rem,1.5vw,1.05rem);transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),background var(--motion-fast)}.catalog-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 4%,var(--surface-raised)),var(--surface-raised));box-shadow:0 18px 42px rgb(36 54 47/13%)}.catalog-card h2,.game-detail-section h2,.leaderboard-card h2{margin:0;font-size:1.05rem;font-weight:950}.rules-modal-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:rgb(0 0 0/48%);padding:1rem}.rules-modal{display:grid;width:min(100%,42rem);max-height:min(84vh,42rem);gap:1rem;overflow:auto;padding:1rem}.rules-modal h2{margin:.2rem 0 0;font-size:1.45rem;font-weight:950}.rules-numbered-list{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.rules-numbered-list li{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.65rem;align-items:start;padding:.65rem}.rules-guide-note,.rules-numbered-list li{border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.rules-guide-note{padding:.68rem}.rules-numbered-list span{display:grid;height:1.55rem;width:1.55rem;place-items:center;border-radius:6px;background:var(--accent);color:#111;font-size:.78rem;font-weight:950}.rules-modal-grid p,.rules-numbered-list p{margin:0;color:var(--muted);font-size:.88rem;font-weight:750;line-height:1.35}.rules-modal-grid{display:grid;gap:.45rem;padding:.75rem}.rules-source-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem}.rules-source-link{display:inline-flex;min-height:1.85rem;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--muted);padding:0 .55rem;font-size:.78rem;font-weight:850;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast)}.rules-source-link:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--accent-soft);color:var(--foreground)}.play-setup-page{max-width:1180px}.play-setup-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem}.play-setup-hero h1{font-size:clamp(1.55rem,3.1vw,2.45rem);font-weight:950;line-height:1}.play-setup-hero p{max-width:45rem;color:var(--muted);font-weight:750}.play-workflow-strip{display:grid;gap:.65rem;grid-template-columns:repeat(3,minmax(0,1fr))}.play-workflow-step{display:flex;align-items:center;justify-content:space-between;gap:.45rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.7rem .8rem}.play-workflow-step strong{color:var(--foreground);font-size:.86rem;font-weight:950}.play-quick-grid{display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.play-quick-card{display:grid;min-height:6.5rem;align-content:center;justify-items:center;gap:.22rem;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,var(--surface-strong),var(--surface));color:var(--foreground);padding:.85rem;text-align:center;transition:border-color .14s ease,transform .14s ease,background .14s ease}.play-quick-card:hover{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface-strong));transform:translateY(-1px)}.play-quick-card svg{color:var(--accent);stroke-width:2.7}.play-quick-card span{font-size:.95rem;font-weight:950}.play-mode-browser{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}.play-mode-card{display:grid;gap:.85rem;align-content:start;padding:1rem}.play-mode-card svg{color:var(--accent)}.play-mode-card h2{font-size:1.15rem;font-weight:950}.play-mode-card-games{display:grid;gap:.4rem}.play-mode-card-games a{display:inline-flex;align-items:center;gap:.45rem;border-radius:8px;background:var(--surface-soft);color:var(--foreground);padding:.55rem .65rem;font-size:.82rem;font-weight:900}.play-setup-shell{display:grid;gap:.85rem;grid-template-columns:minmax(13rem,17rem) minmax(0,1fr);align-items:start}.play-game-picker,.play-mode-rail{display:grid;gap:.8rem;padding:.9rem}.play-mode-rail{position:sticky;top:1rem}.play-game-list,.play-mode-rail-list{display:grid;gap:.45rem}.play-game-picker-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem}.play-game-empty,.play-game-picker-toolbar>span{color:var(--muted);font-size:.78rem;font-weight:850}.play-mode-rail-item{display:grid;min-height:2.75rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;border-radius:8px;background:var(--surface-soft);padding:.55rem .65rem;color:var(--foreground);font-size:.88rem;font-weight:950;transition:background .14s ease,transform .14s ease}.play-mode-rail-item:hover{background:color-mix(in srgb,var(--accent) 16%,var(--surface-soft));transform:translateX(2px)}.play-mode-rail-item.is-selected{background:color-mix(in srgb,var(--accent) 22%,var(--surface-soft));box-shadow:inset 3px 0 0 var(--accent);color:var(--foreground)}.play-game-row-main svg,.play-mode-rail-item svg{color:var(--accent)}.play-game-row{display:grid;min-height:3.25rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.55rem}.play-game-row-main{display:flex;min-width:0;align-items:center;gap:.5rem}.play-game-row-main strong{overflow:hidden;font-size:.94rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.play-game-row-main span{border-radius:6px;background:var(--surface-soft);color:var(--muted);padding:.2rem .45rem;font-size:.72rem;font-weight:900;white-space:nowrap}.play-game-row-main .catalog-guide-button{margin-left:auto}.play-game-row-actions{display:flex;gap:.4rem}.play-game-row-actions a{display:inline-flex;min-height:2.25rem;align-items:center;gap:.35rem;justify-content:center;padding:0 .7rem;font-size:.82rem}.games-rules-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;padding:clamp(.95rem,2vw,1.25rem)}.games-rules-heading h1{flex:1 1 18rem;margin:0;color:var(--foreground);font-size:clamp(1.65rem,3.5vw,2.45rem);font-weight:950;line-height:.98;white-space:nowrap}.games-rules-heading span{border-radius:999px;background:var(--surface-soft);color:color-mix(in srgb,var(--foreground) 76%,var(--muted));padding:.36rem .7rem;font-size:.78rem;font-weight:950;white-space:nowrap}.bot-training-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.75rem;padding:clamp(.75rem,1.6vw,1rem)}.bot-training-metrics div{min-width:0;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:var(--radius-md);background:var(--surface-strong);padding:.85rem;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.bot-training-metrics div:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 34%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--surface-strong))}.bot-training-metrics small,.bot-training-metrics span{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.78rem;font-weight:850}.bot-training-metrics strong{display:block;margin:.2rem 0 .1rem;overflow-wrap:anywhere;font-size:clamp(1.1rem,2.4vw,1.55rem);font-weight:950;line-height:1.08}.catalog-card-meta{display:flex;flex-wrap:wrap;gap:.35rem}.catalog-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.6rem}.catalog-card-summary{display:-webkit-box;min-height:2.3em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--muted);font-size:.84rem;font-weight:750;line-height:1.25}.catalog-mode-strip{display:flex;min-width:0;flex-wrap:wrap;gap:.35rem}.catalog-mode-chip{display:inline-flex;min-width:0;align-items:center;gap:.32rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--foreground);padding:.26rem .5rem;font-size:.72rem;font-weight:950;line-height:1}.catalog-mode-chip small{max-width:8.5rem;overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.catalog-mode-chip[data-level=verified]{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 15%,var(--surface-soft))}.catalog-mode-chip[data-level=preview]{border-color:color-mix(in srgb,var(--warning) 48%,transparent);background:color-mix(in srgb,var(--warning) 13%,var(--surface-soft))}.catalog-mode-chip[data-level=watch]{border-color:color-mix(in srgb,var(--info) 46%,transparent);background:color-mix(in srgb,var(--info) 12%,var(--surface-soft))}.catalog-icon-button{display:grid;width:2.55rem;height:2.55rem;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--muted);transition:border-color .16s ease,background .16s ease,color .16s ease}.catalog-icon-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft));color:var(--foreground)}.catalog-guide-button{display:inline-flex;min-height:2.35rem;align-items:center;justify-content:center;gap:.35rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--foreground);padding:0 .65rem;font-size:.78rem;font-weight:950;transition:border-color .16s ease,background .16s ease,color .16s ease}.catalog-guide-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft))}.catalog-card-meta span,.catalog-engine,.catalog-release,.catalog-status,.game-detail-tags span{border-radius:999px;background:var(--surface-soft);padding:.22rem .55rem}.catalog-card ol,.game-detail-section ol{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.catalog-card li,.game-detail-section ol li{display:flex;gap:.45rem;color:var(--muted);font-size:.86rem;line-height:1.35}.catalog-card-actions{display:grid;grid-template-columns:minmax(6rem,auto) minmax(0,1fr);align-items:center;gap:.55rem}.catalog-card-actions a,.catalog-card-actions button,.catalog-engine,.catalog-rules-actions a{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.4rem;min-width:0;padding:.55rem .85rem;font-size:.84rem}.catalog-mode-grid{display:grid;gap:.45rem}.catalog-guide-sections .catalog-mode-grid{padding:.75rem}.catalog-mode-row{display:grid;gap:.22rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);padding:.62rem}.catalog-mode-row[data-enabled=false]{opacity:.62}.catalog-mode-row span,.catalog-mode-row strong{font-size:.82rem;font-weight:950}.catalog-mode-row span{color:var(--accent)}.catalog-mode-row p{margin:0;color:var(--muted);font-size:.78rem;font-weight:750;line-height:1.25}.catalog-status{min-width:0;justify-self:end;font-size:.78rem;font-weight:950;overflow-wrap:anywhere;text-align:center}.catalog-release{border:1px solid transparent;font-size:.78rem;font-weight:950}.catalog-reset{display:inline-flex;min-height:2.6rem;align-items:center;justify-content:center;gap:.35rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--foreground);padding:0 .75rem;font-size:.82rem;font-weight:950}.catalog-empty-state{display:grid;justify-items:start;gap:.55rem;margin-top:.85rem;padding:1rem}.catalog-empty-state svg{color:var(--accent)}.catalog-empty-state h2,.catalog-empty-state p{margin:0}.catalog-empty-state p{color:var(--muted);font-size:.9rem;font-weight:750}.catalog-status[data-status=playable]{background:color-mix(in srgb,var(--accent) 20%,var(--surface-soft));color:var(--accent-strong)}.catalog-rules-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:start center;overflow:auto;background:rgb(0 0 0/48%);padding:clamp(1rem,4vw,3rem)}.catalog-rules-sheet{width:min(52rem,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:clamp(.9rem,2vw,1.15rem);box-shadow:0 24px 80px rgb(0 0 0/35%)}.catalog-rules-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem}.catalog-rules-head span{color:var(--muted);font-size:.75rem;font-weight:900;text-transform:uppercase}.catalog-rules-head h2{margin:.12rem 0 0;font-size:clamp(1.35rem,4vw,2rem);font-weight:950;line-height:1}.catalog-guide-sections,.catalog-rules-grid{display:grid;gap:.85rem;margin-top:.85rem}.catalog-rules-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.catalog-guide-sections details,.catalog-rules-grid article{border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:10px;background:var(--surface-strong);padding:0;overflow:hidden}.catalog-guide-sections summary,.catalog-rules-grid h3{margin:0;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--foreground) 3%,transparent);padding:.72rem .82rem;font-size:.95rem;font-weight:950}.catalog-guide-sections summary{cursor:pointer;list-style:none}.catalog-guide-sections summary::-webkit-details-marker{display:none}.catalog-guide-sections summary:after{float:right;color:var(--muted);content:"+"}.catalog-guide-sections details[open] summary:after{content:"-"}.catalog-guide-sections ol,.catalog-guide-sections ul,.catalog-rules-grid ol,.catalog-rules-grid ul{display:grid;gap:.45rem;margin:0;padding:.75rem;list-style:none}.catalog-guide-sections li,.catalog-rules-grid li{display:flex;gap:.45rem;color:var(--muted);font-size:.86rem;line-height:1.35}.catalog-guide-list li{display:grid;grid-template-columns:1.65rem minmax(0,1fr);align-items:start;gap:.65rem;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:8px;background:var(--surface);padding:.6rem}.catalog-guide-list li strong{display:grid;width:1.45rem;height:1.45rem;place-items:center;border-radius:999px;background:var(--accent);color:var(--accent-foreground);font-size:.72rem;font-weight:950}.catalog-guide-list-plain li{display:block;border-left:3px solid color-mix(in srgb,var(--accent) 64%,transparent);padding-left:.72rem}.catalog-guide-status-grid{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.75rem}.catalog-guide-status-grid span{min-width:0;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:8px;background:var(--surface);color:var(--muted);padding:.55rem .62rem;font-size:.8rem;font-weight:850;line-height:1.25}.catalog-source-list{display:grid;gap:.45rem;padding:.75rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}.catalog-source-list a{min-width:0;justify-content:flex-start;padding:.45rem .65rem;font-size:.8rem;text-align:left;white-space:normal}.catalog-rules-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.catalog-rules-status{display:grid;gap:.5rem;margin-top:.85rem;border-radius:8px;background:var(--surface-strong);padding:.85rem}.catalog-rules-status h3{margin:0;font-size:.95rem;font-weight:950}.catalog-release[data-status=playable]{background:color-mix(in srgb,var(--accent) 18%,var(--surface-soft));color:var(--accent-strong)}.catalog-release[data-status=learn]{border-color:color-mix(in srgb,var(--warning) 44%,var(--border));background:color-mix(in srgb,var(--warning) 12%,var(--surface-soft));color:var(--warning)}.catalog-release[data-status=coming-soon]{background:var(--surface-strong);color:var(--muted)}.leaderboard-card{display:grid;gap:.45rem;padding:1rem;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.leaderboard-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 36%,var(--border));box-shadow:0 16px 34px rgb(36 54 47/13%)}.leaderboard-card svg{color:var(--warning)}.leaderboard-entry-list{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.leaderboard-entry-list li{display:grid;grid-template-columns:2.8rem minmax(0,1fr) auto;align-items:center;gap:.65rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:.55rem .65rem;font-size:.86rem;font-weight:850}.leaderboard-entry-list li span:last-child{color:var(--accent);font-weight:950}.game-detail{display:grid;gap:1rem}.game-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:clamp(1rem,3vw,1.4rem)}.game-detail-family-label{display:inline-flex;align-items:center;gap:.35rem;margin:0 0 .35rem;color:var(--accent);font-size:.8rem;font-weight:950;text-transform:uppercase}.game-detail-hero h1{margin:0;font-size:clamp(2rem,5vw,3.5rem);font-weight:950;line-height:1}.game-detail-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.8rem}.game-detail-tags span{min-width:0;max-width:100%;overflow-wrap:anywhere}.game-detail-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}.game-detail-gate{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-color:color-mix(in srgb,var(--warning) 45%,var(--border));background:color-mix(in srgb,var(--warning) 8%,var(--surface));padding:.85rem 1rem}.game-detail-gate div{display:grid;gap:.2rem}.game-detail-gate strong{font-size:.95rem;font-weight:950}.game-detail-gate span{color:var(--muted);font-size:.84rem;font-weight:800}.game-detail-gate>span{max-width:32rem;border-radius:999px;background:var(--surface-strong);padding:.32rem .65rem;text-align:right}.game-detail-note{display:flex;flex-wrap:wrap;gap:.35rem;margin:-.15rem 0 .15rem}.game-detail-note span,.game-detail-source-more{border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:900;padding:.22rem .55rem}.game-detail-source-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.game-detail-source-head h2{margin:0}.game-detail-source-more{width:fit-content;margin:0}.game-detail-grid{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.game-detail-section{display:grid;gap:.75rem;padding:1rem}.game-detail-section h2{margin:0}.game-detail-rule-list,.game-detail-source-list{display:grid;gap:.48rem;margin:0;padding:0;list-style:none}.game-detail-rule-list li{min-width:0;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:8px;background:var(--surface-strong);color:var(--muted);padding:.62rem .68rem;font-size:.86rem;font-weight:760;line-height:1.35}.game-detail-rule-list-numbered li{display:grid;grid-template-columns:1.65rem minmax(0,1fr);align-items:start;gap:.62rem}.game-detail-rule-list-numbered strong{display:grid;width:1.45rem;height:1.45rem;place-items:center;border-radius:999px;background:var(--accent);color:var(--accent-foreground);font-size:.72rem;font-weight:950;line-height:1}.game-detail-rule-list-plain li{border-left:3px solid color-mix(in srgb,var(--accent) 62%,transparent)}.game-detail-source-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}.game-detail-source-list a{display:flex;min-height:2.55rem;min-width:0;align-items:center;justify-content:space-between;gap:.55rem;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:8px;background:var(--surface-strong);color:var(--foreground);padding:.62rem .68rem;font-size:.84rem;font-weight:850;line-height:1.2;overflow-wrap:anywhere;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.game-detail-source-list a:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-soft)}.game-detail-source-list svg{flex:0 0 auto;color:var(--accent)}.focus-ring:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:3px}.app-mobile-header:has(details[open]){z-index:80}@media (max-width:980px){.game-board-layout,.play-arena .game-board-layout{grid-template-columns:1fr}.play-arena .board-column{order:1}.play-arena .game-side-panel{order:2;max-height:none;overflow:visible}.play-header-command-actions{max-width:100%;justify-content:flex-start}}@media (max-width:900px){.app-shell{display:block}.app-sidebar{display:none}.app-mobile-header{display:grid}.app-mobile-tools{display:flex;gap:.35rem}.app-mobile-tools .language-menu-panel,.app-mobile-tools .notification-panel{position:fixed;top:3.35rem;right:.55rem;bottom:auto;left:auto;width:min(20rem,calc(100vw - 1.1rem));max-height:calc(100vh - 4.2rem);max-width:calc(100vw - 1.1rem);transform-origin:top right}.app-content{padding:.7rem}.play-arena{min-height:auto;border-radius:0;padding:.5rem}.game-board-layout,.play-arena .game-board-layout{--board-fixed-size:min(100%,calc(100vw - 2.8rem),calc(100vh - 11rem))}.board-shell{width:var(--board-fixed-size);max-width:100%}.match-result-banner{align-items:flex-start;flex-direction:column}.match-result-banner span{text-align:left}.analysis-grid,.game-detail-grid,.lobby-dashboard{grid-template-columns:1fr}.lobby-action-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lobby-stat-rail{position:static}.lobby-content-grid{grid-template-columns:1fr}.catalog-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.55rem}.catalog-reset{grid-column:1/-1;width:100%}.catalog-filter-trigger{min-width:2.7rem;padding-inline:.65rem}.catalog-filter-panel{right:-.55rem;width:min(calc(100vw - 1.5rem),22rem)}.analysis-command-bar,.leaderboard-filter-bar,.watch-room-tools{grid-template-columns:1fr}.analysis-command-bar>span,.leaderboard-filter-stat,.leaderboard-filter-submit,.leaderboard-scope-field,.lobby-action-button,.watch-action-button,.watch-room-tools>button{width:100%}.catalog-filter-group{align-items:stretch;flex-direction:column}.catalog-filter-icon{display:none}.catalog-filter-chip{flex:1 1 6.5rem}.catalog-mode-chip{flex:1 1 7rem;justify-content:center}.catalog-mode-chip small{max-width:5.5rem}.lobby-featured-head{grid-template-columns:1fr}.lobby-featured-head span{width:fit-content}.account-stat-grid,.catalog-rules-grid,.home-action-grid,.home-stat-grid,.leaderboard-family-list>div,.leaderboard-feature-grid,.lobby-family-strip{grid-template-columns:1fr}.lobby-stat-grid{gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr))}.lobby-stat-card{grid-template-columns:1fr;min-height:5.1rem;justify-items:start;gap:.18rem;padding:.68rem}.lobby-stat-card svg{grid-row:auto}.lobby-stat-card strong{font-size:clamp(1.25rem,8vw,1.85rem)}.catalog-card p,.catalog-card-meta,.catalog-count,.catalog-guide-status-grid span,.leaderboard-card p,.lobby-stat-card span{font-size:.78rem;line-height:1.2}.bot-training-metrics{gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.55rem}.bot-training-metrics div{padding:.62rem}.bot-training-metrics small,.bot-training-metrics span{font-size:.72rem;line-height:1.2}.bot-training-metrics strong{font-size:clamp(1rem,6vw,1.35rem);line-height:1.05}.account-profile-hero{grid-template-columns:1fr}.account-profile-hero>a{width:100%;justify-content:center}.game-detail-gate,.game-detail-hero{align-items:flex-start;flex-direction:column}.game-detail-gate>span{max-width:100%;text-align:left}.home-command-center,.home-next-steps,.intro-hero{grid-template-columns:1fr}.home-command-center>a,.home-next-steps .watch-actions{width:100%}.intro-page{align-content:start}.intro-hero{min-height:auto}.intro-board-orbit{max-width:18rem}.intro-workflow,.play-command-bar,.play-header-compact,.play-unified-header{grid-template-columns:1fr}.play-command-actions,.play-header-actions,.play-header-command-actions{justify-content:flex-start}.play-header-command-actions{max-width:100%}.play-panel-match-header .play-header-command-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.play-title-actions{width:auto;flex:0 0 auto;justify-content:flex-end;gap:.3rem;margin-left:auto}.play-title-picker-filters{grid-template-columns:1fr}.play-title-picker-family select{max-width:none}.play-panel-match-header .play-title-row{flex-wrap:nowrap}.play-panel-match-header .play-title-block h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-share-menu>button,.play-title-actions>button{width:2.2rem;min-height:2.25rem;justify-content:center;padding:.34rem;font-size:.68rem}.play-panel-match-header .play-title-block h1{font-size:.92rem}.play-share-menu>button .button-label,.play-title-actions>button .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.play-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-control-group-match,.play-control-group-primary,.play-control-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.play-control-group-primary{grid-template-columns:minmax(5.2rem,1fr) minmax(4.4rem,.86fr) repeat(5,minmax(2.05rem,2.25rem))}.play-chat-header{align-items:stretch;flex-direction:column}.play-chat-channels{width:100%;min-width:0}.play-chat-log{max-height:8rem}.bot-profile-card-with-select{grid-template-columns:auto minmax(0,1fr) auto minmax(5.8rem,.75fr)}.bot-profile-card-with-select select{grid-column:auto}.board-player-card{grid-template-columns:auto minmax(0,1fr)}.player-piece-rail{grid-column:1/-1;justify-items:start;width:100%}.hand-strip{justify-content:flex-start}.hand-tray{grid-template-columns:minmax(0,1fr);justify-items:start;gap:.18rem}.hand-tray-status{max-width:100%}.captured-strip{grid-column:1/-1;justify-content:flex-start}.captured-strip.is-empty{display:none}.play-command-bar{min-height:6.5rem}.play-command-status{min-height:2rem}.play-setup-hero{align-items:flex-start;flex-direction:column}.play-workflow-strip{grid-template-columns:1fr}.play-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-setup-shell{grid-template-columns:1fr}.play-mode-rail{position:static}.play-mode-rail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.play-game-row{grid-template-columns:1fr}.play-game-row-actions{justify-content:stretch}.play-game-row-actions a{flex:1 1}}@media (max-width:420px){.game-board-layout,.play-arena .game-board-layout{--board-fixed-size:min(100%,calc(100vw - 2.4rem),calc(100vh - 10.5rem))}.app-mobile-header{gap:.32rem;padding:.48rem .55rem}.app-menu summary,.app-mobile-tools button,.app-mobile-tools summary,.app-responsive-tools button,.app-responsive-tools summary{width:2.25rem;height:2.25rem;border-radius:8px}.app-mobile-brand>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app-mobile-tools{gap:.2rem}.compact-page-heading h1{font-size:clamp(1.85rem,9.8vw,2.25rem)}.compact-page-heading{align-items:flex-start}.games-rules-heading{display:grid;grid-template-columns:1fr auto;gap:.55rem;padding:.7rem}.games-rules-heading h1{grid-row:span 3;white-space:normal}.games-rules-heading span{justify-self:end;padding:.22rem .48rem;font-size:.72rem}.lobby-action-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lobby-action-button,.watch-action-button{min-height:2.65rem;padding-inline:.7rem;font-size:.82rem}.lobby-stat-card,.lobby-stat-grid{grid-template-columns:1fr}.lobby-stat-card{min-height:4.65rem;padding:.55rem}.lobby-stat-card svg{grid-row:auto;width:1rem;height:1rem}.lobby-stat-card strong{font-size:1.28rem}.lobby-stat-card span{font-size:.68rem}.bot-training-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.bot-training-metrics strong{font-size:clamp(.95rem,5.4vw,1.18rem)}.intro-copy h1{font-size:clamp(2.6rem,18vw,4rem)}.intro-actions a{width:100%;justify-content:center}.intro-proof span,.intro-shortcuts a{flex:1 1 auto;justify-content:center;text-align:center}.play-control-grid,.play-control-strip,.play-mode-rail-list,.play-quick-grid{grid-template-columns:1fr}.play-mode-grid{grid-template-columns:repeat(5,minmax(0,1fr));overflow-x:visible}.play-mode-button{grid-template-columns:1fr;justify-items:center;min-height:2.35rem;padding:.42rem .2rem}.play-mode-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.play-time-grid button{min-height:2.32rem;padding-inline:.3rem;font-size:.66rem}.play-control-group-primary{grid-template-columns:repeat(2,minmax(5.3rem,1fr)) repeat(5,minmax(2.15rem,2.35rem));overflow-x:visible}.play-control-group-primary .play-control-button,.play-control-group-primary .play-icon-button{width:100%;min-height:2.25rem;padding-inline:.28rem}.play-control-group-match{grid-template-columns:repeat(4,minmax(0,1fr))}.play-control-group-match .play-control-button{gap:.3rem;min-height:2.25rem;padding-inline:.28rem;font-size:.62rem}.play-control-group-match .play-control-button svg{width:.92rem;height:.92rem}.bot-profile-card{gap:.4rem}.bot-profile-card-with-select{grid-template-columns:auto minmax(0,1fr) minmax(5.2rem,.68fr)}.bot-profile-card small{display:none}.play-review-compact{max-height:min(20rem,44vh)}.catalog-card-actions{grid-template-columns:1fr}.catalog-card-actions a,.catalog-card-actions button{width:100%}.catalog-status{justify-self:start}.play-quick-card{min-height:4.8rem;grid-template-columns:auto minmax(0,1fr);justify-items:start;text-align:left}.play-quick-card small{grid-column:2}}@media (max-width:380px){.app-mobile-header{gap:.35rem;padding-inline:.55rem}.app-mobile-brand .app-brand-mark{width:1.9rem;height:1.9rem}.app-mobile-brand>span:last-child{max-width:5.5rem}.app-mobile-tools{gap:.25rem}.app-menu summary,.app-mobile-tools .shell-icon-control,.app-mobile-tools button,.app-mobile-tools summary{width:2.45rem;height:2.45rem;min-height:2.45rem;border-radius:9px}}@media (min-width:981px){.game-board-layout{grid-template-columns:var(--board-fixed-size) minmax(18rem,1fr)}}