*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-2{height:.5rem}.h-28{height:7rem}.h-36{height:9rem}.h-4{height:1rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-72{max-height:18rem}.min-h-0{min-height:0px}.min-h-20{min-height:5rem}.min-h-24{min-height:6rem}.min-h-28{min-height:7rem}.min-h-32{min-height:8rem}.min-h-52{min-height:13rem}.min-h-72{min-height:18rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-4{width:1rem}.w-fit{width:-moz-fit-content;width:fit-content}.min-w-0{min-width:0px}.min-w-2{min-width:.5rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[2rem_1fr_1fr\]{grid-template-columns:2rem 1fr 1fr}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-black\/10{border-color:#0000001a}.border-clay\/40{border-color:#b65f4266}.border-forest{--tw-border-opacity: 1;border-color:rgb(39 81 58 / var(--tw-border-opacity, 1))}.border-forest\/30{border-color:#27513a4d}.border-ink\/10{border-color:#17201a1a}.border-ink\/15{border-color:#17201a26}.border-ink\/20{border-color:#17201a33}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-black\/5{background-color:#0000000d}.bg-clay{--tw-bg-opacity: 1;background-color:rgb(182 95 66 / var(--tw-bg-opacity, 1))}.bg-clay\/10{background-color:#b65f421a}.bg-forest{--tw-bg-opacity: 1;background-color:rgb(39 81 58 / var(--tw-bg-opacity, 1))}.bg-forest\/10{background-color:#27513a1a}.bg-ink\/10{background-color:#17201a1a}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pt-4{padding-top:1rem}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.leading-7{line-height:1.75rem}.tracking-normal{letter-spacing:0em}.text-clay{--tw-text-opacity: 1;color:rgb(182 95 66 / var(--tw-text-opacity, 1))}.text-forest{--tw-text-opacity: 1;color:rgb(39 81 58 / var(--tw-text-opacity, 1))}.text-ink\/50{color:#17201a80}.text-ink\/55{color:#17201a8c}.text-ink\/60{color:#17201a99}.text-ink\/65{color:#17201aa6}.text-ink\/70{color:#17201ab3}.text-ink\/75{color:#17201abf}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}body{margin:0;background:var(--app-bg);color:var(--app-text);font-size:calc(16px * var(--app-font-scale))}button,input,select,textarea{font:inherit}button,input,select,textarea,a{touch-action:manipulation}button,input,select,textarea{min-height:2.75rem}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #b65f42;outline-offset:2px}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:100;transform:translateY(-150%);border-radius:6px;background:#17201a;padding:.7rem .9rem;color:#fff;font-weight:800}.skip-link:focus{transform:translateY(0)}.state-panel{border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);padding:1.25rem}.state-panel h2{margin:0;font-size:1rem;font-weight:700}.state-panel p{margin:.5rem 0 0;color:var(--app-muted)}.state-spinner{width:1.5rem;height:1.5rem;border:3px solid rgb(39 81 58 / 20%);border-top-color:#27513a;border-radius:999px;animation:spin .8s linear infinite}.offline-banner{background:#b65f42;color:#fff;padding:.625rem 1rem;text-align:center;font-weight:600}@keyframes spin{to{transform:rotate(360deg)}}.chess-layout{display:grid;gap:1rem}.chess-layout-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;overflow:auto;background:var(--app-bg);padding:1rem}.chess-layout-header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem}.chess-layout-grid{display:grid;grid-template-columns:minmax(13rem,.7fr) minmax(18rem,1.5fr) minmax(15rem,.8fr);gap:1rem;align-items:start}.chess-board-column{min-width:0}.chess-board-shell{inline-size:min(100%,calc(100svh - 15rem),calc(100vw - 2rem),42rem);margin-inline:auto;aspect-ratio:1}.chess-board-grid{--chess-square-light: #eef1e7;--chess-square-dark: #587464;--chess-selected: #b88b38;--chess-legal: #17201a;--chess-last: #b88b38;--chess-check: #b65f42;--chess-premove: #27513a;--chess-coordinate: rgb(23 32 26 / 78%);--chess-piece-white: #fafafa;--chess-piece-black: #151515;--chess-piece-outline: rgb(255 255 255 / 45%);--chess-animation-ms: .22s;position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));inline-size:100%;aspect-ratio:1;overflow:hidden;border:2px solid color-mix(in srgb,var(--app-text) 50%,transparent);border-radius:8px;background:var(--app-surface-strong);box-shadow:0 12px 28px #0000002e}.chess-board-row{display:contents}.chess-square{position:relative;display:grid;min-width:0;min-height:0;place-items:center;border:0;color:#17201a;cursor:pointer;outline-offset:-3px;aspect-ratio:1}.chess-square:focus-visible{outline:3px solid #b65f42;z-index:2}.chess-square-light{background-color:var(--chess-square-light);background-image:var(--chess-square-light-texture, none);background-repeat:no-repeat;background-size:var(--chess-square-texture-size, 100% 100%)}.chess-square-dark{background-color:var(--chess-square-dark);background-image:var(--chess-square-dark-texture, none);background-repeat:no-repeat;background-size:var(--chess-square-texture-size, 100% 100%)}.chess-square-content{font-size:clamp(1.7rem,7.5cqi,4rem);line-height:1;transition:color var(--chess-animation-ms) ease,transform var(--chess-animation-ms) ease}.chess-piece{text-shadow:0 1px 0 var(--chess-piece-outline),0 0 .12em var(--chess-piece-outline)}.chess-piece-white{color:var(--chess-piece-white)}.chess-piece-black{color:var(--chess-piece-black)}.chess-square-legal:after{position:absolute;width:34%;height:34%;border:2px solid var(--chess-legal);border-radius:999px;background:#fff6;content:""}.chess-square-last{box-shadow:inset 0 0 0 4px var(--chess-last)}.chess-square-check{box-shadow:inset 0 0 0 5px var(--chess-check)}.chess-square-analysis{background-image:repeating-linear-gradient(135deg,#fff0,#fff0 .35rem,#b88b3852 .35rem,#b88b3852 .7rem)}.chess-square-warning{background-image:radial-gradient(circle,#b65f4259 0,#b65f420d 62%)}.chess-square-premove{box-shadow:inset 0 0 0 4px var(--chess-premove)}.chess-square-marker{position:absolute;right:.15rem;bottom:.15rem;max-width:calc(100% - .3rem);overflow:hidden;border-radius:3px;background:var(--app-surface);padding:.05rem .18rem;color:var(--app-text);font-size:.55rem;font-weight:700;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.chess-square-marker:before{content:"• "}.chess-coordinate{position:absolute;color:var(--chess-coordinate);font-size:clamp(.55rem,1.5cqi,.75rem);font-weight:800;line-height:1}.chess-board-reduced-motion .chess-square-content,.chess-board-reduced-motion .chess-piece{transition:none}.chess-board-high-contrast .chess-square-marker{outline:2px solid currentColor}.chess-coordinate-rank{top:.2rem;left:.22rem}.chess-coordinate-file{right:.25rem;bottom:.2rem}.chess-arrow-layer{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:end;justify-content:center;padding:.4rem}.chess-arrow{border-radius:999px;background:#17201ac7;padding:.2rem .5rem;color:#fff;font-size:.75rem;font-weight:700}.chess-panel,.chess-player-card,.chess-status{border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);padding:1rem}.chess-panel-title{margin:0;font-size:.95rem;font-weight:800}.chess-side-panel{display:grid;min-width:0;gap:1rem}.chess-player-card{display:flex;align-items:center;justify-content:space-between;gap:1rem}.chess-clock{display:grid;min-width:5.5rem;justify-items:end;border-radius:6px;background:var(--app-surface-muted);padding:.45rem .6rem}.chess-clock span{color:var(--app-muted);font-size:.72rem;font-weight:700}.chess-clock strong{font-size:1.15rem;letter-spacing:0}.chess-clock-active{background:#17201a;color:#fff}.chess-clock-active span{color:#ffffffb3}.chess-clock-low{outline:3px solid #b65f42;outline-offset:2px}.chess-clock-low strong{text-decoration:underline;text-decoration-thickness:.15em}.chess-clock .chess-clock-warning{color:inherit;font-size:.72rem}.chess-status{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-weight:700}.chess-toolbar-button,.chess-icon-button,.chess-danger-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface-strong);color:var(--app-text);padding:.55rem .7rem;font-weight:700}.chess-icon-button{width:2.5rem;height:2.5rem;padding:0}.chess-danger-button{border-color:#b65f4273;color:var(--app-danger)}.chess-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:#17201a85;padding:1rem}.chess-dialog{width:min(100%,24rem);border-radius:8px;background:var(--app-surface-strong);color:var(--app-text);padding:1rem;box-shadow:0 20px 60px #0000004d}.chess-promotion-choice{display:flex;align-items:center;justify-content:flex-start;gap:.6rem;border:1px solid var(--app-border);border-radius:6px;background:var(--app-bg);padding:.7rem;font-weight:800}.chess-promotion-choice span{font-size:2rem;line-height:1}.appearance-page,.appearance-controls,.appearance-sidebar,.appearance-section{display:grid;gap:1rem}.appearance-header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem}.appearance-actions{display:flex;flex-wrap:wrap;gap:.6rem}.appearance-layout{display:grid;grid-template-columns:minmax(18rem,.85fr) minmax(0,1.4fr);gap:1rem;align-items:start}.appearance-sidebar{position:sticky;top:1rem}.appearance-preview,.appearance-section,.appearance-status{border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);padding:1rem}.appearance-preview h2,.appearance-section h2{margin:0;font-size:1rem;font-weight:800}.appearance-preview .chess-board-shell{inline-size:min(100%,30rem);margin-block:1rem}.appearance-status{color:var(--app-muted);font-size:.9rem}.appearance-search{display:flex;align-items:center;gap:.6rem;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-strong);padding:.65rem .8rem}.appearance-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--app-text)}.appearance-filters{display:flex;flex-wrap:wrap;gap:.5rem}.appearance-filters button{border:1px solid var(--app-border);border-radius:999px;background:var(--app-surface-strong);color:var(--app-text);padding:.45rem .7rem;font-weight:700}.appearance-filters .appearance-filter-active{background:var(--app-text);color:var(--app-bg)}.appearance-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.75rem}.appearance-card{display:grid;min-height:10.5rem;gap:.45rem;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-strong);color:var(--app-text);padding:.75rem;text-align:left}.appearance-card:focus-visible{outline:3px solid #b65f42;outline-offset:2px}.appearance-card-selected{border-color:var(--app-accent);box-shadow:inset 0 0 0 2px var(--app-accent)}.appearance-card strong{font-size:.95rem}.appearance-card span,.appearance-card small{color:var(--app-muted);font-size:.78rem;line-height:1.3}.appearance-swatch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;min-height:3.5rem;border:1px solid var(--app-border);border-radius:6px}.appearance-swatch span{display:grid;place-items:center;color:inherit;font-size:1.8rem}.appearance-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem}.appearance-fieldset{display:grid;grid-column:1 / -1;gap:.5rem;min-width:0;border:0;margin:0;padding:0}.appearance-fieldset legend{padding:0;font-weight:800}.appearance-segmented{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.5rem}.appearance-segmented label{min-width:0}.appearance-segmented input{position:absolute;opacity:0;pointer-events:none}.appearance-segmented span{display:grid;place-items:center;min-height:2.75rem;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface-strong);color:var(--app-text);font-weight:800}.appearance-segmented input:checked+span{border-color:var(--app-accent);background:var(--app-accent);color:var(--app-accent-text);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--app-bg) 36%,transparent)}.appearance-segmented input:focus-visible+span{outline:3px solid #b65f42;outline-offset:2px}.appearance-sound-actions{display:flex;flex-wrap:wrap;align-items:end;gap:.55rem}.appearance-options label{display:grid;gap:.35rem;font-weight:700}.appearance-options select,.appearance-options input[type=range]{min-width:0;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface-strong);color:var(--app-text);padding:.55rem}.appearance-toggle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.55rem}.appearance-toggle{display:flex;align-items:center;gap:.45rem;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface-strong);color:var(--app-text);padding:.55rem;font-weight:700}@media(max-width:900px){.appearance-layout{grid-template-columns:1fr}.appearance-sidebar{position:static}}.local-page,.local-game,.local-side{display:grid;gap:1rem}.local-panel,.local-summary{border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);padding:1rem}.local-panel h2,.local-summary h2{margin:0;font-size:1rem;font-weight:800}.local-setup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.85rem}.local-setup-grid label,.local-summary label{display:grid;gap:.35rem;font-weight:700}.local-setup-grid input,.local-setup-grid select,.local-setup-grid textarea,.local-summary input,.local-summary textarea{min-width:0;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface-strong);color:var(--app-text);padding:.55rem}.local-setup-grid textarea,.local-summary textarea{min-height:5rem;resize:vertical}.local-check{display:flex!important;align-items:center;gap:.5rem}.local-check input{width:1rem;height:1rem}.local-error{color:#8b3f28;font-weight:700}.local-game-header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem}.local-game-layout{display:grid;grid-template-columns:minmax(13rem,.72fr) minmax(18rem,1.45fr) minmax(14rem,.8fr);gap:1rem;align-items:start}.local-board-column{display:grid;min-width:0;gap:1rem}.local-actions{display:flex;flex-wrap:wrap;gap:.55rem}.local-summary{display:grid;gap:1rem}.local-summary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.7rem;margin:0}.local-summary dt{color:var(--app-muted);font-size:.75rem;font-weight:800}.local-summary dd{margin:0;font-weight:800}.bg-fog{background-color:var(--app-bg)}.text-ink,.hover\:text-ink:hover{color:var(--app-text)}.text-ink\/60,.text-ink\/65,.text-ink\/70,.text-ink\/75,.text-ink\/80{color:var(--app-muted)}.border-ink\/10,.border-ink\/15{border-color:var(--app-border)}.bg-white,.bg-white\/80,.bg-white\/86,.bg-white\/95,.hover\:bg-ink\/5:hover{background-color:var(--app-surface)}.bg-forest{background-color:var(--app-accent);color:var(--app-accent-text)}@media(max-width:960px){.local-game-layout{grid-template-columns:1fr}}@media(max-width:920px){.chess-layout-grid{grid-template-columns:minmax(0,1fr)}.chess-side-panel-top{order:-1}.chess-board-shell{inline-size:min(100%,calc(100svh - 12rem),calc(100vw - 2rem))}}@media(max-width:560px){.chess-layout-fullscreen{padding:.5rem}.chess-board-shell{inline-size:min(100%,calc(100svh - 10rem),calc(100vw - 1rem))}.chess-square-marker{display:none}.chess-player-card{align-items:stretch;flex-direction:column}}html[data-reduced-motion=true] *,html[data-reduced-motion=true] *:before,html[data-reduced-motion=true] *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(prefers-contrast:more){.chess-square-selected,.chess-square-last,.chess-square-check{outline:4px solid currentcolor;outline-offset:-6px}}:root{--app-font-scale: 1;color-scheme:light;--app-bg: #f3f4f6;--app-surface: #ffffff;--app-surface-strong: #ffffff;--app-surface-muted: #e9edf1;--app-text: #20262d;--app-muted: #56616d;--app-border: #cbd3dc;--app-accent: #286b43;--app-accent-hover: #1d5132;--app-accent-text: #ffffff;--app-danger: #982c25;--app-danger-bg: #fdecea;--app-success: #176239;--app-success-bg: #e3f3e9;--app-warning: #745109;--app-warning-bg: #fff1cd;--app-focus: #2467b0;--app-nav: #20252b;--app-nav-text: #f4f7fa;--app-nav-muted: #bac5cf;--app-shadow: 0 3px 12px rgb(20 28 36 / 5%);--app-radius: .75rem;--app-space-1: .25rem;--app-space-2: .5rem;--app-space-3: .75rem;--app-space-4: 1rem;--app-space-6: 1.5rem;--app-space-8: 2rem;--move-last: #bca444;--move-selected: #b68727;--move-check: #b23d35;--chart-primary: #286b43;--chart-secondary: #2b6da6;--chart-neutral: #7c6a9d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.5}:root[data-app-theme=dark]{color-scheme:dark;--app-bg: #15191e;--app-surface: #20262d;--app-surface-strong: #282f38;--app-surface-muted: #303945;--app-text: #eef2f6;--app-muted: #b4bfcb;--app-border: #4c5968;--app-accent: #82cea0;--app-accent-hover: #a4dfb8;--app-accent-text: #102318;--app-danger: #ffafa7;--app-danger-bg: #422723;--app-success: #a0e2b9;--app-success-bg: #1b382a;--app-warning: #f3d086;--app-warning-bg: #3e341f;--app-focus: #8bbdff;--app-shadow: 0 3px 12px rgb(0 0 0 / 12%);--chart-primary: #82cea0;--chart-secondary: #96c6f0;--chart-neutral: #c3abe6}*,*:before,*:after{box-sizing:border-box}h1{font-size:clamp(1.75rem,3vw,2.6rem);font-weight:750;line-height:1.15;letter-spacing:-.025em}h2{font-size:1.1rem;font-weight:700;line-height:1.35}input:not([type=checkbox],[type=radio],[type=range]),select,textarea{max-width:100%;border:1px solid var(--app-border);border-radius:.5rem;background:var(--app-surface-strong);color:var(--app-text);padding:.65rem .8rem}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--app-muted);opacity:1}input::placeholder,textarea::placeholder{color:var(--app-muted);opacity:1}input[type=checkbox],input[type=radio]{accent-color:var(--app-accent);width:1.1rem;height:1.1rem;min-height:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--app-focus);outline-offset:3px}button:disabled{cursor:not-allowed}.text-forest,.hover\:text-forest:hover{color:var(--app-accent)}.text-clay,.local-error,.ui-error{color:var(--app-danger)}.border-ink\/20,.border-ink\/25,.border-black\/10{border-color:var(--app-border)}.bg-ink\/5{background:var(--app-surface-muted)}.border-forest{border-color:var(--app-accent)}.state-panel,.chess-panel,.chess-player-card,.chess-status,.local-panel,.local-summary,.appearance-preview,.appearance-section,.ui-card{border-radius:var(--app-radius);box-shadow:var(--app-shadow)}.app-navigation{background:var(--app-nav);color:var(--app-nav-text)}.app-navigation .text-ink\/75,.app-navigation .text-ink\/80{color:var(--app-nav-muted)}.app-navigation nav{flex-wrap:wrap}.app-navigation .hover\:bg-ink\/5:hover{background:#363f49;color:var(--app-nav-text)}.app-navigation>nav{background:var(--app-nav)}.eyebrow{margin-bottom:.6rem;color:var(--app-accent);font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.ui-stack{display:grid;gap:var(--app-space-6)}.ui-row{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.ui-card{min-width:0;border:1px solid var(--app-border);background:var(--app-surface);padding:1.25rem;display:grid;align-content:start;gap:1rem}.ui-card>h2{margin:0}.ui-help{color:var(--app-muted);font-size:.9rem}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:.65rem 1rem;border-radius:.5rem;border:1px solid transparent;font-weight:700;line-height:1.25;transition:box-shadow .12s}.ui-button-primary{background:var(--app-accent);color:var(--app-accent-text)}.ui-button-primary:hover:not(:disabled){background:var(--app-accent-hover)}.ui-button-secondary{background:var(--app-surface-strong);border-color:var(--app-border);color:var(--app-text)}.ui-button-secondary:hover:not(:disabled),.ui-button-quiet:hover:not(:disabled){background:var(--app-surface-muted)}.ui-button-quiet{background:transparent;color:var(--app-text)}.ui-button-danger{background:var(--app-danger-bg);color:var(--app-danger);border-color:var(--app-danger)}.ui-button:disabled{background:var(--app-surface-muted);color:var(--app-muted);border-color:var(--app-border)}.ui-field{display:grid;gap:.4rem;min-width:0}.ui-field label{font-size:.9rem;font-weight:650}.ui-field [aria-invalid=true]{border-color:var(--app-danger);box-shadow:inset 3px 0 var(--app-danger)}.ui-field p{margin:0;font-size:.8rem}.ui-check{display:flex;align-items:center;gap:.65rem}.ui-tabs [role=tablist]{display:flex;gap:.25rem;border-bottom:1px solid var(--app-border);overflow-x:auto;padding-bottom:.25rem}.ui-tabs [role=tab]{flex-shrink:0;padding:.6rem .9rem;color:var(--app-muted);border-radius:.5rem;font-weight:650}.ui-tabs [aria-selected=true]{background:var(--app-surface-muted);color:var(--app-text);box-shadow:inset 0 -3px var(--app-accent)}.ui-tabs [role=tabpanel]{padding-top:1.25rem}.ui-dialog{width:min(32rem,calc(100% - 2rem));max-height:calc(100svh - 2rem);overflow:auto;border:1px solid var(--app-border);border-radius:1rem;padding:1.5rem;background:var(--app-surface);color:var(--app-text);box-shadow:0 20px 80px #0005}.ui-dialog::backdrop{background:#111820aa}.ui-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.ui-dialog .ui-row{margin-top:1.5rem}.ui-menu{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%}.ui-menu summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;padding:.5rem .8rem;border:1px solid var(--app-border);border-radius:.5rem;cursor:pointer;font-weight:650;list-style:none}.ui-menu summary::-webkit-details-marker{display:none}.ui-menu-items{position:absolute;inset-inline-start:0;top:calc(100% + .4rem);z-index:30;min-width:12rem;max-width:calc(100vw - 3rem);padding:.35rem;border:1px solid var(--app-border);border-radius:.6rem;background:var(--app-surface-strong);box-shadow:0 8px 24px #0002}.ui-menu-items button{display:block;width:100%;padding:.6rem;border-radius:.3rem;text-align:start}.ui-menu-items button:hover{background:var(--app-surface-muted)}.ui-tooltip{position:relative;display:inline-flex}.ui-tooltip [role=tooltip]{position:absolute;bottom:calc(100% + .5rem);left:0;width:-moz-max-content;width:max-content;max-width:15rem;padding:.5rem .65rem;background:var(--app-nav);color:var(--app-nav-text);border-radius:.4rem;font-size:.8rem;visibility:hidden;z-index:50;pointer-events:none}.ui-tooltip:hover [role=tooltip],.ui-tooltip:focus-within [role=tooltip]{visibility:visible}.ui-skeleton{display:grid;gap:.75rem}.ui-skeleton span{height:1rem;background:var(--app-surface-muted);border-radius:.3rem;animation:ui-pulse 1.5s ease-in-out infinite}.ui-skeleton span:last-child{width:70%}@keyframes ui-pulse{50%{opacity:.45}}.ui-toast{position:fixed;z-index:90;bottom:1rem;right:1rem;max-width:min(28rem,calc(100% - 2rem));display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border:1px solid var(--app-border);border-radius:.75rem;background:var(--app-surface-strong);color:var(--app-text);box-shadow:0 8px 30px #0003}.ui-badge{display:inline-block;padding:.35rem .65rem;font-size:.8rem;font-weight:700;border-radius:.4rem}.ui-badge-success{color:var(--app-success);background:var(--app-success-bg)}.ui-badge-warning{color:var(--app-warning);background:var(--app-warning-bg)}.ui-badge-danger{color:var(--app-danger);background:var(--app-danger-bg)}.ui-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.game-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,21rem);gap:1.5rem;align-items:start}.game-workspace-board,.game-workspace-panel{min-width:0}.game-workspace-panel{display:grid;gap:1rem}:root[data-high-contrast=true]{--app-border: currentColor;--app-shadow: none}@media(max-width:820px){.ui-preview-grid,.game-workspace{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.ui-skeleton span{animation:none}}.ui-tooltip [role=tooltip]{display:none;inset-inline-start:auto;inset-inline-end:0}.ui-tooltip:hover [role=tooltip],.ui-tooltip:focus-within [role=tooltip]{display:block}@media(max-width:820px){.ui-tooltip [role=tooltip]{inset-inline-start:0;inset-inline-end:auto}}.platform-shell{min-height:100svh}.platform-sidebar{position:fixed;inset:0 auto 0 0;width:15rem;z-index:55;display:flex;flex-direction:column;background:var(--app-nav);color:var(--app-nav-text);overflow-y:auto;padding:1.5rem .9rem 1rem;scrollbar-width:thin}.platform-brand{display:flex;align-items:center;gap:.65rem;padding:0 .45rem 1.5rem;font-weight:750;font-size:1.05rem}.brand-mark{display:grid;place-items:center;width:2.3rem;height:2.3rem;flex-shrink:0;background:#82cea0;color:#102318;border-radius:.55rem;font-size:.8rem;letter-spacing:-.05em}.brand-ai{color:#a1d6b4;margin-left:.3rem;font-size:.7rem;font-weight:650}.sidebar-link{display:flex;align-items:center;gap:.8rem;min-height:2.65rem;border-radius:.5rem;padding:.55rem .75rem;color:#d0d8e0;font-size:.88rem;font-weight:550}.sidebar-link:hover{background:#303841;color:#fff}.sidebar-link.is-active{color:#e9fff0;background:#315b40;box-shadow:inset 3px 0 #8bd4a3}.sidebar-link svg{flex-shrink:0}.sidebar-group{margin-top:1rem}.sidebar-group>p{padding:0 .75rem;margin-bottom:.3rem;color:#9faebc;text-transform:uppercase;font-size:.62rem;font-weight:750;letter-spacing:.14em}.sidebar-bottom{border-top:1px solid #46515c;margin-top:1.5rem;padding:1rem .6rem 0;display:grid;gap:.75rem;font-size:.75rem;color:#b9c5cf}.sidebar-bottom .ui-button-primary{background:#82cea0;color:#102318}.sidebar-register{text-align:center;text-decoration:underline;text-underline-offset:.2rem}.platform-content{margin-left:15rem;min-width:0}.platform-topbar{height:4.6rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-inline:clamp(1rem,3vw,2.5rem);border-bottom:1px solid var(--app-border);background:var(--app-surface)}.topbar-caption{font-size:.85rem;font-weight:650}.topbar-caption>span{font-weight:400;color:var(--app-muted)}.topbar-login{font-size:.85rem;font-weight:700;color:var(--app-accent)}.platform-topbar .ui-menu-items{inset-inline-start:auto;inset-inline-end:0}.platform-main{width:min(100%,82rem);margin-inline:auto;padding:clamp(1.2rem,3vw,2.5rem);min-width:0;outline:none}.platform-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:1.2rem clamp(1.2rem,3vw,2.5rem);color:var(--app-muted);font-size:.75rem}.platform-footer a{text-decoration:underline;text-underline-offset:.2rem}.mobile-menu-button{display:none}.notification-link{position:relative;display:inline-flex;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;border-radius:.5rem}.notification-link:hover{background:var(--app-surface-muted)}.notification-link>span{position:absolute;top:0;right:0;border-radius:1rem;background:var(--app-accent);color:var(--app-accent-text);padding:.05rem .3rem;font-size:.65rem}.shell-error,.home-error{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;background:var(--app-danger-bg);color:var(--app-danger);padding:1rem;border-radius:.5rem}.sidebar-scrim{display:none}.home-page{gap:2rem}.home-intro{max-width:42rem;color:var(--app-muted);margin-top:.8rem;line-height:1.7}.home-page .game-workspace{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);gap:clamp(1.25rem,3vw,2.5rem)}.home-board{min-width:0;max-width:38rem}.home-board-caption{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--app-muted);padding:0 .1rem .5rem}.home-board-caption .ui-button{min-height:2rem;padding:.35rem .5rem;font-size:.7rem}.home-board .chess-board-shell{inline-size:100%}.home-board>p{margin-top:.75rem}.home-actions{display:grid;gap:.8rem;padding-top:2.5rem}.home-action{display:flex;align-items:center;gap:1rem;padding:1.1rem;border:1px solid var(--app-border);border-radius:.85rem;background:var(--app-surface);box-shadow:var(--app-shadow)}.home-action>span:nth-child(2){flex:1;min-width:0}.home-action strong{display:block;font-size:clamp(1rem,1.4vw,1.2rem)}.home-action small{display:block;font-size:.8rem;color:var(--app-muted);margin-top:.2rem}.home-action-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;flex-shrink:0;border-radius:.7rem;background:var(--app-surface-muted);color:var(--app-accent)}.home-action-primary{background:var(--app-accent);border-color:var(--app-accent);color:var(--app-accent-text)}.home-action-primary .home-action-icon{background:#ffffff20;color:inherit}.home-action-primary small{color:inherit;opacity:.95}.home-action:hover{border-color:var(--app-accent);transform:translateY(-1px)}.home-local-link{display:flex;justify-content:space-between;padding:.75rem .3rem;color:var(--app-accent);font-size:.9rem;font-weight:650}.home-last-control{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;color:var(--app-muted);font-size:.8rem}.home-action-note{margin-top:.3rem;font-size:.75rem}.home-guest-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.home-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.home-card-value{font-size:1.1rem;font-weight:650}.ui-text-link{color:var(--app-accent);font-size:.88rem;font-weight:700;text-decoration:underline;text-underline-offset:.25rem}.home-rating-list{display:grid;gap:.7rem}.home-rating-list>div{display:flex;justify-content:space-between;gap:.75rem;text-transform:capitalize}.home-rating-list small{display:block;font-size:.7rem;color:var(--app-muted);font-weight:400}.home-game-list{display:grid;gap:.5rem}.home-game-list>a{display:flex;justify-content:space-between;gap:1rem;padding-block:.75rem;border-bottom:1px solid var(--app-border);font-size:.85rem}.home-game-list small{display:block;color:var(--app-muted)}@media(max-width:1100px){.home-summary-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.platform-content{margin-left:0}.platform-sidebar{display:none;width:min(19rem,calc(100vw - 3rem))}.platform-sidebar.is-open{display:flex}.sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:54;background:#10182099;width:100%;height:100%;border:0}.mobile-menu-button{display:inline-flex;padding:.4rem}.platform-topbar{height:4rem}.topbar-caption>span{display:none}}@media(max-width:700px){.home-page .game-workspace{grid-template-columns:minmax(0,1fr)}.home-actions{padding-top:0}.home-guest-notes{grid-template-columns:minmax(0,1fr)}.home-game-list>a{flex-wrap:wrap}.platform-topbar .ui-row{gap:.25rem}.topbar-caption{font-size:.75rem}.platform-topbar .ui-menu summary{max-width:8rem;overflow-wrap:anywhere;font-size:.8rem}}.chess-board-shell{position:relative;inline-size:min(100%,42rem);container-type:inline-size}.chess-board-grid{box-shadow:0 4px 16px #1018201f;border-width:1px;border-radius:.4rem}.chess-square-content{position:absolute;top:5%;right:5%;bottom:5%;left:5%;display:grid;place-items:center;font-size:inherit;pointer-events:none}.chess-piece-art{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.chess-square-legal:after{width:24%;height:24%;border:0;background:var(--chess-legal);opacity:.45;pointer-events:none}.chess-square-legal:has(.chess-piece-art):after{width:88%;height:88%;border:.3rem solid var(--chess-legal);background:transparent}.chess-square-selected{box-shadow:inset 0 0 0 4px var(--chess-selected)}.chess-square-annotated{box-shadow:inset 0 0 0 5px #d78f24}.chess-square-check{background-image:radial-gradient(circle,#ec665988 0%,transparent 78%);box-shadow:inset 0 0 0 4px var(--chess-check)}.chess-square-dark .chess-coordinate{color:var(--chess-coordinate-dark, #ffffff)}.chess-square-light .chess-coordinate{color:var(--chess-coordinate-light, #000000)}.board-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.4rem;color:var(--app-muted);font-size:.75rem}.board-toolbar button{min-height:2rem;display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .5rem;border:1px solid var(--app-border);border-radius:.4rem;background:var(--app-surface);color:var(--app-text)}.chess-arrow-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;color:#cb8128;opacity:.85;z-index:3}.chess-promotion-choice .chess-piece-art{width:2.7rem;height:2.7rem;flex-shrink:0}.captured-piece-row{display:flex;flex-wrap:wrap;align-items:center;min-height:1.75rem;gap:.1rem}.captured-piece-row>span{width:1.6rem;height:1.6rem}.material-balance{color:var(--app-accent);font-size:.8rem}.local-game-layout,.chess-layout-grid{grid-template-columns:minmax(0,1fr) minmax(16rem,20rem)}.local-board-column{display:grid;gap:.7rem}.local-board-column .chess-player-card{padding:.7rem 1rem}.local-board-column .chess-clock{min-width:6rem}.local-board-column .chess-status{padding:.6rem .9rem;font-size:.85rem}.chess-dialog{max-height:calc(100svh - 2rem);overflow:auto}.chess-layout-fullscreen{z-index:80}.chess-layout-grid>.chess-side-panel-top{grid-column:1;grid-row:1}.chess-layout-grid>.chess-board-column{grid-column:1;grid-row:2}.chess-layout-grid>.chess-side-panel:not(.chess-side-panel-top){grid-column:2;grid-row:1 / span 2}.chess-board-shell.coordinates-outside{padding-left:1.2rem;padding-bottom:1.2rem}.board-ranks-outside{position:absolute;left:0;top:0;bottom:1.2rem;display:grid;grid-template-rows:repeat(8,1fr);width:1.2rem;color:var(--app-muted);font-size:.65rem}.board-files-outside{position:absolute;bottom:0;right:0;left:1.2rem;display:grid;grid-template-columns:repeat(8,1fr);height:1.2rem;color:var(--app-muted);font-size:.65rem}.board-ranks-outside span,.board-files-outside span{display:grid;place-items:center}@media(max-width:1100px){.local-game-layout,.chess-layout-grid{grid-template-columns:minmax(0,1fr)}.chess-layout-grid>.chess-side-panel-top,.chess-layout-grid>.chess-board-column,.chess-layout-grid>.chess-side-panel:not(.chess-side-panel-top){grid-column:auto;grid-row:auto}.local-board-column .chess-player-card{flex-direction:row;align-items:center}}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[0\.85fr_1\.15fr\]{grid-template-columns:.85fr 1.15fr}.lg\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[minmax\(0\,1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.lg\:grid-cols-\[minmax\(280px\,520px\)_1fr\]{grid-template-columns:minmax(280px,520px) 1fr}.lg\:grid-cols-\[minmax\(280px\,560px\)_1fr\]{grid-template-columns:minmax(280px,560px) 1fr}}
