@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.rounded{border-radius:.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}}:root,[data-theme=ivory]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f5f3ec;--foreground:#182b25;--surface:#fffef9;--muted:#596b5f;--line:#d9ded4;--brand:#254c37;--link:#215640;--accent:#b18a35;--board-light:#ede9db;--board-dark:#84967b;--board-ink:#253d2d;--chart-clean:#1f8a50;--chart-support:#c5ccc1;--chart-track:#e7ebe3;--chart-hover:#18402b0d;--success-bg:#edf5e9;--error-bg:#fff0ed;--error-ink:#a12b25}[data-theme=midnight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#131f1b;--foreground:#e9ede4;--surface:#1c2c25;--muted:#afbeaf;--line:#344b3e;--brand:#39694c;--link:#c0d4ac;--accent:#d4b266;--board-light:#aeb6a2;--board-dark:#4c6857;--board-ink:#15251d;--chart-clean:#35a465;--chart-support:#4b5a51;--chart-track:#2a3b32;--chart-hover:#ffffff0f;--success-bg:#243c2a;--error-bg:#432921;--error-ink:#ffb7a5}[data-theme=contrast]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--foreground:#080e0a;--surface:#fff;--muted:#263b2d;--line:#324736;--brand:#153b25;--link:#153b25;--accent:#785300;--board-light:#fff;--board-dark:#66836a;--board-ink:#000;--chart-clean:#11713f;--chart-support:#8a948a;--chart-track:#dde3dd;--chart-hover:#0000000d;--success-bg:#e0f3da;--error-bg:#ffe5df;--error-ink:#8d170e}*{box-sizing:border-box}body{background:var(--background);color:var(--foreground);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:var(--link);text-underline-offset:4px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:1150px;margin:0 auto;padding:28px 32px;display:flex}.brand{letter-spacing:-1px;font-size:24px;font-weight:750;text-decoration:none}.site-header>span{color:var(--muted);font-size:14px}main{width:100%;max-width:1150px;margin:0 auto;padding:70px 32px}.home-grid{grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;min-height:60vh;display:grid}h1,h2{letter-spacing:-1px;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-weight:700;line-height:1.15}h1{margin:14px 0 24px;font-size:clamp(36px,5vw,64px)}h2{margin:14px 0 22px;font-size:30px}p{margin:14px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--muted);font-size:11px;font-weight:700}.lead{max-width:450px;color:var(--muted);font-size:19px}.chess-mark{letter-spacing:10px;color:#7c8f72;margin-top:34px;font-size:64px}.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:36px;box-shadow:0 15px 45px #182b2507}.auth-card{max-width:500px;margin:0 auto}.auth-card h1{font-size:34px}.actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px;display:flex}button,.button{background:var(--brand);border:1px solid var(--brand);color:#fff;cursor:pointer;border-radius:8px;padding:12px 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#183b28}button:disabled{opacity:.6;cursor:wait}label{margin:18px 0;font-size:14px;font-weight:600;display:block}input{border:1px solid var(--line);width:100%;font:inherit;background:var(--surface);color:var(--foreground);border-radius:7px;margin-top:7px;padding:11px 12px;display:block}:focus-visible{outline-offset:3px;outline:3px solid #b18a35}.hint{color:var(--muted);font-size:13px}.error{color:var(--error-ink);background:var(--error-bg);overflow-wrap:anywhere;border-radius:6px;padding:12px}.success{color:var(--link);background:var(--success-bg);border-radius:6px;padding:12px}.auth-links{flex-wrap:wrap;gap:12px 20px;margin-top:28px;font-size:13px;display:flex}@media (max-width:760px){main{padding:35px 20px}.site-header{padding:20px}.home-grid{grid-template-columns:1fr;gap:25px}.chess-mark{display:none}.card{padding:26px}}.experience-shell{background:var(--background);min-height:100vh;color:var(--foreground);transition:background-color .18s,color .18s}.site-header nav{align-items:center;gap:24px;font-size:14px;display:flex}.site-header nav a{text-decoration:none}.studio h1{letter-spacing:-1.8px;margin:6px 0 12px;font-size:clamp(32px,4vw,48px);font-weight:500}main:has(.studio){padding-top:32px}.studio-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px;display:flex}.studio-heading p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px}.studio-badge{white-space:nowrap;color:var(--muted);border:1px solid var(--line);border-radius:100px;padding:7px 13px;font-size:11px}.studio-grid{grid-template-columns:minmax(0,1.45fr) minmax(290px,1fr);align-items:start;gap:38px;display:grid}.board-column{min-width:0}.board-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex}.turn-pill{color:var(--foreground);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.color-dot{border:1px solid #667c68;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.dot-w{background:#fff9e9}.dot-b{background:#24372c}.board-scene{isolation:isolate;position:relative}.board-frame{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:9px;box-shadow:0 16px 36px #10291b12}.chessboard{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:3px;grid-template-columns:repeat(8,minmax(0,1fr));display:grid;position:relative;overflow:hidden}.board-square{aspect-ratio:1;width:100%;min-width:0;height:100%;color:var(--board-ink);border:0;border-radius:0;padding:0;display:block;position:relative}.board-square.light-square,.board-square.light-square:hover{background:var(--board-light)}.board-square.dark-square,.board-square.dark-square:hover{background:var(--board-dark)}.board-square.last-square{box-shadow:inset 0 0 0 100px #ddbd522c}.board-square.selected-square{box-shadow:inset 0 0 0 100px #ebc45360}.selected-square:after{content:"";border:2px solid #8b6615;border-radius:2px;position:absolute;inset:3px}.board-square.checking-square{box-shadow:inset 0 0 22px 8px #c14133a6}.board-square:focus-visible{outline-offset:-4px;z-index:3;outline:3px solid #e2ab26}.rank-coordinate,.file-coordinate{opacity:.85;z-index:1;font-size:clamp(9px,1vw,12px);font-weight:700;line-height:1;position:absolute}.rank-coordinate{top:4px;left:4px}.file-coordinate{bottom:3px;right:4px}.piece-layer{pointer-events:none;z-index:2;position:absolute;inset:0}.board-piece{will-change:transform;width:12.5%;height:12.5%;transition:transform .2s cubic-bezier(.2,.6,.2,1);position:absolute;top:0;left:0}.movable-square{cursor:grab}.chessboard.is-dragging .board-square{cursor:grabbing}.board-piece.lifted-piece{opacity:0}.board-piece.drag-arrival{transition:none}.dragged-piece{z-index:50;pointer-events:none;will-change:transform;filter:drop-shadow(0 8px 5px #10291b45);position:fixed;top:0;left:0}.drop-target-square:before{content:"";border:3px solid var(--accent);border-radius:2px;position:absolute;inset:2px}.chess-piece{filter:drop-shadow(0 2px 1px #13261b30);width:100%;height:100%;display:block;overflow:visible}.piece-w{fill:#fff8e7;stroke:#35483a}.piece-b{fill:#24372e;stroke:#e3e1d3}.piece-detail{fill:none}.piece-w .piece-eye{fill:#35483a;stroke:none}.piece-b .piece-eye{fill:#e3e1d3;stroke:none}.piece-shadow{fill:none;opacity:.25;stroke-width:4px}.move-target{background:#142e2970;border-radius:50%;width:22%;height:22%;position:absolute;top:39%;left:39%}.capture-target{border:4px solid #142e2980;border-radius:50%;position:absolute;inset:7%}.captured-tray{min-height:78px;padding:12px 10px 8px}.tray-heading{color:var(--muted);letter-spacing:.3px;align-items:center;gap:7px;font-size:10px;display:flex}.tray-heading .color-dot{width:8px;height:8px}.tray-count{font-variant-numeric:tabular-nums;margin-left:auto}.tray-pieces{height:34px;margin-top:3px;position:relative}.tray-piece{width:6.6667%;height:34px;transition:left .2s;position:absolute;top:0}.tray-piece>span{height:100%;display:block}.tray-empty{color:var(--muted);opacity:.7;font-size:11px;line-height:30px}.waiting-to-reform{opacity:0}.reformed-piece{animation:.12s ease-out both tray-reform}.board-controls{gap:8px;margin-top:4px;display:flex}button.secondary-button,button.secondary-button:hover{color:var(--foreground);background:var(--surface);border:1px solid var(--line);padding:8px 13px;font-size:12px;font-weight:500}button.secondary-button:hover{border-color:var(--accent)}.board-announcement{min-height:44px;color:var(--muted);margin-top:15px;font-size:12px}.studio-sidebar{flex-direction:column;gap:22px;min-width:0;padding-top:28px;display:flex}.tutor-preview{padding:26px}.tutor-heading{align-items:flex-start;gap:12px;display:flex}.tutor-monogram{border:1px solid var(--line);text-align:center;width:42px;height:42px;color:var(--link);border-radius:9px;flex-shrink:0;font-size:24px;line-height:40px}.tutor-heading .eyebrow{letter-spacing:1.4px;margin:0 0 7px;font-size:9px}.tutor-preview h2{margin:0;font-size:28px;font-weight:500;line-height:1.15}.tutor-preview>p{color:var(--muted);margin-top:20px;font-size:14px}.capture-preview-button{text-align:left;justify-content:space-between;align-items:center;width:100%;margin-top:22px;font-size:13px;display:flex}.tutor-preview>.hint{font-size:11px}.study-principle{border-top:1px solid var(--line);align-items:center;gap:14px;margin-top:22px;padding-top:18px;display:flex}.study-principle>span{color:var(--accent);font-family:Georgia,serif;font-size:26px}.study-principle p{color:var(--muted);margin:0;font-size:11px}.study-principle strong{color:var(--foreground);font-weight:500}.experience-settings,.position-tools{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:15px 18px}summary{cursor:pointer;font-size:13px;font-weight:600}summary::marker{color:var(--muted)}.experience-settings summary span{float:right;color:var(--muted)}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px 16px;margin-top:16px;display:grid}.settings-grid label{margin:4px 0;font-size:11px;font-weight:500}select{width:100%;font:inherit;color:var(--foreground);border:1px solid var(--line);background:var(--surface);border-radius:6px;margin-top:5px;padding:8px 6px;display:block}.settings-grid input[type=range]{accent-color:var(--brand);height:24px;padding:0}.settings-grid label.toggle{align-items:center;gap:8px;display:flex}.toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand);margin:0;display:inline-block}.settings-note{grid-column:1/-1;margin:5px 0 0;font-size:10px}.move-journal{padding:0 4px}.section-heading{justify-content:space-between;align-items:center;display:flex}.section-heading h2{margin:0;font-size:19px;font-weight:500}.section-heading>span{color:var(--muted);font-size:10px}.move-journal ol{flex-wrap:wrap;gap:6px;max-height:130px;margin:12px 0 0;padding:0;list-style:none;display:flex;overflow:auto}.move-journal li{background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:7px 10px;font:12px ui-monospace,monospace}.move-journal li span{color:var(--muted);padding-right:5px}.position-tools .actions{gap:8px;margin:15px 0 0}.position-tools label{font-size:11px}.position-tools input{min-width:0;font:11px ui-monospace,monospace}.promotion-picker{border:1px solid var(--accent);background:var(--surface);border-radius:10px;padding:14px}.promotion-picker p{margin:0 0 8px;font-size:13px}.promotion-picker>div{align-items:center;gap:8px;display:flex}.promotion-picker button:not(.secondary-button){border:1px solid var(--line);background:var(--background);width:54px;height:54px;padding:2px}.capture-flight{z-index:20;pointer-events:none;transform-origin:50%;animation:capture-flight var(--flight-duration) cubic-bezier(.3,.1,.25,1) both;position:absolute}.dissolving-piece{animation:.19s ease-in both disintegrate;position:absolute;inset:0}.smoke-w{--smoke:#f8efdc;--smoke-edge:#aa9d7f;--fragment:#fff6df}.smoke-b{--smoke:#34483f;--smoke-edge:#abb9ae;--fragment:#304638}.smoke-cloud{animation:smoke-bloom var(--flight-duration) ease-out both;filter:drop-shadow(0 0 2px var(--smoke-edge));position:absolute;inset:18%}.smoke-cloud span{background:radial-gradient(ellipse, var(--smoke) 20%, transparent 72%);filter:blur(3px);opacity:.85;border-radius:50%;width:100%;height:85%;position:absolute}.smoke-cloud span:nth-child(2){width:90%;top:-10%;left:-28%}.smoke-cloud span:nth-child(3){top:16%;right:-28%}.smoke-cloud span:nth-child(4){width:75%;top:30%;left:-10%}.smoke-cloud span:nth-child(5){width:70%;top:-30%;left:18%}.piece-fragments{position:absolute;inset:0}.piece-fragments i{border:1px solid var(--smoke-edge);background:var(--fragment);width:6%;height:7%;animation:fragment-scatter .32s ease-out var(--delay) both;border-radius:2px;position:absolute;top:44%;left:47%}.flight-subtle .smoke-cloud,.flight-subtle .piece-fragments{display:none}.flight-subtle .dissolving-piece{animation-duration:.24s}@keyframes disintegrate{0%,20%{opacity:1;filter:blur()}to{opacity:0;filter:blur(5px);transform:scale(.8)}}@keyframes fragment-scatter{0%{opacity:0;transform:rotate(var(--angle)) translateX(0) scale(1)}20%{opacity:.9}to{opacity:0;transform:rotate(var(--angle)) translateX(var(--scatter)) scale(.2);filter:blur(2px)}}@keyframes smoke-bloom{0%{opacity:0;transform:scale(.3)rotate(-12deg)}25%{opacity:.9;transform:scale(1.2)}65%{opacity:.8;transform:scale(1.5)rotate(20deg)}to{opacity:0;transform:scale(.4)rotate(50deg)}}@keyframes capture-flight{0%,18%{opacity:1;transform:translate(-50%,-50%)scale(1)}65%{transform:translate(calc(-50% + var(--bend-x)), calc(-50% + var(--bend-y))) scale(.75);opacity:1}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(var(--end-scale));opacity:0}}@keyframes tray-reform{0%{opacity:0;filter:blur(2px);transform:scale(.65)}to{opacity:1;filter:blur();transform:scale(1)}}[data-motion=minimal] .board-piece,[data-motion=minimal] .tray-piece,[data-motion=minimal].experience-shell{transition:none}[data-motion=minimal] .capture-flight{display:none}[data-motion=minimal] .reformed-piece{animation:none}[data-theme=contrast] .board-frame{border-width:2px}[data-theme=contrast] .chess-piece{filter:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}.capture-flight{display:none}}@media (max-width:850px){.studio-grid{grid-template-columns:minmax(0,1fr);gap:12px}.board-column{width:100%;max-width:600px;margin:0 auto}.studio-sidebar{padding-top:0}.studio-heading{align-items:flex-start}.studio-badge{display:none}.studio-sidebar{width:100%;max-width:600px;margin:0 auto}}@media (max-width:430px){.site-header{padding:17px}.site-header nav{gap:15px;font-size:12px}.brand{font-size:22px}main:has(.studio){padding:22px 14px}.board-frame{padding:5px}.captured-tray{min-height:70px;padding-left:7px;padding-right:7px}.tray-pieces,.tray-piece{height:30px}.studio-heading{margin-bottom:20px}.board-meta{font-size:9px}.turn-pill{font-size:12px}.promotion-picker button:not(.secondary-button){width:44px;height:44px}.promotion-picker>div{gap:4px}}:is(main:has(.lesson-page),main:has(.lessons-index)){padding-top:32px}.lesson-breadcrumb{color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;font-size:11px;display:flex}.lesson-breadcrumb a{text-decoration:none}.lesson-page h1,.lessons-index h1{letter-spacing:-1.5px;font-size:clamp(34px,4vw,48px);font-weight:500}.lesson-progress{gap:7px;margin:24px 0;display:flex}.lesson-progress>span{background:var(--line);border-radius:4px;flex:1;height:4px}.lesson-progress .current-step{background:var(--accent)}.lesson-progress .completed-step{background:var(--brand)}.lesson-sidebar{padding-top:28px}.lesson-tutor{padding:28px}.lesson-step-meta{color:var(--muted);text-transform:uppercase;letter-spacing:1px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:17px;font-size:10px;display:flex}.lesson-tutor h2{margin:0 0 20px;font-size:29px;font-weight:500}.lesson-tutor>p{color:var(--muted);font-size:14px}.lesson-tutor>.lesson-prompt{color:var(--foreground);border-top:1px solid var(--line);margin:22px 0;padding-top:18px;font-weight:600}.lesson-feedback{border-radius:8px;margin:16px 0;padding:15px;font-size:13px}.lesson-feedback p{margin:7px 0 0}.lesson-feedback strong{font-weight:600}.retry-feedback{border:1px solid var(--accent);color:var(--foreground);background:var(--background)}.lesson-hints{color:var(--muted);padding-left:20px;font-size:12px}.lesson-hints li{margin:9px 0}.threat-check{border:1px solid var(--accent);border-radius:8px;margin:16px 0;padding:15px;font-size:13px}.threat-check .eyebrow{margin:0 0 6px}.threat-check p{margin:0 0 12px}.lesson-game-link{color:var(--link);margin-top:4px;font-size:12px;display:inline-block}.lesson-continue{justify-content:space-between;width:100%;margin-top:22px;font-size:14px;display:flex}.lesson-tutor>.hint{margin-bottom:0;font-size:11px}.lesson-source{color:var(--muted);padding:0 5px}.lesson-source summary,.lesson-source p{font-size:11px}.lesson-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin-top:24px;padding-top:25px;font-size:11px;display:flex}button.text-button,button.text-button:hover{color:var(--link);text-underline-offset:4px;background:0 0;border:0;border-radius:0;padding:4px 0;font-size:11px;font-weight:500;text-decoration:underline}.lesson-recap{max-width:760px;margin:35px auto;padding:38px}.lesson-recap h2{font-size:36px;font-weight:500}.lesson-recap>p{color:var(--muted)}.lesson-recap .recap-question{color:var(--foreground);font-family:Georgia,serif;font-size:24px}.recap-stat{border:1px solid var(--line);border-radius:9px;align-items:center;gap:20px;margin:28px 0;padding:20px;display:flex}.recap-stat>strong{color:var(--link);white-space:nowrap;font:34px Georgia,serif}.recap-stat>span{color:var(--muted);font-size:13px}.recap-list{margin:25px 0;padding:0;list-style:none}.recap-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;padding:12px 0;font-size:12px;display:flex}.recap-list li span:last-child{color:var(--muted);text-align:right}.lesson-mobile-prompt{display:none}.lessons-index{max-width:900px;margin:0 auto}.lessons-index>.lead{max-width:610px}.featured-lesson{gap:28px;margin:35px 0 45px;padding:32px;display:flex}.lesson-number{color:var(--accent);font:32px Georgia,serif}.featured-lesson .eyebrow{margin-top:2px}.featured-lesson h2{margin:8px 0 18px;font-size:32px;font-weight:500}.featured-lesson p{color:var(--muted);font-size:14px}.featured-lesson .hint{font-size:11px}.featured-lesson .button{margin-top:12px}.personal-lesson{border-color:var(--accent);gap:28px;margin:35px 0 45px;padding:32px;display:flex}.personal-lesson h2{margin:8px 0 18px;font-size:32px;font-weight:500}.personal-lesson p{color:var(--muted)}.index-section{margin:48px 0 0;font:500 24px Georgia,serif}.line-entry{border:1px solid var(--line);border-radius:8px;margin:16px 0;padding:15px;font-size:13px}.line-entry .eyebrow{margin:0 0 8px}.line-moves{margin:0 0 12px;font-family:Georgia,serif;font-size:16px}.line-entry .toggle{color:var(--muted);align-items:center;gap:8px;margin:0 0 12px;font-size:12px;display:flex}.lesson-alternate{color:var(--link);margin-left:auto;font-size:11px}.study-list a{color:var(--foreground)}.study-badge{text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin-left:10px;font-size:10px}.save-pending{border:1px dashed var(--line);background:var(--surface);color:var(--muted);border-radius:8px;margin:14px 0 0;padding:8px 12px;font-size:13px}.resume-note{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 0;padding:10px 14px;font-size:13px;display:flex}.nav-resume{border:1px solid var(--line);background:var(--background);margin:4px 0;font-size:12px}.nav-resume>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nav-resume-step{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.resume-card{border-color:var(--accent)}.op-drag-ghost{z-index:60;pointer-events:none;filter:drop-shadow(0 8px 10px #0005);position:fixed;top:0;left:0}.op-piece.is-lifted{opacity:.3}.op-board.is-free .board-square{cursor:grab}.board-square.hl-weak{box-shadow:inset 0 0 0 100px #e6a5204d,inset 0 0 0 2px #c9861a}.board-square.hl-danger{box-shadow:inset 0 0 0 100px #d6403a4d,inset 0 0 0 2px #b8322c}.board-notice{min-height:1.4em;color:var(--error-ink);margin:6px 2px 0;font-size:12px}.review-page{max-width:900px;margin:0 auto}.review-stats{margin:28px 0}.planned-lessons{margin-top:15px}.planned-lesson{border-bottom:1px solid var(--line);gap:25px;padding:24px 5px;display:flex}.planned-lesson h3{margin:0 0 6px;font-family:Georgia,serif;font-size:21px;font-weight:500}.planned-lesson p{color:var(--muted);margin:0 0 8px;font-size:13px}.planned-label{color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;font-size:10px}@media (max-width:850px){.lesson-mobile-prompt{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:14px 18px;display:block}.lesson-mobile-prompt>span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:10px}.lesson-mobile-prompt>p{margin:6px 0 0;font-size:13px}.lesson-sidebar{padding-top:0}}@media (max-width:430px){.site-header nav{gap:12px;font-size:11px}.lesson-breadcrumb{gap:12px;font-size:10px}.lesson-recap{padding:24px}.lesson-recap h2{font-size:29px}.recap-stat{gap:14px;padding:15px}.recap-list li{flex-direction:column;gap:4px}.recap-list li span:last-child{text-align:left}.featured-lesson{gap:18px;padding:24px}.lesson-footer{align-items:flex-start}.lesson-footer>span{max-width:210px}}[data-board=green]{--board-light:#eeeed2;--board-dark:#769656}[data-board=wood]{--board-light:#f0d9b5;--board-dark:#b58863}[data-board=blue]{--board-light:#dee3e6;--board-dark:#8ca2ad}[data-board=slate]{--board-light:#d9dcdf;--board-dark:#7d8691}[data-board=coral]{--board-light:#f4e4d4;--board-dark:#d08b6c}[data-pieces=flat] .chess-piece{filter:none}[data-pieces=flat] .piece-detail,[data-pieces=flat] .piece-shadow{display:none}[data-pieces=flat] .chess-piece g{stroke-width:2.4px}[data-pieces=print] .chess-piece{filter:none}[data-pieces=print] .piece-w{fill:#fff;stroke:#111}[data-pieces=print] .piece-b{fill:#111;stroke:#111}[data-pieces=print] .piece-b .piece-detail{stroke:#fff}[data-pieces=print] .piece-b .piece-eye{fill:#fff}[data-pieces=print] .piece-shadow{display:none}.royal-piece{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}[data-pieces=royal] .smoke-w{--smoke:#7aa6e6;--smoke-edge:#2a5bb0;--fragment:#f1e4c4}[data-pieces=royal] .smoke-b{--smoke:#d23b33;--smoke-edge:#5c0c0c;--fragment:#232323}[data-pieces=bold] .piece-w{fill:#fff;stroke:#000}[data-pieces=bold] .piece-b{fill:#000;stroke:#fff}[data-pieces=bold] .chess-piece g{stroke-width:4.4px}[data-pieces=bold] .chess-piece{filter:drop-shadow(0 1px #0008)}.app-shell{grid-template-rows:60px 1fr;grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.topbar{z-index:30;background:var(--surface);border-bottom:1px solid var(--line);grid-column:1/-1;align-items:center;gap:16px;height:60px;padding:0 24px;display:flex;position:sticky;top:0}.topbar .brand{font-size:22px}.menu-button{display:none}.sidebar-column{border-right:1px solid var(--line);background:var(--surface);height:calc(100vh - 60px);position:sticky;top:60px;overflow-y:auto}.sidebar{flex-direction:column;gap:1px;padding:16px 12px 40px;font-size:13px;display:flex}.nav-link{color:var(--foreground);border-radius:7px;align-items:center;gap:8px;padding:7px 10px;text-decoration:none;display:flex}.nav-link:hover{background:var(--background)}.nav-link[aria-current=page]{background:var(--background);box-shadow:inset 3px 0 0 var(--brand);font-weight:650}.nav-group{letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:18px 10px 6px;font-size:10px}.nav-group a{color:inherit;text-decoration:none}.nav-section summary{cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:7px 10px;list-style:none;display:flex}.nav-section summary::-webkit-details-marker{display:none}.nav-section summary:before{content:"▸";color:var(--muted);font-size:9px}.nav-section[open] summary:before{content:"▾"}.nav-section summary>span:first-of-type{flex:1}.nav-section summary:hover{background:var(--background)}.nav-section .nav-link{padding-left:24px;font-size:12px}.nav-number{color:var(--muted);font-variant-numeric:tabular-nums;min-width:18px;font-size:10px}.nav-dot{border:1.5px solid var(--line);border-radius:50%;flex:none;width:8px;height:8px;margin-left:auto}.nav-dot.started{border-color:var(--chart-clean);background:linear-gradient(90deg, var(--chart-clean) 50%, transparent 50%)}.nav-dot.done{background:var(--chart-clean);border-color:var(--chart-clean)}.nav-progress{background:var(--chart-track);border-radius:4px;flex:none;width:44px;height:4px;overflow:hidden}.nav-progress>span{background:var(--chart-clean);border-radius:4px;height:100%;display:block}.nav-badge{background:var(--accent);color:var(--surface);border-radius:10px;margin-left:auto;padding:0 7px;font-size:10px;font-weight:700}.app-shell>main{width:100%;max-width:1180px;margin:0;padding:36px 40px 70px}.user-menu,.topbar-actions,.user-placeholder{margin-left:auto}.user-menu{position:relative}.topbar-actions{align-items:center;gap:16px;font-size:13px;display:flex}.topbar-actions .button{padding:7px 14px}.user-placeholder{width:34px;height:34px}.avatar-button,.avatar-button:hover{color:var(--foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:2px;display:flex}.avatar{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:grid}.avatar-caret{color:var(--muted);font-size:10px}.user-dropdown{background:var(--surface);border:1px solid var(--line);z-index:40;border-radius:10px;flex-direction:column;min-width:240px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #0002}.user-dropdown a,.user-dropdown button{text-align:left;color:var(--foreground);background:0 0;border:0;border-radius:7px;padding:9px 12px;font-size:13px;font-weight:400;text-decoration:none}.user-dropdown a:hover,.user-dropdown button:hover,.user-dropdown a:focus-visible,.user-dropdown button:focus-visible{background:var(--background);color:var(--foreground)}.user-email{color:var(--muted);border-bottom:1px solid var(--line);overflow-wrap:anywhere;margin:0 0 6px;padding:6px 12px 10px;font-size:12px}.user-email strong{color:var(--foreground);font-weight:600}@media (max-width:900px){.app-shell{grid-template-columns:minmax(0,1fr)}.menu-button,.menu-button:hover{width:38px;height:38px;color:var(--foreground);border:1px solid var(--line);background:0 0;border-radius:8px;place-items:center;padding:0;font-size:18px;display:inline-grid}.sidebar-column{z-index:35;visibility:hidden;width:min(300px,86vw);height:auto;transition:transform .2s,visibility .2s;position:fixed;top:60px;bottom:0;left:0;transform:translate(-100%)}.drawer-open .sidebar-column{visibility:visible;transform:none}.drawer-scrim,.drawer-scrim:hover{z-index:34;background:#0006;border:0;border-radius:0;padding:0;position:fixed;inset:60px 0 0}.app-shell>main{padding:24px 16px 60px}.topbar{gap:10px;padding:0 14px}}.dashboard{flex-direction:column;gap:20px;display:flex}.dashboard h1{letter-spacing:-1px;margin:2px 0;font:500 40px Georgia,serif}.dashboard-head .hint{margin:0}.dashboard-hero{padding:34px}.dashboard-hero .lead{max-width:640px}.next-row{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.next-card{color:var(--foreground);flex-direction:column;gap:4px;padding:18px 20px;text-decoration:none;display:flex}.next-card:hover{border-color:var(--brand)}.next-card .eyebrow{margin:0}.next-card strong{font:500 19px Georgia,serif}.next-card span:last-child{color:var(--link);font-size:12px}.stat-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.stat-label{color:var(--muted);margin:0;font-size:12px}.stat-value{font-variant-numeric:tabular-nums;margin:4px 0 8px;font-size:32px;font-weight:650;line-height:1.1}.stat-detail{color:var(--muted);margin:6px 0 0;font-size:11px}.meter{background:var(--chart-track);border-radius:6px;height:6px;display:block;overflow:hidden}.meter>span{background:var(--chart-clean);border-radius:6px;height:100%;display:block}.chart-row{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px;display:grid}.chart-card{margin:0;padding:20px 22px}.chart-card h2{margin:0;font:500 20px Georgia,serif}.chart-card figcaption p{color:var(--muted);margin:2px 0 10px;font-size:12px}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin:0 0 8px;padding:0;font-size:11px;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:flex}.key{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.key-clean{background:var(--chart-clean)}.key-support{background:var(--chart-support)}.chart-frame{position:relative}.chart-frame svg{width:100%;height:auto;display:block;overflow:visible}.grid-line{stroke:var(--line);stroke-width:1px}.axis-text{fill:var(--muted);font-size:10px}.mark-clean{fill:var(--chart-clean)}.mark-support{fill:var(--chart-support)}.hit-area{fill:#0000}.chart-frame g[tabindex]{outline:none}.chart-frame g:hover .hit-area,.chart-frame g:focus .hit-area{fill:var(--chart-hover)}.chart-tooltip{background:var(--surface);border:1px solid var(--line);pointer-events:none;white-space:nowrap;z-index:2;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;font-size:11px;display:flex;position:absolute;top:-6px;transform:translate(-50%,-100%);box-shadow:0 6px 18px #0002}.chart-tooltip span{color:var(--muted);align-items:center;gap:6px;display:flex}.chart-tooltip.inline{top:-8px;left:auto;right:40px;transform:translateY(-100%)}.chart-table summary{color:var(--link);cursor:pointer;margin-top:8px;font-size:11px}.chart-table table{border-collapse:collapse;width:100%;margin-top:8px;font-size:12px}.chart-table th,.chart-table td{text-align:left;border-bottom:1px solid var(--line);padding:4px 6px}.section-bars{flex-direction:column;gap:14px;margin:6px 0 0;padding:0;list-style:none;display:flex}.section-bars li{border-radius:6px;outline:none;grid-template-columns:118px 1fr 40px;align-items:center;gap:10px;font-size:12px;display:grid;position:relative}.section-bars li:focus-visible{box-shadow:0 0 0 2px var(--accent)}.bar-track{background:var(--chart-track);border-radius:0 4px 4px 0;height:12px;overflow:hidden}.bar-fill{background:var(--chart-clean);border-radius:0 4px 4px 0;height:100%;display:block}.bar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.course-map .index-section{margin-top:12px}.course-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;margin-top:12px;display:grid}.course-section{padding:18px 20px}.course-section-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.course-section h3{margin:0 0 8px;font:500 18px Georgia,serif}.course-section-head span{color:var(--muted);font-size:11px}.course-section ol{margin:0;padding:0;list-style:none}.course-section li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:6px 0;font-size:12px;display:flex}.course-section li:last-child{border-bottom:0}.course-section li a{color:var(--foreground);flex:1;gap:6px;text-decoration:none;display:flex}.course-section li a:hover{color:var(--link)}.mini-track{background:var(--chart-track);border-radius:4px;flex:none;width:54px;height:4px;overflow:hidden}.mini-track>span{background:var(--chart-clean);height:100%;display:block}@media (max-width:900px){.chart-row{grid-template-columns:minmax(0,1fr)}.section-bars li{grid-template-columns:96px 1fr 36px}.dashboard h1{font-size:32px}}.settings-page{flex-direction:column;gap:18px;max-width:880px;display:flex}.settings-page h1{margin:0 0 4px;font:500 40px Georgia,serif}.settings-section{padding:24px 26px}.settings-section h2{margin:0 0 14px;font:500 22px Georgia,serif}.settings-section .experience-settings{margin-top:14px}.settings-board{grid-template-columns:208px minmax(0,1fr);align-items:start;gap:24px;display:grid}.preview-board{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(4,1fr);width:208px;display:grid;overflow:hidden}.preview-board>div{aspect-ratio:1;padding:7%}.preview-light{background:var(--board-light)}.preview-dark{background:var(--board-dark)}.settings-section fieldset{border:0;margin:0 0 16px;padding:0}.settings-section legend{margin-bottom:8px;font-size:12px;font-weight:650}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px;display:grid}.choice{text-align:left;border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;margin:0;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.3;display:flex}.choice.chosen{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.choice input{accent-color:var(--brand);flex:none;width:auto;margin:0;padding:0}.swatch{border:1px solid var(--line);border-radius:4px;display:inline-flex;overflow:hidden}.swatch span{width:11px;height:18px}.swatch span:first-child{background:var(--sw-light,var(--board-light))}.swatch span:last-child{background:var(--sw-dark,var(--board-dark))}[data-board-swatch=green]{--sw-light:#eeeed2;--sw-dark:#769656}[data-board-swatch=wood]{--sw-light:#f0d9b5;--sw-dark:#b58863}[data-board-swatch=blue]{--sw-light:#dee3e6;--sw-dark:#8ca2ad}[data-board-swatch=slate]{--sw-light:#d9dcdf;--sw-dark:#7d8691}[data-board-swatch=coral]{--sw-light:#f4e4d4;--sw-dark:#d08b6c}.auth-embedded h3{margin:18px 0 8px;font-size:16px}.auth-embedded form{max-width:400px}@media (max-width:700px){.settings-board{grid-template-columns:minmax(0,1fr)}.settings-section{padding:20px}}:root{--arrow-best:#15803d;--arrow-played:#1d4ed8;--arrow-reply:#b91c1c;--arrow-threat:#dc2626;--arrow-line:#c2410c;--arrow-label-ink:#fff;--arrow-opacity:.78}[data-theme=midnight]{--arrow-best:#22a352;--arrow-played:#3b74f0;--arrow-reply:#e04444;--arrow-threat:#ef5350;--arrow-line:#f08a3c;--arrow-opacity:.82}[data-theme=contrast]{--arrow-best:#0b6b2f;--arrow-played:#0b3cbf;--arrow-reply:#9b1111;--arrow-threat:#c00;--arrow-line:#a33600;--arrow-opacity:.9}.board-arrows{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.board-arrow{--arrow:var(--arrow-best);opacity:var(--arrow-opacity)}.board-arrow line{stroke:var(--arrow);stroke-linecap:butt}.board-arrow polygon{fill:var(--arrow)}.arrow-played{--arrow:var(--arrow-played)}.arrow-reply{--arrow:var(--arrow-reply)}.arrow-threat{--arrow:var(--arrow-threat)}.arrow-line{--arrow:var(--arrow-line)}.arrow-label circle{fill:var(--arrow);stroke:var(--arrow-label-ink);stroke-width:.03px}.arrow-label text{fill:var(--arrow-label-ink);text-anchor:middle;font:700 .24px Arial,sans-serif}.arrow-key{vertical-align:middle;background:var(--arrow-best);border-radius:2px;width:18px;height:4px;margin-right:6px;display:inline-block}.arrow-key.played{background:var(--arrow-played)}.arrow-key.reply{background:var(--arrow-reply)}.arrow-key.threat{background:repeating-linear-gradient(90deg, var(--arrow-threat) 0 5px, transparent 5px 8px)}.arrow-key.line{background:var(--arrow-line)}.lesson-arrows-note{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:-6px 0 10px;font-size:11px;display:flex}.lesson-analysis-link{margin-top:4px;margin-right:14px;font-size:12px;display:inline-block}.public-shell>main{max-width:1180px;margin:0 auto;padding:40px 32px 80px}.public-shell .topbar{position:sticky}.landing{flex-direction:column;gap:34px;display:flex}.landing-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:40px;display:grid}.landing-copy h1{letter-spacing:-1.5px;margin:6px 0 16px;font:500 clamp(38px,5vw,60px)/1.05 Georgia,serif}.landing-copy .lead{max-width:540px;font-size:18px}.landing-board{gap:10px;margin:0;display:grid}.landing-board figcaption{color:var(--muted);font:italic 14px/1.5 Georgia,serif}.landing-steps ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:12px 0 0;padding:0;list-style:none;display:grid}.landing-steps li,.landing-features article{padding:20px 22px}.landing-steps h3,.landing-features h3{margin:6px 0;font:500 19px Georgia,serif}.landing-steps p,.landing-features p{color:var(--muted);margin:0;font-size:14px}.landing-step-number{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:14px;font-weight:700;display:inline-grid}.landing-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px;display:grid}.landing-cta{text-align:center;padding:30px 32px}.landing-cta h2{margin:0 0 8px;font:500 28px Georgia,serif}.landing-cta .actions{justify-content:center}@media (max-width:900px){.landing-hero,.landing-steps ol,.landing-features{grid-template-columns:minmax(0,1fr)}.public-shell>main{padding:24px 16px 60px}}.topbar-end{align-items:center;gap:14px;min-width:0;margin-left:auto;display:flex}.plan-badge{color:var(--link);border:1px solid var(--line);white-space:nowrap;border-radius:100px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none}.plan-badge:hover{border-color:var(--accent)}.plan-badge-free{color:var(--muted)}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:64px;padding:24px 0 8px;font-size:12px}.site-footer nav{flex-wrap:wrap;gap:8px 20px;margin-bottom:8px;display:flex}.site-footer a{color:var(--muted)}.site-footer p{margin:0}.public-shell>.site-footer{max-width:1180px;margin:0 auto;padding:24px 32px 32px}.upgrade-card,.connect-card,.build-card{margin-bottom:24px}.upgrade-card h2,.connect-card h2,.build-card h2{margin-top:6px}.build-progress .meter{background:var(--chart-track);border-radius:4px;height:8px;margin:12px 0;display:block;overflow:hidden}.build-progress .meter>span{background:var(--chart-clean);border-radius:4px;height:100%;transition:width .4s;display:block}.onboarding{max-width:640px;margin:0 auto}.onboarding-steps{gap:14px;margin:28px 0;padding:0;list-style:none;display:grid}.onboarding-steps li{grid-template-columns:auto 1fr;align-items:center;column-gap:12px;display:grid}.onboarding-steps li>span:last-child{color:var(--muted);grid-column:2;font-size:14px}.onboarding-form{padding:28px}.pricing-page{max-width:960px;margin:0 auto}.pricing-page>.lead{max-width:640px}.interval-toggle{border:1px solid var(--line);background:var(--surface);border-radius:100px;margin:8px 0 24px;padding:4px;display:inline-flex}.interval-toggle label{cursor:pointer;border-radius:100px;margin:0;padding:8px 16px;font-size:13px}.interval-toggle label.chosen{background:var(--brand);color:#fff}.interval-toggle input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.interval-toggle label:has(input:focus-visible){outline:2px solid var(--accent)}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px;display:grid}.plan-card{flex-direction:column;align-items:flex-start;gap:6px;padding:28px;display:flex}.plan-card ul{flex:1;margin:8px 0 20px;padding-left:18px}.plan-card li{margin:7px 0;font-size:14px}.plan-price{margin:0}.plan-price strong{font:36px Georgia,serif}.plan-pro{border-color:var(--brand)}.notice{background:var(--success-bg);border-radius:6px;padding:12px}.legal-page{max-width:760px;margin:0 auto;line-height:1.6}.legal-page>.lead{max-width:none}.legal-page h2{margin-top:32px;font-size:20px}.legal-page li{margin:6px 0}.checkbox-label{align-items:flex-start;gap:10px;font-weight:500;display:flex}.checkbox-label input{width:16px;height:16px;accent-color:var(--brand);flex:none;margin:3px 0 0}button.danger{background:var(--error-ink);border-color:var(--error-ink)}button.danger:hover{background:var(--error-ink);filter:brightness(.9)}.delete-form{border:1px solid var(--error-ink);border-radius:10px;margin-top:12px;padding:16px}.delete-form .actions{margin-top:8px}.plan-summary{margin-top:0}@media (max-width:700px){.pricing-grid{grid-template-columns:minmax(0,1fr)}.public-shell>.site-footer{padding:20px 16px 28px}.plan-badge{padding:5px 9px;font-size:11px}.card.plan-card,.onboarding-form{padding:20px}}.topbar .brand{white-space:nowrap}@media (max-width:480px){.badge-extra{display:none}.public-shell .topbar-actions{gap:12px}.public-shell .topbar-actions a{white-space:nowrap}.public-shell .topbar-actions .button{padding:8px 12px;font-size:14px}.public-shell .topbar-actions .topbar-pricing{display:none}}.not-found{max-width:640px;margin:48px auto;padding:32px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
.chess-piece.royal-piece.piece-b{filter:brightness(1.3)contrast(1.12)drop-shadow(0 0 .8px #f6eedb)drop-shadow(0 0 .8px #f6eedb)drop-shadow(0 0 .6px #f6eedb)drop-shadow(0 1.5px 1.2px #0000005c)}.chess-piece.royal-piece.piece-w{filter:contrast(1.06)drop-shadow(0 0 .7px #17120c)drop-shadow(0 0 .7px #17120c)drop-shadow(0 0 .5px #17120c)drop-shadow(0 1.5px 1.2px #00000047)}.chess-piece.themed{filter:drop-shadow(0 1.5px 1px #0000004d);stroke-linecap:round;stroke-linejoin:round}.chess-piece.themed.piece-w{--body:#f7f2e6;--ink:#141414}.chess-piece.themed.piece-b{--body:#1c1c22;--ink:#f3efe6}.chess-piece.themed .body{fill:var(--body);stroke:var(--ink);stroke-width:3.8px}.chess-piece.themed .line{fill:none;stroke:var(--ink);stroke-width:2.6px}.chess-piece.themed .stripe{fill:none;stroke:var(--ink);stroke-width:3.6px}.chess-piece.themed .accent{fill:var(--accent);stroke:var(--ink);stroke-width:1.8px}.chess-piece.themed .accent-2{fill:var(--accent-2);stroke:var(--ink);stroke-width:1.8px}.chess-piece.themed .accent-3{fill:var(--accent-3);stroke:var(--ink);stroke-width:1.8px}.chess-piece.themed .eye{fill:var(--ink);stroke:none}.set-medieval{--accent:#2f5fb8;--accent-2:#e3b23c;--accent-3:#e3b23c}.set-arabian{--accent:#1aa6a0;--accent-2:#e3b23c;--accent-3:#e3b23c}.set-african{--accent:#ec7a1c;--accent-2:#2e9b4b;--accent-3:#f3c432}.set-japanese{--accent:#e2452b;--accent-2:#dcaa2e;--accent-3:#dcaa2e}.set-robotic{--accent:#22d3ee;--accent-2:#f5a524;--accent-3:#f5a524}[data-theme=contrast] .chess-piece.themed{filter:none}
