.ch{--paper: #f6f3ec;--paper-2: #efeadf;--paper-3: #e6e0d1;--card: #fbf9f4;--ink: #1c1d1a;--ink-2: #43443e;--ink-3: #75766d;--ink-4: #a6a699;--rule: #ddd6c6;--rule-2: #cbc3b0;--ok: #1e7b45;--err: #b3261e;--shadow: 0 1px 2px rgb(40 30 10 / .06), 0 8px 24px -12px rgb(40 30 10 / .18);--sq-light: #efe3c6;--sq-dark: #a67c52;--mix: black;--p0: #2f7d4f;--p1: #c0561f;--p2: #2d5bd0;--p3: #8a4fb8;--p4: #0d8078;--p5: #b8322a;--f-text: "Literata", Georgia, "Times New Roman", serif;--f-ui: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--f-code: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--accent: var(--p0);--page: min(1120px, 100% - 32px);--prose: 44rem;--top: 52px;color-scheme:light}.ch{--p0-ink: color-mix(in srgb, var(--p0) 80%, var(--mix));--p1-ink: color-mix(in srgb, var(--p1) 80%, var(--mix));--p2-ink: color-mix(in srgb, var(--p2) 80%, var(--mix));--p3-ink: color-mix(in srgb, var(--p3) 80%, var(--mix));--p4-ink: color-mix(in srgb, var(--p4) 80%, var(--mix));--p5-ink: color-mix(in srgb, var(--p5) 80%, var(--mix));--p0-soft: color-mix(in srgb, var(--p0) 11%, transparent);--p1-soft: color-mix(in srgb, var(--p1) 11%, transparent);--p2-soft: color-mix(in srgb, var(--p2) 11%, transparent);--p3-soft: color-mix(in srgb, var(--p3) 11%, transparent);--p4-soft: color-mix(in srgb, var(--p4) 11%, transparent);--p5-soft: color-mix(in srgb, var(--p5) 11%, transparent);--accent-ink: color-mix(in srgb, var(--accent) 80%, var(--mix));--accent-soft: color-mix(in srgb, var(--accent) 11%, transparent)}@media (prefers-color-scheme: dark){:root:not([data-ch-theme=light]) .ch{--paper: #141815;--paper-2: #1a201c;--paper-3: #222a25;--card: #181d19;--ink: #e6e8e0;--ink-2: #bfc3b8;--ink-3: #8b9187;--ink-4: #59615a;--rule: #2a312c;--rule-2: #38413b;--ok: #5ad48d;--err: #ff7b6e;--shadow: 0 1px 2px rgb(0 0 0 / .4), 0 10px 30px -14px rgb(0 0 0 / .7);--sq-light: #b9ab88;--sq-dark: #6b5239;--mix: white;--p0: #5cc489;--p1: #f08a52;--p2: #7c9dff;--p3: #c196ee;--p4: #3cc6bb;--p5: #ff7a6e;color-scheme:dark}}:root[data-ch-theme=dark] .ch{--paper: #141815;--paper-2: #1a201c;--paper-3: #222a25;--card: #181d19;--ink: #e6e8e0;--ink-2: #bfc3b8;--ink-3: #8b9187;--ink-4: #59615a;--rule: #2a312c;--rule-2: #38413b;--ok: #5ad48d;--err: #ff7b6e;--shadow: 0 1px 2px rgb(0 0 0 / .4), 0 10px 30px -14px rgb(0 0 0 / .7);--sq-light: #b9ab88;--sq-dark: #6b5239;--mix: white;--p0: #5cc489;--p1: #f08a52;--p2: #7c9dff;--p3: #c196ee;--p4: #3cc6bb;--p5: #ff7a6e;color-scheme:dark}body.ch-body{background:#f6f3ec;margin:0}@media (prefers-color-scheme: dark){:root:not([data-ch-theme=light]) body.ch-body{background:#141815}}:root[data-ch-theme=dark] body.ch-body{background:#141815}:root[data-ch-theme=light] body.ch-body{background:#f6f3ec}.ch{background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--f-ui);min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}.ch *,.ch *:before,.ch *:after{box-sizing:border-box}.ch :where(h1,h2,h3,h4,p,ul,ol,dl,figure,blockquote,pre){margin:0}.ch :where(h1,h2,h3,h4,p,dt,dd,li){text-align:left}.ch :where(ul,ol){padding:0;list-style:none}.ch a{color:inherit}.ch :where(button){font:inherit;color:inherit;cursor:pointer}.ch :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.ch-main{min-height:60vh}.ch-top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:6px;height:var(--top);padding:0 12px;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}.ch-top.is-scrolled{border-bottom-color:var(--rule)}.ch-top__back,.ch-top__btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 8px;border-radius:10px;border:1px solid transparent;background:none;text-decoration:none;font:700 13px/1 var(--f-ui);color:var(--ink-2)}.ch-top__back svg,.ch-top__btn svg{width:20px;height:20px}.ch-top__back:hover,.ch-top__btn:hover{background:var(--paper-2);border-color:var(--rule)}.ch-top__brand{display:inline-flex;align-items:center;gap:8px;min-width:0;text-decoration:none;font:800 17px/1 var(--f-ui);letter-spacing:-.01em}.ch-top__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-logo{width:28px;height:28px;flex:none;color:var(--ink)}.ch-top__where{display:none;align-items:center;gap:8px;min-width:0;margin-left:8px;padding-left:14px;border-left:1px solid var(--rule-2);color:var(--ink-2);font-size:14px}.ch-top__n{flex:none;font:700 12px/1 var(--f-code);padding:4px 6px;border-radius:6px;background:var(--accent-soft);color:var(--accent-ink)}.ch-top__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-top__nav{display:none;margin-left:auto;gap:2px}.ch-top__nav a{padding:8px 12px;border-radius:9px;text-decoration:none;font-weight:600;font-size:14.5px;color:var(--ink-2)}.ch-top__nav a:hover,.ch-top__nav a.is-on{background:var(--paper-2);color:var(--ink)}.ch-top__lang{margin-left:auto}.ch-top__nav+.ch-top__lang{margin-left:4px}.ch-top__menu-label{display:none;margin-left:8px}.ch-top__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent}.ch-top__progress>span{display:block;height:100%;background:var(--accent);transform-origin:left;transform:scaleX(var(--progress, 0))}.ch-ring{width:22px;height:22px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p) * 1%),var(--rule-2) 0);mask:radial-gradient(circle,transparent 6px,#000 7px);-webkit-mask:radial-gradient(circle,transparent 6px,#000 7px)}@media (min-width: 760px){.ch-top{padding:0 20px}.ch-top__nav{display:flex}.ch-top__where{display:inline-flex}}@media (min-width: 560px){.ch-top__menu-label{display:inline}}.ch-drawer{margin:0 0 0 auto;padding:0;width:min(380px,92vw);max-width:none;height:100dvh;max-height:none;border:0;border-left:1px solid var(--rule);background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--f-ui)}.ch-drawer::backdrop{background:#0a0e0b73}.ch-drawer[open]{display:flex;flex-direction:column}.ch-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--rule)}.ch-drawer__brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font:800 17px/1 var(--f-ui)}.ch-drawer__close{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;background:none;border:1px solid transparent;border-radius:10px}.ch-drawer__close:hover{background:var(--paper-2);border-color:var(--rule)}.ch-drawer__close svg{width:20px;height:20px}.ch-drawer__body{overflow-y:auto;padding:6px 14px 28px;overscroll-behavior:contain}.ch-drawer__sec{margin-top:18px}.ch-drawer__title{font:700 12px/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.ch-drawer__toc a,.ch-drawer__nav a{display:block;padding:9px 10px;border-radius:8px;text-decoration:none;color:var(--ink-2)}.ch-drawer__toc a:hover,.ch-drawer__nav a:hover,.ch-drawer__toc a.is-on{background:var(--paper-2);color:var(--ink)}.ch-drawer__nav{display:grid;grid-template-columns:1fr 1fr;gap:2px;font-weight:600}.ch-drawer__part{margin-top:14px}.ch-drawer__part-name{display:flex;align-items:center;gap:8px;font:800 14px/1.2 var(--f-ui);color:var(--lc)}.ch-drawer__roman{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;padding:0 5px;border-radius:6px;background:var(--lc);color:var(--paper);font:700 11px/1 var(--f-code)}.ch-drawer__list{margin-top:4px}.ch-drawer__list li>a,.ch-drawer__item{display:flex;align-items:center;gap:10px;min-height:40px;padding:7px 10px;border-radius:8px;text-decoration:none;color:var(--ink-2);font-size:15px}.ch-drawer__list li>a:hover{background:var(--paper-2);color:var(--ink)}.ch-drawer__list li.is-here>a{background:color-mix(in srgb,var(--lc) 14%,transparent);color:var(--ink);font-weight:700}.ch-drawer__list li.is-soon .ch-drawer__item{color:var(--ink-4)}.ch-drawer__list li.is-done>a .ch-drawer__n{color:var(--ok)}.ch-drawer__list li.is-done>a .ch-drawer__n:after{content:"✓";margin-left:2px}.ch-drawer__n{flex:none;min-width:1.6em;font:600 12px/1 var(--f-code);color:var(--ink-3)}.ch-drawer__name{flex:1;min-width:0}.ch-drawer__soon{flex:none;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-4)}.ch-note-bar{padding:10px 16px;background:var(--paper-2);border-bottom:1px solid var(--rule);font-size:14.5px;text-align:center;color:var(--ink-2)}.ch-edition-note{margin-top:14px;padding:9px 12px;border-left:3px solid var(--p1);background:var(--p1-soft);border-radius:0 8px 8px 0;font-size:14.5px;color:var(--ink-2)}.ch-draft{margin:0 auto;width:var(--page);padding:8px 12px;background:var(--p1-soft);border:1px dashed var(--p1);border-radius:8px;font-size:14px;color:var(--ink-2)}.ch-eyebrow{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;font:800 12px/1.3 var(--f-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink)}.ch-eyebrow__sep{color:var(--ink-4)}.ch-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:12px;border:1px solid var(--rule-2);background:var(--card);color:var(--ink);text-decoration:none;font:700 15px/1 var(--f-ui)}.ch-btn:hover{border-color:var(--ink-3)}.ch-btn.ch-btn--primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.ch-btn.ch-btn--primary:hover{background:color-mix(in srgb,var(--ink) 85%,var(--accent));border-color:transparent}.ch-level{display:inline-flex;align-items:center;gap:7px;font:700 12px/1 var(--f-ui);color:var(--ink-2)}.ch-level__pips{display:inline-flex;gap:2px}.ch-level__pips i{width:5px;height:11px;border-radius:1.5px;background:var(--rule-2)}.ch-level__pips i.is-on{background:var(--lc, var(--accent))}.ch-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--paper-2);font:600 13px/1 var(--f-ui);color:var(--ink-2)}.ch-chip svg{width:15px;height:15px}.ch-chip--done{background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok)}.ch-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.ch-tag{padding:4px 10px;border-radius:999px;border:1px solid var(--rule);font:600 12.5px/1.2 var(--f-ui);color:var(--ink-3)}.ch-empty{padding:40px 16px;text-align:center;color:var(--ink-3)}.ch-hero{width:var(--page);margin:0 auto;padding:36px 0 28px;display:grid;gap:28px;align-items:center}.ch-hero__title{margin-top:10px;font:800 clamp(1.9rem,6.4vw,3.3rem)/1.08 var(--f-ui);letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere}.ch-hero__lead{margin-top:16px;max-width:40rem;font:400 clamp(1.02rem,2.6vw,1.2rem)/1.6 var(--f-text);color:var(--ink-2)}.ch-hero__cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.ch-hero__progress,.ch-hero__count{margin-top:14px;font:600 14px/1.4 var(--f-ui);color:var(--ink-3)}.ch-hero__progress{color:var(--ok)}.ch-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:18px}.ch-hero__art{justify-self:start;width:min(200px,52vw)}.ch-board-art{display:block;width:100%;height:auto;border-radius:4px;box-shadow:var(--shadow)}@media (min-width: 860px){.ch-hero--hub{grid-template-columns:minmax(0,1fr) 280px;gap:56px;padding:60px 0 44px}.ch-hero__art{justify-self:end;width:280px}}.ch-sec{width:var(--page);margin:0 auto;padding:24px 0 36px}.ch-sec__head{margin-bottom:22px}.ch-sec__title{font:800 clamp(1.5rem,4.4vw,2.1rem)/1.15 var(--f-ui);letter-spacing:-.015em}.ch-sec__lead{margin-top:8px;max-width:42rem;color:var(--ink-2);font:400 1.02rem/1.6 var(--f-text)}.ch-part{margin-top:18px;padding:18px 16px 16px;border:1px solid var(--rule);border-left:4px solid var(--lc);border-radius:14px;background:var(--card)}.ch-part__head{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.ch-part__roman{flex:none;display:inline-flex;min-width:38px;height:38px;align-items:center;justify-content:center;border-radius:10px;background:var(--lc);color:var(--paper);font:800 15px/1 var(--f-code)}.ch-part__name{font:800 1.25rem/1.2 var(--f-ui)}.ch-part__desc{margin-top:4px;color:var(--ink-2);font-size:15.5px}.ch-part__meta{margin-top:6px;font:600 12.5px/1.4 var(--f-ui);color:var(--ink-3)}.ch-part__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:10px}.ch-part__item{display:flex;scroll-margin-top:calc(var(--top) + 12px)}.ch-card{position:relative;display:flex;flex-direction:column;gap:8px;width:100%;padding:12px 14px;border:1px solid var(--rule);border-radius:12px;background:var(--paper);text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}a.ch-card:hover{border-color:var(--lc);transform:translateY(-1px)}.ch-card__top{display:flex;align-items:center;gap:8px}.ch-card__n{font:700 12px/1 var(--f-code);padding:4px 6px;border-radius:6px;background:var(--lc-soft);color:var(--lc)}.ch-card__soon,.ch-card__ru{margin-left:auto;font:700 11px/1 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.ch-card__ru{margin-left:0;padding:3px 5px;border:1px solid var(--rule-2);border-radius:5px;color:var(--ink-3)}.ch-card__done{margin-left:auto;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--rule-2)}.ch-card.is-done .ch-card__done{background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--ok)}.ch-card__title{font:700 16px/1.3 var(--f-ui)}.ch-card__lead{font:400 14.5px/1.5 var(--f-text);color:var(--ink-2)}.ch-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:auto;padding-top:4px}.ch-card__meta .ch-level{--lc: inherit}.ch-card__min{font:600 12px/1 var(--f-ui);color:var(--ink-3)}.ch-card.is-soon{border-style:dashed;background:transparent;color:var(--ink-3)}.ch-card.is-soon .ch-card__title{font-weight:600}.ch-doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}.ch-door{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--rule);border-radius:14px;background:var(--card);text-decoration:none}a.ch-door:hover{border-color:var(--ink-3)}.ch-door__title{font:800 1.05rem/1.2 var(--f-ui)}.ch-door__title em{margin-left:6px;font:700 11px/1 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4);font-style:normal}.ch-door__text{font-size:14.5px;color:var(--ink-2)}.ch-door.is-soon{border-style:dashed;background:transparent;color:var(--ink-3)}.ch-ch__intro{width:var(--page);margin:0 auto;padding:4px 0 18px;display:grid;gap:16px}.ch-prereq{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:14.5px;color:var(--ink-2)}.ch-prereq__label{font-weight:700}.ch-prereq a,.ch-prereq .is-soon{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--rule-2);border-radius:999px;text-decoration:none}.ch-prereq a:hover{border-color:var(--lc)}.ch-prereq .is-soon{color:var(--ink-4);border-style:dashed}.ch-prereq__dot{width:8px;height:8px;border-radius:50%;background:var(--lc)}.ch-learn{padding:14px 16px;border-radius:12px;background:var(--accent-soft)}.ch-learn__title{font:800 13px/1 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:8px}.ch-learn li{position:relative;padding-left:20px;margin-top:4px}.ch-learn li:before{content:"";position:absolute;left:4px;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--accent)}.ch-ch__grid{width:var(--page);margin:0 auto;display:block;padding-bottom:36px}.ch-toc{display:none}@media (min-width: 1000px){.ch-ch__grid{display:grid;grid-template-columns:220px minmax(0,var(--prose));gap:56px;justify-content:start}.ch-toc{display:block;position:sticky;top:calc(var(--top) + 20px);align-self:start;max-height:calc(100vh - var(--top) - 40px);overflow-y:auto;font-size:14px}.ch-toc__title{font:800 12px/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}.ch-toc a{display:block;padding:6px 10px;border-left:2px solid var(--rule);text-decoration:none;color:var(--ink-3)}.ch-toc a:hover{color:var(--ink)}.ch-toc a.is-on{border-left-color:var(--accent);color:var(--ink);font-weight:700}}.ch-prose{min-width:0;max-width:var(--prose);margin:0 auto;font:400 18px/1.72 var(--f-text)}.ch-prose>*+*{margin-top:1.05em}.ch-prose h2{margin-top:2.1em;font:800 clamp(1.4rem,4vw,1.8rem)/1.2 var(--f-ui);letter-spacing:-.015em;scroll-margin-top:calc(var(--top) + 12px)}.ch-prose h3{margin-top:1.7em;font:800 1.2rem/1.3 var(--f-ui);scroll-margin-top:calc(var(--top) + 12px)}.ch-prose a{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:3px}.ch-prose a[data-ch-soon]{color:var(--ink-3);text-decoration-style:dotted;cursor:help}.ch-prose ul,.ch-prose ol{padding-left:1.4em}.ch-prose ul{list-style:disc}.ch-prose ol{list-style:decimal}.ch-prose li+li{margin-top:.35em}.ch-prose li::marker{color:var(--accent)}.ch-prose blockquote{padding:4px 0 4px 18px;border-left:3px solid var(--accent);color:var(--ink-2);font-style:italic}.ch-prose code{padding:.08em .35em;border-radius:5px;color:inherit;background:var(--paper-2);font:500 .88em/1 var(--f-code);overflow-wrap:anywhere}.ch-prose pre{overflow-x:auto;padding:14px 16px;border-radius:10px;background:var(--paper-2);font:400 14px/1.6 var(--f-code)}.ch-prose pre code{padding:0;background:none}.ch-prose dfn{font-style:normal;font-weight:600;border-bottom:1px dotted var(--accent)}.ch-prose img,.ch-prose svg{max-width:100%;height:auto}.ch-prose .table-wrap{overflow-x:auto;border:1px solid var(--rule);border-radius:10px}.ch-prose table{width:100%;border-collapse:collapse;font:400 15.5px/1.5 var(--f-ui)}.ch-prose th,.ch-prose td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap}.ch-prose th{background:var(--paper-2);font-weight:700}.ch-prose tr:last-child td{border-bottom:0}@media (max-width: 420px){.ch-prose table{font-size:14.5px}.ch-prose th,.ch-prose td{padding:8px 7px}}.ch ch-diagram,.ch ch-line,.ch ch-quiz,.ch ch-step{display:block}.ch ch-diagram:not(:defined){max-width:380px;margin-inline:auto;aspect-ratio:1;border-radius:6px;background:var(--paper-2);font-size:0}.ch ch-line:not(:defined){min-height:380px}.ch ch-step:not(:defined){margin:.4em 0}.ch ch-find,.ch ch-puzzle,.ch ch-mate,.ch ch-explain{display:block}.ch ch-find:not(:defined),.ch ch-puzzle:not(:defined),.ch ch-mate:not(:defined),.ch ch-explain:not(:defined){min-height:420px}.ch ch-find:not(:defined) .why,.ch ch-puzzle:not(:defined) .why,.ch ch-mate:not(:defined) .why{display:none}.ch-pager{width:var(--page);margin:0 auto;padding:8px 0 48px;display:grid;gap:12px}@media (min-width: 640px){.ch-pager{grid-template-columns:1fr 1fr}}.ch-pager__card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--rule);border-left:4px solid var(--lc, var(--rule-2));border-radius:12px;background:var(--card);text-decoration:none}a.ch-pager__card:hover{border-color:var(--lc, var(--ink-3))}.ch-pager__card--next{text-align:right;border-left-width:1px;border-right:4px solid var(--lc, var(--rule-2))}.ch-pager__dir{font:800 12px/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.ch-pager__n{font:600 12px/1.2 var(--f-code);color:var(--ink-3)}.ch-pager__title{font:800 1.05rem/1.3 var(--f-ui)}.ch-pager__lead{font:400 14.5px/1.5 var(--f-text);color:var(--ink-2)}.ch-pager__card.is-soon{border-style:dashed;color:var(--ink-3)}.ch-page-head{width:var(--page);margin:0 auto;padding:40px 0 18px}.ch-page-head__title{margin-top:8px;font:800 clamp(1.8rem,5.6vw,2.8rem)/1.1 var(--f-ui);letter-spacing:-.02em}.ch-page-head__lead{margin-top:12px;max-width:40rem;font:400 1.08rem/1.6 var(--f-text);color:var(--ink-2)}.ch-letters{width:var(--page);margin:0 auto 12px;display:flex;flex-wrap:wrap;gap:4px}.ch-letters a{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--rule);border-radius:9px;text-decoration:none;font:700 14px/1 var(--f-ui)}.ch-letters a:hover{border-color:var(--ink-3)}.ch-gloss{width:var(--page);margin:0 auto;padding-bottom:48px}.ch-gloss__letter{margin-top:24px;padding-bottom:6px;border-bottom:1px solid var(--rule);font:800 1.4rem/1 var(--f-ui);color:var(--ink-3)}.ch-gloss__item{padding:12px 0 12px 14px;border-bottom:1px solid var(--rule);border-left:3px solid var(--lc);scroll-margin-top:calc(var(--top) + 12px)}.ch-gloss__item:target{background:var(--accent-soft)}.ch-gloss__term{font:800 1.05rem/1.3 var(--f-ui)}.ch-gloss__def{margin:4px 0 0;display:flex;flex-direction:column;gap:4px;font:400 16px/1.55 var(--f-text);color:var(--ink-2)}.ch-gloss__src{display:inline-flex;align-items:center;gap:6px;font:600 13px/1.3 var(--f-ui);color:var(--ink-3);text-decoration:none}.ch-gloss__src:hover{color:var(--ink)}.ch-gloss__dot{width:8px;height:8px;border-radius:50%;background:var(--lc)}.ch-prac{display:grid;gap:10px}.ch-prac__item{border:1px solid var(--rule);border-radius:14px;background:var(--card);scroll-margin-top:calc(var(--top) + 12px)}.ch-prac__item[open]{border-color:var(--rule-2);box-shadow:var(--shadow)}.ch-prac__summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 14px;cursor:pointer;list-style:none;border-radius:14px}.ch-prac__summary::-webkit-details-marker{display:none}.ch-prac__summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ch-prac__text{display:grid;gap:2px;min-width:0;flex:1}.ch-prac__title{font:800 1.05rem/1.25 var(--f-ui)}.ch-prac__about{font:400 14.5px/1.45 var(--f-text);color:var(--ink-2)}.ch-prac__toggle{flex:none;font:700 13px/1 var(--f-ui);color:var(--accent-ink)}.ch-prac__item:not([open]) .when-open,.ch-prac__item[open] .when-closed{display:none}.ch-prac__body{padding:2px 10px 14px}.ch .ch-prac__body ch-trainer{margin:0}.ch .ch-prac__body .cht{padding:0;border:0;background:none}.ch .ch-prac__body .cht__titles{display:none}.ch .ch-prac__body .cht__head{justify-content:flex-end}.ch .ch-prac__body .cht.is-right,.ch .ch-prac__body .cht.is-wrong{border:0}.ch-prac__chapters{margin:12px 0 0;font:600 13.5px/1.7 var(--f-ui);color:var(--ink-3)}.ch-prac__chapters a{display:inline-block;margin:0 6px 0 0;color:var(--lc, var(--accent-ink))}.ch-prac-credit{margin:12px 0 0;font:500 13.5px/1.5 var(--f-ui);color:var(--ink-3)}.ch-prac-puzzles{padding-bottom:8px}.ch-prac-puzzles .ch-sec__head{margin-bottom:12px}.ch-foot{margin-top:24px;border-top:1px solid var(--rule);background:var(--paper-2)}.ch-foot__inner{width:var(--page);margin:0 auto;padding:32px 0 40px;display:grid;gap:28px;grid-template-columns:1fr 1fr}.ch-foot__brand{grid-column:1 / -1}.ch-foot__logo{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font:800 17px/1 var(--f-ui)}.ch-foot__note{margin-top:10px;max-width:28rem;font-size:14.5px;color:var(--ink-3)}.ch-foot__col{display:flex;flex-direction:column;gap:6px}.ch-foot__title{font:800 12px/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px}.ch-foot__col a{text-decoration:none;font-size:15px;color:var(--ink-2)}.ch-foot__col a:hover{color:var(--ink);text-decoration:underline}@media (min-width: 760px){.ch-foot__inner{grid-template-columns:1.4fr 1fr 1fr}.ch-foot__brand{grid-column:auto}}@media (prefers-reduced-motion: reduce){.ch *,.ch *:before,.ch *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
