.h1,h1{font-size:var(--fs-800);font-weight:var(--fw-bold);line-height:1.15}.h1,.h2,h1,h2{color:var(--clr-text-500);font-family:var(--font-heading);letter-spacing:var(--tracking-200)}.h2,h2{font-size:var(--fs-700);line-height:1.2}.h2,.h3,h2,h3{font-weight:var(--fw-semibold)}.h3,h3{font-family:var(--font-heading);font-size:var(--fs-500);letter-spacing:var(--tracking-100);line-height:1.3}.h3,h3,p{color:var(--clr-text-500)}p{font-family:var(--font-ui);font-size:var(--fs-400);font-weight:var(--fw-normal);line-height:1.5}.prose-heading{color:var(--clr-text-500);font-family:var(--font-heading);font-weight:var(--fw-bold);line-height:1.3}.prose-heading--1{font-size:var(--fs-700)}.prose-heading--2{font-size:var(--fs-600)}.prose-heading--3{font-size:var(--fs-500)}*,:after,:before{box-sizing:border-box}:not(dialog){margin:0;padding:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#__next,#root{isolation:isolate}@font-face{font-display:swap;font-family:Bitter;font-style:normal;font-weight:100 900;src:url(../fonts/bitter.ttf) format("truetype")}@font-face{font-display:swap;font-family:Raleway;font-style:normal;font-weight:100 900;src:url(../fonts/raleway.ttf) format("truetype")}@font-face{font-display:swap;font-family:Space Grotesk;font-style:normal;font-weight:300 700;src:url(../fonts/space-grotesk.ttf) format("truetype")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:100 800;src:url(../fonts/jetbrains-mono.ttf) format("truetype")}@font-face{font-display:swap;font-family:Zen Dots;font-style:normal;font-weight:400;src:url(../fonts/zen-dots.ttf) format("truetype")}:root{--clr-white:#fff;--clr-black:#000;--clr-gray-100:#e0e6f5;--clr-gray-200:#c7cfe1;--clr-gray-300:#b1bacd;--clr-gray-400:#9ca6ba;--clr-gray-500:#8994a9;--clr-gray-600:#6a758a;--clr-gray-700:#4f586d;--clr-gray-800:#3c4458;--clr-gray-900:#2a3246;--clr-navy-100:#3e4e7a;--clr-navy-200:#2b3755;--clr-navy-300:#2a365b;--clr-navy-400:#1f2a41;--clr-navy-500:#1c2540;--clr-navy-600:#1a2238;--clr-navy-700:#151c2e;--clr-navy-800:#0d1321;--clr-navy-900:#06090f;--clr-cyan-300:#80e5ff;--clr-cyan-500:#4dd8ff;--clr-cyan-700:#2597c1;--clr-cyan-900:#0f2a38;--clr-amber-300:#ffc66b;--clr-amber-500:#ff9d4d;--clr-green-300:#244c37;--clr-green-500:#59cf92;--clr-red-300:#4c2424;--clr-red-500:#ff7a7a;--clr-violet-500:#ab89fa;--clr-violet-700:#7242e0;--clr-violet-900:#221344;--clr-pink-500:#f471c4;--clr-gold-500:#ffc66b;--clr-teal-500:#25c1a7;--clr-steel-500:#739abf;--clr-slate-500:#7a7a9f;--clr-yellow-500:#f6cc31;--clr-orange-500:#ffa257;--clr-coral-500:#fb422d;--clr-brand-chesscom-bg:#312e2b;--clr-brand-chesscom-green:#5d9948;--clr-brand-lichess-bg:#161512;--clr-brand-lichess-fg:#bababa;--clr-brand-chip-bg:#fff;--clr-bg:var(--clr-navy-900);--clr-bg-elevated-1:var(--clr-navy-800);--clr-bg-elevated-2:var(--clr-navy-700);--clr-bg-elevated-3:var(--clr-navy-500);--clr-bg-elevated-4:var(--clr-navy-400);--clr-primary-300:var(--clr-cyan-300);--clr-primary-500:var(--clr-cyan-500);--clr-primary-500-alpha-100:color-mix(in srgb,var(--clr-cyan-500) 2%,transparent);--clr-primary-500-alpha-200:color-mix(in srgb,var(--clr-cyan-500) 10%,transparent);--clr-primary-500-alpha-300:color-mix(in srgb,var(--clr-cyan-500) 16%,transparent);--clr-primary-500-alpha-400:color-mix(in srgb,var(--clr-cyan-500) 24%,transparent);--clr-primary-500-alpha-500:color-mix(in srgb,var(--clr-cyan-500) 32%,transparent);--clr-primary-500-alpha-600:color-mix(in srgb,var(--clr-cyan-500) 40%,transparent);--clr-primary-700:var(--clr-cyan-700);--clr-primary-900:var(--clr-cyan-900);--clr-learn-300:var(--clr-violet-500);--clr-learn-500:var(--clr-violet-700);--clr-learn-900:var(--clr-violet-900);--clr-accent-300:var(--clr-amber-300);--clr-accent-500:var(--clr-amber-500);--clr-accent-500-alpha-200:color-mix(in srgb,var(--clr-amber-500) 10%,transparent);--clr-accent-500-alpha-600:color-mix(in srgb,var(--clr-amber-500) 40%,transparent);--clr-accent-500-alpha-700:color-mix(in srgb,var(--clr-amber-500) 50%,transparent);--clr-semantic-positive-300:var(--clr-green-300);--clr-semantic-positive-500:var(--clr-green-500);--clr-semantic-negative-300:var(--clr-red-300);--clr-semantic-negative-500:var(--clr-red-500);--clr-semantic-warning-500:var(--clr-orange-500);--clr-semantic-caution-500:var(--clr-amber-500);--clr-semantic-negative-500-alpha-100:color-mix(in srgb,var(--clr-red-500) 2%,transparent);--clr-semantic-negative-500-alpha-200:color-mix(in srgb,var(--clr-red-500) 10%,transparent);--clr-semantic-negative-500-alpha-300:color-mix(in srgb,var(--clr-red-500) 16%,transparent);--clr-semantic-negative-500-alpha-500:color-mix(in srgb,var(--clr-red-500) 32%,transparent);--clr-semantic-negative-500-alpha-600:color-mix(in srgb,var(--clr-red-500) 40%,transparent);--clr-semantic-positive-500-alpha-200:color-mix(in srgb,var(--clr-green-500) 10%,transparent);--clr-semantic-positive-500-alpha-300:color-mix(in srgb,var(--clr-green-500) 16%,transparent);--clr-semantic-positive-500-alpha-600:color-mix(in srgb,var(--clr-green-500) 40%,transparent);--clr-move-quality-brilliant:var(--clr-teal-500);--clr-move-quality-good:var(--clr-steel-500);--clr-move-quality-speculative:var(--clr-slate-500);--clr-move-quality-imprecision:var(--clr-yellow-500);--clr-move-quality-mistake:var(--clr-orange-500);--clr-move-quality-blunder:var(--clr-coral-500);--clr-module-openings:var(--clr-cyan-500);--clr-module-courses:var(--clr-green-500);--clr-module-puzzles:var(--clr-amber-500);--clr-module-rewind:var(--clr-violet-500);--clr-module-blunders:var(--clr-red-500);--clr-module-visualize:var(--clr-pink-500);--clr-module-studies:var(--clr-gold-500);--clr-brand-chesscom:var(--clr-brand-chesscom-bg);--clr-brand-chesscom-mark:var(--clr-brand-chesscom-green);--clr-brand-lichess:var(--clr-brand-lichess-bg);--clr-brand-lichess-text:var(--clr-brand-lichess-fg);--clr-brand-chip:var(--clr-brand-chip-bg);--clr-white-alpha-100:color-mix(in srgb,#fff 5%,transparent);--clr-white-alpha-200:color-mix(in srgb,#fff 12%,transparent);--clr-white-alpha-300:color-mix(in srgb,#fff 20%,transparent);--clr-white-alpha-400:color-mix(in srgb,#fff 22%,transparent);--clr-white-alpha-500:color-mix(in srgb,#fff 30%,transparent);--clr-black-alpha-300:color-mix(in srgb,#000 16%,transparent);--clr-black-alpha-400:color-mix(in srgb,#000 20%,transparent);--clr-black-alpha-600:color-mix(in srgb,#000 35%,transparent);--clr-bg-alpha-500:color-mix(in srgb,var(--clr-navy-900) 55%,transparent);--clr-bg-alpha-900:color-mix(in srgb,var(--clr-navy-900) 92%,transparent);--clr-text-300:var(--clr-gray-700);--clr-text-400:var(--clr-gray-500);--clr-text-500:var(--clr-gray-100);--clr-text-accent-400:var(--clr-cyan-500);--clr-text-accent-500:var(--clr-cyan-300);--clr-border-400:var(--clr-navy-300);--clr-border-500:var(--clr-navy-200);--clr-border-600:var(--clr-navy-100);--font-brand:"Zen Dots",sans-serif;--font-heading:"Space Grotesk",sans-serif;--font-ui:"Raleway",sans-serif;--font-body:"Raleway",sans-serif;--font-mono:"JetBrains Mono",monospace;--tracking-100:-.04em;--tracking-200:-.025em;--tracking-300:.14em;--tracking-400:.22em;--tracking-500:.08em;--fs-100:10px;--fs-200:11px;--fs-300:12px;--fs-400:14px;--fs-500:16px;--fs-600:18px;--fs-700:28px;--fs-800:48px;--fs-900:72px;--fw-normal:400;--fw-semibold:600;--fw-bold:700;--spacer-100:.25rem;--spacer-200:.37rem;--spacer-300:.5rem;--spacer-400:.75rem;--spacer-500:1rem;--spacer-600:1.275rem;--spacer-700:1.75rem;--padding-200:.25rem;--padding-300:.5rem;--padding-400:.75rem;--padding-500:1rem;--padding-600:1.5rem;--padding-700:2.5rem;--border-md-default-400:1px solid var(--clr-border-400);--border-md-dashed-400:1px dashed var(--clr-border-400);--border-md-default-500:1px solid var(--clr-border-500);--border-md-default-600:1px solid var(--clr-border-600);--border-md-primary-500:1px solid var(--clr-primary-500);--border-md-primary-700:1px solid var(--clr-primary-700);--border-xl-default-500:2px solid var(--clr-border-500);--border-xl-primary-700:2px solid var(--clr-primary-700);--radius-300:.25rem;--radius-400:.5rem;--radius:.75rem;--radius-500:1rem;--radius-full:999px;--transition-fast:.1s ease;--transition-base:.15s ease;--transition-slow:.3s ease;--clr-overlay:rgba(0,0,0,.55);--clr-overlay-strong:rgba(0,0,0,.75);--shadow-100:0 1px 4px rgba(0,0,0,.4);--shadow-300:0 4px 16px rgba(0,0,0,.4);--shadow-500:0 8px 32px rgba(0,0,0,.6);--shadow-700:0 14px 50px -20px rgba(0,0,0,.6);--shadow-glow:0 0 16px var(--clr-primary-900);--shadow-btn:0 0 0 1px var(--clr-primary-700),0 14px 36px -10px var(--clr-primary-900);--icon-size-sm:16px;--icon-size-md:24px;--icon-size-lg:32px;--icon-size-xl:48px;--page-width-narrow:60em;--page-width-standard:70em;--page-width-wide:78em;--page-width-widest:90em;--clr-chess-black:var(--clr-black);--clr-chess-white:var(--clr-white);--clr-eval-bar-dark:var(--clr-gray-800);--clr-eval-bar-light:var(--clr-gray-100);--border:var(--border-md-default-500);--fs:var(--fs-500);--padding:var(--padding-500);--spacer:var(--spacer-500);--icon-size:var(--icon-size-md);--shadow:var(--shadow-300)}.is-resizing *{transition:none!important}body{background-color:var(--clr-bg);color:var(--clr-text-500);font-family:var(--font-ui);font-size:var(--fs-500);min-height:100vh}a:not(.btn):not(.no-style){color:var(--clr-text-accent-400);cursor:pointer;font-weight:var(--fw-semibold);text-decoration:none}a:not(.btn):not(.no-style):hover{color:var(--clr-text-accent-500)}a.no-style{color:inherit;cursor:pointer;font-weight:inherit;text-decoration:none}.page-title{align-items:center;color:var(--clr-text-500);display:flex;font-size:var(--fs-800);font-weight:var(--fw-bold);gap:var(--spacer-300);letter-spacing:var(--tracking-100)}.page-title__icon{color:var(--clr-text-400);line-height:1}.visually-hidden,.visually-hidden-focusable:not(:focus,:focus-within){border:0!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;white-space:nowrap!important;width:1px!important}.visually-hidden-focusable:not(caption):not(:focus,:focus-within),.visually-hidden:not(caption){position:absolute!important}.visually-hidden *,.visually-hidden-focusable:not(:focus,:focus-within) *{overflow:hidden!important}.page{margin:0 auto;padding:var(--padding-600) var(--padding-600);width:100%}.page--narrow{max-width:var(--page-width-narrow)}.page--standard{max-width:var(--page-width-standard)}.page--wide{max-width:var(--page-width-wide)}.page--widest{max-width:var(--page-width-widest)}.exercise-layout{align-items:flex-start;display:flex;gap:var(--spacer-700)}.exercise-board-col{--board-size:704px;align-self:flex-start;display:flex;flex-direction:column;gap:var(--spacer-400);width:var(--board-size)}.exercise-board-col .chess-board-wrapper{height:var(--board-size)}.exercise-info{align-self:center;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacer-500);min-height:300px;padding:var(--padding-600);transition:filter .2s;width:280px}.exercise-info--blurred{filter:blur(1px) brightness(.6);pointer-events:none}.exercise-info>.status{font-weight:var(--fw-semibold)}.exercise-info .actions{display:flex;flex-direction:column;gap:var(--spacer-300);margin-top:var(--spacer-300)}.exercise-loading{align-items:center;display:flex;height:704px;justify-content:center;width:704px}.eval-bar-board-height{flex-shrink:0;height:704px}.bg{background:var(--clr-bg)}.bg-elevated-1{background:var(--clr-bg-elevated-1)}.bg-elevated-2{background:var(--clr-bg-elevated-2)}.bg-elevated-3{background:var(--clr-bg-elevated-3)}.bg-elevated-4{background:var(--clr-bg-elevated-4)}.text-300{color:var(--clr-text-300)}.text-400{color:var(--clr-text-400)}.text-500{color:var(--clr-text-500)}.text-accent-400{color:var(--clr-text-accent-400)}.text-accent-500{color:var(--clr-text-accent-500)}.text-positive{color:var(--clr-semantic-positive-500)}.text-error,.text-negative{color:var(--clr-semantic-negative-500)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.font-ui{font-family:var(--font-ui)}.font-mono{font-family:var(--font-mono)}.fs-100{font-size:var(--fs-100)}.fs-200{font-size:var(--fs-200)}.fs-300{font-size:var(--fs-300)}.fs-400{font-size:var(--fs-400)}.fs-500{font-size:var(--fs-500)}.fs-600{font-size:var(--fs-600)}.fs-700{font-size:var(--fs-700)}.fs-800{font-size:var(--fs-800)}.fs-900{font-size:var(--fs-900)}.fw-normal{font-weight:var(--fw-normal)}.fw-semibold{font-weight:var(--fw-semibold)}.fw-bold{font-weight:var(--fw-bold)}.border{border:var(--border-md-default-500)}.border-md-default-400{border:var(--border-md-default-400)}.border-md-default-500{border:var(--border-md-default-500)}.border-md-default-600{border:var(--border-md-default-600)}.border-md-primary-500{border:var(--border-md-primary-500)}.border-md-primary-700{border:var(--border-md-primary-700)}.border-xl-default-500{border:var(--border-xl-default-500)}.border-xl-primary-700{border:var(--border-xl-primary-700)}.radius{border-radius:var(--radius)}.radius-300{border-radius:var(--radius-300)}.radius-400{border-radius:var(--radius-400)}.radius-500{border-radius:var(--radius-500)}.radius-full{border-radius:var(--radius-full)}.shadow-100{box-shadow:var(--shadow-100)}.shadow-300{box-shadow:var(--shadow-300)}.shadow-500{box-shadow:var(--shadow-500)}.shadow-700{box-shadow:var(--shadow-700)}.shadow-glow{box-shadow:var(--shadow-glow)}.shadow-btn{box-shadow:var(--shadow-btn)}.tracking-100{letter-spacing:var(--tracking-100)}.tracking-200{letter-spacing:var(--tracking-200)}.tracking-300{letter-spacing:var(--tracking-300)}.tracking-400{letter-spacing:var(--tracking-400)}.mt-100{margin-top:var(--spacer-100)}.mt-200{margin-top:var(--spacer-200)}.mt-300{margin-top:var(--spacer-300)}.mt-400{margin-top:var(--spacer-400)}.mt-500{margin-top:var(--spacer-500)}.mt-600{margin-top:var(--spacer-600)}.mt-700{margin-top:var(--spacer-700)}.mt-auto{margin-top:auto}.gap-100{gap:var(--spacer-100)}.gap-200{gap:var(--spacer-200)}.gap-300{gap:var(--spacer-300)}.gap-400{gap:var(--spacer-400)}.gap-500{gap:var(--spacer-500)}.gap-600{gap:var(--spacer-600)}.gap-700{gap:var(--spacer-700)}.p-200{padding:var(--padding-200)}.p-300{padding:var(--padding-300)}.p-400{padding:var(--padding-400)}.p-500{padding:var(--padding-500)}.p-600{padding:var(--padding-600)}.p-700{padding:var(--padding-700)}.icon-sm{height:var(--icon-size-sm);width:var(--icon-size-sm)}.icon-md{height:var(--icon-size-md);width:var(--icon-size-md)}.icon-lg{height:var(--icon-size-lg);width:var(--icon-size-lg)}.icon-xl{height:var(--icon-size-xl);width:var(--icon-size-xl)}.surface{background:var(--clr-bg-elevated-1);border:var(--border-md-default-500);border-radius:var(--radius);box-shadow:var(--shadow-300)}.surface-raised{background:var(--clr-bg-elevated-2);border:var(--border-md-default-400);border-radius:var(--radius);box-shadow:var(--shadow-700)}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.flex-center{display:flex;justify-content:center}.flex-center,.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}
