:root{color-scheme:light;--neutral-50:#f7f7f5;--neutral-100:#efefec;--neutral-200:#deded9;--neutral-300:#c9c9c3;--neutral-500:#8a8a84;--neutral-600:#656560;--neutral-700:#4d4d49;--neutral-800:#353533;--neutral-900:#242423;--neutral-950:#181817;--bg:#f7f7f5;--surface:#ffffff;--surface-raised:#ffffff;--surface-muted:#efefec;--text:#181817;--muted:#656560;--faint:#deded9;--border:#deded9;--border-strong:#b9b9b2;--theme:#2563a6;--theme-muted:#315f91;--theme-soft:#e8f1fb;--theme-100:#e8f1fb;--theme-200:#c9dcf2;--theme-300:#91b8e2;--theme-400:#6195cf;--theme-500:#3979bd;--theme-700:#315f91;--theme-800:#234d79;--action-bg:#2563a6;--action-border:#2563a6;--action-hover:#1f528a;--action-text:#ffffff;--accent:var(--theme);--secondary-100:#e8f1fb;--secondary-200:#c9dcf2;--secondary-300:#91b8e2;--secondary:#3979bd;--secondary-muted:#2f659e;--accent-secondary:var(--secondary);--diagram-a:#c9584c;--diagram-b:#3979bd;--diagram-c:#168263;--diagram-control:#7a55c7;--success:#11734d;--warning:#9a6700;--danger:#b83a3a;--code-bg:#f1f1ee;--code-gutter-bg:#e9e9e5;--code-border:#d4d4ce;--code-inline-bg:#e8e8e4;--code-inline-text:#292927;--code-text:#292927;--paper:var(--surface);--font-sans:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--type-caption:0.8125rem;--type-small:0.875rem;--type-body:1rem;--type-description:1.0625rem;--type-lead:1.125rem;--font-small:var(--type-small);--leading-tight:1.08;--leading-heading:1.2;--leading-body:1.68;--leading-caption:1.45;--line:var(--border);--surface-soft:var(--surface-muted);--max:960px;--course:820px;--reader:820px;--annotation-important:#f2c94c;--annotation-concept:#69a7e6;--annotation-understood:#67bd91;--annotation-revisit:#dc8b69;--annotation-neutral:#a9a9a2}.mdi-icon{display:block;width:var(--mdi-icon-size,1.25rem);height:var(--mdi-icon-size,1.25rem);flex:0 0 auto}.reader.annotation-reader{max-width:var(--reader)}.annotation-layout{display:block;position:relative;width:100%}.annotation-content{min-width:0;position:relative}.annotation-reader .lesson-nav{margin-left:auto;margin-right:auto;max-width:var(--reader)}.annotation-sidebar{min-width:0;position:fixed;right:max(18px,calc((100vw - var(--reader)) / 2 - 304px));top:92px;width:84px;z-index:60}.annotation-sidebar:not(.is-open){display:none}.annotation-sidebar.is-open{background:var(--surface-raised);border:1px solid var(--border);border-top:3px solid var(--annotation-neutral);box-shadow:0 8px 26px rgb(0 0 0/12%);max-height:calc(100vh - 116px);overflow:visible;padding:10px 14px 16px;width:312px}.annotation-sidebar.is-important{border-top-color:var(--annotation-important)}.annotation-sidebar.is-concept{border-top-color:var(--annotation-concept)}.annotation-sidebar.is-understood{border-top-color:var(--annotation-understood)}.annotation-sidebar.is-revisit{border-top-color:var(--annotation-revisit)}.annotation-sidebar.is-neutral{border-top-color:var(--annotation-neutral)}.annotation-panel-nav,.annotation-panel-toolbar{align-items:center;display:flex}.annotation-panel-toolbar{border-bottom:1px solid var(--border);gap:3px;min-height:40px}.annotation-panel-selector{flex:1 1 auto;min-width:0;position:relative}.annotation-panel-selector>summary{align-items:center;color:var(--text);cursor:pointer;display:grid;gap:8px;grid-template-columns:9px minmax(0,1fr);height:36px;list-style:none;padding:0 6px 0 2px}.annotation-panel-selector>summary::-webkit-details-marker{display:none}.annotation-panel-selector>summary strong{font-size:var(--type-caption);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-panel-selector>div{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 6px 20px rgb(0 0 0/12%);display:grid;left:0;max-height:min(360px,55vh);min-width:270px;overflow:auto;padding:5px;position:absolute;top:calc(100% + 5px);z-index:7}.annotation-panel-selector>div button{align-items:flex-start;background:transparent;border:0;color:var(--text);cursor:pointer;display:grid;font:inherit;gap:8px;grid-template-columns:9px minmax(0,1fr);min-height:40px;padding:7px 8px;text-align:left}.annotation-panel-selector>div button:focus-visible,.annotation-panel-selector>div button:hover,.annotation-panel-selector>div button[aria-current=true]{background:var(--surface-muted)}.annotation-panel-selector>div button strong{display:-webkit-box;font-size:var(--type-caption);font-weight:600;line-height:var(--leading-caption);overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.annotation-panel-selector>div button small{color:var(--muted);display:block;font-size:.7rem;margin-top:3px}.annotation-delete,.annotation-icon-button{background:transparent;border:0;color:var(--text);cursor:pointer;font:inherit}.annotation-panel-title{color:var(--muted);font-size:var(--type-caption);font-weight:650;margin-right:auto;padding:7px 0;white-space:nowrap}.annotation-panel-title span{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:5px}.annotation-icon-button{align-items:center;display:inline-flex;font-size:1.1rem;height:28px;justify-content:center;padding:0;width:28px}.annotation-control-icon{fill:none;height:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65;width:18px}.annotation-delete:focus-visible,.annotation-icon-button:focus-visible{outline:2px solid var(--theme);outline-offset:2px}.annotation-panel{max-height:calc(100vh - 190px);overflow:auto;overscroll-behavior:contain;padding-top:8px;scrollbar-gutter:stable}.annotation-pinned-stack{display:grid;gap:8px;margin-top:10px;max-height:calc(100vh - 150px);overflow:auto;overscroll-behavior:contain}.annotation-panel+.annotation-pinned-stack{border-top:1px solid var(--border);max-height:34vh;padding-top:10px}.annotation-sidebar.has-pins.has-active-panel .annotation-panel{max-height:46vh}.annotation-pinned-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--annotation-neutral);padding:8px 9px}.annotation-pinned-card.is-important{border-left-color:var(--annotation-important)}.annotation-pinned-card.is-concept{border-left-color:var(--annotation-concept)}.annotation-pinned-card.is-understood{border-left-color:var(--annotation-understood)}.annotation-pinned-card.is-revisit{border-left-color:var(--annotation-revisit)}.annotation-pinned-card.is-neutral{border-left-color:var(--annotation-neutral)}.annotation-pinned-card>div{align-items:flex-start;display:flex;gap:5px}.annotation-pinned-open{align-items:start;background:transparent;border:0;color:var(--text);cursor:pointer;display:grid;flex:1 1 auto;font:inherit;gap:7px;grid-template-columns:8px minmax(0,1fr);min-width:0;padding:3px 0;text-align:left}.annotation-pinned-card p,.annotation-pinned-card small,.annotation-pinned-open strong{display:-webkit-box;font-size:var(--type-caption);line-height:var(--leading-caption);overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.annotation-pinned-card p,.annotation-pinned-card small{color:var(--muted);margin:5px 0 0 15px}.content-report-dialog{align-items:center;background:rgb(0 0 0/34%);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:100}.content-report-dialog form{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 16px 48px rgb(0 0 0/22%);display:grid;gap:9px;max-height:calc(100vh - 40px);max-width:480px;overflow:auto;padding:18px;width:100%}.content-report-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.content-report-heading h2{font-size:var(--type-h4);margin:0}.content-report-dialog blockquote{border-left:2px solid var(--border-strong);color:var(--muted);display:-webkit-box;font-size:var(--type-small);line-height:var(--leading-caption);margin:4px 0 8px;overflow:hidden;padding-left:11px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.content-report-dialog label{font-size:var(--type-caption);font-weight:650}.content-report-dialog label span,.content-report-privacy{color:var(--muted);font-weight:400}.content-report-dialog select,.content-report-dialog textarea{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);font:inherit;padding:9px 10px;width:100%}.content-report-dialog select:focus-visible,.content-report-dialog textarea:focus-visible{border-color:var(--theme);outline:2px solid color-mix(in srgb,var(--theme) 24%,transparent);outline-offset:1px}.content-report-dialog textarea{min-height:104px;resize:vertical}.content-report-error,.content-report-privacy{font-size:var(--type-caption);line-height:var(--leading-caption);margin:3px 0}.content-report-error{color:var(--danger)}.content-report-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.content-report-actions button{min-height:40px}.editorial-report-list{display:grid;gap:16px}.editorial-report-heading{align-items:start;display:flex;gap:12px;justify-content:space-between}.editorial-report-heading h2{margin:0}.editorial-report-status{background:var(--surface-muted);border:1px solid var(--border);font-size:var(--type-caption);padding:3px 7px;text-transform:capitalize}.editorial-report-status.is-open{border-color:var(--warning)}.editorial-report-status.is-reviewing{border-color:var(--theme)}.editorial-report-status.is-resolved{border-color:var(--success)}.editorial-report-card small,.editorial-report-document{color:var(--muted);font-size:var(--type-caption)}.editorial-report-card blockquote{border-left:2px solid var(--border-strong);color:var(--muted);margin:14px 0;padding-left:12px}.editorial-report-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.editorial-report-actions button{text-transform:capitalize}@media (max-width:520px){.content-report-dialog{align-items:flex-end;padding:0}.content-report-dialog form{border-bottom:0;border-left:0;border-right:0;max-height:88vh;max-width:none;padding:16px 16px max(16px,env(safe-area-inset-bottom))}}.annotation-panel-nav{color:var(--muted);font-size:var(--type-caption);white-space:nowrap}.annotation-panel-nav .annotation-icon-button{height:28px;width:24px}.annotation-quote{margin:14px 0 16px}.annotation-quote blockquote{border-left:2px solid var(--border-strong);color:var(--muted);display:-webkit-box;font-size:var(--type-small);line-height:var(--leading-caption);margin:0;overflow:hidden;padding-left:12px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.annotation-quote.is-expanded blockquote{display:block;overflow:visible}.annotation-quote>button{background:transparent;border:0;color:var(--theme);cursor:pointer;font:inherit;font-size:var(--type-caption);margin-top:5px;padding:3px 0}.annotation-color{background:var(--annotation-neutral);border:1px solid color-mix(in srgb,var(--text) 25%,transparent);border-radius:50%;cursor:pointer;height:18px;padding:0;width:18px}.annotation-color:focus-visible,.annotation-color:hover,.annotation-color[aria-pressed=true]{outline:2px solid var(--text);outline-offset:2px}.annotation-color.is-important{background:var(--annotation-important)}.annotation-color.is-concept{background:var(--annotation-concept)}.annotation-color.is-understood{background:var(--annotation-understood)}.annotation-color.is-revisit{background:var(--annotation-revisit)}.annotation-color.is-neutral{background:var(--annotation-neutral)}::highlight(annotation-important){background:color-mix(in srgb,var(--annotation-important) 48%,transparent)}::highlight(annotation-concept){background:color-mix(in srgb,var(--annotation-concept) 42%,transparent)}::highlight(annotation-understood){background:color-mix(in srgb,var(--annotation-understood) 42%,transparent)}::highlight(annotation-revisit){background:color-mix(in srgb,var(--annotation-revisit) 42%,transparent)}::highlight(annotation-neutral){background:color-mix(in srgb,var(--annotation-neutral) 38%,transparent)}.annotation-panel label{display:block;font-size:var(--type-caption);font-weight:650;margin-bottom:7px}.annotation-panel textarea{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);font:inherit;font-size:var(--type-small);line-height:1.55;padding:10px;resize:vertical;width:100%}.annotation-panel textarea:focus{border-color:var(--theme);outline:2px solid color-mix(in srgb,var(--theme) 25%,transparent)}.annotation-rich-editor{background:var(--surface);border:1px solid var(--border-strong)}.annotation-rich-editor:focus-within{border-color:var(--theme);box-shadow:0 0 0 2px color-mix(in srgb,var(--theme) 18%,transparent)}.annotation-editor-toolbar{align-items:center;background:var(--surface-muted);display:flex;gap:3px;justify-content:space-between;padding:3px 4px;border-bottom:1px solid var(--border);flex-wrap:wrap}.annotation-editor-formatting{align-items:center;display:flex;gap:2px}.annotation-editor-menu{position:relative}.annotation-editor-menu>summary{align-items:center;color:var(--muted);cursor:pointer;display:inline-flex;font-size:var(--type-caption);height:28px;justify-content:center;list-style:none;min-width:28px;padding:0 6px}.annotation-editor-menu>summary::-webkit-details-marker{display:none}.annotation-editor-menu>summary:focus-visible,.annotation-editor-menu>summary:hover,.annotation-editor-menu[open]>summary{background:var(--surface-raised);color:var(--text)}.annotation-editor-menu>summary:focus-visible{outline:2px solid var(--theme);outline-offset:-2px}.annotation-editor-menu>div{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 8px 22px rgb(0 0 0/14%);display:grid;min-width:154px;padding:4px;position:absolute;top:calc(100% + 5px);z-index:4}.annotation-editor-menu>div button{gap:8px;justify-content:flex-start;min-height:36px;padding:4px 8px;width:100%}.annotation-editor-menu>div button[aria-pressed=true]:after{content:"✓";margin-left:auto}.annotation-editor-more-menu>div{left:0}.annotation-editor-mode-menu{margin-left:auto}.annotation-editor-mode-menu>summary{min-width:58px}.annotation-editor-mode-menu>summary:after{border-bottom:1px solid;border-right:1px solid;content:"";height:5px;margin-left:7px;transform:rotate(45deg) translateY(-2px);width:5px}.annotation-editor-mode-menu>div{right:0}.annotation-editor-link-row{align-items:center;border-top:1px solid var(--border);display:grid;flex:1 0 100%;gap:5px;grid-template-columns:minmax(0,1fr) auto auto auto;margin-top:3px;padding-top:5px}.annotation-editor-link-row input{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);font:inherit;font-size:var(--type-caption);height:32px;min-width:0;padding:0 8px}.annotation-editor-link-row input:focus{border-color:var(--theme);outline:2px solid color-mix(in srgb,var(--theme) 20%,transparent)}.annotation-editor-toolbar .annotation-editor-link-row button{border:1px solid var(--border);color:var(--text);height:32px;min-width:0;padding:0 8px;width:auto}.annotation-editor-link-row small{color:var(--danger);font-size:.7rem;grid-column:1/-1}.annotation-editor-toolbar button{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--type-caption);height:28px;justify-content:center;min-width:28px;padding:0 5px}.annotation-editor-icon{fill:none;height:17px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6;width:17px}.annotation-editor-toolbar button:focus-visible,.annotation-editor-toolbar button:hover,.annotation-editor-toolbar button[aria-pressed=true]{background:var(--surface-raised);color:var(--text)}.annotation-editor-toolbar button:focus-visible{outline:2px solid var(--theme);outline-offset:-2px}.annotation-editor-content .tiptap{background:var(--surface);caret-color:var(--theme);color:var(--text);font-size:var(--type-small);line-height:1.55;min-height:148px;outline:0;padding:10px}.annotation-editor-content .tiptap ::selection{background:color-mix(in srgb,var(--theme) 22%,transparent)}.annotation-editor-content{position:relative}.annotation-editor-content.is-empty:before{color:var(--muted);content:"Write a note…";font-size:var(--type-small);left:10px;line-height:1.55;pointer-events:none;position:absolute;top:10px}.annotation-editor-content .tiptap>:first-child{margin-top:0}.annotation-editor-content .tiptap>:last-child{margin-bottom:0}.annotation-editor-content .tiptap p{margin:.55em 0}.annotation-editor-content .tiptap a{color:var(--theme);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.annotation-editor-content .tiptap code:not(pre code){background:var(--code-inline-bg);color:var(--code-inline-text);font-family:var(--font-mono);font-size:.84em;padding:.12em .28em}.annotation-editor-content .tiptap h2{font-size:1rem;line-height:1.35;margin:1em 0 .45em}.annotation-editor-content .tiptap ol,.annotation-editor-content .tiptap ul{margin:.65em 0;padding-left:1.4em}.annotation-editor-content .tiptap blockquote{border-left:2px solid var(--border-strong);color:var(--muted);margin:.75em 0;padding-left:.8em}.annotation-editor-content .tiptap pre{background:var(--code-bg);color:var(--code-text);font-family:var(--font-mono);font-size:.78rem;line-height:1.5;overflow-x:auto;padding:9px}.annotation-rich-editor>textarea{border:0;display:block;font-family:var(--font-mono);font-size:.78rem;line-height:1.55;min-height:148px;outline:0;resize:vertical}.annotation-rich-editor>textarea:focus{border:0;outline:0}.annotation-delete{align-items:center;color:var(--danger);display:inline-flex;font-size:var(--type-caption);gap:5px;margin-top:18px;padding:5px 0}.annotation-empty,.annotation-status{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-caption)}.annotation-sidebar>.annotation-status{margin:9px 0 0}.annotation-panel-color-menu{margin:14px 0 18px;position:relative}.annotation-panel-color-menu>summary{align-items:center;border:1px solid var(--border);color:var(--text);cursor:pointer;display:flex;gap:8px;min-height:40px;padding:7px 10px}.annotation-panel-color-menu>summary>span:first-child{color:var(--muted);font-size:var(--type-caption)}.annotation-panel-color-menu>summary strong{font-size:var(--type-caption);font-weight:650}.annotation-panel-color-menu>div{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 6px 20px rgb(0 0 0/12%);display:grid;left:0;padding:5px;position:absolute;right:0;top:calc(100% + 5px);z-index:5}.annotation-panel-color-menu>div button{align-items:center;background:transparent;border:0;color:var(--text);cursor:pointer;display:flex;font:inherit;font-size:var(--type-caption);gap:9px;min-height:38px;padding:5px 8px}.annotation-panel-color-menu>div button:focus-visible,.annotation-panel-color-menu>div button:hover,.annotation-panel-color-menu>div button[aria-pressed=true]{background:var(--surface-muted)}.annotation-panel-color-menu .annotation-color{flex:0 0 auto;height:16px;width:16px}.annotation-panel-color-menu.is-toolbar,.annotation-panel-more-menu{margin:0;position:relative}.annotation-panel-color-menu.is-toolbar>summary,.annotation-panel-more-menu>summary{align-items:center;background:transparent;border:0;color:var(--text);cursor:pointer;display:inline-flex;height:28px;justify-content:center;list-style:none;min-height:0;padding:0;width:28px}.annotation-panel-color-menu.is-toolbar>summary::-webkit-details-marker,.annotation-panel-more-menu>summary::-webkit-details-marker{display:none}.annotation-panel-color-menu.is-toolbar>summary .annotation-color{height:14px;width:14px}.annotation-panel-color-menu.is-toolbar>div,.annotation-panel-more-menu>div{left:auto;min-width:176px;right:0;top:calc(100% + 5px)}.annotation-panel-more-menu .annotation-menu-status{border-top:1px solid var(--border);color:var(--muted);font-size:.7rem;line-height:1.4;margin:4px 0 0;padding:8px}.annotation-panel-more-menu>div{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 6px 20px rgb(0 0 0/12%);display:grid;padding:5px;position:absolute;z-index:6}.annotation-panel-more-menu>div button{align-items:center;background:transparent;border:0;color:var(--text);cursor:pointer;display:flex;font:inherit;font-size:var(--type-caption);gap:8px;min-height:38px;padding:6px 8px;text-align:left}.annotation-panel-more-menu>div button:focus-visible,.annotation-panel-more-menu>div button:hover{background:var(--surface-muted)}.annotation-panel-more-menu>div button.is-danger{color:var(--danger)}.annotation-delete-confirmation{background:color-mix(in srgb,var(--danger) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));margin:0 0 16px;padding:10px}.annotation-delete-confirmation p{font-size:var(--type-caption);margin:0 0 9px}.annotation-delete-confirmation>div{display:flex;gap:8px;justify-content:flex-end}.annotation-delete-confirmation button{background:transparent;border:1px solid var(--border-strong);color:var(--text);cursor:pointer;font:inherit;font-size:var(--type-caption);min-height:34px;padding:5px 10px}.annotation-delete-confirmation button.is-danger{background:var(--danger);border-color:var(--danger);color:white}.annotation-add-note{align-items:center;background:transparent;border:1px solid var(--border);color:var(--theme);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--type-caption);gap:6px;min-height:36px;padding:6px 10px}.annotation-add-note:focus-visible,.annotation-add-note:hover{background:var(--surface-muted);border-color:var(--theme)}.annotation-toolbar{align-items:center;background:var(--surface-raised);border:1px solid var(--border-strong);box-shadow:0 5px 18px rgb(0 0 0/14%);display:flex;gap:2px;min-height:40px;padding:4px;position:fixed;width:auto;z-index:80;border-radius:8px}.annotation-color-menu>summary,.annotation-toolbar-action{align-items:center;background:transparent;border:0;color:var(--text);cursor:pointer;display:inline-flex;height:32px;justify-content:center;list-style:none;padding:0;position:relative;width:34px}.annotation-color-menu{position:relative}.annotation-color-menu>summary::-webkit-details-marker{display:none}.annotation-color-menu>summary:focus-visible,.annotation-color-menu>summary:hover,.annotation-color-menu[open]>summary,.annotation-toolbar-action:focus-visible,.annotation-toolbar-action:hover{background:var(--surface-muted);color:var(--theme)}.annotation-color-menu>summary:focus-visible,.annotation-toolbar-action:focus-visible{outline:2px solid var(--theme);outline-offset:1px}.annotation-toolbar-action.has-count>span{align-items:center;background:var(--theme);border:2px solid var(--surface-raised);border-radius:999px;color:var(--action-text);display:inline-flex;font-size:.6rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;height:17px;justify-content:center;min-width:17px;padding:0 3px;position:absolute;right:-2px;top:-2px}.annotation-current-color{bottom:4px;height:5px;position:absolute;right:4px;width:12px}.annotation-current-color.is-important{background:var(--annotation-important)}.annotation-current-color.is-concept{background:var(--annotation-concept)}.annotation-current-color.is-understood{background:var(--annotation-understood)}.annotation-current-color.is-revisit{background:var(--annotation-revisit)}.annotation-current-color.is-neutral{background:var(--annotation-neutral)}.annotation-color-menu>div{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 6px 20px rgb(0 0 0/14%);display:grid;left:0;min-width:150px;padding:5px;position:absolute;top:calc(100% + 7px)}.annotation-color-menu>div button{align-items:center;background:transparent;border:0;color:var(--text);cursor:pointer;display:flex;font:inherit;font-size:var(--type-caption);gap:9px;min-height:36px;padding:5px 8px;text-align:left}.annotation-color-menu>div button:focus-visible,.annotation-color-menu>div button:hover,.annotation-color-menu>div button[aria-pressed=true]{background:var(--surface-muted)}.annotation-color-menu>div .annotation-color{flex:0 0 auto;height:16px;width:16px}.annotation-toolbar-separator{align-self:center;background:var(--border);height:22px;margin:0 3px;width:1px}@media (max-width:1180px){.annotation-sidebar{background:var(--surface-raised);border-left:0;border-right:0;bottom:0;box-shadow:0 -8px 24px rgb(0 0 0/14%);left:0;max-height:min(72vh,620px);overflow:visible;padding:8px max(18px,calc((100vw - var(--reader)) / 2));position:fixed;right:0;top:auto;transform:translateY(calc(100% - 51px));transition:transform .16s ease;z-index:70}.annotation-sidebar.is-open{transform:translateY(0);width:auto}.annotation-panel{max-height:calc(min(72vh, 620px) - 62px);padding-bottom:24px}.annotation-sidebar.has-active-panel .annotation-pinned-stack{display:none}}@media (max-width:520px){.annotation-sidebar{padding-left:16px;padding-right:16px}.annotation-sidebar .annotation-icon-button{height:44px;width:44px}.annotation-panel-color-menu:not(.is-toolbar)>summary,.annotation-panel-color-menu>div button,.annotation-panel-more-menu>div button,.annotation-panel-selector>div button{min-height:44px}.annotation-panel-toolbar{gap:0}.annotation-panel-color-menu.is-toolbar>summary,.annotation-panel-more-menu>summary,.annotation-panel-toolbar .annotation-panel-nav .annotation-icon-button{height:44px;width:38px}.annotation-panel-selector>summary{height:44px}.annotation-editor-menu>summary,.annotation-editor-toolbar button{height:40px;min-width:40px}.annotation-editor-mode-menu>summary{min-width:72px}.annotation-editor-link-row{grid-template-columns:repeat(3,auto)}.annotation-editor-link-row input{grid-column:1/-1;height:40px}.annotation-editor-toolbar .annotation-editor-link-row button{height:40px}.annotation-panel-title{font-size:.72rem}.annotation-toolbar{bottom:max(10px,env(safe-area-inset-bottom));gap:5px;left:50%!important;position:fixed;top:auto!important;transform:translateX(-50%)}.annotation-color-menu>summary,.annotation-toolbar-action{height:44px;width:44px}.annotation-color-menu>div{bottom:calc(100% + 7px);left:50%;top:auto;transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.annotation-sidebar{transition:none}}:root[data-accent=graphite]{--theme:#353535;--theme-muted:#555555;--theme-soft:#eeeeec;--theme-100:#eeeeec;--theme-200:#deded9;--theme-300:#b9b9b2;--theme-400:#96968f;--theme-500:#74746f;--theme-700:#555555;--theme-800:#353535;--action-bg:#353535;--action-border:#353535;--action-hover:#202020}:root[data-accent=green]{--theme:#087f5b;--theme-muted:#176b53;--theme-soft:#e6f4ef;--theme-100:#e6f4ef;--theme-200:#c7e7db;--theme-300:#8dccb5;--theme-400:#55aa8b;--theme-500:#2b8f6c;--theme-700:#176b53;--theme-800:#075e45;--action-bg:#087f5b;--action-border:#087f5b;--action-hover:#066b4d}:root[data-accent=blue]{--theme:#2563a6;--theme-muted:#315f91;--theme-soft:#e8f1fb;--theme-100:#e8f1fb;--theme-200:#c9dcf2;--theme-300:#91b8e2;--theme-400:#6195cf;--theme-500:#3979bd;--theme-700:#315f91;--theme-800:#234d79;--action-bg:#2563a6;--action-border:#2563a6;--action-hover:#1f528a}:root[data-accent=violet]{--theme:#6d4bc3;--theme-muted:#664fa1;--theme-soft:#f0ebfa;--theme-100:#f0ebfa;--theme-200:#ddd2f3;--theme-300:#bca8e6;--theme-400:#997dd7;--theme-500:#7d5bc8;--theme-700:#664fa1;--theme-800:#503e7e;--action-bg:#6d4bc3;--action-border:#6d4bc3;--action-hover:#5b3ca8}:root[data-accent=orange]{--theme:#a65316;--theme-muted:#874b20;--theme-soft:#f8eee6;--theme-100:#f8eee6;--theme-200:#efd5c1;--theme-300:#dfa97f;--theme-400:#cd7d43;--theme-500:#b96125;--theme-700:#874b20;--theme-800:#6b3b19;--action-bg:#a65316;--action-border:#a65316;--action-hover:#884411}:root[data-appearance=dark]{color-scheme:dark;--neutral-50:#212121;--neutral-100:#2f2f2f;--neutral-200:#444444;--neutral-300:#565656;--neutral-500:#8b8b8b;--neutral-600:#b4b4b4;--neutral-700:#c8c8c8;--neutral-800:#dedede;--neutral-900:#e5e5e5;--neutral-950:#ececec;--bg:#212121;--surface:#2f2f2f;--surface-raised:#383838;--surface-muted:#171717;--text:#ececec;--muted:#b4b4b4;--faint:#444444;--border:#444444;--border-strong:#666666;--theme:#72a7e3;--theme-muted:#91b9e7;--theme-soft:#24374c;--theme-100:#24374c;--theme-200:#2e4c6d;--theme-300:#3e638b;--theme-400:#4d78a8;--theme-500:#6392c7;--theme-700:#91b9e7;--theme-800:#b2cff0;--action-bg:#72a7e3;--action-border:#72a7e3;--action-hover:#92baea;--action-text:#171717;--secondary-100:#24374c;--secondary-200:#2e4c6d;--secondary-300:#4d78a8;--secondary:#72a7e3;--secondary-muted:#8ab5e5;--diagram-a:#ef8585;--diagram-b:#72a7e3;--diagram-c:#63c49a;--diagram-control:#aa8ee8;--success:#63c49a;--warning:#e5b95c;--danger:#ef8585;--code-bg:#171717;--code-gutter-bg:#202020;--code-border:#444444;--code-inline-bg:#3a3a3a;--code-inline-text:#ececec;--code-text:#e3e3e3;--paper:var(--surface);--annotation-important:#c9a83e;--annotation-concept:#5e91c9;--annotation-understood:#4d9f78;--annotation-revisit:#bd7659;--annotation-neutral:#777772}:root[data-appearance=dark][data-accent=graphite]{--theme:#d1d1d1;--theme-muted:#b8b8b8;--theme-soft:#383838;--theme-100:#383838;--theme-200:#494949;--theme-300:#666666;--theme-400:#828282;--theme-500:#9b9b9b;--theme-700:#b8b8b8;--theme-800:#d1d1d1;--action-bg:#d1d1d1;--action-border:#d1d1d1;--action-hover:#ececec}:root[data-appearance=dark][data-accent=green]{--theme:#5fd3a7;--theme-muted:#86dcbc;--theme-soft:#203c33;--theme-100:#203c33;--theme-200:#285244;--theme-300:#39775f;--theme-400:#4c9e7e;--theme-500:#5abf99;--theme-700:#86dcbc;--theme-800:#a7e8cf;--action-bg:#5fd3a7;--action-border:#5fd3a7;--action-hover:#83dfbd}:root[data-appearance=dark][data-accent=blue]{--theme:#72a7e3;--theme-muted:#91b9e7;--theme-soft:#24374c;--theme-100:#24374c;--theme-200:#2e4c6d;--theme-300:#3e638b;--theme-400:#4d78a8;--theme-500:#6392c7;--theme-700:#91b9e7;--theme-800:#b2cff0;--action-bg:#72a7e3;--action-border:#72a7e3;--action-hover:#92baea}:root[data-appearance=dark][data-accent=violet]{--theme:#aa8ee8;--theme-muted:#baa4ea;--theme-soft:#352d48;--theme-100:#352d48;--theme-200:#483b64;--theme-300:#635083;--theme-400:#7d66a7;--theme-500:#967cca;--theme-700:#baa4ea;--theme-800:#d0c1f1;--action-bg:#aa8ee8;--action-border:#aa8ee8;--action-hover:#bca5ec}:root[data-appearance=dark][data-accent=orange]{--theme:#e59b5d;--theme-muted:#e7ae7f;--theme-soft:#493426;--theme-100:#493426;--theme-200:#62442e;--theme-300:#825a3a;--theme-400:#a66f45;--theme-500:#ca8753;--theme-700:#e7ae7f;--theme-800:#f0c9aa;--action-bg:#e59b5d;--action-border:#e59b5d;--action-hover:#ecb17e}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:10px 14px;border:1px solid var(--theme);border-radius:6px;background:var(--surface);color:var(--theme);font-weight:700;transform:translateY(calc(-100% - 16px))}.skip-link:focus{transform:translateY(0)}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--type-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid var(--theme-muted);outline-offset:3px}.site-shell{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1 1}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;max-width:var(--max);margin:0 auto;padding:18px 20px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .18s ease,border-color .18s ease,background .18s ease;will-change:transform}html[data-header=hidden] .site-header{transform:translateY(calc(-100% - 8px))}.site-header:focus-within,html[data-header=visible] .site-header{transform:translateY(0)}.brand,.site-footer div{display:inline-flex;align-items:center;gap:10px;color:var(--text);font-weight:700;letter-spacing:0}.brand svg,.reader-brand,.site-footer svg{color:var(--theme)}.top-nav{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.top-nav a{display:inline-flex;align-items:center;min-height:40px}.brand:hover,.top-nav a:hover{color:var(--theme-muted)}.header-placeholder{min-height:70px;pointer-events:none}.reader-site-header{justify-content:flex-start;gap:12px}.reader-brand{display:inline-flex;flex:0 0 auto;color:var(--theme)}.reader-brand:hover{color:var(--theme-muted)}.reader-breadcrumb{display:flex;flex:1 1 auto;align-items:center;gap:8px;min-width:0;overflow-x:auto;white-space:nowrap;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption);scrollbar-width:none}.reader-site-header>.account-menu,.reader-site-header>.reader-search-link{margin-left:auto}.reader-site-header>.annotation-nav-menu+.account-menu,.reader-site-header>.reader-search-link+.annotation-nav-menu{margin-left:0}.annotation-nav,.annotation-nav-menu{flex:0 0 auto;position:relative}.annotation-nav{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;width:36px}.annotation-nav-popover{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 10px 28px rgb(0 0 0/14%);color:var(--text);display:flex;flex-direction:column;max-height:min(520px,calc(100vh - 96px));overflow:hidden;position:fixed;right:var(--annotation-menu-right);top:var(--annotation-menu-top);width:min(360px,calc(100vw - 32px));z-index:90}.annotation-nav-heading{align-items:center;border-bottom:1px solid var(--border);display:flex;flex:0 0 auto;gap:8px;padding:12px 14px}.annotation-nav-heading strong{font-size:var(--type-small)}.annotation-nav-heading span{color:var(--muted);font-size:var(--type-caption);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.annotation-nav-close{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin:-6px -7px -6px 0;padding:0;width:32px}.annotation-nav-close:focus-visible,.annotation-nav-close:hover{background:var(--surface-muted);color:var(--theme)}.annotation-nav-close:focus-visible{outline:2px solid var(--theme);outline-offset:1px}.annotation-nav-close svg{fill:none;height:18px;stroke:currentColor;stroke-linecap:round;stroke-width:1.7;width:18px}.annotation-nav-list{display:grid;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.annotation-nav-search{border-bottom:1px solid var(--border);display:grid;flex:0 0 auto;gap:5px;padding:10px 14px 12px}.annotation-nav-search label{color:var(--muted);font-size:.68rem;line-height:1.25}.annotation-nav-search input{background:var(--surface);border:1px solid var(--border-strong);border-radius:3px;color:var(--text);font:inherit;font-size:var(--type-caption);height:34px;padding:0 9px;width:100%}.annotation-nav-search input:focus-visible{border-color:var(--theme);outline:2px solid color-mix(in srgb,var(--theme) 24%,transparent);outline-offset:1px}.annotation-nav-item{background:transparent;border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;display:block;font:inherit;padding:12px 14px 13px;text-align:left;width:100%}.annotation-nav-item:last-child{border-bottom:0}.annotation-nav-item:focus-visible,.annotation-nav-item:hover{background:var(--surface-muted)}.annotation-nav-item:focus-visible{outline:2px solid var(--theme);outline-offset:-2px}.annotation-nav-color{background:var(--annotation-neutral);border-radius:50%;height:9px;margin-top:0;width:9px}.annotation-nav-color.is-important{background:var(--annotation-important)}.annotation-nav-color.is-concept{background:var(--annotation-concept)}.annotation-nav-color.is-understood{background:var(--annotation-understood)}.annotation-nav-color.is-revisit{background:var(--annotation-revisit)}.annotation-nav-color.is-neutral{background:var(--annotation-neutral)}.annotation-nav-item-copy{display:grid;gap:5px;min-width:0}.annotation-nav-item-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.68rem;gap:5px;line-height:1.25}.annotation-nav-item-meta>span:not(.annotation-nav-color)+span{border-left:1px solid var(--border-strong);padding-left:5px}.annotation-nav-item strong{font-size:var(--type-caption);font-weight:600;line-height:var(--leading-caption);-webkit-line-clamp:2}.annotation-nav-item small,.annotation-nav-item strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.annotation-nav-item small{color:var(--muted);font-size:.72rem;line-height:1.4;-webkit-line-clamp:1}.annotation-nav-item .annotation-nav-note-preview{-webkit-line-clamp:2}.annotation-nav-empty{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-caption);margin:0;padding:16px 14px}.annotation-nav:hover{color:var(--theme)}.annotation-nav svg{fill:none;height:21px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6;width:21px}.annotation-nav>span{align-items:center;background:var(--theme);border:2px solid var(--bg);border-radius:999px;color:var(--action-text);display:flex;font-size:.625rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:750;height:18px;justify-content:center;min-width:18px;padding:0 3px;position:absolute;right:-2px;top:-1px}.reader-breadcrumb::-webkit-scrollbar{display:none}.reader-curriculum-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;color:var(--theme)}.reader-curriculum-link:hover{border-color:var(--theme-300);color:var(--theme-muted)}.curriculum-icon{display:block}.reader-crumb{flex:0 0 auto;gap:8px}.reader-crumb,.reader-crumb a{display:inline-flex;align-items:center}.reader-crumb a{min-height:40px;color:var(--text)}.reader-crumb a:hover{color:var(--theme)}.reader-crumb [aria-current=page]{color:var(--theme);font-weight:700}main{flex:1 1}.section{width:100%;max-width:var(--max);margin:0 auto;padding:76px 20px}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:48px;align-items:start;padding-top:64px}.hero-light{display:flex;flex-direction:column;align-items:center;max-width:920px;padding-top:84px;padding-bottom:92px;text-align:center}.hero-light h1{max-width:920px;font-size:clamp(2.15rem,4.4vw,3.35rem)}.hero-light .lead{max-width:760px;margin-inline:auto}.hero-light .actions{justify-content:center}.hero-mark{display:inline-flex;margin-bottom:22px;color:var(--theme)}.path-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.8fr);gap:48px;align-items:start;padding-top:44px}.eyebrow{margin:0 0 16px;color:var(--theme-muted);font-size:var(--type-caption);line-height:var(--leading-caption);font-weight:700;text-transform:uppercase;letter-spacing:.1em}h1,h2,h3{color:var(--text);font-weight:700}h1{max-width:820px;margin:0;font-size:clamp(2.2rem,4.8vw,3.5rem);line-height:var(--leading-tight);letter-spacing:-.045em}h2{margin:0 0 18px;font-size:clamp(1.65rem,2.7vw,2.15rem);line-height:1.14;letter-spacing:-.028em}h3{margin:0 0 10px;font-size:1.15rem;line-height:var(--leading-heading);letter-spacing:-.012em}.lead{max-width:720px;margin:24px 0 0;font-size:clamp(var(--type-description),1.7vw,var(--type-lead))}.hero-note,.lead{color:var(--muted);line-height:1.62}.hero-note{max-width:690px;margin:18px 0 0;font-size:var(--type-description)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid var(--action-border);border-radius:6px;background:var(--action-bg);font:inherit;font-weight:650}.button,.button:link,.button:visited{color:var(--action-text)}.button.secondary{background:transparent;border-color:var(--neutral-300);color:var(--text)}.button:hover{background:var(--action-hover);transform:translateY(-1px)}.button.secondary:hover{background:var(--surface-muted)}.button.danger{border-color:var(--danger);background:var(--danger);color:#ffffff}.button:disabled{cursor:not-allowed;opacity:.58;transform:none}.panel{border:1px solid var(--faint);border-radius:8px;background:var(--surface);box-shadow:0 18px 48px rgb(17 19 24/7%)}.index-panel{padding:22px}.index-panel ol{margin:18px 0 0;padding:0;list-style:none;counter-reset:item}.index-panel li{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:14px 0;border-top:1px solid var(--faint);color:var(--muted);counter-increment:item}.index-panel li:before{content:counter(item,decimal-leading-zero);color:var(--text);font-weight:800}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:780px}.method-section{max-width:880px}.llm-overview-section{max-width:920px}.llm-path-map{display:grid;gap:24px;margin:34px 0 0}.llm-path-map>div{display:grid;gap:10px}.llm-path-map figcaption{color:var(--muted);font-size:var(--type-small);font-weight:700}.llm-path-map ol{display:flex;flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none}.llm-path-map li{display:flex;align-items:center;min-height:42px;color:var(--text);font-size:var(--type-small);font-weight:650}.llm-path-map li:not(:last-child):after{content:"→";margin:0 10px;color:var(--theme)}.learning-flow{display:grid;gap:0;max-width:720px;margin:30px 0 0;padding:0;list-style:none;border-top:1px solid var(--faint)}.learning-flow li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--faint)}.learning-flow h3{font-size:1.05rem}.learning-flow p{max-width:520px;margin:0;color:var(--muted)}.step-number{display:inline-flex;color:var(--theme);font-weight:800;font-size:.9rem}.rule-note{max-width:720px;margin-top:28px;padding:20px 22px;border-left:3px solid var(--theme);background:var(--theme-soft)}.rule-note h3{margin-bottom:12px;font-size:1.05rem}.rule-note ul{display:grid;gap:8px;margin:0;padding-left:18px}.rule-note li{color:var(--text);font-weight:650}.compact-section{padding-top:0}.section-intro{max-width:740px;margin:-4px 0 28px;color:var(--muted);font-size:var(--type-description);line-height:1.62}.approach-note{margin-top:16px;margin-bottom:0}.method-note{margin-top:12px;margin-bottom:0}.subsection{margin-top:54px}.available-lessons{padding:30px 0 0;border-top:1px solid var(--faint)}.available-lessons ol{display:grid;gap:0;margin:0;padding:0;border-top:1px solid var(--faint);list-style:none}.available-lessons .support-topic-list{margin-top:10px;border-top:1px solid var(--faint)}.support-topic-section{margin-top:34px}.support-topic-section h3{margin-bottom:0}.available-lessons li{border-bottom:1px solid var(--faint)}.available-lessons li:last-child{border-bottom:0}.available-lessons .lesson-index-row{display:grid;gap:5px;padding:14px 0;color:var(--text)}.available-lessons .lesson-index-row:hover strong{color:var(--theme)}.available-lessons .lesson-index-row span{color:var(--muted);font-family:var(--font-mono);font-size:var(--type-caption)}.available-lessons .lesson-index-row strong{font-size:1.08rem}.available-lessons .lesson-index-row p{max-width:680px;margin:0;color:var(--muted);line-height:1.55}.lesson-index-row{grid-template-columns:44px minmax(0,1fr);align-items:start}.lesson-index-number{color:var(--theme);font-family:var(--font-mono);font-size:var(--type-caption);font-weight:750}.lesson-index-copy{display:grid;gap:3px}.lesson-index-meta{align-items:baseline;display:flex;gap:8px 18px;justify-content:space-between;min-width:0}.lesson-index-meta .lesson-review-status{margin-left:auto;text-align:right}.available-lessons .lesson-index-copy small,.support-topic-list .lesson-index-copy small{margin-top:4px;color:var(--muted);font-size:var(--type-caption);font-weight:650}.available-lessons .lesson-index-copy small.is-complete,.chapter-card small.is-complete,.support-topic-list .lesson-index-copy small.is-complete{color:var(--theme)}.available-lessons .lesson-index-copy small.is-review-due,.chapter-card small.is-review-due,.support-topic-list .lesson-index-copy small.is-review-due{color:var(--warning)}.available-lessons .lesson-index-copy .lesson-review-status,.support-topic-list .lesson-index-copy .lesson-review-status{color:var(--theme-muted)}.available-lessons .lesson-index-copy .lesson-review-status.is-review-due,.support-topic-list .lesson-index-copy .lesson-review-status.is-review-due{color:var(--warning)}.available-lessons .lesson-index-copy strong{font-size:1rem}.available-lessons .lesson-index-copy p{max-width:560px;line-height:1.45}.local-progress{display:grid;gap:18px;margin:0;padding:22px;border:1px solid var(--faint);border-radius:8px;background:var(--surface)}.local-progress strong{color:var(--text);font-size:1.4rem;line-height:1}.progress-rings{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:20px 14px}.progress-ring-unit{display:grid;gap:9px;justify-items:center;text-align:center}.progress-ring{--progress-color:var(--theme);display:grid;width:72px;height:72px;place-items:center;border-radius:50%;background:radial-gradient(circle,var(--surface) 56%,transparent 58%),conic-gradient(var(--progress-color) 0 var(--progress-done),color-mix(in srgb,var(--progress-color) 28%,var(--surface)) var(--progress-done) calc(var(--progress-done) + var(--progress-active)),var(--faint) 0)}.progress-ring>span{color:var(--text);font-size:var(--type-caption);font-weight:700}.progress-ring-copy{display:grid;gap:3px}.progress-ring-copy small{color:var(--muted);font-size:var(--type-caption)}.local-progress .progress-review-due{border-top:1px solid var(--faint);color:var(--warning);font-size:var(--type-caption);font-weight:650;margin:0;padding-top:12px}.local-progress p,.local-progress span{color:var(--muted);font-size:.9rem}.start-guide{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.8fr);gap:40px;align-items:start;padding:30px 0;border-block:1px solid var(--faint)}.start-guide h2{margin-bottom:14px}.guide-list{display:grid;gap:0;border-top:1px solid var(--faint)}.guide-list a{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--faint);color:var(--muted)}.guide-list a:hover{color:var(--text)}.guide-list span{color:var(--theme);font-weight:750}.audience-section{max-width:880px}.audience-line{max-width:720px;margin:18px 0 0;color:var(--text);font-size:clamp(1.15rem,2vw,1.35rem);font-weight:700}.build-section{max-width:880px;padding-top:0}.build-line{max-width:720px;margin:18px 0 0;color:var(--text);font-size:clamp(1.1rem,2vw,1.28rem);font-weight:700}.updates-section{max-width:924px}.updates-panel{width:100%}.updates-panel .lead,.updates-panel .section-intro{max-width:720px}.update-form{margin-top:28px}.update-form-row{display:flex;gap:10px;max-width:640px}.update-form input[type=email]{width:100%;min-height:44px;min-width:0;padding:0 14px;border:1px solid var(--faint);border-radius:6px;background:var(--surface);color:var(--text);font:inherit}.update-form input[type=email]::placeholder{color:var(--neutral-500)}.update-form input[type=email]:focus{border-color:var(--theme-500);outline:2px solid var(--theme-200);outline-offset:2px}.update-form-submit{flex:0 0 auto;cursor:pointer}.update-form-submit:disabled{cursor:wait;opacity:.72}.update-form-message{max-width:640px;margin:12px 0 0;color:var(--muted);font-size:.95rem}.update-form-message.success{color:var(--success)}.update-form-message.error{color:var(--danger)}.update-form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.card{display:block;min-height:100%;padding:22px;border:1px solid var(--faint);border-radius:8px;background:var(--surface)}.card:hover{border-color:var(--theme-300)}.curriculum-card{display:grid;grid-template-rows:auto auto 1fr auto}.curriculum-grid{margin:0;padding:0;list-style:none}.curriculum-grid .curriculum-card{grid-template-rows:auto auto auto 1fr auto}.curriculum-step{color:var(--theme);font-size:var(--type-small);font-weight:700}.curriculum-status-summary{max-width:760px;margin:18px 0 0;color:var(--muted)}.curriculum-card h3 a{color:inherit}.curriculum-card h3 a:hover{color:var(--theme)}.card p,.muted{color:var(--muted);line-height:1.55}.text-link{display:inline-flex;margin-top:12px;color:var(--theme);font-weight:700}.text-link:hover{color:var(--theme-muted)}.curriculum-action{margin-top:0}.curriculum-preparation{font-size:.92rem}.curriculum-card-footer{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.route{color:var(--theme);font-family:var(--font-mono);font-size:var(--type-small)}.route,.status-label{display:inline-flex;margin-top:14px}.status-label{color:var(--muted);font-size:.9rem;font-weight:700}.publication-notice{margin:0 0 30px;padding:16px 18px;border:1px solid var(--neutral-300);border-radius:8px;background:var(--surface-muted)}.publication-notice strong{color:var(--text)}.publication-notice p{margin:4px 0 0;color:var(--muted)}.publication-notice a{color:var(--theme);font-weight:700;text-decoration:underline;text-underline-offset:3px}.course-page{max-width:var(--course)}.course-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;max-width:var(--reader);margin:30px 0 0;overflow:hidden;border:1px solid var(--faint);border-radius:8px;background:var(--faint)}.course-meta div{display:grid;gap:4px;min-width:0;background:var(--surface);padding:14px 16px}.course-meta dt{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.course-meta dd{margin:0;color:var(--text);font-size:1rem;font-weight:750;overflow-wrap:anywhere}.chapter-meta{margin-bottom:2px}.course-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:34px;align-items:start}.course-intro,.subject-lead{max-width:var(--reader)}.subject-lead{margin-top:26px;padding:18px 20px;border-left:3px solid var(--theme);background:var(--surface-muted)}.subject-preface{margin-top:30px}.chapter-outcomes{margin-top:30px;padding-top:26px;border-top:1px solid var(--faint)}.chapter-note{margin-top:28px;padding:18px 20px;border-left:3px solid var(--theme);background:var(--surface-muted)}.chapter-note h2{margin:0 0 8px;font-size:1rem}.chapter-note p{margin:8px 0 0}.chapter-outcomes h2{margin-bottom:14px;font-size:1.35rem}.chapter-next-step{max-width:var(--reader);padding-top:28px;border-top:1px solid var(--faint)}.chapter-next-step a{display:grid;gap:4px;color:var(--text)}.chapter-next-step a:hover strong{color:var(--theme)}.chapter-next-step strong{font-size:1.15rem}.chapter-next-step span{color:var(--muted)}.chapter-opening>h1:first-child{display:none}.chapter-opening>:first-child{margin-top:0}.chapter-opening,.course-page .available-lessons .lesson-index-copy p,.course-page .available-lessons .lesson-index-row p,.course-page .section-intro{max-width:var(--reader)}.course-intro>p{color:var(--muted);font-size:1.04rem}.study-guide{max-width:760px;padding:30px 0;border-top:1px solid var(--faint);border-bottom:1px solid var(--faint)}.study-guide p{font-size:1.04rem}.study-guide p,.study-guide ul{max-width:680px;color:var(--muted)}.study-guide ul{display:grid;gap:10px;margin:18px 0 0;padding-left:18px}.study-guide li{padding-left:2px}.continue-reading{display:grid;gap:8px;max-width:720px;margin-top:0;padding:22px;border:1px solid var(--faint);border-radius:8px;background:var(--surface)}.continue-reading h2{margin-bottom:0;font-size:clamp(1.35rem,3vw,1.9rem)}.continue-reading h3{margin:0;color:var(--text);font-size:1.12rem}.continue-reading p{margin:0;color:var(--muted)}.continue-reading .button{justify-self:start;margin-top:10px}.available-chapters{padding:30px 0 0;border-top:1px solid var(--faint)}.subject-learning-overview{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start;max-width:var(--reader);margin:30px 0}.subject-learning-overview .local-progress{width:100%}.subject-learning-overview .continue-reading{width:100%;max-width:none}.reader-learning-section{padding-top:30px;border-top:1px solid var(--faint)}.local-progress-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px}.local-progress-header h3{margin:0}.exercise-learning-menu svg,.progress-information svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.progress-information{position:relative}.progress-information>summary{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;color:var(--muted);cursor:pointer;list-style:none}.progress-information>summary::-webkit-details-marker{display:none}.progress-information>summary:hover{background:var(--faint);color:var(--theme)}.progress-information>div{position:absolute;z-index:20;top:calc(100% + 6px);right:0;display:grid;gap:12px;width:min(290px,calc(100vw - 48px));padding:14px;border:1px solid var(--faint);border-radius:6px;background:var(--surface);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 14%,transparent)}.progress-information>div p{margin:0}.progress-information>div button{min-height:40px;justify-self:start;border:1px solid var(--neutral-300);border-radius:6px;background:var(--surface);color:var(--text);padding:0 12px;font:inherit;font-weight:650}.progress-legend{display:grid;gap:7px}.progress-legend span{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:var(--type-caption)}.progress-legend i{display:block;width:18px;height:8px;border-radius:999px;background:var(--faint)}.progress-legend i.is-done{background:var(--theme)}.progress-legend i.is-active{background:color-mix(in srgb,var(--theme) 28%,var(--surface))}.study-state-controls{display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--faint)}.study-state-lesson{max-width:var(--reader);margin:32px 0 4px}.study-state-exercise{margin-top:6px}.study-state-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.study-review-menu>div button,.study-review-menu>summary,.study-state-actions>button{min-height:40px;border:1px solid var(--neutral-300);border-radius:6px;background:var(--surface);color:var(--text);padding:0 12px;font:inherit;font-weight:650;cursor:pointer}.study-state-actions>button.is-done{border-color:var(--success);color:var(--success)}.study-review-menu{position:relative}.study-review-menu>summary{display:inline-flex;align-items:center;list-style:none}.study-review-menu>summary::-webkit-details-marker{display:none}.study-review-menu>div{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:grid;min-width:160px;padding:6px;border:1px solid var(--faint);background:var(--surface);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 14%,transparent)}.study-review-menu>div button{border:0;border-radius:3px;text-align:left}.study-review-menu>div button:hover{background:var(--faint)}.study-review-custom{border-block:1px solid var(--faint);display:grid;gap:6px;margin-block:4px;padding:10px 6px}.study-review-custom label{color:var(--muted);font-size:var(--type-caption)}.study-review-custom>div{display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto}.study-review-custom input{background:var(--surface);border:1px solid var(--neutral-300);border-radius:4px;color:var(--text);font:inherit;min-height:38px;min-width:0;padding-inline:7px}.study-review-custom input:focus-visible{border-color:var(--theme);outline:2px solid color-mix(in srgb,var(--theme) 24%,transparent);outline-offset:1px}.study-review-custom button:disabled{cursor:not-allowed;opacity:.55}.study-state-controls>p{margin:0;color:var(--muted);font-size:var(--type-caption)}@media (max-width:520px){.annotation-nav{height:44px;width:44px}.lesson-index-meta{align-items:flex-start;flex-direction:column;gap:3px}.lesson-index-meta .lesson-review-status{margin-left:0;text-align:left}.annotation-nav-popover{bottom:0;left:0;max-height:min(70vh,560px);padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;top:auto;width:auto}.annotation-nav-list{scrollbar-gutter:auto}.annotation-nav-close{height:44px;margin-bottom:-8px;margin-right:-8px;margin-top:-8px;width:44px}.annotation-nav-item{min-height:58px}.progress-rings{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 6px}.progress-rings.has-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}.progress-ring{width:60px;height:60px}.progress-ring-copy strong{font-size:1rem}.progress-ring-copy small,.progress-ring-copy span{font-size:.72rem}.local-progress{padding:18px 14px}.study-review-menu,.study-review-menu>summary,.study-state-actions>button{flex:1 1 auto}.study-review-menu>summary{justify-content:center}.study-review-menu>div{right:0;left:auto;min-width:min(240px,calc(100vw - 32px))}}.chapter-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:var(--reader);margin-top:24px}.learning-unit-list{display:grid;gap:42px;max-width:var(--reader);margin-top:34px}.learning-unit{scroll-margin-top:88px}.learning-unit>.eyebrow{margin-bottom:5px}.learning-unit>h3{margin:0;color:var(--text);font-size:clamp(1.35rem,2vw,1.7rem)}.learning-unit>p:not(.eyebrow){max-width:680px;margin:8px 0 17px;color:var(--muted);line-height:1.6}.chapter-card{display:grid;gap:6px;border:1px solid var(--faint);border-radius:8px;background:var(--surface);padding:18px}.chapter-card:hover{border-color:var(--theme-300)}.chapter-card-planned{background:var(--surface-soft)}.chapter-card-planned:hover{border-color:var(--faint)}.chapter-card span{color:var(--theme);font-size:.84rem;font-weight:750}.chapter-card strong{color:var(--text);font-size:1.08rem}.chapter-card p{margin:0;color:var(--muted);line-height:1.5}.chapter-card small{margin-top:4px;color:var(--theme-muted);font-size:.82rem;font-weight:700}.planned-topic{display:grid;gap:5px;padding:16px 0;color:var(--muted)}.planned-topic span{color:var(--theme-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}.planned-topic strong{color:var(--text);font-size:1.08rem}.planned-topic p{max-width:680px;margin:0}.review-links{padding:30px 0 0;border-top:1px solid var(--faint)}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:var(--reader)}.review-card{display:grid;gap:6px;border:1px solid var(--faint);border-radius:8px;background:var(--surface);padding:16px}.review-card:hover{border-color:var(--theme-300)}.review-card span{color:var(--theme);font-weight:750}.review-card p{margin:0;color:var(--muted);line-height:1.5}.planned-section{max-width:var(--reader)}.planned-list{gap:0}.course-grid,.planned-list{display:grid;border-top:1px solid var(--faint)}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;max-width:var(--reader);padding-top:30px}.course-grid h2{font-size:clamp(1.25rem,3vw,1.75rem)}.plain-list{display:grid;gap:10px;margin:0;padding-left:18px;color:var(--muted)}.band{background:var(--surface-muted);border-block:1px solid var(--faint)}.reader{width:100%;max-width:var(--reader);min-width:0;margin:0 auto;padding:58px 20px 84px}.reader-header{min-width:0;margin-bottom:38px}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:18px;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.breadcrumb a{color:var(--text)}.lesson-crumb-meta{margin-left:4px;border:1px solid var(--faint);border-radius:999px;padding:2px 8px;color:var(--theme);font-size:var(--type-caption);line-height:var(--leading-caption);font-weight:700}.prose{min-width:0;max-width:100%}.prose h1{margin-bottom:22px;font-size:clamp(2.15rem,6vw,3.35rem)}.prose h2{margin-top:48px;margin-bottom:16px;font-size:clamp(1.45rem,3.4vw,1.9rem)}.prose h3{margin-top:30px;margin-bottom:10px}.prose li,.prose p{color:var(--neutral-800);font-size:var(--type-description);line-height:var(--leading-body)}.prose ol,.prose ul{box-sizing:border-box;max-width:100%;min-width:0;padding-inline-start:1.5rem}.prose li{min-width:0}.prose li,.prose li code{overflow-wrap:anywhere}.prose a{color:var(--text);text-decoration:underline;text-underline-offset:3px}.prose code{border-radius:4px;background:var(--code-inline-bg);color:var(--code-inline-text);padding:.1rem .28rem;font-family:var(--font-mono);font-size:.92em}.prose pre{max-width:100%;overflow-x:auto;border:1px solid var(--code-border);border-radius:8px;background:var(--code-bg);color:var(--code-text);padding:18px}.prose pre code{padding:0;background:transparent;color:inherit}.prose table{width:100%;max-width:100%;margin:24px 0;border-collapse:collapse;table-layout:fixed;font-size:.96rem}.prose td,.prose th{border-bottom:1px solid var(--faint);padding:10px 12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.prose th{color:var(--text);font-weight:700}.prose tr:last-child td{border-bottom:0}.prose blockquote{margin:22px 0;border-left:3px solid var(--theme);padding:4px 0 4px 16px;color:var(--muted)}.prose blockquote p{margin:0}.prose .katex-display{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:.15rem 0}.prose .katex-display>.katex{display:inline-block}.callout{max-width:100%;margin:28px 0;padding:18px 20px;border-left:3px solid var(--theme);border-radius:6px;background:var(--theme-soft)}.callout p{margin:0;color:var(--text);font-weight:400}.callout p+p{margin-top:8px}.callout>strong{display:block;color:var(--text);font-weight:700}.exercise-heading{display:grid;gap:4px;margin-bottom:10px;padding-right:48px}.exercise-block{position:relative}.exercise-heading span{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.exercise-heading h3{color:var(--text);font-size:inherit;font-weight:700;margin:0}.vector-diagram{position:relative;display:grid;gap:12px;margin:30px 0}.diagram-toolbar:not(.diagram-toolbar-compact){display:flex;flex-wrap:wrap;gap:8px}.diagram-toolbar:not(.diagram-toolbar-compact) button{min-height:42px;border:1px solid var(--neutral-300);border-radius:6px;background:var(--surface);color:var(--text);padding:0 11px;font:inherit;font-size:.92rem;font-weight:600}.diagram-toolbar:not(.diagram-toolbar-compact) button:hover{border-color:var(--text)}.diagram-toolbar-compact{position:absolute;z-index:5;top:9px;right:9px;display:flex;flex-direction:row-reverse;align-items:flex-start;gap:3px;border:0;background:transparent;border-radius:10px;padding:4px}.diagram-toolbar-compact button{display:grid;width:34px;min-width:34px;height:34px;min-height:34px;place-items:center;border:0;border-radius:100px;color:var(--text);padding:0;box-shadow:none;background:transparent}.diagram-toolbar-compact button:focus-visible,.diagram-toolbar-compact button:hover{background:var(--surface-muted)}.diagram-toolbar-compact button:focus-visible{outline:2px solid var(--theme);outline-offset:2px}.diagram-toolbar-compact button svg{width:20px;height:20px;background:transparent;pointer-events:none;border-radius:0;border:0}.diagram-toolbar-actions{display:none;grid-auto-flow:column;grid-auto-columns:34px;gap:1px;padding:4px;border:0;border-radius:10px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 12%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.diagram-toolbar-toggle{margin:4px!important}.diagram-toolbar-compact.is-open .diagram-toolbar-actions{display:grid}.diagram-toolbar-actions button[aria-pressed=true]{background:color-mix(in srgb,var(--theme-100) 58%,var(--surface));color:var(--theme)}.diagram-caption{display:grid;gap:3px;margin:0;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.diagram-caption-title{color:var(--text);font-size:var(--type-small);font-weight:700}.diagram-caption-subtitle{color:var(--muted);font-size:var(--type-caption);font-weight:650}.diagram-caption-description{color:var(--muted)}.vector-diagram.is-fullscreen{position:fixed;inset:0;z-index:10000;grid-template-rows:minmax(0,1fr) auto;margin:0;padding:16px;overflow:auto;background:var(--bg);width:auto;max-width:none}.vector-diagram.is-fullscreen>svg{width:100%;height:100%;min-height:0;aspect-ratio:auto;max-width:none}.vector-diagram>svg{width:100%;aspect-ratio:64/42;border:1px solid var(--faint);border-radius:8px;background:var(--surface);cursor:grab;touch-action:none}.function-graph>svg{cursor:grab}.function-curve{stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.function-curve-2{stroke:var(--theme-700)}.function-curve-3{stroke:var(--neutral-800)}.function-legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-block:.15rem}.function-legend-item{display:inline-flex;align-items:center;gap:.4rem;color:var(--text);font-weight:600}.function-legend-line{width:1.5rem;border-top:3px solid var(--theme)}.function-legend-line-2{border-color:var(--theme-700)}.function-legend-line-3{border-color:var(--neutral-800)}.vector-diagram>svg.is-panning,.vector-diagram>svg:active{cursor:grabbing}.diagram-bg{fill:var(--surface)}.diagram-grid{stroke:var(--neutral-200);stroke-width:1}.diagram-axis{stroke:var(--neutral-500);stroke-width:1.4}.vector-line{stroke-linecap:round;stroke-width:3}.vector-a{fill:var(--diagram-a);stroke:var(--diagram-a)}.vector-b{fill:var(--diagram-b);stroke:var(--diagram-b)}.vector-sum{fill:var(--diagram-c);stroke:var(--diagram-c)}.vector-difference{fill:var(--neutral-700);stroke:var(--neutral-700);stroke-dasharray:9 6}.vector-projection{fill:var(--diagram-control);stroke:var(--diagram-control);stroke-width:3.2}.vector-a-arrow{fill:var(--diagram-a)}.vector-b-arrow{fill:var(--diagram-b)}.vector-sum-arrow{fill:var(--diagram-c)}.vector-difference-arrow{fill:var(--neutral-700)}.vector-projection-arrow{fill:var(--diagram-control)}.vector-guide{fill:none;stroke:var(--neutral-500);stroke-dasharray:7 7;stroke-linecap:round;stroke-width:2}.vector-guide.faint{opacity:.32}.vector-point{fill:var(--diagram-a);stroke:var(--surface);stroke-width:2}.vector-point.secondary{fill:var(--diagram-b)}.vector-handle{cursor:grab;opacity:.3;stroke:var(--surface);stroke-width:2.5;transition:opacity .14s ease,stroke-width .14s ease}.vector-handle.is-dragging,.vector-handle:active,.vector-handle:hover{opacity:1;stroke-width:3.5}.vector-handle:focus{outline:none;opacity:1;stroke:var(--neutral-500);stroke-width:4}.axis-label{fill:var(--muted);font-size:12px;font-weight:550;paint-order:stroke;stroke:var(--surface);stroke-linejoin:round;stroke-width:3px}.vector-label{fill:var(--text);font-size:15px;font-weight:650;paint-order:stroke;stroke:var(--surface);stroke-linejoin:round;stroke-width:4px}.vector-label.muted{fill:var(--muted)}.vector-label.label-a{fill:var(--diagram-a)}.vector-label.label-b{fill:var(--diagram-b)}.vector-label.label-sum{fill:var(--diagram-c)}.vector-diagram figcaption{display:grid;gap:3px;margin:0;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.vector-diagram figcaption span:first-child{color:var(--text);font-weight:650}.concept-diagram{display:grid;gap:10px;margin:30px 0;max-width:100%}.concept-diagram svg{width:100%;aspect-ratio:32/11;border:1px solid var(--faint);border-radius:8px;background:var(--surface)}.concept-diagram.matrix-diagram svg,.concept-diagram.vector-concept svg{aspect-ratio:2/1}.concept-diagram.attention-reading-diagram svg{aspect-ratio:520/510;justify-self:center;max-width:600px}.concept-diagram.llm-system-layers-diagram svg{aspect-ratio:600/610;justify-self:center;max-width:640px}.concept-diagram.calculus-diagram svg,.concept-diagram.geometry-diagram svg,.concept-diagram.information-diagram svg,.concept-diagram.linear-diagram svg,.concept-diagram.numerical-diagram svg,.concept-diagram.optimization-diagram svg,.concept-diagram.probability-diagram svg,.concept-diagram.statistics-diagram svg{aspect-ratio:2/1}.decomposition-explorer svg{min-height:290px}.decomposition-input-shape{fill:color-mix(in srgb,var(--theme-100) 28%,transparent);stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 5}.decomposition-output-shape{fill:color-mix(in srgb,var(--theme-100) 42%,transparent);stroke:var(--theme);stroke-width:2.5}.decomposition-principal-line{stroke:var(--theme);stroke-width:3}.decomposition-residual{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 4}.decomposition-projection{fill:var(--theme)}.matrix-map-explorer svg{min-height:300px}.matrix-map-grid{stroke:color-mix(in srgb,var(--theme) 36%,var(--line));stroke-width:1.2}.matrix-null-line{stroke:var(--vector-b);stroke-width:2;stroke-dasharray:6 5}.matrix-column-space-line{stroke:var(--theme);stroke-width:4}.matrix-combination{fill:none;stroke-width:3}.matrix-combination.first{stroke:var(--vector-a)}.matrix-combination.second{stroke:var(--vector-b)}.diagram-select-control{display:grid;grid-template-columns:minmax(140px,auto) minmax(180px,1fr);align-items:center;gap:12px;color:var(--text);font-size:var(--type-small)}.diagram-select-control select{min-height:40px;padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--text);font:inherit}.matrix-coordinate-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bayes-population{stroke:var(--paper);stroke-width:2}.bayes-population.a{fill:var(--theme)}.bayes-population.not-a{fill:var(--vector-b)}.bayes-bar-label{fill:var(--paper);font-size:14px;font-weight:700}.bayes-controls{display:grid;gap:4px}.likelihood-curve{fill:none;stroke:var(--theme);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.likelihood-mle-line{stroke:var(--vector-b);stroke-width:1.5;stroke-dasharray:5 5}.confidence-truth-line{stroke:var(--text);stroke-width:2}.confidence-cap,.confidence-interval-line{stroke:currentColor;stroke-width:1.5}.confidence-estimate{fill:currentColor}.confidence-covered{color:var(--theme)}.confidence-missed{color:var(--error)}.confidence-controls{display:grid;gap:8px}.jacobian-exact-arrow{stroke:var(--vector-b);stroke-width:2.5;stroke-dasharray:6 5}.repeated-scale-path{stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round}.repeated-scale-path,.tradeoff-bias,.tradeoff-error,.tradeoff-variance{fill:none;stroke-width:3}.tradeoff-bias{stroke:var(--diagram-a)}.tradeoff-variance{stroke:var(--diagram-b)}.tradeoff-error{stroke:var(--text)}.tradeoff-marker{stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 5}@media (prefers-reduced-motion:reduce){.concept-diagram *,.three-diagram *{scroll-behavior:auto;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:520px){.diagram-select-control,.matrix-coordinate-controls{grid-template-columns:1fr}}.calculus-contour,.calculus-curve{fill:none;stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}.calculus-contour{opacity:.34}.probability-space{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.5}.probability-event{fill:var(--theme-soft);stroke:var(--theme-300);stroke-width:1.8}.probability-event.secondary{fill:var(--surface-muted);stroke:var(--neutral-300)}.probability-overlap{fill:var(--theme-soft);stroke:var(--theme);stroke-width:1.6}.probability-bar{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.5}.probability-bar.primary{fill:var(--theme-soft);stroke:var(--theme-300)}.optimization-curve,.probability-curve{fill:none;stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.statistics-block{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.5}.statistics-block.primary{fill:var(--theme-soft);stroke:var(--theme-300)}.statistics-block.muted{fill:var(--surface);stroke:var(--neutral-300)}.statistics-target{fill:none;stroke:var(--neutral-300);stroke-width:1.8}.statistics-curve{fill:none;stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.information-bar{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.5}.information-bar.primary{fill:var(--theme-soft);stroke:var(--theme-300)}.information-curve{fill:none;stroke:var(--neutral-500);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.8}.information-curve.primary{stroke:var(--theme)}.information-set{fill:var(--theme-soft);stroke:var(--theme-300);stroke-width:1.5}.information-set.secondary{fill:var(--surface-muted);stroke:var(--neutral-300)}.information-overlap{fill:color-mix(in srgb,var(--theme) 18%,transparent);stroke:var(--theme);stroke-width:1.3}.geometry-region{fill:var(--theme-soft);stroke:var(--theme-300);stroke-width:1.5}.geometry-region.positive{fill:var(--theme-soft);stroke:none}.geometry-region.negative{fill:var(--surface-muted);stroke:none}.geometry-boundary,.geometry-corner{fill:none;stroke:var(--theme);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}.geometry-boundary.shifted{opacity:.68;stroke:var(--neutral-600);stroke-dasharray:9 7}.matrix-cell rect{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.4}.matrix-cell.primary rect{fill:var(--theme-soft);stroke:var(--theme-300)}.matrix-cell text{fill:var(--text);font-size:17px;font-weight:750}.matrix-diagram .concept-node text{text-transform:none}.matrix-bracket{fill:none;stroke:var(--text);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}.matrix-flow{fill:none;stroke:var(--theme);stroke-dasharray:6 7;stroke-linecap:round;stroke-width:2}.concept-bg{fill:var(--surface)}.concept-node rect{fill:var(--surface-muted);stroke:var(--neutral-300);stroke-width:1.5}.concept-node.primary rect{fill:var(--theme-soft);stroke:var(--theme-300)}.concept-node.warning rect{fill:color-mix(in srgb,var(--theme) 16%,var(--surface));stroke:var(--theme)}.concept-node text{fill:var(--muted);font-size:14px;font-weight:700;text-transform:uppercase}.concept-node .concept-value,.concept-value{fill:var(--text);font-size:22px;font-weight:750;text-transform:none}.concept-node.compact .concept-value{font-size:20px}.concept-line{stroke:var(--theme);stroke-width:2.4;stroke-linecap:round}.concept-line.muted{stroke:var(--neutral-500)}.concept-arrow{fill:var(--theme)}.concept-equals,.concept-formula{fill:var(--text);font-size:42px;font-weight:750}.concept-formula.small{font-size:32px}.concept-small{fill:var(--muted);font-size:15px;font-weight:700}.concept-diagram figcaption{margin:0;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.concept-diagram figcaption span:first-child{color:var(--text);font-weight:650}.three-diagram{position:relative;max-width:var(--reader);margin:30px 0}.three-diagram.is-fullscreen{position:fixed;inset:0;z-index:10000;isolation:isolate;display:grid;grid-template-rows:minmax(0,1fr) auto;max-width:none;margin:0;padding:16px;overflow:auto;border:0;border-radius:0;background:var(--bg);box-shadow:0 24px 80px color-mix(in srgb,var(--text) 22%,transparent)}.three-diagram.is-fullscreen.has-range{grid-template-rows:minmax(0,1fr) auto auto}.three-diagram.is-fullscreen .three-diagram-canvas{min-height:0;background:var(--paper)}.three-diagram-canvas{position:relative;min-height:380px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.three-diagram-canvas canvas{display:block;width:100%;height:100%;touch-action:none}.three-diagram .diagram-toolbar button[aria-pressed=true]{border-color:var(--theme-400);background:color-mix(in srgb,var(--theme-100) 58%,var(--paper));color:var(--theme)}@media (max-width:520px){.diagram-toolbar-actions{max-width:210px;grid-auto-flow:row;grid-template-columns:repeat(4,40px);grid-auto-columns:auto}.diagram-toolbar-compact button{width:40px;min-width:40px;height:40px;min-height:40px}}.three-diagram-label{position:absolute;top:14px;left:16px;padding:6px 9px;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--paper) 86%,transparent);color:var(--text);font-size:.82rem;font-weight:700}.three-diagram figcaption{display:grid;gap:4px;margin-top:10px;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption)}.three-diagram figcaption span:first-child{color:var(--text);font-weight:700}.diagram-range-control{display:grid;grid-template-columns:minmax(140px,auto) minmax(180px,1fr);align-items:center;gap:12px;margin-top:10px;color:var(--text);font-size:var(--type-small)}.diagram-range-control input{width:100%;accent-color:var(--theme)}@media (max-width:520px){.diagram-range-control{grid-template-columns:1fr;gap:6px}}.lesson-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:58px;padding-top:22px;border-top:1px solid var(--faint)}.lesson-nav a{display:grid;gap:4px;min-height:78px;border:1px solid var(--faint);border-radius:8px;background:var(--surface);padding:14px 16px;color:var(--text);text-decoration:none}.lesson-nav .next{grid-column:2;text-align:right}.lesson-nav a:hover{border-color:var(--theme-300)}.lesson-nav span{color:var(--muted);font-size:.86rem}.lesson-nav small{color:var(--muted);font-size:.78rem;line-height:1.35}.lesson-nav strong{color:var(--text);font-size:1rem}.lesson-disclosure{margin-top:14px;border-top:1px solid color-mix(in srgb,var(--theme) 18%,var(--faint));padding-top:12px}.lesson-disclosure summary{display:flex;align-items:baseline;gap:8px;min-height:40px;padding:6px 0;color:var(--text);cursor:pointer;list-style:none}.lesson-disclosure summary::-webkit-details-marker{display:none}.lesson-disclosure summary:before{content:"+";color:var(--theme);font-weight:750}.lesson-disclosure[open] summary:before{content:"-"}.lesson-disclosure summary span{color:var(--theme);font-size:.86rem;font-weight:750}.lesson-disclosure summary strong{color:var(--text);font-size:.98rem;font-weight:650}.lesson-disclosure>div{display:grid;gap:8px;margin-top:10px;color:var(--text)}.lesson-disclosure p{margin:0}.answer-check{display:grid;gap:10px;margin-top:18px}.answer-check>label{color:var(--text);font-weight:700}.answer-row{display:flex;flex-wrap:wrap;gap:10px}.answer-row input{width:min(220px,100%);min-height:42px;border:1px solid var(--neutral-300);border-radius:6px;background:var(--surface);color:var(--text);padding:0 12px;font:inherit}.answer-row input:focus{border-color:var(--theme);outline:2px solid var(--theme-200);outline-offset:2px}.answer-row input[aria-invalid=true]{border-color:var(--neutral-800)}.answer-row input::placeholder{color:var(--neutral-500);opacity:1}.answer-reveal button,.answer-row button{min-height:42px;border:1px solid var(--action-border);border-radius:6px;background:var(--action-bg);color:var(--action-text);padding:0 14px;cursor:pointer;font:inherit;font-weight:650}.answer-reveal-confirm button.secondary,.answer-reveal>button,.answer-row button.secondary{border-color:var(--neutral-300);background:var(--surface);color:var(--text)}.answer-reveal button:hover,.answer-row button:hover{border-color:var(--theme)}.answer-reveal button:focus-visible,.answer-row button:focus-visible{outline:2px solid var(--theme);outline-offset:2px}.answer-reveal button:disabled{cursor:not-allowed;border-color:var(--neutral-300);background:var(--neutral-300);color:var(--neutral-700)}.answer-check .answer-feedback{display:flex;gap:7px;align-items:baseline;margin:0;color:var(--muted);font-weight:500}.answer-check .answer-feedback.idle{display:none}.answer-check .answer-feedback.correct{color:var(--success)}.answer-check .answer-feedback.incorrect{color:var(--danger)}.answer-check .answer-feedback.empty,.answer-check .answer-feedback.invalid{color:var(--warning)}.answer-check .answer-feedback.correct:before{content:"✓"}.answer-check .answer-feedback.incorrect:before{content:"×"}.answer-check .answer-feedback.empty:before,.answer-check .answer-feedback.invalid:before{content:"!"}.answer-reveal{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.answer-reveal span{color:var(--muted);font-size:.95rem}.answer-reveal-confirm{display:flex;flex:1 1 100%;flex-wrap:wrap;gap:8px;align-items:center;border:1px solid var(--faint);background:var(--surface-muted);padding:12px}.answer-reveal-confirm>span{flex:1 1 240px}.answer-sample{flex-basis:100%}.exercise-learning-footer{height:0}.exercise-learning-menu{position:absolute;z-index:10;top:8px;right:10px}.exercise-learning-menu>summary{position:relative;display:grid;width:44px;height:44px;place-items:center;border-radius:50%;color:var(--muted);cursor:pointer;list-style:none}.exercise-learning-menu>summary::-webkit-details-marker{display:none}.exercise-learning-menu>summary:hover{background:var(--faint);color:var(--theme)}.exercise-learning-menu.is-done>summary{color:var(--success)}.exercise-learning-menu>summary>span{position:absolute;top:7px;right:7px;width:7px;height:7px;border:2px solid var(--theme-soft);border-radius:50%;background:var(--theme)}.exercise-learning-menu>div{position:absolute;z-index:20;top:calc(100% + 6px);right:0;display:grid;gap:10px;width:min(310px,calc(100vw - 48px));padding:14px;border:1px solid var(--faint);border-radius:6px;background:var(--surface);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 14%,transparent)}.exercise-learning-menu>div>p{margin:0;color:var(--muted);font-size:var(--type-caption)}.exercise-learning-menu .study-state-controls{margin:0;padding:0 0 10px;border-top:0;border-bottom:1px solid var(--faint)}.choice-check fieldset{display:grid;gap:10px;min-width:0;border:0;margin:0;padding:0}.choice-check legend{color:var(--text);font-weight:700;padding:0}.choice-list{display:grid;gap:8px}.choice-option{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;border:1px solid var(--faint);border-radius:7px;background:var(--surface);color:var(--text);cursor:pointer;font-weight:400;line-height:1.45;padding:12px 14px}.choice-option:hover{border-color:var(--theme-300)}.choice-option:has(input:checked){border-color:var(--theme);background:color-mix(in srgb,var(--theme) 10%,var(--surface))}.choice-option:focus-within{outline:2px solid var(--theme);outline-offset:2px}.choice-option input{width:18px;height:18px;margin-top:.28em;accent-color:var(--theme)}.choice-option-content{display:grid;gap:7px;min-width:0}.choice-option-label{min-width:0;font-weight:400;white-space:pre-wrap;overflow-wrap:anywhere}.choice-option-code{display:block;min-width:0;overflow-x:auto;border:1px solid var(--faint);background:var(--code-bg);color:var(--code-text);font-family:var(--font-mono);font-size:.9em;line-height:1.5;padding:9px 10px;white-space:pre}.choice-option-description{color:var(--muted);font-size:.92rem;line-height:1.45}.pronunciation-reference{display:grid;gap:10px;margin:22px 0}.greek-reference{grid-template-columns:repeat(auto-fit,minmax(116px,1fr))}.symbol-reference{grid-template-columns:1fr}.pronunciation-item{align-items:center;background:var(--surface);border:1px solid var(--faint);border-radius:8px;display:grid;gap:4px;min-width:0;padding:12px}.pronunciation-item.wide{grid-template-columns:minmax(52px,auto) minmax(130px,.5fr) minmax(180px,1fr)}.pronunciation-symbols{align-items:baseline;color:var(--theme);display:flex;font-size:1.35rem;font-weight:700;gap:8px;line-height:1}.pronunciation-name{color:var(--text);font-size:var(--font-small);font-weight:700}.pronunciation-sentence{color:var(--muted);font-size:var(--font-small)}@media (max-width:640px){.pronunciation-item.wide{grid-template-columns:1fr}}.python-repl,.python-runner{display:grid;gap:12px;margin:24px 0;border:1px solid var(--faint);border-radius:8px;background:var(--surface);padding:16px}.python-runner-header{display:flex;align-items:start;justify-content:space-between;gap:16px}.python-runner-header .eyebrow{margin:0 0 4px}.python-runner-header h3{margin:0;color:var(--text);font-size:1.08rem}.python-runner-header p:last-child{margin:6px 0 0;color:var(--muted);font-size:.96rem;line-height:1.5}.python-runner-header>button{min-height:42px;flex:0 0 auto;border:1px solid var(--action-border);border-radius:6px;background:var(--action-bg);color:var(--action-text);padding:0 14px;font:inherit;font-weight:650}.python-runner-header>button.secondary{border-color:var(--neutral-300);background:var(--surface);color:var(--text)}.python-runner-header>button:disabled{cursor:wait;border-color:var(--neutral-300);background:var(--neutral-300);color:var(--neutral-700)}.code-toolbar{position:relative;display:flex;flex:0 0 auto;align-items:center;align-self:start;gap:0;margin-top:-2px}.code-toolbar-button{display:inline-grid;width:34px;height:34px;place-items:center;border:0;border-radius:0;background:transparent;color:var(--muted);padding:5px;cursor:pointer}.code-toolbar-button:focus-visible,.code-toolbar-button:hover,.code-toolbar-menu[open]>summary{background:var(--surface-muted);color:var(--theme)}.code-toolbar-button:focus-visible{outline:2px solid var(--theme);outline-offset:1px}.code-toolbar-button:disabled{cursor:wait;color:var(--neutral-500)}.code-toolbar-button svg{width:20px;height:20px;fill:currentColor}.code-toolbar-menu{position:relative}.code-toolbar-menu>summary{list-style:none}.code-toolbar-menu>summary::-webkit-details-marker{display:none}.code-toolbar-menu-panel{position:absolute;top:calc(100% + 4px);right:0;z-index:20;display:grid;width:min(272px,calc(100vw - 32px));overflow:hidden;border:1px solid var(--border);background:var(--surface-raised);box-shadow:0 8px 24px color-mix(in srgb,var(--neutral-950) 16%,transparent);padding:4px}.code-toolbar-menu-panel button{display:flex;width:100%;min-height:40px;align-items:center;border:0;border-radius:4px;background:transparent;color:var(--text);padding:8px 12px;text-align:left;font:inherit;font-size:.95rem;line-height:1.35;cursor:pointer}.code-toolbar-menu-panel button:focus-visible,.code-toolbar-menu-panel button:hover{background:var(--surface-muted)}.code-toolbar-menu-panel button:focus-visible{outline:2px solid var(--theme);outline-offset:-2px}.code-toolbar-menu-panel button[aria-checked=true]{color:var(--theme)}.code-toolbar-menu-panel p{margin:4px 0 0;border-top:1px solid var(--faint);color:var(--muted);padding:10px 12px 6px;font-size:var(--type-caption);line-height:var(--leading-caption)}.repl-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:2px;justify-content:flex-end}.repl-actions button.secondary{min-height:34px;border:0;border-radius:4px;background:transparent;color:var(--muted);padding:5px 8px;font:inherit;font-size:var(--type-caption);font-weight:650;line-height:var(--leading-caption);cursor:pointer}.repl-actions button.secondary:focus-visible,.repl-actions button.secondary:hover{background:var(--surface-muted);color:var(--theme)}.repl-actions button.secondary:focus-visible{outline:2px solid var(--theme);outline-offset:1px}.repl-history{display:grid;gap:12px;min-height:84px;max-height:360px;overflow:auto;border:1px solid var(--code-border);border-radius:8px;background:var(--code-bg);padding:14px}.repl-entry{display:grid;gap:6px}.repl-command,.repl-output{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--code-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.5}.repl-command{color:var(--theme)}.repl-output.error{color:var(--neutral-800)}.repl-system{margin:0;color:var(--muted);font-size:.94rem}.repl-input-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px}.repl-input-row>span{padding-top:10px;color:var(--theme);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700}.repl-input-row textarea{min-height:42px;max-height:160px;resize:vertical;border:1px solid var(--neutral-300);border-radius:6px;background:var(--surface);color:var(--text);padding:9px 10px;font:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.45}.repl-input-row textarea:focus{border-color:var(--theme);outline:2px solid var(--theme-200);outline-offset:2px}.repl-input-row button{min-height:42px;border:1px solid var(--action-border);border-radius:6px;background:var(--action-bg);color:var(--action-text);padding:0 14px;font:inherit;font-weight:650}.repl-input-row button:disabled{cursor:wait;border-color:var(--neutral-300);background:var(--neutral-300);color:var(--neutral-700)}.code-editor{min-width:0}.python-stdin{border:1px solid var(--faint);border-radius:8px;background:var(--surface-muted);padding:10px 12px}.python-stdin summary{cursor:pointer;color:var(--text);font-weight:650}.python-stdin pre{margin:10px 0 0;white-space:pre-wrap}.python-feedback,.python-status{margin:0;color:var(--muted);font-size:.94rem}.python-feedback.correct,.python-status.done{color:var(--success)}.python-feedback.incorrect,.python-status.error{color:var(--danger)}.python-feedback{display:flex;gap:7px;align-items:baseline}.python-feedback.correct:before{content:"✓"}.python-feedback.incorrect:before{content:"×"}.python-output-grid{display:grid;gap:12px}.python-output{margin:0;max-width:100%;min-height:56px;overflow-x:auto;border:1px solid var(--code-border);border-radius:8px;background:var(--code-bg);color:var(--code-text);padding:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.5}.python-figures{display:grid;gap:10px}.python-figures img{max-width:100%;height:auto;border:1px solid var(--faint);border-radius:8px;background:white}.start-list{display:grid;gap:0;margin:24px 0 34px;border-top:1px solid var(--faint)}.start-list a,.start-list-item{display:grid;gap:4px;padding:15px 0;border-bottom:1px solid var(--faint);color:var(--muted)}.start-list a{text-decoration:none}.ordered-path strong,.start-list a:hover,.start-list strong{color:var(--text)}.ordered-path{display:grid;gap:10px;margin:20px 0 34px;padding-left:22px}.llm-system-section{margin:52px 0}.llm-inference-flow{display:grid;gap:0;margin:28px 0 48px;padding:0;list-style:none;border-top:1px solid var(--faint)}.llm-inference-flow li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;padding:18px 0;border-bottom:1px solid var(--faint)}.llm-stage-number{display:grid;width:28px;height:28px;place-items:center;color:var(--theme);font-size:var(--type-small);font-weight:750}.llm-curriculum-bridge p,.llm-inference-flow h3,.llm-inference-flow p,.llm-map-note,.llm-map-reference,.llm-training-flow li{margin:0}.llm-inference-flow h3{font-size:1rem}.llm-inference-flow h3+p{margin-top:5px}.llm-stage-foundations{margin-top:8px!important;color:var(--theme);font-size:var(--type-small);font-weight:650}.llm-training-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:24px 0 36px;padding:1px;list-style:none;background:var(--faint)}.llm-training-flow li{display:grid;gap:5px;padding:16px;background:var(--surface)}.llm-training-flow strong{color:var(--text)}.llm-map-note,.llm-training-flow span{color:var(--muted)}.llm-curriculum-bridge{margin:32px 0 20px;padding-left:18px;border-left:3px solid var(--theme)}.llm-curriculum-bridge h3{margin:0 0 8px;font-size:1rem}.llm-map-note,.llm-map-reference{font-size:var(--type-small)}.llm-map-reference{margin-top:12px}@media (max-width:560px){.llm-training-flow{grid-template-columns:1fr}.llm-inference-flow li{grid-template-columns:28px minmax(0,1fr);gap:10px}}.legal-page{padding-bottom:96px}.updated{margin-top:-8px;color:var(--muted);font-size:var(--type-small);line-height:var(--leading-caption);font-style:italic}.site-footer{width:100%;max-width:var(--max);margin:auto auto 0;padding:36px 20px;color:var(--muted);text-align:center;border-top:1px solid var(--faint)}.site-footer div{justify-content:center}.site-footer p{max-width:560px;margin:12px auto 0}.footer-meta{font-size:.92rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 18px;margin-top:18px;font-size:.9rem}.footer-policy-links{margin-top:2px;font-size:var(--type-small)}.footer-links a{display:inline-flex;align-items:center;min-height:36px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.footer-links a:hover{color:var(--theme)}.reader-search-link{display:inline-grid;flex:0 0 auto;width:36px;min-height:36px;place-items:center;color:var(--muted)}.reader-search-link:hover{color:var(--theme)}.reader-search-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}.account-nav-icon{display:inline-grid;flex:0 0 auto;width:36px;min-height:36px;margin-left:auto;place-items:center;color:var(--muted)}.account-nav-icon:hover{color:var(--theme)}.account-nav-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.account-menu{position:relative;flex:0 0 auto}.account-nav-loading{display:inline-block;flex:0 0 auto;width:42px;height:24px}.account-menu>summary,.account-nav-loading.compact{width:34px;height:34px}.account-menu>summary{display:grid;cursor:pointer;list-style:none;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:var(--theme-soft);color:var(--theme);font-size:var(--type-small);font-weight:700}.account-menu>summary::-webkit-details-marker{display:none}.account-menu>summary:focus-visible{outline:2px solid var(--theme);outline-offset:3px}.account-menu-popover{position:absolute;z-index:40;top:calc(100% + 9px);right:0;display:grid;min-width:210px;border:1px solid var(--border);background:var(--surface-raised);box-shadow:0 12px 28px color-mix(in srgb,var(--text) 14%,transparent);padding:7px}.account-menu-popover p{margin:0;padding:9px 10px;overflow-wrap:anywhere;border-bottom:1px solid var(--border);color:var(--muted);font-size:var(--type-small)}.account-menu-popover a,.account-menu-popover button{min-height:38px;border:0;background:transparent;padding:8px 10px;color:var(--text);font:inherit;text-align:left;text-decoration:none}.account-menu-popover a:hover,.account-menu-popover button:hover{background:var(--theme-soft);color:var(--theme)}.account-menu-popover button:disabled{cursor:wait;color:var(--muted)}.account-menu-popover .account-menu-error{border-top:1px solid var(--border);border-bottom:0;color:var(--danger)}.account-menu-popover .account-menu-environment{border-top:1px solid var(--border);border-bottom:0;color:var(--muted)}.my-learning-sections{display:grid;gap:22px}.study-session-manager{display:grid;gap:1.25rem}.study-session-card-heading,.study-session-manager-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.study-session-card-heading h3,.study-session-group>h3,.study-session-manager-heading h2{margin:0}.study-session-manager-heading p{margin:.35rem 0 0;color:var(--muted)}.study-session-card form,.study-session-create{display:grid;gap:.9rem}.study-session-card label,.study-session-create label{display:grid;gap:.4rem;color:var(--muted);font-size:var(--type-small);font-weight:650}.study-session-card input,.study-session-card textarea,.study-session-create input,.study-session-create textarea{width:100%;border:1px solid var(--border-strong);border-radius:0;background:var(--surface);padding:.7rem .8rem;color:var(--text);font:inherit;font-weight:400}.study-session-card textarea,.study-session-create textarea{resize:vertical}.study-session-card input:focus-visible,.study-session-card textarea:focus-visible,.study-session-create input:focus-visible,.study-session-create textarea:focus-visible{outline:2px solid var(--theme);outline-offset:2px}.study-session-group,.study-session-list{display:grid;gap:.75rem}.study-session-card{border:1px solid var(--border);padding:1rem}.study-session-card.is-active{border-color:var(--theme);box-shadow:inset 3px 0 0 var(--theme)}.study-session-card h3{margin:.2rem 0 0;font-size:var(--type-h4)}.study-session-card>p{margin:.65rem 0}.study-session-default,.study-session-status{color:var(--muted);font-size:var(--type-caption);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.study-session-default{border:1px solid var(--theme-200);padding:.25rem .4rem;color:var(--theme)}.study-session-summary{color:var(--muted);font-size:var(--type-small)}.study-session-manager .account-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.study-session-manager .button.danger{border-color:color-mix(in srgb,var(--danger) 55%,var(--border));background:transparent;color:var(--danger)}.study-session-history{border-block-start:1px solid var(--border);padding-block-start:1rem}.study-session-history summary{cursor:pointer;font-weight:700}.study-session-history .study-session-list{margin-block-start:.75rem}@media (max-width:640px){.study-session-manager-heading{align-items:stretch;flex-direction:column}.study-session-manager-heading>.button{width:100%}.study-session-manager .account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.study-session-manager .account-actions>*{width:100%;text-align:center}}.my-learning-next{border:1px solid var(--theme-200);background:var(--theme-soft);padding:clamp(20px,4vw,30px)}.my-learning-next h2{margin:5px 0 8px}.my-learning-next p:not(.eyebrow){margin:0 0 18px;color:var(--muted)}.my-learning-grid{display:grid;gap:8px}.my-learning-grid a{display:grid;gap:3px;border:1px solid var(--border);padding:12px 14px;color:var(--text);text-decoration:none}.my-learning-report{border-top:1px solid var(--border);display:grid;gap:3px;padding:11px 0}.my-learning-report span,.my-learning-reports small{color:var(--muted)}.my-learning-reports small{font-size:var(--type-caption)}.my-learning-grid a:hover{border-color:var(--theme-300);background:var(--theme-soft)}.my-learning-grid span{color:var(--muted);font-size:var(--type-small)}.my-learning-notes small{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:var(--type-caption);font-style:italic;line-height:var(--leading-caption);-webkit-box-orient:vertical;-webkit-line-clamp:2}.account-page{max-width:720px}.account-heading>p:last-child{max-width:620px;margin:16px 0 0;color:var(--muted);font-size:var(--type-description)}.account-message,.account-status{color:var(--muted)}.account-sections{display:grid;gap:18px}.account-panel{border-top:1px solid var(--border);padding-top:24px}.account-panel h2{margin:0 0 8px;font-size:clamp(1.25rem,3vw,1.55rem)}.account-panel p{margin:0 0 18px;color:var(--muted)}.account-provider-actions{display:flex;flex-wrap:wrap;gap:10px}.account-panel .account-note{margin:18px 0 0;font-size:var(--type-small)}.account-details{display:grid;gap:10px;margin:18px 0 22px}.account-details div{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);gap:16px}.account-details dt{color:var(--muted)}.account-details dd{min-width:0;margin:0;overflow-wrap:anywhere}.account-danger{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.account-danger label{display:block;margin-bottom:8px}.account-danger input{display:block;width:min(100%,420px);min-height:44px;margin-bottom:12px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);color:var(--text);padding:8px 12px;font:inherit}.account-danger input:focus{border-color:var(--theme-500)}.search-page{width:min(100%,760px)}.site-search>h1{margin-bottom:8px}.site-search>p{color:var(--muted)}.site-search label{display:block;margin:28px 0 8px;color:var(--text);font-weight:700}.site-search input{width:100%;min-height:48px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);color:var(--text);padding:10px 13px;font:inherit}.site-search input:focus{border-color:var(--theme);outline:2px solid var(--theme-200);outline-offset:2px}.site-search .search-summary{min-height:1.5em;margin:10px 0 18px;font-size:var(--type-small)}.search-results{display:grid;gap:8px;margin:0;padding:0;list-style:none}.search-results a{display:grid;gap:3px;border:1px solid var(--border);background:var(--surface);padding:13px 15px;color:var(--text);text-decoration:none}.search-results a:hover{border-color:var(--theme-300);background:var(--theme-soft)}.search-results small,.search-results span{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-caption)}.search-results strong{color:var(--theme)}.search-empty{border-left:3px solid var(--theme);background:var(--theme-soft);padding:14px 16px}@media (max-width:820px){.python-runner-header{align-items:start}.python-runner-header>button{align-self:start}.repl-input-row{grid-template-columns:auto minmax(0,1fr)}.repl-input-row button{grid-column:2;justify-self:start}.site-header{align-items:flex-start;flex-direction:column;gap:14px;padding-block:14px}.header-placeholder{min-height:62px}.reader-site-header{align-items:center;flex-direction:row;gap:10px}.public-site-header{align-items:center;flex-direction:row;gap:24px}.public-site-header .top-nav{width:auto;margin-left:auto;justify-content:flex-end}.reader-brand{display:none}.reader-breadcrumb{width:auto}.top-nav{width:100%;justify-content:space-between;gap:12px}.update-form-row{flex-direction:column}.update-form-submit{align-self:start}.hero{grid-template-columns:1fr;padding-top:36px}.hero-light{padding-top:48px;padding-bottom:62px}.path-section{grid-template-columns:1fr;padding-top:44px}.start-guide{gap:22px}.chapter-card-grid,.course-meta,.course-split,.review-grid,.start-guide,.subject-learning-overview{grid-template-columns:1fr}.section{padding-block:54px}.course-grid,.grid,.lesson-nav,.local-progress{grid-template-columns:1fr}.lesson-nav .next{grid-column:auto;text-align:left}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.site-header{transition:none}}@media (forced-colors:active){:root{--danger:LinkText;--success:LinkText;--warning:CanvasText}.choice-option:focus-within,:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid Highlight!important;outline-offset:3px}.account-menu-popover,.annotation-nav-popover,.annotation-panel,.answer-reveal button,.answer-row button,.button,.choice-option,.exercise-learning-menu>div,.lesson-nav a,.my-learning-grid a,.panel,.python-runner,.study-review-menu>div{border-color:CanvasText}.answer-reveal button:not(.secondary),.answer-row button:not(.secondary),.button:not(.secondary),.choice-option:has(input:checked),.study-state-actions>button.is-done{background:Highlight;border-color:Highlight;color:HighlightText;forced-color-adjust:none}.choice-option input,input[type=checkbox],input[type=radio],input[type=range]{accent-color:Highlight}::highlight(annotation-concept),::highlight(annotation-important),::highlight(annotation-neutral),::highlight(annotation-revisit),::highlight(annotation-understood){background:Highlight;color:HighlightText}.annotation-color,.annotation-nav-color,.exercise-learning-menu>summary>span,.progress-legend i{background:Canvas;border:1px solid CanvasText}.annotation-color,.annotation-nav-color,.exercise-learning-menu>summary>span,.progress-legend i.is-done{background:Highlight}.progress-legend i.is-active{background:GrayText}.vector-handle:focus{opacity:1;stroke:Highlight;stroke-width:5}}@media (max-width:480px){.reader,.section,.site-footer,.site-header{padding-inline:16px}.reader-breadcrumb{overflow:hidden}.reader-breadcrumb .reader-crumb:not(:first-of-type):not(:last-of-type){display:none}.reader-breadcrumb .reader-crumb:first-of-type{max-width:34%}.reader-breadcrumb .reader-crumb:last-of-type{flex:1 1 auto;min-width:0}.reader-breadcrumb .reader-crumb:first-of-type a,.reader-breadcrumb .reader-crumb:last-of-type>:last-child{display:block;overflow:hidden;text-overflow:ellipsis}.concept-diagram svg{width:100%;max-width:100%}.axis-label{font-size:16px}.vector-label{font-size:19px}.concept-node text,.concept-small{font-size:18px}.matrix-cell text{font-size:20px}.three-diagram-canvas{min-height:420px}.actions{flex-direction:column}.button{width:100%}.account-provider-actions,.llm-path-map ol{display:grid}.llm-path-map li{min-height:34px}.llm-path-map li:not(:last-child):after{content:"↓";margin:4px 0}.account-details div{grid-template-columns:1fr;gap:2px}.top-nav{font-size:.9rem}}@media (max-width:360px){.public-site-header .brand span{display:none}}