@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,600&family=Instrument+Sans:wght@400;500;600&display=swap";.layout{display:grid;gap:var(--space-3, .75rem)}.region{min-width:0;min-height:0}.region-kind-stack{display:flex;flex-direction:column;gap:var(--space-2, .5rem)}.region-kind-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2, .5rem);min-height:auto}.layout-library{grid-template-rows:auto auto 1fr}.layout-library{flex:1 1 auto;min-height:0}.layout-library .region-games{display:flex;flex-direction:column}.layout-library .region-games>plugin-component{flex:1 1 0;min-height:0;display:flex;flex-direction:column}.layout-openings .region-sections,.layout-middlegame .region-sections,.layout-ending .region-sections,.layout-blunders .region-sections,.layout-misses .region-sections,.layout-home .region-sections,.layout-game .region-sections{gap:var(--dashboard-section-gap)}.layout-review{flex:1 1 auto;min-height:0;grid-template-columns:13rem minmax(var(--review-center-min, 0px),1fr) 24rem;grid-template-rows:max-content max-content minmax(min-content,1fr);grid-template-areas:"header header header" "left center sideTop" "left center right"}.layout-review .region-sideTop{grid-area:sideTop;min-height:auto}.layout-review .region-header{grid-area:header}.layout-review .region-header{flex-wrap:nowrap;min-height:auto}.layout-review .region-header .review-game-bar{flex:1 1 auto;min-width:0}.layout-review .region-left{grid-area:left}.layout-review .region-center{grid-area:center;min-width:var(--review-center-min, 0px)}.layout-review .region-right{grid-area:right}@media(max-width:1092px){.layout-review{grid-template-columns:minmax(var(--review-center-min, 0px),1fr) 24rem;grid-template-areas:"header header" "center sideTop" "center right"}.layout-review .region-left{display:none}}@media(max-width:876px){.layout-review{grid-template-columns:1fr;grid-template-areas:"header" "center" "sideTop" "right";grid-template-rows:max-content max-content max-content 24rem}}.tabs.tabs-hidden,.tabs[hidden]{display:none}@media not (max-width:1092px){.layout-review:has(>.region-right>.tabs[hidden]){grid-template-areas:"header header header" "left center sideTop" "left center sideTop"}.layout-review:has(>.region-right>.tabs[hidden]) .region-right{display:none}.layout-review:has(>.region-right>.tabs[hidden]) .region-sideTop{height:auto;min-height:0}}@media(not (max-width:876px))and (max-width:1092px){.layout-review:has(>.region-right>.tabs[hidden]){grid-template-areas:"header header" "center sideTop" "center sideTop"}.layout-review:has(>.region-right>.tabs[hidden]) .region-right{display:none}.layout-review:has(>.region-right>.tabs[hidden]) .region-sideTop{height:auto;min-height:0}}.region-kind-tabs{display:flex;flex-direction:column}.tabs,.tab-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.tab-body>*,.tab-body>plugin-component>*{flex:1 1 0;height:0;min-height:0;overflow:auto}.layout-review{--side-top-lines: 5;--side-top-line: 1.75rem;--side-top-frame: 1.25rem}.layout-review .region-sideTop{height:calc(var(--side-top-lines) * var(--side-top-line) + var(--side-top-frame));display:flex;flex-direction:column}.layout-review .region-sideTop>*,.layout-review .region-sideTop>plugin-component>*{flex:1 1 auto;min-height:0;overflow:auto}:root{--color-bg: #161826;--color-surface: #232532;--color-text: #e9e9ed;--color-accent: #9184d9;--color-accent-2: #a7a1db;--color-divider: color-mix(in srgb, #e9e9ed 16%, transparent);--color-neutral-100: #f3f5fe;--color-neutral-200: #e4e7f5;--color-neutral-300: #cfd3e5;--color-neutral-400: #b2b6ca;--color-neutral-500: #9397ab;--color-neutral-600: #75798c;--color-neutral-700: #595d6c;--color-neutral-800: #3f424d;--color-neutral-900: #292b31;--color-accent-100: #f5f4ff;--color-accent-200: #e7e5fe;--color-accent-300: #d2cefd;--color-accent-400: #b5abfc;--color-accent-500: #968ae0;--color-accent-600: #796cbf;--color-accent-700: #5d5294;--color-accent-800: #423a6a;--color-accent-900: #2b2741;--color-accent-2-100: #f5f4ff;--color-accent-2-200: #e7e5fe;--color-accent-2-300: #d2cefd;--color-accent-2-400: #b5afe8;--color-accent-2-500: #9690c9;--color-accent-2-600: #7972a9;--color-accent-2-700: #5c5783;--color-accent-2-800: #423e5d;--color-accent-2-900: #2b293a;--color-section: #262a60;--color-section-glow: #353b80;--color-section-ghost: #4c5397;--font-heading: "Inter", system-ui, sans-serif;--font-heading-weight: var(--weight-medium);--font-body: "Inter", system-ui, sans-serif;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--text-hero-size: 3.5rem;--text-hero-size-narrow: 2.375rem;--text-hero-line: 1.1;--text-hero-weight: var(--weight-regular);--text-display-size: 2.25rem;--text-display-line: 1;--text-display-weight: var(--weight-medium);--text-title-size: 1.25rem;--text-title-line: 1.3;--text-title-weight: var(--weight-semibold);--text-value-size: 1.125rem;--text-value-line: 1.3;--text-value-weight: var(--weight-semibold);--text-heading-size: 1rem;--text-heading-line: 1.4;--text-heading-weight: var(--weight-semibold);--text-body-size: .875rem;--text-body-line: 1.5;--text-body-weight: var(--weight-regular);--text-small-size: .8125rem;--text-small-line: 1.45;--text-small-weight: var(--weight-regular);--text-label-size: .75rem;--text-label-line: 1.3;--text-label-weight: var(--weight-medium);--text-label-tracking: .04em;--text-label-case: uppercase;--text-caption-size: .6875rem;--text-caption-line: 1.35;--text-caption-weight: var(--weight-regular);--text-chart-size: .625rem;--text-chart-line: 1.2;--text-chart-weight: var(--weight-regular);--space-1: .175rem;--space-2: .35rem;--space-3: .525rem;--space-4: .7rem;--space-6: 1.05rem;--space-8: 1.4rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .875rem;--shadow-sm: 0 0 0 1px #3f424d;--shadow-md: 0 0 0 1px #595d6c, 0 .375rem 1.125rem rgba(0,0,0,.55);--shadow-lg: 0 0 0 1px #9397ab, 0 1rem 2.5rem rgba(0,0,0,.65);--shadow-color: #000;--shadow-tooltip: 0 .25rem .75rem color-mix(in srgb, var(--shadow-color) 25%, transparent);--shadow-sticky: 0 .375rem .75rem -.375rem color-mix(in srgb, var(--shadow-color) 55%, transparent);--shadow-glyph: 0 1px 1px color-mix(in srgb, var(--shadow-color) 60%, transparent)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}h1,h2,h3,h4{font-family:var(--font-heading)}.t-hero{font-size:var(--text-hero-size);line-height:var(--text-hero-line);font-weight:var(--text-hero-weight)}.t-display{font-size:var(--text-display-size);line-height:var(--text-display-line);font-weight:var(--text-display-weight);font-variant-numeric:tabular-nums}.t-title{font-size:var(--text-title-size);line-height:var(--text-title-line);font-weight:var(--text-title-weight)}.t-value{font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);font-variant-numeric:tabular-nums}.t-heading{font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight)}.t-body{font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:var(--text-body-weight)}.t-small{font-size:var(--text-small-size);line-height:var(--text-small-line);font-weight:var(--text-small-weight)}.t-label{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case)}.t-caption{font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight)}.t-chart{font-size:var(--text-chart-size);line-height:var(--text-chart-line);font-weight:var(--text-chart-weight)}.lighten{mix-blend-mode:lighten;background-color:transparent}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:var(--text-body-weight)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.015em;margin:0 0 var(--space-2)}h1{font-size:var(--text-title-size);line-height:var(--text-title-line);font-weight:var(--text-title-weight)}h2,h3,h4{font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight)}h5{font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:var(--text-heading-weight)}h6{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case)}p{margin:0 0 var(--space-3)}a{color:var(--color-accent);text-underline-offset:.1875rem}img{display:block;max-width:100%}figure{margin:0}figcaption{font-size:var(--text-caption-size);line-height:var(--text-caption-line);margin-top:var(--space-1);color:color-mix(in srgb,var(--color-text) 55%,transparent)}.text-muted{color:color-mix(in srgb,var(--color-text) 55%,transparent)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}.hr{height:1px;border:0;margin:var(--space-4) 0;background:linear-gradient(to right,transparent,var(--color-divider) 3rem,var(--color-divider) calc(100% - 3rem),transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;cursor:pointer;text-decoration:none;font-family:var(--font-heading);font-weight:var(--weight-medium);font-size:var(--text-body-size);line-height:1.2;color:var(--color-text);background:transparent;border:1px solid transparent;padding:var(--space-2) calc(var(--space-3) * 1.2);border-radius:var(--radius-md)}.btn svg{display:block}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:var(--color-accent);border-color:var(--color-accent)}.btn-primary:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.btn-primary:active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)}.btn-secondary:active{background:color-mix(in srgb,var(--color-text) 14%,transparent)}.btn-ghost{color:var(--color-accent);padding-inline:var(--space-1)}.btn-ghost:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.btn-ghost:active{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.btn-icon{width:2.25rem;height:2.25rem;padding:0}.btn-block{width:100%;margin-top:var(--space-2)}.field>label{display:block;margin-bottom:.3125rem;font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--weight-regular);color:color-mix(in srgb,var(--color-text) 70%,transparent)}.input{width:100%;min-height:2.25rem;padding:.375rem .625rem;font:inherit;font-size:var(--text-body-size);color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md)}.input:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}textarea.input{min-height:5.625rem;resize:vertical}.radio{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:var(--text-body-size)}.radio input,.seg-opt input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.radio .dot{width:1rem;height:1rem;flex:none;border-radius:50%;border:1.5px solid var(--color-divider)}.radio:hover .dot{border-color:var(--color-accent)}.radio input:checked+.dot{border-color:var(--color-accent);background:var(--color-accent);box-shadow:inset 0 0 0 .25rem var(--color-bg)}.radio input:focus-visible+.dot{outline:2px solid var(--color-accent);outline-offset:2px}.seg{display:inline-flex;overflow:hidden;border:1px solid var(--color-divider);border-radius:var(--radius-md)}.seg-opt{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .75rem;font-size:var(--text-small-size);cursor:pointer}.seg-opt+.seg-opt{border-left:1px solid var(--color-divider)}.seg-opt:has(input:checked){color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.seg-opt:not(:has(input:checked)):hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)}.seg-opt:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:-2px}.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface)}.card-kicker{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-accent)}.card-title{font-family:var(--font-heading);font-weight:var(--text-heading-weight);font-size:var(--text-heading-size);line-height:var(--text-heading-line)}.card-body{margin:0;font-size:var(--text-small-size);line-height:var(--text-small-line);opacity:.8;flex:1}.card-meta{display:flex;align-items:center;gap:.375rem;font-size:var(--text-caption-size);color:color-mix(in srgb,var(--color-text) 50%,transparent)}.elev-sm{box-shadow:var(--shadow-sm)}.elev-md{box-shadow:var(--shadow-md)}.elev-lg{box-shadow:var(--shadow-lg)}.tag{display:inline-flex;align-items:center;font-size:var(--text-caption-size);letter-spacing:.02em;padding:.1875rem .625rem;border-radius:calc(var(--radius-md) * .75)}.tag-accent{background:var(--color-accent-800);color:var(--color-accent-100)}.tag-accent-2{background:var(--color-accent-2-800);color:var(--color-accent-2-100)}.tag-neutral{background:var(--color-neutral-800);color:var(--color-neutral-100)}.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent)}.nav{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:none}.nav-brand{font-family:var(--font-heading);font-weight:var(--text-title-weight);font-size:var(--text-title-size);line-height:var(--text-title-line);margin-right:auto}.nav a{color:inherit;text-decoration:none;font-size:var(--text-body-size)}.nav a:hover,.nav a[aria-current=page]{color:var(--color-accent)}.table{width:100%;border-collapse:collapse;font-size:var(--text-body-size)}.table th{text-align:left;font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:color-mix(in srgb,var(--color-text) 60%,transparent);padding:var(--space-2);border-bottom:1px solid transparent}.table td{padding:var(--space-2);border-bottom:1px solid transparent}.table thead tr{background:linear-gradient(to right,transparent,var(--color-divider) 3rem,var(--color-divider) calc(100% - 3rem),transparent) no-repeat bottom / 100% 1px}.table tbody tr{background:linear-gradient(to right,transparent,color-mix(in srgb,var(--color-text) 8%,transparent) 3rem,color-mix(in srgb,var(--color-text) 8%,transparent) calc(100% - 3rem),transparent) no-repeat bottom / 100% 1px}.table tbody tr:hover{background:linear-gradient(color-mix(in srgb,var(--color-text) 4%,transparent),color-mix(in srgb,var(--color-text) 4%,transparent)) no-repeat 0 0 / 100% 100%,linear-gradient(to right,transparent,color-mix(in srgb,var(--color-text) 8%,transparent) 3rem,color-mix(in srgb,var(--color-text) 8%,transparent) calc(100% - 3rem),transparent) no-repeat bottom / 100% 1px}.dialog-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:var(--space-4);background:color-mix(in srgb,var(--color-neutral-900) 50%,transparent)}.dialog{width:min(27.5rem,100%);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.dialog-title{font-family:var(--font-heading);font-weight:var(--text-title-weight);font-size:var(--text-title-size);line-height:var(--text-title-line)}.dialog-body{font-size:var(--text-body-size);opacity:.85}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}:root{--viz-win: #6fd3a2;--viz-draw: #7c8196;--viz-loss: #c9405a;--viz-grid: color-mix(in srgb, var(--color-text, #e9e9ed) 10%, transparent);--viz-ink: var(--color-text, #e9e9ed);--viz-muted: var(--color-neutral-500, #9397ab);--viz-score-gain: var(--viz-win);--viz-score-loss: var(--viz-loss);--viz-score-level: var(--viz-ink);--viz-bullet: #3987e5;--viz-blitz: #d95926;--viz-rapid: #199e70;--viz-daily: #c98500;--viz-grade-best: var(--viz-win);--viz-grade-good: color-mix(in srgb, var(--viz-win) 45%, var(--viz-draw));--viz-grade-inaccuracy: var(--viz-draw);--viz-grade-mistake: color-mix(in srgb, var(--viz-loss) 50%, var(--viz-draw));--viz-grade-blunder: var(--viz-loss);--viz-grade-miss: var(--viz-daily);--viz-ending-won: var(--viz-win);--viz-ending-slipped: #d42e4a;--viz-ending-missed: #ee7383;--viz-ending-time: #fbbcc3;--viz-ending-lost: #b99ca2;--viz-ending-drawn: var(--viz-draw);--viz-ending-comeback: #f0c45a;--viz-ending-blown: var(--viz-ending-slipped);--viz-arrow-best: var(--viz-grade-best);--viz-arrow-blunder: var(--viz-grade-blunder);--viz-arrow-played: var(--viz-muted)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--viz-ending-slipped: #d42e4a;--viz-ending-missed: #ee7383;--viz-ending-time: #fbbcc3;--viz-ending-lost: #b99ca2;--viz-ending-comeback: #f0c45a}}:root[data-theme=dark]{--viz-ending-slipped: #d42e4a;--viz-ending-missed: #ee7383;--viz-ending-time: #fbbcc3;--viz-ending-lost: #b99ca2;--viz-ending-comeback: #f0c45a}body{margin:0;background:var(--color-bg);color:var(--color-text)}html{scrollbar-gutter:stable}.frame{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.frame-main{flex:1 1 auto;display:flex;flex-direction:row}@media(max-width:700px){.frame-main{flex-direction:column}}.frame-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;padding:var(--space-4)}.frame:has(.layout-review,.layout-library){height:100vh;height:100dvh}.frame:has(.layout-review,.layout-library) .frame-main{min-height:0}.frame:has(.layout-review,.layout-library) .frame-body{min-height:0;overflow:auto}.panel{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-3);min-width:0}.panel h2{margin:0 0 var(--space-2);font-family:var(--font-heading);font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.panel-empty{margin:0;color:var(--color-neutral-600);font-size:var(--text-small-size);line-height:var(--text-small-line)}.panel-grow{overflow:auto}.region-kind-stack>.panel-grow,.region-kind-stack>plugin-component>.panel-grow{flex:1 1 0;height:0;min-height:0}.tab-strip{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-3)}.tab{background:none;border:none;border-bottom:2px solid transparent;padding:var(--space-2) var(--space-3);cursor:pointer;font:inherit;color:var(--color-neutral-500)}.tab:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.tab-active,.tab-active:hover{color:var(--color-text);border-bottom-color:var(--color-accent)}.tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.tab-badge{display:inline-block;margin-left:var(--space-2);padding:0 .375rem;min-width:1.125rem;border-radius:.5625rem;font-size:var(--text-caption-size);line-height:1.125rem;text-align:center;background:var(--color-accent-800);color:var(--color-accent-200)}.tab-active .tab-badge{background:var(--color-accent-700);color:var(--color-accent-100)}.layout-error{color:var(--color-accent-300)}.card-clickable{cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.card-clickable:hover{border-color:var(--color-accent-700);background:color-mix(in srgb,var(--color-text) 3%,var(--color-surface))}.card-clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.notifications{position:fixed;right:var(--space-4);bottom:calc(var(--space-6) + 2rem);display:flex;flex-direction:column;gap:var(--space-2);z-index:50;max-width:24rem}.toast{display:flex;align-items:flex-start;gap:var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-md);font-size:var(--text-small-size);line-height:var(--text-small-line)}.toast-inner{display:flex;align-items:flex-start;gap:var(--space-2)}.toast-icon{flex:0 0 auto;width:1.125rem;height:1.125rem;margin-top:.0625rem}.toast-icon svg{width:100%;height:100%;display:block}.toast-message{min-width:0}.toast-body{flex:1;min-width:0}.toast-title{font-family:var(--font-heading);font-weight:var(--weight-medium);margin-bottom:var(--space-1)}.toast-close{background:none;border:none;color:var(--color-neutral-500);cursor:pointer;font:inherit;font-size:var(--text-heading-size);line-height:1;padding:0}.toast-close:hover{color:var(--color-text)}.toast-info .toast-icon{color:var(--color-accent-300)}.toast-warning .toast-icon{color:var(--color-accent-2-300)}.toast-error .toast-icon{color:var(--color-accent-400)}.toast-error .toast-message{color:var(--color-neutral-100)}.tab-badge-good,.tab-badge-bad,.tab-badge-level,.tab-active .tab-badge-good,.tab-active .tab-badge-bad,.tab-active .tab-badge-level{background:none;padding:0;min-width:0;font-size:inherit;line-height:inherit;font-variant-numeric:tabular-nums}.tab-badge-good,.tab-active .tab-badge-good{color:var(--viz-score-gain)}.tab-badge-bad,.tab-active .tab-badge-bad{color:var(--viz-score-loss)}.tab-badge-level,.tab-active .tab-badge-level{color:var(--viz-score-level)}.section-title{margin:0 0 var(--space-2);font-family:var(--font-heading);font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.return-focus-flash{outline:2px solid var(--color-accent);outline-offset:-2px;background-color:color-mix(in srgb,var(--color-accent) 14%,transparent);transition:background-color .6s ease-out,outline-color .6s ease-out}@media(prefers-reduced-motion:reduce){.return-focus-flash{transition:none}}.help-button{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;margin:0;border:0;border-radius:50%;background:transparent;cursor:pointer;color:var(--viz-muted);flex:none}.help-button:hover{color:var(--color-text)}.help-button:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:.125rem}.help-button-icon{width:1rem;height:1rem}.help-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;background:color-mix(in srgb,var(--color-bg) 70%,transparent)}.help-dialog{display:flex;flex-direction:column;width:min(36rem,100%);max-height:min(40rem,calc(100vh - 2rem));background:var(--color-surface);color:var(--color-text);border:.0625rem solid var(--color-divider);border-radius:var(--radius-md, .5rem);box-shadow:var(--shadow-md)}.help-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1rem .5rem 1.25rem}.help-title{margin:0;font-size:var(--text-heading-size)}.help-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex:none;border:0;border-radius:var(--radius-sm, .25rem);background:transparent;color:inherit;cursor:pointer}.help-close svg{width:1rem;height:1rem}.help-close:hover{background:color-mix(in srgb,var(--color-text) 10%,transparent)}.help-close:focus-visible,.help-body:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:-.125rem}.help-body{overflow-y:auto;padding:0 1.25rem 1.25rem;font-size:var(--text-body-size);line-height:var(--text-body-line)}.help-body p{margin:0 0 .75rem}.help-body ul,.help-body ol{margin:0 0 .75rem;padding-left:1.25rem}.help-body li{margin-bottom:.25rem}.help-body h3{font-size:var(--text-body-size);margin:1rem 0 .375rem}.help-body table{border-collapse:collapse;margin:0 0 .75rem;font-size:var(--text-small-size)}.help-body th,.help-body td{border:.0625rem solid var(--color-divider);padding:.25rem .5rem;text-align:left}@media(prefers-reduced-motion:no-preference){.help-dialog{animation:help-in .12s ease-out}@keyframes help-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}}.dashboard-header{grid-column:1 / -1;flex:1 1 100%;display:flex;flex-direction:column;gap:.25rem;min-width:0}.dashboard-header-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;min-height:2.5rem}.dashboard-header-title{margin:0;font-size:var(--text-title-size);font-weight:var(--text-title-weight)}.dashboard-header-period{font-weight:var(--weight-regular);color:var(--color-neutral-400)}.dashboard-header-action{flex:none;display:flex;align-items:center;gap:var(--space-3, .75rem)}.dashboard-header-caption{margin:0;font-size:var(--text-body-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.skeleton-content{display:contents}.skeleton{--skeleton-tint: color-mix(in srgb, var(--color-text) 9%, transparent);--skeleton-shine: color-mix(in srgb, var(--color-text) 7%, transparent);pointer-events:none;-webkit-user-select:none;user-select:none}.skeleton-shown.skeleton-box,.skeleton-shown.skeleton-inline,.skeleton-shown .skeleton-line,.skeleton-shown.skeleton-shape>.skeleton-ghost>*{background:linear-gradient(90deg,transparent 25%,var(--skeleton-shine) 50%,transparent 75%) 0 0 / 200% 100% no-repeat,var(--skeleton-tint);animation:skeleton-shimmer 1.4s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:150% 0,0 0}to{background-position:-50% 0,0 0}}.skeleton-shown.skeleton-pulse.skeleton-box,.skeleton-shown.skeleton-pulse.skeleton-inline,.skeleton-shown.skeleton-pulse .skeleton-line,.skeleton-shown.skeleton-pulse.skeleton-shape>.skeleton-ghost>*{background:var(--skeleton-tint);animation:skeleton-pulse 1.6s ease-in-out .5s infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton-shown.skeleton-still.skeleton-box,.skeleton-shown.skeleton-still.skeleton-inline,.skeleton-shown.skeleton-still .skeleton-line,.skeleton-shown.skeleton-still.skeleton-shape>.skeleton-ghost>*{animation:none;background:var(--skeleton-tint)}@media(prefers-reduced-motion:reduce){.skeleton-shown.skeleton-box,.skeleton-shown.skeleton-inline,.skeleton-shown .skeleton-line,.skeleton-shown.skeleton-shape>.skeleton-ghost>*{animation:none;background:var(--skeleton-tint)}}.skeleton-shape,.skeleton-shape>.skeleton-ghost{display:contents}.skeleton-shape .skeleton-ghost *{visibility:hidden}.skeleton-shown.skeleton-shape>.skeleton-ghost>*{visibility:visible;color:transparent;border-color:transparent;box-shadow:none}.skeleton-shown.skeleton-shape[style*=--skeleton-radius]>.skeleton-ghost>*{border-radius:var(--skeleton-radius)}.skeleton-inline{display:inline;border-radius:var(--skeleton-radius, var(--radius-sm, .25rem))}.skeleton-inline>.skeleton-ghost{display:inline;visibility:hidden}.skeleton-box{display:block;border-radius:var(--skeleton-radius, var(--radius-md, .5rem))}.skeleton-box-inline{display:inline-block;vertical-align:middle}.skeleton-lines{display:flex;flex-direction:column;gap:.5rem;padding-block:.25rem}.skeleton-line{display:block;height:.75rem;border-radius:var(--skeleton-radius, var(--radius-sm, .25rem))}.skeleton-line:last-child:not(:first-child){width:60%}.rail{width:4.5rem;flex:0 0 4.5rem;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) 0;background:var(--color-surface);border-right:1px solid var(--color-divider);position:sticky;top:0;height:100vh;height:100dvh;box-sizing:border-box}.rail-spacer{flex:1 1 auto}.rail-divider{width:2.5rem;margin:var(--space-1) 0;border:0;border-top:1px solid var(--color-divider)}.rail-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;width:4rem;padding:.375rem 0 .3125rem;border-radius:var(--radius-sm);color:var(--color-neutral-500);text-decoration:none}.rail-link svg{width:1.375rem;height:1.375rem;flex:none}.rail-label{font-size:var(--text-chart-size);line-height:var(--text-chart-line);letter-spacing:.01em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.rail-link:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 6%,transparent)}.rail-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.rail-link-active{color:var(--color-accent-300)}.rail-link-active .rail-label{font-weight:var(--weight-semibold)}.rail-link-active:before{content:"";position:absolute;left:-.25rem;top:.5rem;bottom:.5rem;width:2px;background:var(--color-accent);border-radius:1px}@media(max-width:700px){:root{--rail-row-height: 3.25rem}.rail{width:auto;flex:0 0 auto;flex-direction:row;justify-content:center;padding:0 var(--space-2);border-right:0;border-top:1px solid var(--color-divider);height:var(--rail-row-height);z-index:3}.rail-link{width:3.75rem}.rail-spacer{flex:0 0 var(--space-4)}.rail-divider{width:0;height:2rem;margin:0 var(--space-1);border-top:0;border-left:1px solid var(--color-divider);align-self:center}.rail-link-active:before{left:.75rem;right:.75rem;top:auto;bottom:-2px;width:auto;height:2px}}:root{--dashboard-section-gap: 1.5rem}:root{--dash-max-columns: 3}:root{--dash-card-max: 24rem;--dash-gap: var(--space-4, 1rem);--dash-content-max: calc(var(--dash-max-columns, 3) * (var(--dash-card-max) + var(--dash-gap)) - var(--dash-gap))}:root{--dash-chart-max-height: 14rem}.home-section{grid-column:1 / -1;display:flex;flex-direction:column;gap:.5rem;min-width:0;--home-section-card-max: var(--dash-card-max, 24rem);--home-section-gap: var(--dash-gap, var(--space-4, 1rem));--home-section-n: min(var(--home-section-columns, 3), var(--home-section-max-columns, 3), var(--dash-max-columns, 3));--home-section-width-max: calc(var(--home-section-n) * (var(--home-section-card-max) + var(--home-section-gap)) - var(--home-section-gap))}.home-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-inline:var(--home-section-inset-start, 0) var(--home-section-inset-end, 0)}.home-section-head h2{margin:0;font-size:var(--text-heading-size)}.home-section-title{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text);text-decoration:none}a.home-section-title:hover h2{text-decoration:underline}a.home-section-title:focus-visible,.home-section-open:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm, .25rem)}.home-section-icon{width:1.25rem;height:1.25rem;fill:currentColor;flex:none;align-self:center}.home-section-open{display:inline-flex;align-items:center;gap:.25rem;color:var(--color-accent);text-decoration:none;white-space:nowrap;font-size:var(--text-body-size)}.home-section-caret{width:.875rem;height:.875rem;fill:currentColor}.home-section-open:hover{text-decoration:underline}.home-section-head>.help-button{align-self:center;margin-right:auto;margin-left:-.5rem}.home-section-label{margin:0;margin-inline:var(--home-section-inset-start, 0) var(--home-section-inset-end, 0);font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--viz-muted)}.home-section-body{display:grid;gap:var(--home-section-gap);grid-template-columns:repeat(auto-fit,minmax(max(min(16rem,100%),calc((100% - (var(--home-section-n) - 1) * var(--home-section-gap)) / var(--home-section-n))),1fr));width:100%;margin-inline:auto;max-width:var(--home-section-width-max)}.home-section-after{box-sizing:border-box;width:100%;max-width:var(--home-section-width-max);margin-inline:auto;min-width:0;display:flex;flex-direction:column;gap:var(--space-4, 1rem);margin-top:calc(var(--space-4, 1rem) - .5rem)}.home-section:not(:has(.home-section-body>:not(.dash-card-frame)>*,.home-section-body>.card:not(.dash-card-frame),.home-section-body>.dash-card-frame>.dash-card-body>plugin-component>*,.home-section-body>.dash-card-frame>.dash-card-body>:not(plugin-component),.home-section-empty)){display:none}.home-section-empty{grid-column:1 / -1;font-size:var(--text-body-size)}.home-section-body>:not(.dash-card-frame):has(>.dash-empty:only-child){grid-column:1 / -1}:root{--color-band: color-mix(in srgb, var(--color-text) 4%, var(--color-bg))}.home-band{display:flex;flex-direction:column;gap:.75rem;min-width:0;padding:.75rem 1rem 1.25rem;background:var(--color-band);border-radius:var(--radius-md, .5rem)}.home-band-label{margin:0;margin-inline-start:var(--home-band-inset-start, 0);font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.home-band-body{display:flex;flex-direction:column;gap:var(--dashboard-section-gap, 1.5rem);min-width:0}.home-band-continuous>.home-band-body{gap:var(--dash-gap, var(--space-4, 1rem))}.dash-card{display:flex;flex-direction:column;gap:.5rem;min-width:0;height:100%}.dash-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;flex:none}.dash-card-title{margin:0;font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--viz-muted)}.dash-card-aside{font-size:var(--text-caption-size);color:var(--viz-muted);white-space:nowrap}.dash-card-tools{display:inline-flex;align-items:center;gap:.25rem;min-width:0}.dash-card-body{flex:1 1 auto;display:flex;flex-direction:column;justify-content:safe center;gap:.5rem;min-height:0;min-width:0}.dash-card-note{flex:none;margin:auto 0 0;font-size:var(--text-caption-size);color:var(--viz-muted)}.dash-card-wide{grid-column:1 / -1}.dash-empty{margin:0;font-size:var(--text-small-size);line-height:var(--text-small-line);color:var(--viz-muted)}.dash-card-frame .dash-card-aside:empty,.dash-card-frame>.dash-card-note:empty{display:none}.dash-card-frame .dash-card-tools:has(>.dash-card-aside:empty):not(:has(>:not(.dash-card-aside))){display:none}.dash-card-frame:has(>.dash-card-body>plugin-component:empty){display:none}.viz{font-variant-numeric:tabular-nums}.grade-fill-best{background:var(--viz-grade-best)}.grade-fill-good{background:var(--viz-grade-good)}.grade-fill-inaccuracy{background:var(--viz-grade-inaccuracy)}.grade-fill-mistake{background:var(--viz-grade-mistake)}.grade-fill-blunder{background:var(--viz-grade-blunder)}.grade-fill-miss{background:var(--viz-grade-miss)}.stat{display:flex;align-items:baseline;gap:.5rem}.stat-value{font-size:var(--text-display-size);line-height:var(--text-display-line);color:var(--viz-ink)}.stat-delta{font-size:var(--text-small-size);color:var(--viz-muted)}.donut-wrap{display:flex;align-items:center;gap:1rem}.donut-wrap svg{flex:none}.legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;font-size:var(--text-small-size);color:var(--viz-ink)}.legend li{display:flex;align-items:center;gap:.4rem}.legend-swatch{width:.625rem;height:.625rem;border-radius:.125rem;flex:none}.legend-value{color:var(--viz-muted);margin-left:auto;padding-left:.75rem}.split-rows{display:flex;flex-direction:column;gap:.5rem}.split-row{display:grid;grid-template-columns:minmax(0,7.5rem) 1fr auto;align-items:center;gap:.5rem;font-size:var(--text-small-size);color:var(--viz-ink)}.split-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.split-bar{display:flex;gap:var(--space-1);height:.625rem}.split-bar>*{border-radius:.125rem;min-width:.125rem}.split-total,.split-extra{color:var(--viz-muted);font-size:var(--text-label-size)}.lines svg,.diverging svg{display:block;width:100%;height:auto;overflow:visible}.lines text,.diverging text{fill:var(--viz-muted);font-size:var(--text-chart-size);font-weight:var(--text-chart-weight)}.legend-row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem;font-size:var(--text-label-size);color:var(--viz-ink)}.legend-row li{display:flex;align-items:center;gap:.35rem}.chart-hit{fill:transparent;cursor:default}.chart-hit{pointer-events:all}.chart-dot-hidden{opacity:0}g:hover>.chart-dot{opacity:1;r:5}.colour-mark{display:inline-block;width:.563rem;height:.563rem;border-radius:.125rem;margin-right:.4rem;vertical-align:0;box-sizing:border-box}.colour-mark-white{background:var(--color-text)}.colour-mark-black{background:var(--color-bg);border:1px solid var(--viz-muted)}.sentence{margin:0;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--viz-ink)}.sentence strong{font-weight:var(--weight-semibold)}@media(prefers-reduced-motion:no-preference){.chart-dot{transition:r .12s ease,opacity .12s ease}}.opening-score{display:inline-block;min-width:3.2em;margin-left:.5rem;text-align:right;color:var(--viz-ink)}.split-row:has(.opening-score){grid-template-columns:minmax(0,9.5rem) 1fr auto}.opening-score-track{display:flex;height:.625rem}.opening-score-bar{display:block;height:100%;min-width:.125rem;border-radius:.125rem}.dash-link{color:inherit;text-decoration:none}.dash-link:hover{text-decoration:underline;text-underline-offset:.125rem}.dash-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:.125rem}.split-segment{display:block;border-radius:.125rem;min-width:.125rem}a.split-segment:hover{filter:brightness(1.15);text-decoration:none}.opening-score-rows-games .split-row:has(.opening-score){grid-template-columns:minmax(0,9.5rem) 2rem 1fr auto}.opening-games{text-align:right;font-variant-numeric:tabular-nums;color:var(--viz-muted)}.dash-muted{color:var(--viz-muted)}.skeleton-plot{width:100%}.lines-fill{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;gap:.5rem;min-height:0}.plot-fill{position:relative;flex:1 1 auto;min-height:8rem;max-height:var(--dash-chart-max-height, 14rem)}.plot-fill>.lines{position:absolute;inset:0}.plot-fill>.lines svg{width:100%;height:100%}.skeleton-plot.plot-fill>*{position:absolute;inset:0}.practise-rows{display:flex;flex-direction:column;gap:.5rem}.practise-row{display:grid;grid-template-columns:minmax(0,1fr) 2.5rem;grid-template-rows:auto auto;column-gap:.5rem;align-items:center;font-size:var(--text-small-size)}.practise-label{grid-column:1;color:var(--color-accent);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a.practise-label:hover{text-decoration:underline}a.practise-label:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:.125rem}.practise-none{color:var(--viz-muted)}.practise-count{grid-column:2;grid-row:1 / 3;text-align:right;font-variant-numeric:tabular-nums}.practise-bar{grid-column:1;display:block;height:.5rem;margin-top:.1875rem;border-radius:.25rem;background:color-mix(in srgb,var(--viz-grid) 60%,transparent);overflow:hidden}.practise-fill{display:block;height:100%;border-radius:.25rem}.ending-case-swatch{width:.625rem;height:.625rem;border-radius:.125rem;flex:none;display:inline-block}.ending-case-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--ending-colour);flex:none;display:inline-block}.ending-case-chip{flex:none;display:inline-flex;align-items:center;gap:.375rem;font:inherit;font-size:var(--text-small-size);line-height:var(--text-small-line);white-space:nowrap;padding:.125rem .625rem;border-radius:999rem;color:var(--color-text);background:color-mix(in srgb,var(--ending-colour) 18%,transparent);border:1px solid color-mix(in srgb,var(--ending-colour) 55%,transparent)}button.ending-case-chip{cursor:pointer}button.ending-case-chip:hover{background:color-mix(in srgb,var(--ending-colour) 28%,transparent)}button.ending-case-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ending-case-chip-prefix{color:var(--color-neutral-400)}.ending-conversion-body,.ending-results-body{display:flex;flex-direction:column}.ending-types-rows .split-row{grid-template-columns:minmax(0,13rem) 1fr 2rem}.ending-types-rows .split-total{text-align:right;font-variant-numeric:tabular-nums}.ending-types-legend{margin-top:.75rem}.home-card-latest-game{grid-column:span var(--dash-max-columns, 3)}.home-card-latest-game:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:.125rem}.latest-game-grid{display:grid;grid-template-columns:8.25rem auto minmax(0,1fr) auto;column-gap:1.25rem;row-gap:.75rem;align-items:stretch}.latest-game-accuracy{display:flex;flex-direction:column;justify-content:center;gap:.25rem;min-width:6.5rem;padding-right:1.25rem;border-right:1px solid var(--color-divider)}.latest-game-accuracy-value{font-size:var(--text-display-size);line-height:var(--text-display-line);font-weight:var(--text-display-weight);color:var(--viz-ink);font-variant-numeric:tabular-nums}.latest-game-accuracy-label,.latest-game-stage-head,.latest-game-error-label{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--viz-muted)}.latest-game-accuracy-bar{position:relative;display:block;height:.25rem;margin-top:.25rem;border-radius:.125rem;background:var(--viz-grid)}.latest-game-accuracy-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--color-accent)}.latest-game-accuracy-tick{position:absolute;top:-.1875rem;bottom:-.1875rem;width:.125rem;margin-left:-.0625rem;background:var(--viz-ink)}.latest-game-accuracy-usual{font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--viz-muted);font-variant-numeric:tabular-nums}.latest-game-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;min-width:0}.latest-game-stage{display:flex;flex-direction:column;justify-content:space-between;gap:.5rem;min-width:0;padding:.5rem .625rem;border:1px solid var(--color-divider);border-radius:var(--radius-sm)}.latest-game-stage-bar,.latest-game-stage-missing{display:block}.latest-game-stage-item{display:flex;min-width:0}.latest-game-stage-item>.latest-game-stage{flex:1}.latest-game-stage-link{color:inherit;text-decoration:none;cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.latest-game-stage-link:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.latest-game-stage-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.latest-game-stage-head{display:flex;justify-content:space-between;align-items:baseline;gap:.375rem}.latest-game-stage-note{color:var(--viz-loss);white-space:nowrap}.latest-game-stage-figures{display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem}.latest-game-stage-figure{display:flex;flex-direction:column;gap:.125rem;min-width:0}.latest-game-stage-figure+.latest-game-stage-figure{align-items:flex-end;text-align:right}.latest-game-stage-score,.latest-game-stage-accuracy{font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);color:var(--viz-ink);font-variant-numeric:tabular-nums}.latest-game-stage-caption,.latest-game-stage-missing{font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--viz-muted)}.latest-game-stage-bar{position:relative;height:.375rem;border-radius:.125rem;background:var(--viz-grid)}.latest-game-stage-bar:before{content:"";position:absolute;left:50%;top:-.125rem;bottom:-.125rem;width:1px;background:var(--viz-muted)}.latest-game-stage-fill{position:absolute;top:0;bottom:0}.latest-game-stage-fill.gain{left:50%;background:var(--viz-win);border-radius:0 .125rem .125rem 0}.latest-game-stage-fill.loss{right:50%;background:var(--viz-loss);border-radius:.125rem 0 0 .125rem}.latest-game-stage-decided{border:1.5px solid var(--viz-loss)}.latest-game-stage-decided-win{border-color:var(--viz-win)}.latest-game-stage-decided-win .latest-game-stage-note,.home-card-latest-game .good{color:var(--viz-win)}.home-card-latest-game .bad{color:var(--viz-loss)}.latest-game-errors{display:flex;flex-direction:column;justify-content:center;gap:.75rem;padding-left:1.25rem;border-left:1px solid var(--color-divider)}.latest-game-error{display:flex;flex-direction:column;gap:.125rem}.latest-game-error-count{font-size:var(--text-title-size);line-height:var(--text-title-line);font-weight:var(--text-title-weight);color:var(--viz-ink);font-variant-numeric:tabular-nums}.latest-game-error-count.blunders{color:var(--viz-loss)}.latest-game-error-count.misses{color:var(--viz-daily)}.latest-game-metrics-wait{grid-column:2 / -1;align-self:center;margin:0;font-size:var(--text-small-size);line-height:var(--text-small-line);font-weight:var(--text-small-weight);color:var(--color-neutral-500)}.latest-game-foot{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.75rem}.latest-game-detail{min-width:0;color:var(--color-neutral-400);font-size:var(--text-small-size);line-height:var(--text-small-line);font-weight:var(--text-small-weight)}.latest-game-foot .btn{flex:none}.latest-game-diagram{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;width:8.25rem;align-self:center;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-divider);font-size:var(--text-body-size);line-height:1;-webkit-user-select:none;user-select:none}.latest-game-square{display:grid;place-items:center;background:var(--color-neutral-800)}.latest-game-square.dark{background:var(--color-neutral-900)}.latest-game-square.white{color:var(--color-neutral-100);text-shadow:var(--shadow-glyph)}.latest-game-square.black{color:var(--color-neutral-100);opacity:.55}@media(max-width:760px){.latest-game-grid{grid-template-columns:8.25rem minmax(0,1fr)}.latest-game-accuracy{padding-right:0;border-right:0}.latest-game-stages,.latest-game-errors{grid-column:1 / -1}.latest-game-errors{flex-direction:row;gap:1.5rem;padding-left:0;border-left:0}.latest-game-error{flex-direction:row;align-items:baseline;gap:.375rem}}.latest-game-result{flex:none;padding:.125rem .5rem;border-radius:999rem;font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--weight-semibold);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-bg)}.latest-game-result-won{background:var(--viz-win)}.latest-game-result-drawn{background:var(--viz-draw)}.latest-game-result-lost{background:var(--viz-loss)}.game-title{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;width:100%;max-width:var(--dash-content-max, 74rem);margin:0 auto;font-size:var(--text-title-size);line-height:var(--text-title-line);font-weight:var(--text-title-weight)}.game-title-vs{color:var(--color-neutral-500);font-weight:var(--weight-regular)}.game-title-player{display:inline-flex;align-items:baseline;gap:.375rem}.game-title-rating{color:var(--color-neutral-400);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.game-title-meta{color:var(--color-neutral-500);font-weight:var(--weight-regular);font-size:var(--text-heading-size)}.game-bar-sentinel{height:1px;margin-bottom:-1px}.game-bar{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem;flex-shrink:0;min-height:3rem;box-sizing:border-box;padding:.375rem .5rem;background:var(--color-bg);border-bottom:1px solid var(--color-divider);font-size:var(--text-body-size);color:var(--color-text);transition:box-shadow .15s ease}@media(max-width:700px){.game-bar{top:var(--rail-row-height, 0)}}@media(prefers-reduced-motion:reduce){.game-bar{transition:none}}.game-bar-stuck{box-shadow:var(--shadow-sticky)}.game-bar-step{display:inline-flex;align-items:center;justify-content:center;flex:none;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:var(--radius-sm, .25rem);background:transparent;color:var(--color-text);cursor:pointer}.game-bar-step:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 8%,transparent)}.game-bar-step:disabled{color:var(--color-neutral-700);cursor:default}.game-bar-caret{width:1rem;height:1rem;fill:currentColor}.game-bar-nav{grid-column:2;display:inline-flex;align-items:center;gap:.5rem;min-width:0}.game-bar-game{margin:0;width:22rem;max-width:calc(100vw - 13rem);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.game-bar-outcome-win{color:var(--viz-win)}.game-bar-outcome-draw{color:var(--viz-muted)}.game-bar-outcome-loss{color:var(--viz-loss)}.game-bar-position{grid-column:3;justify-self:end;color:var(--viz-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.game-bar-step:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.game-strip{position:relative;padding:.25rem 0 .5rem;font-size:var(--text-label-size);color:var(--color-text);box-sizing:border-box;width:100%;max-width:var(--dash-content-max, 74rem);margin-inline:auto}.game-strip-row{display:grid;grid-auto-flow:column;column-gap:.375rem;grid-auto-columns:calc((100% - (var(--strip-columns, 8) - 1) * .375rem) / var(--strip-columns, 8));overflow-x:auto;scroll-snap-type:x proximity;padding:.125rem 0 .5rem;scrollbar-width:thin;scrollbar-color:var(--color-neutral-700) transparent}.game-strip-scroll{position:absolute;z-index:1;top:.375rem;bottom:1rem;width:1.75rem;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-sm, .25rem);background:color-mix(in srgb,var(--color-bg) 88%,transparent);color:var(--color-text);font-size:var(--text-title-size);line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease}.game-strip-scroll-back{left:0}.game-strip-scroll-forward{right:0}.game-strip:hover .game-strip-scroll,.game-strip:focus-within .game-strip-scroll{opacity:1}.game-strip-scroll-off{visibility:hidden}.game-strip-scroll:hover{border-color:var(--color-neutral-500)}.game-strip-scroll:focus-visible{opacity:1;outline:2px solid var(--color-accent);outline-offset:-2px}.game-strip-tile{display:flex;flex-direction:column;gap:.125rem;align-items:flex-start;min-width:0;box-sizing:border-box;padding:.375rem .5rem;scroll-snap-align:start;border:1px solid var(--color-divider);border-radius:var(--radius-sm, .25rem);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.game-strip-tile:hover{border-color:var(--color-neutral-500)}.game-strip-selected,.game-strip-selected:hover{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.game-strip-tile:focus-visible{outline:2px solid var(--color-accent);outline-offset:-.25rem}.game-strip-head{display:flex;justify-content:space-between;align-items:center;align-self:stretch;gap:.25rem}.game-strip-date{color:var(--viz-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.game-strip-outcome{display:inline-grid;place-items:center;width:1rem;height:1rem;border-radius:50%;font-size:var(--text-caption-size);font-weight:var(--weight-semibold);line-height:1;color:var(--color-bg)}.game-strip-outcome-win{background:var(--viz-win)}.game-strip-outcome-draw{background:var(--viz-muted)}.game-strip-outcome-loss{background:var(--viz-loss)}.game-strip-accuracy{font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;color:var(--viz-ink)}.game-strip-accuracy-none{color:var(--viz-muted);font-weight:var(--weight-regular)}.game-strip-mark{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;font-size:var(--text-caption-size)}.game-strip-mark-against{color:var(--viz-loss)}.game-strip-mark-for{color:var(--viz-win)}.game-strip-mark-even,.game-strip-mark-unscanned{color:var(--viz-muted)}.game-strip-dot{width:.375rem;height:.375rem;border-radius:50%;background:currentColor}.game-strip-more{justify-content:center;align-items:center;color:var(--viz-muted);text-decoration:none;white-space:nowrap}a.game-strip-more:hover{color:var(--color-text)}.last-game{display:flex;flex-direction:column;gap:.5rem;min-width:0;border-radius:var(--radius-md, .5rem)}.last-game-link{cursor:pointer;outline-offset:.375rem}.last-game-link:focus-visible{outline:.125rem solid var(--color-accent)}.last-game-head{flex:1 1 auto;display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;min-width:0}.last-game-title{margin:0;font-size:var(--text-heading-size)}.last-game-meta{color:var(--color-text-muted, var(--viz-muted));font-size:var(--text-body-size)}.last-game-name{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:.375rem;min-width:0}.last-game-label{min-width:0;color:var(--viz-muted);font-size:var(--text-small-size);line-height:var(--text-small-line);font-weight:var(--text-small-weight)}.last-game-label-name{color:var(--viz-ink)}.last-game-label-name>[aria-hidden]{color:var(--viz-muted)}.last-game-open{margin-left:auto;display:inline-flex;align-items:center;gap:.25rem;color:var(--color-accent);text-decoration:none;white-space:nowrap;font-size:var(--text-body-size)}.last-game-open:hover{text-decoration:underline}.last-game-caret{width:.875rem;height:.875rem;fill:currentColor}.last-game-result-label{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight)}.last-game-result-figures{display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem}.last-game-result-figure{display:flex;flex-direction:column;gap:.125rem;min-width:0}.last-game-result-figure+.last-game-result-figure{align-items:flex-end;text-align:right}.last-game-result-value{font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);color:var(--viz-ink);font-variant-numeric:tabular-nums}.last-game-result-value.last-game-good{color:var(--viz-win)}.last-game-result-value.last-game-bad{color:var(--viz-loss)}.last-game-result-caption{font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--viz-muted)}.last-game-track{display:block;width:100%;height:auto}.last-game-track-rail{fill:var(--viz-grid)}.last-game-track-lost{fill:var(--viz-loss);fill-opacity:.35}.last-game-track-winning{fill:var(--viz-win);fill-opacity:.35}.last-game-track-bar{fill-opacity:.55}.last-game-track-start{fill:var(--color-surface);stroke-width:2.5}.last-game-track-end{stroke:var(--color-surface);stroke-width:2}.last-game-track-axis{display:grid;grid-template-columns:1fr auto 1fr;margin-top:-.25rem;font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--viz-muted)}.last-game-track-axis>:first-child{justify-self:start}.last-game-track-axis>:last-child{justify-self:end}.last-game-third-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0 0 .5rem;font-weight:var(--weight-semibold);min-width:0}.last-game-third-head>:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.last-game-third-move{font-weight:var(--weight-regular);color:var(--color-text)}.last-game-third-fine{color:var(--viz-muted);font-weight:var(--weight-medium)}.last-game-move{color:var(--color-accent);text-decoration:none;font-weight:var(--weight-semibold)}.last-game-move:hover{text-decoration:underline}.last-game-curve{display:block;width:100%;height:auto}.last-game-curve-link{cursor:pointer}.last-game-curve-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm, .25rem)}.last-game-clock{margin-top:.25rem}.last-game-clock-band{display:block;width:100%;height:.75rem}.last-game-clock-ok{fill:var(--viz-muted);opacity:.45}.last-game-clock-low{fill:var(--viz-loss)}.last-game-clock-tick{stroke:var(--viz-loss);stroke-width:1}.last-game-clock-labels{position:relative;display:flex;justify-content:space-between;gap:.5rem;font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--viz-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.last-game-clock-tick-label{position:absolute;top:0;transform:translate(-50%);color:var(--viz-loss)}.last-game-clock-lost{color:var(--viz-loss)}.last-game-hover-rule{stroke:var(--viz-grid);stroke-width:1;stroke-dasharray:2 2}.last-game-hover-point{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:1.5}.last-game-hover-tip{fill:var(--color-surface);stroke:var(--viz-grid);stroke-width:1}.last-game-hover-text{font-size:var(--text-chart-size);fill:var(--viz-ink);font-variant-numeric:tabular-nums}.last-game-axis{fill:var(--viz-muted);font-size:var(--text-chart-size);font-variant-numeric:tabular-nums}circle.last-game-mark-blunder{fill:var(--viz-grade-blunder);stroke:var(--color-surface);stroke-width:1}circle.last-game-mark-miss{fill:var(--viz-grade-miss);stroke:var(--color-surface);stroke-width:1}.legend-swatch.last-game-mark-blunder{background:var(--viz-grade-blunder);border-radius:50%}.legend-swatch.last-game-mark-miss{background:var(--viz-grade-miss);border-radius:50%}.last-game-marks-legend{margin-top:.25rem}.last-game-marks-count{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--viz-ink)}.last-game-strip{display:flex;flex-direction:column;gap:.5rem}.last-game-strip-moves{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem .375rem}.last-game-strip-item{display:flex;flex-direction:column;align-items:center;min-width:1.375rem;font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);font-variant-numeric:tabular-nums;white-space:nowrap}.last-game-strip-san{margin-top:.125rem;color:var(--viz-ink)}.last-game-strip-book{display:flex;flex-direction:column;align-items:center;align-self:stretch}.last-game-strip-book-label{font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:var(--text-caption-weight);color:var(--color-accent)}.last-game-strip-label{font-size:var(--text-caption-size);color:var(--viz-muted);margin-right:.25rem}.last-game-strip-move{display:inline-flex;align-items:center;justify-content:center;width:1.375rem;height:1.375rem;border-radius:.25rem;font-size:var(--text-caption-size);color:var(--color-bg);text-decoration:none;font-variant-numeric:tabular-nums}a.last-game-strip-move:hover{outline:2px solid var(--viz-ink);outline-offset:1px}a.last-game-strip-move:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.last-game-strip-exit{flex:1;width:2px;min-height:1.625rem;margin:0 .125rem;border-radius:1px;background:var(--color-accent)}.last-game-book-exit line{stroke:var(--color-accent);stroke-width:1;stroke-dasharray:3 3}.last-game-book-exit text{fill:var(--color-accent);font-size:var(--text-chart-size)}.last-game-habit-line{font-size:var(--text-label-size);color:var(--viz-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.last-game-habit-move{margin:0;font-size:var(--text-body-size)}.last-game-habit-played{color:var(--viz-grade-blunder);font-weight:var(--weight-semibold);text-decoration:none}a.last-game-habit-played:hover{text-decoration:underline;text-underline-offset:2px}.last-game-habit-best{color:var(--viz-grade-best)}.last-game-habit-bars{width:100%;height:auto;overflow:visible}.last-game-habit-bar rect{fill:var(--viz-grade-mistake)}.last-game-habit-current rect{fill:var(--viz-grade-blunder);stroke:var(--viz-ink);stroke-width:1.5}.last-game-habit-link{cursor:pointer}.last-game-habit-link:hover rect{filter:brightness(1.2)}.last-game-history{margin-top:.5rem}.last-game-row-mine .split-label{color:var(--viz-ink);font-weight:var(--weight-semibold)}.last-game-trend{display:block;width:100%;height:auto}.last-game-trend-dot circle{stroke:var(--color-surface);stroke-width:1}.last-game-trend-win circle{fill:var(--viz-win)}.last-game-trend-draw circle{fill:var(--viz-draw)}.last-game-trend-loss circle{fill:var(--viz-loss)}.last-game-trend-current circle{stroke:var(--viz-ink);stroke-width:2}.last-game-trend-link{cursor:pointer}.last-game-trend-link:hover circle{stroke:var(--viz-ink)}.last-game-filter{display:flex;gap:.25rem;width:100%;margin:0 auto;max-width:calc(var(--dash-max-columns, 3) * 24rem + (var(--dash-max-columns, 3) - 1) * 1rem)}.last-game-filter-option{padding:.25rem .75rem;border:1px solid var(--viz-grid);border-radius:999px;background:none;color:var(--viz-muted);font:inherit;font-size:var(--text-small-size);cursor:pointer}.last-game-filter-option:hover{color:var(--viz-ink)}.last-game-filter-on{background:color-mix(in srgb,var(--color-accent) 22%,transparent);border-color:var(--color-accent);color:var(--viz-ink)}.last-game-filter-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.library-filter{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.filter-menu-anchor{position:relative}.filter-button{display:inline-flex;align-items:center;gap:.375rem;background:none;border:.0625rem solid var(--color-divider);border-radius:var(--radius-sm);padding:.25rem .625rem;font:inherit;font-size:var(--text-small-size);color:var(--color-neutral-400);cursor:pointer}.filter-button:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.filter-button[aria-expanded=true]{color:var(--color-text);border-color:var(--color-neutral-500)}.filter-button-on,.filter-button-on:hover{color:var(--color-text);border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 14%,transparent)}.filter-button-value{color:var(--color-accent);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-caret{width:.625rem;height:.375rem;opacity:.7}.filter-button[aria-expanded=true] .filter-caret{transform:rotate(180deg)}.filter-menu{position:absolute;z-index:20;top:calc(100% + .25rem);left:0;min-width:13rem;max-height:22rem;overflow-y:auto;padding:var(--space-1);background:var(--color-surface);border:.0625rem solid var(--color-divider);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.filter-menu-group+.filter-menu-group{border-top:.0625rem solid var(--color-divider);margin-top:var(--space-1);padding-top:var(--space-1)}.filter-menu-heading{padding:.25rem .5rem;font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.filter-menu-option{display:flex;align-items:center;gap:.5rem;padding:.3125rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-small-size);cursor:pointer;white-space:nowrap}.filter-menu-option:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent)}.filter-menu-option input{accent-color:var(--color-accent);margin:0}.filter-menu-option-empty{color:var(--color-neutral-500)}.filter-menu-label{flex:1}.filter-menu-count{color:var(--color-neutral-500);font-variant-numeric:tabular-nums;font-size:var(--text-label-size)}.filter-menu-clear{display:block;width:100%;text-align:left;margin-top:var(--space-1);padding:.3125rem .5rem;font-size:var(--text-small-size)}.filter-more{font-size:var(--text-small-size);padding:.25rem .5rem}.filter-search{display:flex}.filter-input{width:11rem;padding:.25rem .5rem;font-size:var(--text-small-size);min-height:0}.filter-visually-hidden{position:absolute;width:.0625rem;height:.0625rem;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.filter-count{margin-left:auto;font-size:var(--text-small-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.filter-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.125rem .25rem .125rem .625rem;border-radius:62.5rem;background:color-mix(in srgb,var(--color-accent) 14%,transparent);border:.0625rem solid color-mix(in srgb,var(--color-accent) 45%,transparent);font-size:var(--text-label-size)}.filter-chip-label{color:var(--color-neutral-400)}.filter-chip-value{color:var(--color-text)}.filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;padding:0;border:none;border-radius:50%;background:none;color:var(--color-neutral-400);cursor:pointer}.filter-chip-remove:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 10%,transparent)}.filter-cross{width:.625rem;height:.625rem}.filter-clear{padding:.125rem .375rem;font-size:var(--text-label-size)}.filter-button:focus-visible,.filter-chip-remove:focus-visible,.filter-clear:focus-visible,.filter-more:focus-visible,.filter-input:focus-visible,.filter-menu-option:has(input:focus-visible){outline:.125rem solid var(--color-accent);outline-offset:.0625rem}.library-game-list .game-row{cursor:pointer}.library-game-list .game-row:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.library-game-list .game-opening{color:var(--color-neutral-500);max-width:22rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-game-list .game-stage-score{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-neutral-400)}.library-game-list .game-stage-score-good{color:var(--viz-score-gain)}.library-game-list .game-stage-score-bad{color:var(--viz-score-loss)}.library-game-list time{font-variant-numeric:tabular-nums;white-space:nowrap}.library-game-list .table{width:100%}.library-game-list .game-number{width:1%;text-align:right;color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.library-game-list{display:flex;flex-direction:column;flex:1 1 0}.library-game-list-rows{flex:1 1 0;overflow:hidden;min-height:calc((var(--min-rows) + 1) * 2.25rem)}.library-game-list td{white-space:nowrap}.library-game-list-pager{display:flex;align-items:center;justify-content:center;gap:var(--space-1);padding-top:var(--space-2)}.library-game-list-pager .btn{min-width:2rem;justify-content:center}.library-game-list-page{color:var(--color-neutral-400);font-variant-numeric:tabular-nums;white-space:nowrap;padding-inline:var(--space-2)}.library-game-list-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.library-game-list-head h2{margin-bottom:0}.import-chesscom{display:flex;align-items:center;gap:var(--space-3)}.import-chesscom-status{color:var(--color-neutral-500);font-size:var(--text-small-size);max-width:22rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.import-chesscom-error{color:var(--color-accent-300)}.import-chesscom-control{display:inline-flex;flex-direction:column;align-items:stretch;gap:.25rem}.import-chesscom-button{font-variant-numeric:tabular-nums;white-space:nowrap}.import-chesscom-button:disabled[aria-busy=true]{opacity:1;cursor:progress}.import-chesscom-meta{opacity:.75}.import-chesscom-progress{display:block;height:.1875rem;border-radius:.125rem;background:var(--color-neutral-800);overflow:hidden}.import-chesscom-progress>span{display:block;height:100%;background:var(--color-accent);transition:width .3s ease}.settings-form{display:flex;flex-direction:column;gap:var(--space-3)}.settings-form .field{display:flex;flex-direction:column;gap:var(--space-1)}.settings-form .input{max-width:24rem}.settings-help{margin:0;font-size:var(--text-label-size);color:var(--color-neutral-500)}.settings-actions{display:flex;align-items:center;gap:var(--space-3)}.settings-status{font-size:var(--text-label-size);color:var(--color-neutral-500)}.settings-status[data-status=saved],.settings-status[data-status=error]{color:var(--color-accent-300)}.lost-ground-body{display:flex;flex-direction:column}.middlegame-conversion-body{display:flex;flex-direction:column;gap:.75rem}.middlegame-conversion-counts{font-variant-numeric:tabular-nums}.middlegame-card-ratio{margin:0;font-size:var(--text-small-size);color:var(--viz-muted);font-variant-numeric:tabular-nums}.middlegame-card-link{align-self:flex-start;font-size:var(--text-small-size);color:var(--color-accent)}.mg-positions{display:grid;grid-template-columns:minmax(0,8.5rem) minmax(4rem,1fr) auto auto;align-items:center;gap:.375rem .5rem;font-size:var(--text-small-size);color:var(--viz-ink);font-variant-numeric:tabular-nums}.mg-positions-row{display:contents}.mg-positions-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mg-positions-track{position:relative;display:block;height:.625rem}.mg-positions-track:before{content:"";position:absolute;left:50%;top:-.1875rem;bottom:-.1875rem;width:1px;background:var(--viz-grid)}.mg-positions-fill{position:absolute;top:0;bottom:0;min-width:.125rem;border-radius:.125rem}.mg-positions-value{text-align:right;min-width:3rem}.mg-positions-games{text-align:right;min-width:1.5rem;color:var(--viz-muted);font-size:var(--text-label-size)}.middlegame-results-body{display:flex;flex-direction:column}.turns-body{display:flex;flex-direction:column;gap:.25rem}.turns-chart{display:grid;grid-template-columns:repeat(var(--turns-columns, 6),minmax(0,1fr));gap:.375rem;align-items:end}.turns-col{display:flex;flex-direction:column;align-items:stretch;gap:.25rem;min-width:0}a.turns-col:hover{text-decoration:none}a.turns-col:hover .turns-bar{filter:brightness(1.15)}.turns-value{text-align:center;font-size:var(--text-label-size);color:var(--viz-ink);font-variant-numeric:tabular-nums;white-space:nowrap}.turns-value-none{color:var(--viz-muted)}.turns-track{height:var(--chart-max-height, 8rem);display:flex;align-items:flex-end;border-bottom:1px solid var(--viz-grid)}.turns-bar{display:block;width:100%;background:var(--viz-score-loss);border-radius:.125rem .125rem 0 0}.turns-label{text-align:center;font-size:var(--text-label-size);color:var(--viz-muted);white-space:nowrap}.turns-axis{text-align:center;font-size:var(--text-caption-size);color:var(--viz-muted)}.settings-mistakes-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}.settings-mistakes-summary::-webkit-details-marker{display:none}.settings-mistakes-summary h2{margin:0}.settings-mistakes-summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm, .25rem)}.settings-mistakes-caret{width:1rem;height:1rem;fill:currentColor;flex:none;transition:transform .15s ease}.settings-mistakes[open]>.settings-mistakes-summary{margin-bottom:.75rem}.settings-mistakes[open] .settings-mistakes-caret{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.settings-mistakes-caret{transition:none}}.settings-mistakes-intro{margin:0 0 1rem;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--color-neutral-500);max-width:40rem}.settings-mistakes-form{display:flex;flex-direction:column;gap:1rem}.settings-mistakes-group{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.settings-mistakes-group legend{font-weight:var(--weight-semibold);margin-bottom:.5rem;padding:0}.settings-mistakes-field{display:grid;grid-template-columns:minmax(10rem,14rem) auto;column-gap:1rem;row-gap:.25rem;align-items:center}.settings-mistakes-input{display:inline-flex;align-items:center;gap:.5rem}.settings-mistakes-input .input{width:6rem;font-variant-numeric:tabular-nums}.settings-mistakes-unit{font-size:var(--text-label-size);color:var(--color-neutral-500)}.settings-mistakes-help{grid-column:1 / -1;margin:0;font-size:var(--text-label-size);line-height:var(--text-label-line);color:var(--color-neutral-500);max-width:40rem}.settings-mistakes-default{white-space:nowrap}.settings-mistakes-error{color:var(--viz-loss);font-size:var(--text-label-size);margin:0}.settings-mistakes-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.settings-mistakes-status{font-size:var(--text-label-size);color:var(--color-neutral-500)}@media(max-width:40rem){.settings-mistakes-field{grid-template-columns:1fr}}.mistakes-scroll{overflow-x:auto}.mistakes-table .table th,.mistakes-table .table td{padding-block:var(--space-1)}.mistakes-table td{white-space:nowrap;vertical-align:middle}.mistakes-clip{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mistakes-opponent .mistakes-clip,.mistakes-pattern .mistakes-clip{max-width:11rem}.mistakes-material .mistakes-clip{max-width:7rem}.mistakes-context .mistakes-clip{max-width:15rem}.mistakes-row-link{cursor:pointer}.mistakes-row-link:hover td{background:color-mix(in srgb,var(--color-text) 4%,transparent)}.mistakes-row-link:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:-.125rem}.mistakes-move{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.mistakes-score{font-variant-numeric:tabular-nums}.mistakes-severity{font-size:var(--text-small-size)}.mistakes-severity-decisive{color:var(--viz-grade-blunder)}.mistakes-severity-serious{color:var(--viz-grade-mistake)}.mistakes-severity-minor{color:var(--color-neutral-400)}.mistakes-practice a{color:var(--color-accent);text-decoration:none;white-space:nowrap}.mistakes-practice a:hover{text-decoration:underline}.mistakes-table .mistakes-number{width:1%;text-align:right;color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.mistakes-cost{text-align:right;font-variant-numeric:tabular-nums}.mistakes-table-head{align-items:center}.mistakes-order .seg-opt{padding:.25rem .625rem}.mistakes-table-note{margin:0;font-size:var(--text-small-size);color:var(--viz-muted)}.mistakes-show-all{align-self:center;padding:.375rem .875rem;border:.0625rem solid var(--color-divider);border-radius:var(--radius-md);background:none;color:var(--color-accent);font:inherit;font-size:var(--text-small-size);cursor:pointer}.mistakes-show-all:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)}.mistakes-show-all:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:.125rem}.mistake-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem}.mistake-chip-group{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem}.mistake-chip-group-label{font-size:var(--text-label-size);color:var(--viz-muted);margin-right:.125rem}.mistake-chip-variations{flex-basis:100%;padding-left:var(--space-3, 1rem)}.mistake-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .625rem;border:.0625rem solid var(--color-divider);border-radius:62.4375rem;background:none;color:var(--viz-ink);font:inherit;font-size:var(--text-small-size);line-height:1.4;cursor:pointer}.mistake-chip:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 7%,transparent)}.mistake-chip:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:.125rem}.mistake-chip:disabled{cursor:default}.mistake-chip-count{color:var(--viz-muted);font-size:var(--text-label-size);font-variant-numeric:tabular-nums}.mistake-chip-on{border-color:var(--color-accent);color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.mistake-chip-on .mistake-chip-count{color:inherit}.mistake-chip-empty{opacity:.45}.mistake-chip-clear{color:var(--color-accent);border-style:dashed}.mistake-bars{display:flex;flex-direction:column;gap:.5rem}.mistake-bar-row{display:grid;grid-template-columns:minmax(0,8.5rem) 1fr 2.25rem;align-items:center;gap:.5rem;font-size:var(--text-small-size);color:var(--viz-ink)}.mistake-bars-extra .mistake-bar-row{grid-template-columns:minmax(0,8.5rem) 1fr 2.25rem 2.25rem}.mistake-bar-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mistake-bar-track{display:flex;height:.625rem}.mistake-bar-fill{display:block;height:100%;min-width:.125rem;border-radius:.125rem}a.mistake-bar-fill:hover{filter:brightness(1.15)}.mistake-bar-value,.mistake-bar-extra{text-align:right;font-variant-numeric:tabular-nums}.mistake-bar-extra{color:var(--viz-muted);font-size:var(--text-label-size)}.mistake-bar-none{color:var(--viz-muted)}.mistake-weeks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;height:8rem}.mistake-week{display:flex;flex-direction:column;align-items:stretch;gap:.25rem;min-width:0;text-align:center}.mistake-week-value{font-size:var(--text-small-size);color:var(--viz-ink);font-variant-numeric:tabular-nums}.mistake-week-track{flex:1;display:flex;align-items:flex-end;justify-content:center;border-bottom:.0625rem solid var(--viz-grid)}.mistake-week-fill{display:block;width:60%;min-height:.125rem;border-radius:.125rem .125rem 0 0}a.mistake-week-fill:hover{filter:brightness(1.15)}.mistake-week-label{font-size:var(--text-label-size);color:var(--viz-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-openings .history-table{width:100%;border-collapse:collapse;font-size:var(--text-small-size);font-variant-numeric:tabular-nums}.history-openings .history-table th{text-align:left;font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500);padding:0 var(--space-1) var(--space-1)}.history-openings .history-table td{padding:var(--space-1);border-top:1px solid var(--color-divider)}.history-openings .history-current .history-date{font-weight:var(--weight-medium)}.history-openings .history-date{color:var(--color-neutral-300);white-space:nowrap}.history-openings .history-white{color:var(--color-neutral-100)}.history-openings .history-black{color:var(--color-neutral-500)}.history-openings .history-score{text-align:right;white-space:nowrap}.history-openings .history-loss{color:var(--color-neutral-300)}.history-openings .history-loss-big{color:var(--color-accent-300);font-weight:var(--weight-medium)}.history-openings .history-pending{color:var(--color-neutral-500);font-size:var(--text-label-size)}.history-openings .history-scan,.history-openings .history-more{padding:.063rem var(--space-2);font-size:var(--text-label-size)}.history-openings .history-foot{margin:var(--space-2) 0 0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);color:var(--color-neutral-500);font-size:var(--text-label-size)}.history-openings .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.history-table .history-row{cursor:pointer}.history-table .history-row:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.history-table .history-row:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.history-table th.history-score,.history-table td.history-score{text-align:right}.history-table .history-row-open{box-shadow:inset 2px 0 0 var(--color-neutral-600)}.history-table .history-row-active{background:color-mix(in srgb,var(--color-accent) 12%,transparent);box-shadow:inset 2px 0 0 var(--color-accent)}.habit-rows{display:flex;flex-direction:column}.habit-row{display:grid;grid-template-columns:minmax(0,1fr) 6rem 6rem 3.5rem 3.5rem;column-gap:.75rem;align-items:center;padding:.375rem 0;font-size:var(--text-small-size);border-top:1px solid color-mix(in srgb,var(--viz-grid) 60%,transparent)}.habit-head{border-top:0;padding-top:0;font-size:var(--text-caption-size);color:var(--viz-muted)}.habit-position{display:flex;flex-direction:column;min-width:0;color:inherit;text-decoration:none}a.habit-position:hover .habit-opening{text-decoration:underline;text-underline-offset:.125rem}a.habit-position:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:.125rem}.habit-opening{color:var(--color-accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-line{font-size:var(--text-caption-size);color:var(--viz-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-played{color:var(--viz-loss);white-space:nowrap}.habit-best{color:var(--viz-win);white-space:nowrap}.habit-games,.habit-loss{text-align:right;font-variant-numeric:tabular-nums}.habit-loss{color:var(--viz-loss)}.habit-open{cursor:pointer}.habit-open:hover{background:color-mix(in srgb,var(--viz-grid) 50%,transparent)}@media(max-width:40rem){.habit-row{grid-template-columns:minmax(0,1fr) 4.5rem 4.5rem 2.5rem 3rem;column-gap:.5rem}}.openings-performance{display:flex;flex-direction:column;gap:1rem}.openings-colour{flex:1 1 auto;display:flex;flex-direction:column;gap:.5rem;min-width:0}.openings-group{display:flex;flex-direction:column;gap:.375rem;margin-top:.5rem}.openings-group-title{margin:0;font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--viz-muted)}details.openings-group>summary{cursor:pointer}details.openings-group[open]>summary{margin-bottom:.375rem}.openings-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;font-size:var(--text-small-size)}.openings-list li{display:flex;justify-content:space-between;gap:.75rem}.openings-list-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--viz-ink)}.openings-list-detail{flex:none;color:var(--viz-muted);font-size:var(--text-label-size)}.openings-rows{display:flex;flex-direction:column;gap:.375rem;font-size:var(--text-small-size);color:var(--viz-ink)}.openings-row{display:grid;grid-template-columns:minmax(0,18rem) 1fr 2.5rem 3.5rem;align-items:center;gap:.5rem}.openings-row-head{font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--viz-muted)}.openings-row-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--viz-ink)}.openings-games-track{display:flex;height:.625rem}.openings-games-bar{display:block;height:100%;min-width:.125rem;border-radius:.125rem;background:var(--viz-draw)}.openings-col-num{text-align:right;font-variant-numeric:tabular-nums}.openings-score-good{color:var(--viz-win)}.openings-score-bad{color:var(--viz-loss)}.openings-score-none,.openings-variation{color:var(--viz-muted)}.openings-waiting{margin:0;font-size:var(--text-body-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.openings-family>summary{list-style:none;cursor:pointer}.openings-family>summary::-webkit-details-marker{display:none}.openings-family-name{display:flex;align-items:center;gap:.375rem;min-width:0}.openings-caret{flex:none;font-size:var(--text-caption-size);color:var(--viz-muted);transition:transform .12s}.openings-family[open] .openings-caret{transform:rotate(90deg)}.openings-variations{display:flex;flex-direction:column;gap:.25rem;margin:.375rem 0 .25rem}.openings-row-variation{font-size:var(--text-label-size)}.openings-row-variation .openings-row-name{padding-left:1rem;color:var(--viz-muted)}.openings-row-variation .openings-games-bar{opacity:.6}.accuracy-plot{position:relative;margin-top:.5rem}.accuracy-dot{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:1.5}.accuracy-dot-time{fill:var(--viz-daily)}.accuracy-swatch-time{background:var(--viz-daily);border-radius:50%}.accuracy-legend{margin-top:.25rem}.accuracy-average{stroke:var(--viz-muted);stroke-width:1;stroke-dasharray:4 3}.accuracy-point-link{cursor:pointer}.accuracy-point-link:focus-visible{outline:none}.accuracy-point-active .accuracy-dot,.accuracy-point-link:focus-visible .accuracy-dot{stroke:var(--color-accent);stroke-width:3}.accuracy-tip{position:absolute;transform:translate(-50%,calc(-100% - .625rem));max-width:16rem;padding:.25rem .5rem;border-radius:var(--radius-sm, .25rem);background:var(--color-surface);color:var(--color-text);border:1px solid var(--viz-grid);box-shadow:var(--shadow-tooltip);font-size:var(--text-label-size);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;z-index:1}.accuracy-scale-note{font-size:var(--text-chart-size);fill:var(--viz-muted)}.results-card-body{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}.stage-flow-rows{display:flex;flex-direction:column;gap:.625rem}.stage-flow-row{display:grid;grid-template-columns:8rem minmax(0,1fr) 3rem;gap:.75rem;align-items:center;font-size:var(--text-small-size)}.stage-flow-label{white-space:nowrap}.stage-flow-games{color:var(--viz-muted);font-variant-numeric:tabular-nums;margin-left:.25rem}.stage-flow-bar{display:flex;gap:var(--space-1);height:1rem;border-radius:.25rem;overflow:hidden}.stage-flow-segment{display:block;height:100%;min-width:.125rem}a.stage-flow-segment:hover{filter:brightness(1.15)}a.stage-flow-segment:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.stage-flow-against{text-align:right;color:var(--viz-muted);font-variant-numeric:tabular-nums}.stage-flow-worst{color:var(--viz-loss);font-weight:var(--weight-semibold)}.stage-flow-legend{margin-top:.5rem}.stage-flow-head{font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);margin-bottom:-.25rem}.stage-flow-head .stage-flow-against{color:var(--viz-muted)}@media(max-width:640px){.stage-flow-row{grid-template-columns:6rem minmax(0,1fr) 2.75rem}}.stage-scatter-plot{position:relative;margin:.25rem 0 0}.stage-scatter-plot.plot-fill{min-height:8rem}.stage-scatter-plot.plot-fill>svg{position:absolute;inset:0;width:100%;height:100%}.stage-scatter-zero{stroke:var(--viz-muted);stroke-width:1}.stage-scatter-direction{font-size:var(--text-chart-size);fill:var(--viz-muted);pointer-events:none}.stage-scatter-dot{stroke:var(--color-surface);stroke-width:1.5}.stage-scatter-dot-win,.stage-scatter-swatch-win{fill:var(--viz-win);background:var(--viz-win)}.stage-scatter-dot-draw,.stage-scatter-swatch-draw{fill:var(--viz-draw);background:var(--viz-draw)}.stage-scatter-dot-loss,.stage-scatter-swatch-loss{fill:var(--viz-loss);background:var(--viz-loss)}.stage-scatter-legend [class*=stage-scatter-swatch-]{border-radius:50%}.stage-scatter-legend{margin-top:.25rem;justify-content:center}.stage-scatter-point-link{cursor:pointer}.stage-scatter-point-link:focus-visible{outline:none}.stage-scatter-point-active .stage-scatter-dot,.stage-scatter-point-link:focus-visible .stage-scatter-dot{stroke:var(--color-accent);stroke-width:3}.stage-scatter-tip{position:absolute;transform:translate(-50%,calc(-100% - .625rem));max-width:18rem;padding:.25rem .5rem;border-radius:var(--radius-sm, .25rem);background:var(--color-surface);color:var(--color-text);border:1px solid var(--viz-grid);box-shadow:var(--shadow-tooltip);font-size:var(--text-label-size);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;z-index:1}.board-tabs{--board-tabs-height: 1.75rem;display:flex;align-items:stretch;gap:var(--space-1);height:var(--board-tabs-height);min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;border-bottom:1px solid var(--color-divider)}.board-tabs::-webkit-scrollbar{display:none}.board-tab{display:flex;align-items:center;flex:0 1 auto;min-width:0;max-width:12rem;border-bottom:2px solid transparent;margin-bottom:-1px}.board-tab-active{border-bottom-color:var(--color-accent)}.board-tab-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 var(--space-2);border:0;background:none;cursor:pointer;color:var(--color-neutral-500);font:inherit;font-size:var(--text-label-size)}.board-tab-label:hover,.board-tab-active .board-tab-label{color:var(--color-text)}.board-tab-pinned .board-tab-label{font-weight:var(--weight-medium)}.board-tab-close{display:grid;place-items:center;width:1.1rem;height:1.1rem;margin-right:var(--space-1);border:0;border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--color-neutral-600)}.board-tab-close:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 8%,transparent)}.board-tab-label:focus-visible,.board-tab-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.board-tab-constrained{border-bottom-color:var(--color-accent)}.board-tab-constrained .board-tab-label{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-accent);font-weight:var(--weight-semibold)}.board-tab-icon{flex:none}.cg-wrap{box-sizing:content-box;position:relative;display:block}cg-container{position:absolute;width:100%;height:100%;display:block;top:0}cg-board{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:0;background-size:cover}.cg-wrap.manipulable cg-board{cursor:pointer}cg-board square{position:absolute;top:0;left:0;width:12.5%;height:12.5%;pointer-events:none}cg-board square.move-dest{pointer-events:auto}cg-board square.last-move{will-change:transform}.cg-wrap piece{position:absolute;top:0;left:0;width:12.5%;height:12.5%;background-size:cover;z-index:2;will-change:transform;pointer-events:none}cg-board piece.dragging{cursor:move;z-index:11!important}piece.anim{z-index:8}piece.fading{z-index:1;opacity:.5}.cg-wrap piece.ghost{opacity:.3}.cg-wrap piece svg{overflow:hidden;position:relative;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;opacity:.6}.cg-wrap cg-auto-pieces,.cg-wrap .cg-shapes,.cg-wrap .cg-custom-svgs,.cg-wrap .cg-shapes-below,.cg-wrap .cg-custom-below{overflow:visible;position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.cg-wrap cg-auto-pieces{z-index:2}.cg-wrap cg-auto-pieces piece{opacity:.3}.cg-wrap .cg-shapes{overflow:hidden;opacity:.6;z-index:2}.cg-wrap .cg-shapes-below{overflow:hidden;z-index:1}.cg-wrap .cg-custom-below{z-index:1}.cg-wrap .cg-custom-svgs{z-index:9}.cg-wrap .cg-custom-svgs svg,.cg-wrap .cg-custom-below svg{overflow:visible}.cg-wrap coords{position:absolute;display:flex;pointer-events:none;opacity:.8;font-family:sans-serif;font-size:9px}.cg-wrap coords.ranks{left:4px;top:-20px;flex-flow:column-reverse;height:100%;width:12px}.cg-wrap coords.ranks.black{flex-flow:column}.cg-wrap coords.ranks.left{left:-15px;align-items:flex-end}.cg-wrap coords.files{bottom:-4px;left:24px;flex-flow:row;width:100%;height:16px;text-transform:uppercase;text-align:center}.cg-wrap coords.files.black{flex-flow:row-reverse}.cg-wrap coords coord{flex:1 1 auto}.cg-wrap coords.ranks coord{transform:translateY(39%)}.cg-wrap coords.squares{bottom:0;left:0;text-transform:uppercase;text-align:right;flex-flow:column-reverse;height:100%;width:12.5%}.cg-wrap coords.squares.black{flex-flow:column}.cg-wrap coords.squares.left{text-align:left}.cg-wrap coords.squares coord{padding:6% 4%}.cg-wrap coords.squares.rank2{transform:translate(100%)}.cg-wrap coords.squares.rank3{transform:translate(200%)}.cg-wrap coords.squares.rank4{transform:translate(300%)}.cg-wrap coords.squares.rank5{transform:translate(400%)}.cg-wrap coords.squares.rank6{transform:translate(500%)}.cg-wrap coords.squares.rank7{transform:translate(600%)}.cg-wrap coords.squares.rank8{transform:translate(700%)}cg-board{background-color:#f0d9b5;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4PSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogICAgIHZpZXdCb3g9IjAgMCA4IDgiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyI+CjxnIGlkPSJhIj4KICA8ZyBpZD0iYiI+CiAgICA8ZyBpZD0iYyI+CiAgICAgIDxnIGlkPSJkIj4KICAgICAgICA8cmVjdCB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZSIgb3BhY2l0eT0iMCIvPgogICAgICAgIDx1c2UgeD0iMSIgeT0iMSIgaHJlZj0iI2UiIHg6aHJlZj0iI2UiLz4KICAgICAgICA8cmVjdCB5PSIxIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZiIgb3BhY2l0eT0iMC4yIi8+CiAgICAgICAgPHVzZSB4PSIxIiB5PSItMSIgaHJlZj0iI2YiIHg6aHJlZj0iI2YiLz4KICAgICAgPC9nPgogICAgICA8dXNlIHg9IjIiIGhyZWY9IiNkIiB4OmhyZWY9IiNkIi8+CiAgICA8L2c+CiAgICA8dXNlIHg9IjQiIGhyZWY9IiNjIiB4OmhyZWY9IiNjIi8+CiAgPC9nPgogIDx1c2UgeT0iMiIgaHJlZj0iI2IiIHg6aHJlZj0iI2IiLz4KPC9nPgo8dXNlIHk9IjQiIGhyZWY9IiNhIiB4OmhyZWY9IiNhIi8+Cjwvc3ZnPg==)}cg-board square.move-dest{background:radial-gradient(#14551e80 22%,#208530 0,#0000004d,#0000 0)}cg-board square.premove-dest{background:radial-gradient(#141e5580 22%,#203085 0,#0000004d,#0000 0)}cg-board square.oc.move-dest{background:radial-gradient(transparent 0%,transparent 80%,rgba(20,85,0,.3) 80%)}cg-board square.oc.premove-dest{background:radial-gradient(transparent 0%,transparent 80%,rgba(20,30,85,.2) 80%)}cg-board square.move-dest:hover,cg-board square.move-dest.hover{background:#14551e4d}cg-board square.premove-dest:hover,cg-board square.premove-dest.hover{background:#141e5533}cg-board square.last-move{background-color:#9bc70069}cg-board square.selected{background-color:#14551e80}cg-board square.check{background:radial-gradient(ellipse at center,red,#e70000 25%,#a9000000 89%,#9e000000)}cg-board square.current-premove{background-color:#141e5580}.orientation-white .ranks :nth-child(odd),.orientation-white .files :nth-child(2n),.orientation-black .ranks :nth-child(2n),.orientation-black .files :nth-child(odd),coords.squares:nth-of-type(odd) :nth-child(2n),coords.squares:nth-of-type(2n) :nth-child(odd){color:#484848cc}.orientation-white .ranks :nth-child(2n),.orientation-white .files :nth-child(odd),.orientation-black .ranks :nth-child(odd),.orientation-black .files :nth-child(2n),coords.squares:nth-of-type(odd) :nth-child(odd),coords.squares:nth-of-type(2n) :nth-child(2n){color:#fffc}.cg-wrap piece.pawn.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PHBhdGggZD0iTTIyLjUgOWMtMi4yMSAwLTQgMS43OS00IDQgMCAuODkuMjkgMS43MS43OCAyLjM4QzE3LjMzIDE2LjUgMTYgMTguNTkgMTYgMjFjMCAyLjAzLjk0IDMuODQgMi40MSA1LjAzLTMgMS4wNi03LjQxIDUuNTUtNy40MSAxMy40N2gyM2MwLTcuOTItNC40MS0xMi40MS03LjQxLTEzLjQ3IDEuNDctMS4xOSAyLjQxLTMgMi40MS01LjAzIDAtMi40MS0xLjMzLTQuNS0zLjI4LTUuNjIuNDktLjY3Ljc4LTEuNDkuNzgtMi4zOCAwLTIuMjEtMS43OS00LTQtNHoiIGZpbGw9IiNmZmYiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==)}.cg-wrap piece.bishop.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxnIGZpbGw9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJidXR0Ij48cGF0aCBkPSJNOSAzNmMzLjM5LS45NyAxMC4xMS40MyAxMy41LTIgMy4zOSAyLjQzIDEwLjExIDEuMDMgMTMuNSAyIDAgMCAxLjY1LjU0IDMgMi0uNjguOTctMS42NS45OS0zIC41LTMuMzktLjk3LTEwLjExLjQ2LTEzLjUtMS0zLjM5IDEuNDYtMTAuMTEuMDMtMTMuNSAxLTEuMzU0LjQ5LTIuMzIzLjQ3LTMtLjUgMS4zNTQtMS45NCAzLTIgMy0yeiIvPjxwYXRoIGQ9Ik0xNSAzMmMyLjUgMi41IDEyLjUgMi41IDE1IDAgLjUtMS41IDAtMiAwLTIgMC0yLjUtMi41LTQtMi41LTQgNS41LTEuNSA2LTExLjUtNS0xNS41LTExIDQtMTAuNSAxNC01IDE1LjUgMCAwLTIuNSAxLjUtMi41IDQgMCAwLS41LjUgMCAyeiIvPjxwYXRoIGQ9Ik0yNSA4YTIuNSAyLjUgMCAxIDEtNSAwIDIuNSAyLjUgMCAxIDEgNSAweiIvPjwvZz48cGF0aCBkPSJNMTcuNSAyNmgxME0xNSAzMGgxNW0tNy41LTE0LjV2NU0yMCAxOGg1IiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PC9nPjwvc3ZnPg==)}.cg-wrap piece.knight.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxMGMxMC41IDEgMTYuNSA4IDE2IDI5SDE1YzAtOSAxMC02LjUgOC0yMSIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0yNCAxOGMuMzggMi45MS01LjU1IDcuMzctOCA5LTMgMi0yLjgyIDQuMzQtNSA0LTEuMDQyLS45NCAxLjQxLTMuMDQgMC0zLTEgMCAuMTkgMS4yMy0xIDItMSAwLTQuMDAzIDEtNC00IDAtMiA2LTEyIDYtMTJzMS44OS0xLjkgMi0zLjVjLS43My0uOTk0LS41LTItLjUtMyAxLTEgMyAyLjUgMyAyLjVoMnMuNzgtMS45OTIgMi41LTNjMSAwIDEgMyAxIDMiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNOS41IDI1LjVhLjUuNSAwIDEgMS0xIDAgLjUuNSAwIDEgMSAxIDB6bTUuNDMzLTkuNzVhLjUgMS41IDMwIDEgMS0uODY2LS41LjUgMS41IDMwIDEgMSAuODY2LjV6IiBmaWxsPSIjMDAwIi8+PC9nPjwvc3ZnPg==)}.cg-wrap piece.rook.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik05IDM5aDI3di0zSDl2M3ptMy0zdi00aDIxdjRIMTJ6bS0xLTIyVjloNHYyaDVWOWg1djJoNVY5aDR2NSIgc3Ryb2tlLWxpbmVjYXA9ImJ1dHQiLz48cGF0aCBkPSJNMzQgMTRsLTMgM0gxNGwtMy0zIi8+PHBhdGggZD0iTTMxIDE3djEyLjVIMTRWMTciIHN0cm9rZS1saW5lY2FwPSJidXR0IiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PHBhdGggZD0iTTMxIDI5LjVsMS41IDIuNWgtMjBsMS41LTIuNSIvPjxwYXRoIGQ9Ik0xMSAxNGgyMyIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjwvZz48L3N2Zz4=)}.cg-wrap piece.queen.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik04IDEyYTIgMiAwIDEgMS00IDAgMiAyIDAgMSAxIDQgMHptMTYuNS00LjVhMiAyIDAgMSAxLTQgMCAyIDIgMCAxIDEgNCAwek00MSAxMmEyIDIgMCAxIDEtNCAwIDIgMiAwIDEgMSA0IDB6TTE2IDguNWEyIDIgMCAxIDEtNCAwIDIgMiAwIDEgMSA0IDB6TTMzIDlhMiAyIDAgMSAxLTQgMCAyIDIgMCAxIDEgNCAweiIvPjxwYXRoIGQ9Ik05IDI2YzguNS0xLjUgMjEtMS41IDI3IDBsMi0xMi03IDExVjExbC01LjUgMTMuNS0zLTE1LTMgMTUtNS41LTE0VjI1TDcgMTRsMiAxMnoiIHN0cm9rZS1saW5lY2FwPSJidXR0Ii8+PHBhdGggZD0iTTkgMjZjMCAyIDEuNSAyIDIuNSA0IDEgMS41IDEgMSAuNSAzLjUtMS41IDEtMS41IDIuNS0xLjUgMi41LTEuNSAxLjUuNSAyLjUuNSAyLjUgNi41IDEgMTYuNSAxIDIzIDAgMCAwIDEuNS0xIDAtMi41IDAgMCAuNS0xLjUtMS0yLjUtLjUtMi41LS41LTIgLjUtMy41IDEtMiAyLjUtMiAyLjUtNC04LjUtMS41LTE4LjUtMS41LTI3IDB6IiBzdHJva2UtbGluZWNhcD0iYnV0dCIvPjxwYXRoIGQ9Ik0xMS41IDMwYzMuNS0xIDE4LjUtMSAyMiAwTTEyIDMzLjVjNi0xIDE1LTEgMjEgMCIgZmlsbD0ibm9uZSIvPjwvZz48L3N2Zz4=)}.cg-wrap piece.king.white{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMi41IDExLjYzVjZNMjAgOGg1IiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PHBhdGggZD0iTTIyLjUgMjVzNC41LTcuNSAzLTEwLjVjMCAwLTEtMi41LTMtMi41cy0zIDIuNS0zIDIuNWMtMS41IDMgMyAxMC41IDMgMTAuNSIgZmlsbD0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9ImJ1dHQiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiLz48cGF0aCBkPSJNMTEuNSAzN2M1LjUgMy41IDE1LjUgMy41IDIxIDB2LTdzOS00LjUgNi0xMC41Yy00LTYuNS0xMy41LTMuNS0xNiA0VjI3di0zLjVjLTMuNS03LjUtMTMtMTAuNS0xNi00LTMgNiA1IDEwIDUgMTBWMzd6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTExLjUgMzBjNS41LTMgMTUuNS0zIDIxIDBtLTIxIDMuNWM1LjUtMyAxNS41LTMgMjEgMG0tMjEgMy41YzUuNS0zIDE1LjUtMyAyMSAwIi8+PC9nPjwvc3ZnPg==)}.cg-wrap piece.pawn.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PHBhdGggZD0iTTIyLjUgOWMtMi4yMSAwLTQgMS43OS00IDQgMCAuODkuMjkgMS43MS43OCAyLjM4QzE3LjMzIDE2LjUgMTYgMTguNTkgMTYgMjFjMCAyLjAzLjk0IDMuODQgMi40MSA1LjAzLTMgMS4wNi03LjQxIDUuNTUtNy40MSAxMy40N2gyM2MwLTcuOTItNC40MS0xMi40MS03LjQxLTEzLjQ3IDEuNDctMS4xOSAyLjQxLTMgMi40MS01LjAzIDAtMi40MS0xLjMzLTQuNS0zLjI4LTUuNjIuNDktLjY3Ljc4LTEuNDkuNzgtMi4zOCAwLTIuMjEtMS43OS00LTQtNHoiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==)}.cg-wrap piece.bishop.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxnIGZpbGw9IiMwMDAiIHN0cm9rZS1saW5lY2FwPSJidXR0Ij48cGF0aCBkPSJNOSAzNmMzLjM5LS45NyAxMC4xMS40MyAxMy41LTIgMy4zOSAyLjQzIDEwLjExIDEuMDMgMTMuNSAyIDAgMCAxLjY1LjU0IDMgMi0uNjguOTctMS42NS45OS0zIC41LTMuMzktLjk3LTEwLjExLjQ2LTEzLjUtMS0zLjM5IDEuNDYtMTAuMTEuMDMtMTMuNSAxLTEuMzU0LjQ5LTIuMzIzLjQ3LTMtLjUgMS4zNTQtMS45NCAzLTIgMy0yeiIvPjxwYXRoIGQ9Ik0xNSAzMmMyLjUgMi41IDEyLjUgMi41IDE1IDAgLjUtMS41IDAtMiAwLTIgMC0yLjUtMi41LTQtMi41LTQgNS41LTEuNSA2LTExLjUtNS0xNS41LTExIDQtMTAuNSAxNC01IDE1LjUgMCAwLTIuNSAxLjUtMi41IDQgMCAwLS41LjUgMCAyeiIvPjxwYXRoIGQ9Ik0yNSA4YTIuNSAyLjUgMCAxIDEtNSAwIDIuNSAyLjUgMCAxIDEgNSAweiIvPjwvZz48cGF0aCBkPSJNMTcuNSAyNmgxME0xNSAzMGgxNW0tNy41LTE0LjV2NU0yMCAxOGg1IiBzdHJva2U9IiNlY2VjZWMiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiLz48L2c+PC9zdmc+)}.cg-wrap piece.knight.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxMGMxMC41IDEgMTYuNSA4IDE2IDI5SDE1YzAtOSAxMC02LjUgOC0yMSIgZmlsbD0iIzAwMCIvPjxwYXRoIGQ9Ik0yNCAxOGMuMzggMi45MS01LjU1IDcuMzctOCA5LTMgMi0yLjgyIDQuMzQtNSA0LTEuMDQyLS45NCAxLjQxLTMuMDQgMC0zLTEgMCAuMTkgMS4yMy0xIDItMSAwLTQuMDAzIDEtNC00IDAtMiA2LTEyIDYtMTJzMS44OS0xLjkgMi0zLjVjLS43My0uOTk0LS41LTItLjUtMyAxLTEgMyAyLjUgMyAyLjVoMnMuNzgtMS45OTIgMi41LTNjMSAwIDEgMyAxIDMiIGZpbGw9IiMwMDAiLz48cGF0aCBkPSJNOS41IDI1LjVhLjUuNSAwIDEgMS0xIDAgLjUuNSAwIDEgMSAxIDB6bTUuNDMzLTkuNzVhLjUgMS41IDMwIDEgMS0uODY2LS41LjUgMS41IDMwIDEgMSAuODY2LjV6IiBmaWxsPSIjZWNlY2VjIiBzdHJva2U9IiNlY2VjZWMiLz48cGF0aCBkPSJNMjQuNTUgMTAuNGwtLjQ1IDEuNDUuNS4xNWMzLjE1IDEgNS42NSAyLjQ5IDcuOSA2Ljc1UzM1Ljc1IDI5LjA2IDM1LjI1IDM5bC0uMDUuNWgyLjI1bC4wNS0uNWMuNS0xMC4wNi0uODgtMTYuODUtMy4yNS0yMS4zNC0yLjM3LTQuNDktNS43OS02LjY0LTkuMTktNy4xNmwtLjUxLS4xeiIgZmlsbD0iI2VjZWNlYyIgc3Ryb2tlPSJub25lIi8+PC9nPjwvc3ZnPg==)}.cg-wrap piece.rook.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik05IDM5aDI3di0zSDl2M3ptMy41LTdsMS41LTIuNWgxN2wxLjUgMi41aC0yMHptLS41IDR2LTRoMjF2NEgxMnoiIHN0cm9rZS1saW5lY2FwPSJidXR0Ii8+PHBhdGggZD0iTTE0IDI5LjV2LTEzaDE3djEzSDE0eiIgc3Ryb2tlLWxpbmVjYXA9ImJ1dHQiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiLz48cGF0aCBkPSJNMTQgMTYuNUwxMSAxNGgyM2wtMyAyLjVIMTR6TTExIDE0VjloNHYyaDVWOWg1djJoNVY5aDR2NUgxMXoiIHN0cm9rZS1saW5lY2FwPSJidXR0Ii8+PHBhdGggZD0iTTEyIDM1LjVoMjFtLTIwLTRoMTltLTE4LTJoMTdtLTE3LTEzaDE3TTExIDE0aDIzIiBmaWxsPSJub25lIiBzdHJva2U9IiNlY2VjZWMiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjwvZz48L3N2Zz4=)}.cg-wrap piece.queen.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxnIHN0cm9rZT0ibm9uZSI+PGNpcmNsZSBjeD0iNiIgY3k9IjEyIiByPSIyLjc1Ii8+PGNpcmNsZSBjeD0iMTQiIGN5PSI5IiByPSIyLjc1Ii8+PGNpcmNsZSBjeD0iMjIuNSIgY3k9IjgiIHI9IjIuNzUiLz48Y2lyY2xlIGN4PSIzMSIgY3k9IjkiIHI9IjIuNzUiLz48Y2lyY2xlIGN4PSIzOSIgY3k9IjEyIiByPSIyLjc1Ii8+PC9nPjxwYXRoIGQ9Ik05IDI2YzguNS0xLjUgMjEtMS41IDI3IDBsMi41LTEyLjVMMzEgMjVsLS4zLTE0LjEtNS4yIDEzLjYtMy0xNC41LTMgMTQuNS01LjItMTMuNkwxNCAyNSA2LjUgMTMuNSA5IDI2eiIgc3Ryb2tlLWxpbmVjYXA9ImJ1dHQiLz48cGF0aCBkPSJNOSAyNmMwIDIgMS41IDIgMi41IDQgMSAxLjUgMSAxIC41IDMuNS0xLjUgMS0xLjUgMi41LTEuNSAyLjUtMS41IDEuNS41IDIuNS41IDIuNSA2LjUgMSAxNi41IDEgMjMgMCAwIDAgMS41LTEgMC0yLjUgMCAwIC41LTEuNS0xLTIuNS0uNS0yLjUtLjUtMiAuNS0zLjUgMS0yIDIuNS0yIDIuNS00LTguNS0xLjUtMTguNS0xLjUtMjcgMHoiIHN0cm9rZS1saW5lY2FwPSJidXR0Ii8+PHBhdGggZD0iTTExIDM4LjVhMzUgMzUgMSAwIDAgMjMgMCIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVjYXA9ImJ1dHQiLz48cGF0aCBkPSJNMTEgMjlhMzUgMzUgMSAwIDEgMjMgMG0tMjEuNSAyLjVoMjBtLTIxIDNhMzUgMzUgMSAwIDAgMjIgMG0tMjMgM2EzNSAzNSAxIDAgMCAyNCAwIiBmaWxsPSJub25lIiBzdHJva2U9IiNlY2VjZWMiLz48L2c+PC9zdmc+)}.cg-wrap piece.king.black{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSI0NSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMi41IDExLjYzVjYiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiLz48cGF0aCBkPSJNMjIuNSAyNXM0LjUtNy41IDMtMTAuNWMwIDAtMS0yLjUtMy0yLjVzLTMgMi41LTMgMi41Yy0xLjUgMyAzIDEwLjUgMyAxMC41IiBmaWxsPSIjMDAwIiBzdHJva2UtbGluZWNhcD0iYnV0dCIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjxwYXRoIGQ9Ik0xMS41IDM3YzUuNSAzLjUgMTUuNSAzLjUgMjEgMHYtN3M5LTQuNSA2LTEwLjVjLTQtNi41LTEzLjUtMy41LTE2IDRWMjd2LTMuNWMtMy41LTcuNS0xMy0xMC41LTE2LTQtMyA2IDUgMTAgNSAxMFYzN3oiIGZpbGw9IiMwMDAiLz48cGF0aCBkPSJNMjAgOGg1IiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PHBhdGggZD0iTTMyIDI5LjVzOC41LTQgNi4wMy05LjY1QzM0LjE1IDE0IDI1IDE4IDIyLjUgMjQuNWwuMDEgMi4xLS4wMS0yLjFDMjAgMTggOS45MDYgMTQgNi45OTcgMTkuODVjLTIuNDk3IDUuNjUgNC44NTMgOSA0Ljg1MyA5IiBzdHJva2U9IiNlY2VjZWMiLz48cGF0aCBkPSJNMTEuNSAzMGM1LjUtMyAxNS41LTMgMjEgMG0tMjEgMy41YzUuNS0zIDE1LjUtMyAyMSAwbS0yMSAzLjVjNS41LTMgMTUuNS0zIDIxIDAiIHN0cm9rZT0iI2VjZWNlYyIvPjwvZz48L3N2Zz4=)}.review-board{display:flex;flex-direction:column}:root{--review-board-min: 24.375rem;--review-board-max: 42rem;--review-board-side: 1.125rem;--review-board-chrome: calc( var(--review-board-side) + var(--space-2, .35rem) + 2 * var(--space-3, .525rem) + 2px );--review-board-vertical: 12.5rem;--review-center-min: var(--review-board-min);--review-board-width: min(100%, var(--review-board-max), calc(100vh - var(--review-board-vertical)))}.review-board{width:var(--review-board-width);min-width:var(--review-board-min);flex:none;margin-inline:auto;container:review-board / inline-size}@container review-board (width < 26rem){.board-player-rating{display:none}}.board-host{min-width:0;aspect-ratio:1 / 1}.board-host .cg-wrap{width:100%;height:100%}.board-host cg-board{border-radius:var(--radius-sm, .25rem)}.board-grid{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto auto;row-gap:.25rem}.board-side{grid-column:1;grid-row:2;width:var(--review-board-side);display:flex;align-items:stretch;gap:var(--space-2, .35rem);margin-right:var(--space-2, .35rem)}.board-side:empty{display:none}.board-grid .board-stage{grid-column:2;grid-row:2;position:relative;min-width:0}.review-board.review-board-solved .board-host{outline:.125rem solid var(--viz-score-gain);outline-offset:.25rem;border-radius:var(--radius-sm, .25rem)}.review-board.review-board-failed .board-host{outline:.125rem solid var(--viz-score-loss);outline-offset:.25rem;border-radius:var(--radius-sm, .25rem)}.review-board-solved cg-board square.last-move{background-color:color-mix(in srgb,var(--viz-score-gain) 55%,transparent)}.review-board-failed cg-board square.last-move{background-color:color-mix(in srgb,var(--viz-score-loss) 55%,transparent)}.board-mark-badge{position:absolute;inset:0;margin:auto;width:max-content;height:max-content;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:999px;color:var(--color-bg);font-size:var(--text-heading-size);font-weight:var(--weight-semibold);box-shadow:var(--shadow-md, 0 .25rem 1rem rgb(0 0 0 / .3));pointer-events:none;z-index:20;animation:board-mark-badge 1.6s ease-out forwards}.board-mark-solved{background:var(--viz-score-gain)}.board-mark-failed{background:var(--viz-score-loss)}.board-mark-sign{font-size:1.25em;line-height:1}@keyframes board-mark-badge{0%{opacity:0;transform:scale(.8)}12%{opacity:1;transform:scale(1.05)}20%{transform:scale(1)}75%{opacity:1}to{opacity:0}}.board-player-top{grid-column:1 / -1;grid-row:1;min-width:0;contain:inline-size}.board-player-bottom{grid-column:1 / -1;grid-row:3;min-width:0;contain:inline-size}.board-player{display:flex;align-items:center;gap:.5rem;height:1.5rem;font-size:var(--text-body-size)}.board-player-rating{color:color-mix(in srgb,var(--color-text) 55%,transparent);font-variant-numeric:tabular-nums;flex:none}.board-player-name{font-weight:var(--weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.board-player-end{margin-left:auto;padding-left:var(--space-2, .35rem);display:flex;align-items:center;gap:var(--space-3, .5rem);flex:none;white-space:nowrap}.board-player-end:empty{display:none}.board-player-clock{color:color-mix(in srgb,var(--color-text) 55%,transparent);font-variant-numeric:tabular-nums;flex:none}.board-player-clock-running{color:var(--color-text)}.review-board-held .board-host{outline:.125rem solid var(--color-accent);outline-offset:.25rem;border-radius:var(--radius-sm, .25rem)}.board-player-badge{flex:none;margin-left:var(--space-1);padding:0 var(--space-2);border-radius:999px;font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 14%,transparent)}.review-game-bar{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:.25rem}.game-bar-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;min-height:2.5rem;min-width:0}.game-bar-heading{flex:1 1 16rem;min-width:0;display:flex;align-items:center;gap:.75rem}.game-bar-title{margin:0;font-size:var(--text-title-size);font-weight:var(--text-title-weight);color:var(--color-text);flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-bar-back{flex:none;display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-body-size);padding:.25rem .5rem;margin-left:-.5rem}.game-bar-period{font-weight:var(--weight-regular);color:var(--color-neutral-400)}.game-bar-result{font-variant-numeric:tabular-nums}.game-bar-actions{flex:none;display:flex;align-items:center;gap:var(--space-3, .75rem)}.game-bar-more{flex:0 0 auto;font-size:var(--text-label-size);padding:.125rem var(--space-2)}.game-bar-link{font-size:var(--text-body-size);color:var(--color-accent);white-space:nowrap;flex:0 0 auto}.game-bar-link:hover{color:var(--color-accent-300)}.game-bar-blunders{font-size:var(--text-body-size);color:var(--color-neutral-500);white-space:nowrap}.game-bar-blunders-some{color:var(--viz-grade-blunder)}.game-bar-blunders-hidden,.game-bar-blunders[hidden]{display:none}.game-bar-facts{display:flex;flex-wrap:wrap;column-gap:1.375rem;row-gap:var(--space-2);margin:0}.game-bar-fact{display:flex;flex-direction:column;gap:.0625rem}.game-bar-fact dt{font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.game-bar-fact dd{margin:0;font-size:var(--text-body-size);color:var(--color-neutral-400);font-variant-numeric:tabular-nums}.player-material{display:inline-flex;align-items:baseline;gap:var(--space-2, .35rem);flex:none;white-space:nowrap;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.player-material-pieces{display:inline-flex;gap:var(--space-1, .2rem);line-height:1}.player-material-kind{letter-spacing:-.0625rem}.player-material-lead{font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold)}@container review-board (width < 23rem){.player-material-pieces{display:none}}.scoresheet{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:var(--text-small-size)}.scoresheet td{padding:var(--space-1) var(--space-2);line-height:1.6;white-space:nowrap}.scoresheet-number{width:2.5em;text-align:right;color:var(--color-neutral-600)}.scoresheet-move{width:50%}.scoresheet tr:hover td{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.scoresheet-move{white-space:nowrap}.scoresheet-san{vertical-align:middle}.scoresheet-mark{width:.75rem;height:.75rem;margin-left:.25rem;vertical-align:middle;fill:currentColor}.scoresheet-mark-best{color:var(--viz-grade-best)}.scoresheet-mark-blunder,.scoresheet-blunder .scoresheet-san{color:var(--viz-grade-blunder)}.scoresheet-branch{box-shadow:inset 2px 0 0 var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.scoresheet-concealed{color:var(--color-neutral-700);letter-spacing:.1em}.review-move-list-puzzle{color:var(--color-accent)}.scoresheet-asked{width:50%}.scoresheet-ask{display:inline-grid;place-items:center;min-width:1.5rem;height:1.5rem;padding:0 var(--space-1);border-radius:var(--radius-sm);font-weight:var(--weight-semibold);line-height:1;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 16%,transparent);box-shadow:inset 0 0 0 1px var(--color-accent)}.scoresheet-hidden-note{margin:var(--space-2) var(--space-2) 0;font-size:var(--text-small-size);color:var(--color-neutral-500)}.scoresheet-pick{display:inline-flex;align-items:center;background:none;border:0;padding:0 var(--space-1);margin:0 calc(-1 * var(--space-1));border-radius:var(--radius-sm);font:inherit;color:inherit;cursor:pointer}.scoresheet-pick:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 10%,transparent)}.scoresheet-pick:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.scoresheet-pick:disabled{cursor:default}.scoresheet-current .scoresheet-pick{background:color-mix(in srgb,var(--color-accent) 22%,transparent);font-weight:var(--weight-semibold)}.review-opening.opening-line{display:flex;align-items:center;gap:var(--space-2);min-width:0;white-space:nowrap;font-size:var(--text-small-size)}.review-opening .opening-eco{flex:none;font-variant-numeric:tabular-nums}.review-opening .opening-name{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:var(--weight-medium)}.review-opening .opening-status{flex:none;color:var(--color-neutral-400);font-size:var(--text-label-size)}.review-opening .opening-muted{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-neutral-500);font-size:var(--text-label-size)}.review-opening .opening-jump{flex:none;margin:0;padding:0 var(--space-1);font-size:var(--text-label-size)}.review-phase{display:flex;flex-direction:column}.stage-tab-strip{display:flex;gap:var(--space-1);flex:0 0 auto;margin:var(--space-2) 0 var(--space-3);border-bottom:1px solid var(--color-divider)}.stage-tab{background:none;border:none;border-bottom:2px solid transparent;padding:var(--space-1) var(--space-2);margin-bottom:-1px;cursor:pointer;font:inherit;font-size:var(--text-label-size);letter-spacing:.02em;color:var(--color-neutral-500)}.stage-tab:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.stage-tab-active,.stage-tab-active:hover{color:var(--color-text);border-bottom-color:var(--color-accent)}.stage-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.stage-tab-badge{margin-left:var(--space-1);color:var(--color-neutral-400);font-variant-numeric:tabular-nums}.stage-tab-body{display:flex;flex-direction:column;gap:var(--stage-section-gap, 1.5rem)}.stage-tab-body>.phase-section,.stage-tab-body>.opening-block{margin:0}.stage-pinned{margin:calc(-1 * var(--space-2)) 0 var(--stage-section-gap, 1.5rem)}.stage-pinned .phase-section{margin:0}.review-phase.review-phase-hidden,.review-phase[hidden]{display:none}.puzzles-caption{margin:0 0 var(--space-4);font-size:var(--text-small-size);line-height:var(--text-small-line);color:var(--color-neutral-400)}.puzzle-table{width:100%;border-collapse:collapse;font-size:var(--text-small-size);font-variant-numeric:tabular-nums}.puzzle-table th{text-align:left;font-weight:var(--text-label-weight);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-divider)}.puzzle-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid color-mix(in srgb,var(--color-divider) 50%,transparent);vertical-align:middle}.puzzle-table tbody tr{cursor:pointer}.puzzle-table tbody tr:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.puzzle-table tbody tr:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.puzzle-table .puzzle-row-active{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.puzzle-row-move{color:var(--color-neutral-500);white-space:nowrap}.puzzle-row-kind{white-space:nowrap}.puzzle-row-kind-tactic{color:var(--viz-grade-best)}.puzzle-row-kind-mistake{color:var(--viz-grade-blunder)}.puzzle-row-prize{color:var(--color-text)}.puzzle-row-swing{text-align:right;white-space:nowrap;color:var(--color-neutral-300)}.puzzle-row-status{text-transform:capitalize}.puzzle-card{--puzzle-good: var(--viz-grade-best);--puzzle-bad: var(--viz-grade-blunder);--puzzle-edge: var(--color-accent);display:flex;flex-direction:column;gap:var(--space-1);overflow:hidden;box-sizing:border-box;height:100%;box-shadow:inset 0 0 0 2px var(--puzzle-edge);background:var(--color-surface);transition:background-color .25s ease,box-shadow .25s ease}.puzzle-tone-good{--puzzle-edge: var(--puzzle-good);background:color-mix(in srgb,var(--puzzle-good) 14%,var(--color-surface))}.puzzle-tone-bad{--puzzle-edge: var(--puzzle-bad);background:color-mix(in srgb,var(--puzzle-bad) 14%,var(--color-surface))}@media(prefers-reduced-motion:reduce){.puzzle-card{transition:none}}.puzzle-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.puzzle-card-head h2{margin:0}.puzzle-card-progress{font-size:var(--text-caption-size);color:var(--color-neutral-600);white-space:nowrap}.puzzle-dots{display:flex;align-items:center;gap:var(--space-1);margin:0 auto 0 0;padding:0;list-style:none}.puzzle-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--color-neutral-700)}.puzzle-dot-solved{background:var(--viz-grade-best)}.puzzle-dot-current{background:var(--color-accent);width:.625rem;height:.625rem;box-shadow:0 0 0 .125rem color-mix(in srgb,var(--color-accent) 30%,transparent)}.puzzle-card .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.puzzle-card-prompt,.puzzle-card-text{margin:0;font-size:var(--text-small-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.puzzle-card-text,.puzzle-card-motif{color:var(--color-neutral-400)}.puzzle-tone-good .puzzle-card-text{color:var(--puzzle-good)}.puzzle-tone-bad .puzzle-card-text{color:var(--puzzle-bad)}.puzzle-card-actions{display:flex;gap:var(--space-2);margin-top:auto}.puzzle-card-actions .btn{padding-block:.125rem;font-size:var(--text-label-size)}.puzzle-banner{--puzzle-banner-edge: var(--color-accent);flex:1 1 auto;min-width:0;min-height:2.5rem;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);box-shadow:inset .25rem 0 0 var(--puzzle-banner-edge);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.puzzle-banner-done{--puzzle-banner-edge: var(--viz-grade-best)}.puzzle-banner-icon{flex:none;width:1.25rem;height:1.25rem;color:var(--color-accent)}.puzzle-banner-text{flex:1 1 16rem;min-width:0;display:flex;flex-direction:column;gap:.0625rem}.puzzle-banner-title{margin:0;font-size:var(--text-title-size);font-weight:var(--text-title-weight);line-height:1.2;color:var(--color-accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.puzzle-banner-done .puzzle-banner-title{color:var(--viz-grade-best)}.puzzle-banner-line{margin:0;font-size:var(--text-small-size);color:var(--color-neutral-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.puzzle-banner-dot{color:var(--color-neutral-600)}.puzzle-banner-game{color:var(--color-accent)}.puzzle-banner-actions{flex:none;display:flex;align-items:center;gap:var(--space-2)}.puzzle-banner-actions .btn{padding-block:.25rem;font-size:var(--text-label-size);white-space:nowrap}.layout-review .region-sideTop:has(.puzzle-place){height:auto}.puzzle-place{display:flex;flex-direction:column;gap:var(--space-3);flex:1 1 auto;min-height:0}.puzzle-place>.puzzle-card{flex:none;height:calc(var(--side-top-lines) * var(--side-top-line) + var(--side-top-frame))}.learn-card{display:flex;flex-direction:column;gap:var(--space-2);flex:1 1 auto;min-height:0;overflow:auto;box-sizing:border-box}.learn-card-title{margin:0}.learn-card-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.learn-card-item{min-width:0;font-size:var(--text-small-size);line-height:var(--text-small-line)}.learn-card-link{color:var(--color-accent);text-decoration:none}.learn-card-link:hover,.learn-card-link:focus-visible{text-decoration:underline}.learn-card-source{margin-left:var(--space-2);font-size:var(--text-caption-size);color:var(--color-neutral-600);white-space:nowrap}.learn-card-summary{margin:0;color:var(--color-neutral-400);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn-card-count{margin:auto 0 0;flex:none;font-size:var(--text-small-size);line-height:var(--text-small-line)}.learn-card-count-link{color:var(--color-neutral-400);text-decoration:underline;text-decoration-color:var(--color-neutral-700);text-underline-offset:.15em}.learn-card-count-link:hover,.learn-card-count-link:focus-visible{color:var(--color-text);text-decoration-color:currentColor}.puzzle-shield{position:fixed;inset:0;z-index:1000;cursor:progress;background:transparent}.score-bar{position:relative;width:1.125rem;align-self:stretch;border-radius:var(--radius-sm, .25rem);border:1px solid var(--color-divider);overflow:hidden;background:var(--color-neutral-900);flex:0 0 auto}.score-bar-unknown{opacity:.35}.score-bar-top{position:absolute;inset:0;background:var(--color-neutral-900)}.score-bar-bottom{position:absolute;left:0;right:0;bottom:0;background:var(--color-neutral-100);transition:height .35s ease-in-out}.score-bar-mid{position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background:var(--color-divider)}.score-bar-label{position:absolute;left:0;right:0;writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-body);font-size:var(--text-chart-size);line-height:1.125rem;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-align:center;pointer-events:none}.score-bar-label-bottom{bottom:.25rem;color:var(--color-neutral-900);transform:rotate(180deg)}.score-bar-label-top{top:.25rem;color:var(--color-neutral-100)}@media(prefers-reduced-motion:reduce){.score-bar-bottom{transition:none}}.theory-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.theory-head h2{margin:0}.theory-count{font-size:var(--text-caption-size);color:var(--color-neutral-600);margin-bottom:var(--space-2);white-space:nowrap}.theory-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.theory-line{width:100%;display:grid;grid-template-columns:5.2em 1fr auto;gap:var(--space-2);align-items:baseline;padding:.063rem var(--space-1);border:0;border-radius:var(--radius-sm);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums}.theory-line:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.theory-line:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.theory-move{font-weight:var(--weight-medium);white-space:nowrap}.theory-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-neutral-400);font-size:var(--text-label-size)}.theory-distance{color:var(--color-neutral-600);font-size:var(--text-caption-size)}.review-shortlist-theory{display:flex;flex-direction:column;overflow:hidden}.review-shortlist-theory .theory-lines{flex:1 1 auto;min-height:0;overflow-y:auto}.shortlist-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.shortlist-head h2{margin:0}.shortlist-subtitle{font-size:var(--text-caption-size);color:var(--color-neutral-600);margin-bottom:var(--space-2);white-space:nowrap}.shortlist-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.shortlist-line,.shortlist-played{display:grid;grid-template-columns:1.2em 4.2em 3.8em 1fr;gap:var(--space-2);align-items:baseline;padding:.063rem var(--space-1);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums}.shortlist-line:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.shortlist-rank{color:var(--color-neutral-600);font-size:var(--text-caption-size)}.shortlist-move{font-weight:var(--weight-medium)}.shortlist-score{color:var(--color-neutral-400);font-family:ui-monospace,Menlo,monospace;font-size:var(--text-label-size)}.shortlist-continuation,.shortlist-verdict{color:var(--color-neutral-500);font-size:var(--text-label-size);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortlist-played{margin-top:var(--space-2);border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.shortlist-played-best .shortlist-move,.shortlist-played-best .shortlist-score,.shortlist-played-best .shortlist-verdict{color:var(--viz-grade-best)}.shortlist-played-blunder .shortlist-move,.shortlist-played-blunder .shortlist-score,.shortlist-played-blunder .shortlist-verdict{color:var(--viz-grade-blunder)}button.shortlist-line,button.shortlist-played{width:100%;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer}button.shortlist-played{border-top:1px solid var(--color-divider)}button.shortlist-played:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}button.shortlist-line:focus-visible,button.shortlist-played:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.phase-head{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.phase-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.review-phase .phase-title-row h2{margin:0;min-width:0;font-size:var(--text-label-size)}.phase-delta{font-family:var(--font-heading);font-weight:var(--text-label-weight);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);font-variant-numeric:tabular-nums;white-space:nowrap}.phase-delta-good{color:var(--viz-score-gain)}.phase-delta-bad{color:var(--viz-score-loss)}.phase-delta-level{color:var(--viz-score-level)}.phase-delta-pending{color:var(--color-neutral-600)}.phase-mark{display:inline-flex;flex:none;align-self:center}.phase-mark-star{color:var(--viz-grade-best)}.phase-mark-blunder{color:var(--viz-grade-blunder)}.phase-ends{margin:0;font-size:var(--text-label-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.phase-label{font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.phase-end-link{background:none;border:none;padding:0 var(--space-1);border-radius:var(--radius-sm);font:inherit;color:var(--color-text);cursor:pointer}.phase-end-link:hover{color:var(--color-accent-300)}.phase-end-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.phase-end-label{font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.phase-ends .score-chip{display:inline-block;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-label-size);font-variant-numeric:tabular-nums;color:var(--color-neutral-200);background:var(--color-neutral-900);border:1px solid var(--color-divider)}.phase-dot{color:var(--color-neutral-600)}.phase-counts{margin:0;color:var(--color-neutral-500);font-size:var(--text-small-size)}.phase-partial{color:var(--color-neutral-600)}.phase-ended{margin:0 0 var(--space-3)}.phase-section{margin-bottom:var(--space-3)}.phase-section h3{margin:0 0 var(--space-1);font-family:var(--font-heading);font-weight:var(--text-label-weight);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.review-phase .phase-section:last-child{margin-bottom:0}.puzzles-count{font-size:var(--text-caption-size);vertical-align:middle}.moments-table{width:100%;border-collapse:collapse;font-size:var(--text-small-size);font-variant-numeric:tabular-nums}.moments-table th{text-align:left;font-weight:var(--text-label-weight);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-divider)}.moments-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid color-mix(in srgb,var(--color-divider) 50%,transparent);vertical-align:middle}.moments-row-target{cursor:pointer}.moments-row-target:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.moments-row-target:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.moments-row-active{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.moments-move{white-space:nowrap}.moments-go{background:none;border:0;padding:0;font:inherit;color:var(--color-text);cursor:pointer;white-space:nowrap}.moments-go:hover{text-decoration:underline}.moments-go:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.moments-kind-blunder{color:var(--viz-grade-blunder);white-space:nowrap}.moments-kind-miss{color:var(--viz-grade-miss);white-space:nowrap}.moments-cost{text-align:right;white-space:nowrap;color:var(--color-neutral-300)}.moments-best{color:var(--color-neutral-300);white-space:nowrap}.moments-action{text-align:right}.moments-status{font-size:var(--text-label-size);color:var(--color-accent-300);white-space:nowrap}.moments-status-solved{color:var(--viz-grade-best)}.moments-status-failed{color:var(--viz-grade-blunder)}.moments-status-solving{color:var(--color-text)}:root{--stage-section-gap: 1.5rem;--stage-section-title-gap: .5rem}.stage-section{display:flex;flex-direction:column;gap:var(--stage-section-title-gap);margin:0;min-width:0}.stage-section-title{margin:0}.stage-section-aside{font-weight:var(--weight-regular);text-transform:none;letter-spacing:0;color:var(--color-neutral-500)}.stage-section-body{min-width:0}.stage-section-body>*{margin-block:0}.stage-section:not(:has(.stage-section-body>*)){display:none}.review-step-controls{display:flex;flex-direction:column;gap:var(--space-2);width:var(--review-board-width, 100%);min-width:var(--review-board-min, 0px);max-width:100%;margin-inline:auto;container:step-controls / inline-size}.review-step-controls .steps{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-2)}.review-step-controls .steps-centre{display:flex;justify-content:center;gap:var(--space-1)}.review-step-controls .steps-right{display:flex;justify-content:flex-end;min-width:0}.review-step-controls .step svg{width:1.125rem;height:1.125rem}.review-step-controls .step:disabled{opacity:.35}.review-step-controls .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.review-step-controls .step-exit{height:2.25rem;padding-block:0;max-width:100%;font-size:var(--text-small-size);white-space:nowrap}.review-step-controls .step-exit svg{width:1.125rem;height:1.125rem;flex:none}.review-step-controls .step-exit-label{overflow:hidden;text-overflow:ellipsis}@media(max-width:37.5rem){.review-step-controls .step-exit{width:2.25rem;padding:0}.review-step-controls .step-exit-label{display:none}}@container step-controls (width < 26rem){.review-step-controls .step-exit{width:2.25rem;padding:0}.review-step-controls .step-exit-label{display:none}}.review-step-controls-held .step-puzzle:not(:disabled){color:var(--color-accent)}.landing{--l-ground: #0e1f17;--l-panel: #15291f;--l-line: #2a4334;--l-ivory: #f2ecd9;--l-muted: #a9b8a9;--l-soft: #c9d3c6;--l-sq-light: #c9c0a4;--l-sq-dark: #6f8a73;--l-played: #e0604a;--l-best: #6fd39a;--l-accent: #e5a73a;--l-accent-ink: #1a1405;--l-error: #f0a08a;--l-display: "Fraunces", Georgia, "Times New Roman", serif;--l-body: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;margin:calc(-1 * var(--space-4, 1rem)) calc(-1 * var(--space-4, 1rem)) calc(-1 * var(--space-6, 2rem));padding:0 1.5rem 4rem;background:var(--l-ground);color:var(--l-ivory);font-family:var(--l-body);line-height:1.5}.landing-hero{max-width:64rem;margin:0 auto;padding:6rem 0 5rem;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:3.5rem;align-items:center}.landing-eyebrow{margin:0 0 1rem;font:var(--weight-semibold) var(--text-label-size)/var(--text-label-line) var(--l-body);letter-spacing:.18em;text-transform:uppercase;color:var(--l-accent)}.landing-title{margin:0 0 1.25rem;font:var(--text-hero-weight) var(--text-hero-size)/var(--text-hero-line) var(--l-display);letter-spacing:-.01em;text-wrap:balance}.landing-lead{margin:0 0 2.25rem;max-width:38rem;font-size:var(--text-value-size);line-height:var(--text-value-line);color:var(--l-muted)}.landing-cta{display:flex;flex-direction:column;gap:.625rem;max-width:34rem}.landing-label{font-size:var(--text-body-size);font-weight:var(--weight-semibold);color:var(--l-ivory)}.landing-cta-row{display:flex;gap:.625rem;flex-wrap:wrap}.landing-input{flex:1 1 14rem;min-height:3rem;padding:0 .875rem;font:var(--weight-medium) var(--text-heading-size)/var(--text-heading-line) var(--l-body);color:var(--l-ivory);background:var(--l-panel);border:1px solid var(--l-line);border-radius:.375rem}.landing-input::placeholder{color:var(--l-muted);opacity:.7}.landing-input:focus-visible{outline:2px solid var(--l-accent);outline-offset:2px}.landing-input-error{border-color:var(--l-error)}.landing-button{min-height:3rem;padding:0 var(--space-8);font:var(--text-heading-weight) var(--text-heading-size)/var(--text-heading-line) var(--l-body);color:var(--l-accent-ink);background:var(--l-accent);border:none;border-radius:.375rem;cursor:pointer}.landing-button:hover{background:#f0b854}.landing-button:active{background:#d2962f}.landing-button:disabled{opacity:.6;cursor:default}.landing-button:focus-visible{outline:2px solid var(--l-ivory);outline-offset:2px}.landing-note{margin:0;font-size:var(--text-body-size);color:var(--l-muted)}.landing-message{margin:0;font-size:var(--text-body-size);color:var(--l-error)}.landing-features,.landing-steps{max-width:64rem;margin:0 auto;padding:3.5rem 0 4.5rem;border-top:1px solid var(--l-line)}.landing-h2{margin:0 0 1.75rem;font:var(--weight-regular) var(--text-display-size)/var(--text-display-line) var(--l-display)}.landing-h3{margin:0 0 .5rem;font:var(--text-value-weight) var(--text-value-size)/var(--text-value-line) var(--l-body)}.landing-body{margin:0;font-size:var(--text-heading-size);line-height:var(--text-body-line);color:var(--l-soft)}.landing-grid{display:grid;gap:1.75rem 2.5rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.landing-feature{padding-left:.875rem;border-left:2px solid var(--l-accent)}.landing-step-list{list-style:none;margin:0;padding:0;display:grid;gap:1.75rem 2.5rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.landing-step{display:flex;gap:var(--space-6);align-items:flex-start}.landing-step-n{flex:0 0 auto;width:2.25rem;height:2.25rem;display:grid;place-items:center;font:var(--text-value-weight) var(--text-value-size)/var(--text-value-line) var(--l-display);color:var(--l-accent);border:1px solid var(--l-accent);border-radius:50%}.landing-foot{max-width:64rem;margin:0 auto;padding-top:1.5rem;border-top:1px solid var(--l-line);font-size:var(--text-body-size);color:var(--l-muted)}.landing-about summary{cursor:pointer;width:max-content;color:var(--l-muted);list-style:none}.landing-about summary::-webkit-details-marker{display:none}.landing-about summary:after{content:"+";display:inline-block;margin-left:var(--space-3);color:var(--l-accent)}.landing-about[open] summary:after{content:"−"}.landing-about summary:hover{color:var(--l-ivory)}.landing-about summary:focus-visible{outline:2px solid var(--l-accent);outline-offset:.25rem;border-radius:.125rem}.landing-about .landing-body{margin:var(--space-6) 0 1.25rem;max-width:44rem}.landing-credits{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3);max-width:44rem}.landing-credits li{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr) auto;gap:var(--space-6);align-items:baseline}.landing-credits a{color:var(--l-ivory);text-decoration-color:var(--l-line);text-underline-offset:.188rem}.landing-credits a:hover{text-decoration-color:var(--l-accent)}.landing-credit-licence{font-size:var(--text-small-size)}.landing-preview{margin:0;padding:1.125rem;background:var(--l-panel);border:1px solid var(--l-line);border-radius:.75rem;box-shadow:0 1.5rem 3.75rem -1.5rem #0009;max-width:26rem;justify-self:end;width:100%}.landing-preview-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-4);font-size:var(--text-small-size);color:var(--l-muted)}.landing-preview-eyebrow{font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase;font-size:var(--text-label-size);color:var(--l-accent)}.landing-preview-legend{display:inline-flex;align-items:center;gap:var(--space-2)}.lp-key{display:inline-block;width:.75rem;height:.188rem;border-radius:.125rem}.lp-key-played{background:var(--l-played)}.lp-key-best{background:var(--l-best);margin-left:var(--space-3)}.landing-board{display:block;width:100%;height:auto;border-radius:var(--radius-sm)}.lp-light{fill:var(--l-sq-light)}.lp-dark{fill:var(--l-sq-dark)}.lp-mark{fill:var(--l-played);opacity:.35}.landing-board text{font-size:calc(2 * var(--text-heading-size));text-anchor:middle;font-family:Apple Symbols,Segoe UI Symbol,DejaVu Sans,serif}.lp-white{fill:#fbf8ef;stroke:#1c2a21;stroke-width:1}.lp-black{fill:#17221b}.lp-arrow-played,.lp-arrow-best{stroke-width:7;stroke-linecap:round;opacity:.9}.lp-arrow-played{stroke:var(--l-played)}.lp-arrow-best{stroke:var(--l-best)}.lp-head-played{fill:var(--l-played)}.lp-head-best{fill:var(--l-best)}.landing-preview-chart{margin-top:.875rem}.landing-preview-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-label-size);color:var(--l-muted)}.landing-preview-plot{position:relative;height:4rem}.landing-preview-plot svg{display:block;width:100%;height:100%}.lp-mid{stroke:var(--l-line);stroke-dasharray:3 4}.lp-curve{fill:none;stroke:var(--l-ivory);stroke-width:2;stroke-linejoin:round}.lp-drop{position:absolute;width:.625rem;height:.625rem;margin:-.313rem 0 0 -.313rem;border-radius:50%;background:var(--l-played);box-shadow:0 0 0 .188rem var(--l-panel)}@media(max-width:900px){.landing-hero{grid-template-columns:1fr;gap:3rem;padding-bottom:4rem}.landing-preview{justify-self:start}}@media(max-width:640px){.landing-credits li{grid-template-columns:1fr auto}.landing-credits li>span:not(.landing-credit-licence){grid-column:1 / -1;grid-row:2}.landing-hero{padding-top:3.5rem}.landing-title{font-size:var(--text-hero-size-narrow)}.landing-lead{font-size:var(--text-heading-size);line-height:var(--text-heading-line)}}.sync{min-height:100vh;display:grid;place-items:center;padding:var(--space-6, 2rem) var(--space-4, 1rem);box-sizing:border-box;background:var(--color-bg);color:var(--color-text)}.sync-panel{width:100%;max-width:36rem;padding:var(--space-8, 2.5rem) var(--space-8, 2.5rem) var(--space-6, 2rem);background:var(--color-section);border:1px solid var(--color-divider);border-radius:.75rem}.sync-eyebrow{margin:0 0 var(--space-3, .75rem);font-size:var(--text-label-size);font-weight:var(--weight-semibold);line-height:var(--text-label-line);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent)}.sync-title{margin:0 0 var(--space-3, .75rem);font-size:var(--text-display-size);font-weight:var(--text-display-weight, var(--weight-regular));line-height:var(--text-display-line);letter-spacing:-.01em;text-wrap:balance}.sync-lead{margin:0 0 var(--space-6, 2rem);font-size:var(--text-heading-size);line-height:var(--text-body-line);color:var(--color-neutral-600, var(--color-text));opacity:.85}.sync-steps{list-style:none;margin:0 0 var(--space-6, 2rem);padding:0;display:grid;gap:var(--space-5, 1.25rem)}.sync-step{display:flex;gap:var(--space-4, 1rem);align-items:flex-start}.sync-step-n{flex:0 0 auto;width:2.25rem;height:2.25rem;display:grid;place-items:center;font-size:var(--text-value-size);font-weight:var(--text-value-weight);line-height:1;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:50%}.sync-step-waiting .sync-step-n{color:var(--color-neutral-500, inherit);border-color:var(--color-divider)}.sync-step-waiting .sync-step-text{opacity:.6}.sync-step-done .sync-step-n{color:var(--color-bg);background:var(--color-accent)}.sync-step-failed .sync-step-n{color:var(--viz-loss);border-color:var(--viz-loss)}.sync-step-running .sync-step-n{animation:sync-pulse 1.6s ease-in-out infinite}@keyframes sync-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--color-accent) 45%,transparent)}50%{box-shadow:0 0 0 .375rem color-mix(in srgb,var(--color-accent) 0%,transparent)}}.sync-step-text{min-width:0}.sync-step-title{margin:0 0 .125rem;font-size:var(--text-value-size);font-weight:var(--text-value-weight);line-height:var(--text-value-line)}.sync-step-body{margin:0 0 .25rem;font-size:var(--text-body-size);line-height:var(--text-body-line);opacity:.75}.sync-step-detail{margin:0;font-size:var(--text-body-size);font-weight:var(--weight-medium)}.sync-step-failed .sync-step-detail{color:var(--viz-loss)}.sync-actions{display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem);min-height:2.75rem}.sync-button{min-height:2.75rem;padding:0 var(--space-6, 1.5rem);font-size:var(--text-heading-size);font-weight:var(--text-heading-weight);line-height:var(--text-heading-line);color:var(--color-bg);background:var(--color-accent);border:none;border-radius:.375rem;cursor:pointer}.sync-button:hover{filter:brightness(1.08)}.sync-button:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.sync-button-quiet{color:var(--color-text);background:transparent;border:1px solid var(--color-divider)}.sync-note{margin:var(--space-4, 1rem) 0 0;font-size:var(--text-body-size);opacity:.6}@media(max-width:30rem){.sync-panel{padding:var(--space-6, 2rem) var(--space-5, 1.25rem)}}.settings-about h2{margin:0 0 .5rem}.settings-about-summary{margin:0 0 1rem;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--color-neutral-500);max-width:40rem}.settings-about-h3{margin:0 0 .5rem;font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-case);color:var(--color-neutral-500)}.settings-about-credits{list-style:none;margin:0;padding:0;display:grid;gap:.375rem;max-width:40rem;font-size:var(--text-body-size)}.settings-about-credits li{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr) auto;gap:.75rem;align-items:baseline}.settings-about-role{color:var(--color-neutral-500)}.settings-about-licence{font-size:var(--text-label-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}@media(max-width:640px){.settings-about-credits li{grid-template-columns:1fr auto}.settings-about-role{grid-column:1 / -1;grid-row:2}}.settings-export h2{margin:0 0 .5rem}.settings-export-intro{margin:0 0 1rem;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--color-neutral-500);max-width:40rem}.settings-export-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.settings-export-status{font-size:var(--text-label-size);color:var(--color-neutral-500);font-variant-numeric:tabular-nums}.settings-export-status[data-status=error]{color:var(--viz-loss)}.settings-theme-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}.settings-theme-summary::-webkit-details-marker{display:none}.settings-theme-summary h2{margin:0}.settings-theme-summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm, .25rem)}.settings-theme-caret{width:1rem;height:1rem;fill:currentColor;flex:none;transition:transform .15s ease}.settings-theme[open]>.settings-theme-summary{margin-bottom:.75rem}.settings-theme[open] .settings-theme-caret{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.settings-theme-caret{transition:none}}.settings-theme-intro{margin:0 0 1rem;color:var(--color-neutral-500);max-width:40rem}.settings-theme-group+.settings-theme-group{margin-top:1.25rem}.settings-theme-heading{margin:0 0 .5rem;color:var(--color-neutral-500)}.settings-theme-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem 1.25rem}.settings-theme-swatch{display:flex;align-items:flex-start;gap:.75rem;min-width:0}.settings-theme-chip{width:2rem;height:2rem;flex:none;border:1px solid var(--color-divider);border-radius:var(--radius-sm, .25rem)}.settings-theme-chip-empty{visibility:hidden}.settings-theme-text{display:flex;flex-direction:column;gap:.125rem;min-width:0}.settings-theme-name{color:var(--color-text)}.settings-theme-use,.settings-theme-derived{color:var(--color-neutral-500);overflow-wrap:anywhere}.settings-theme-token{color:var(--color-neutral-500);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}html{background:#161826;color-scheme:dark}.error{color:#d2cefd}plugin-component{display:contents}
