@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");:root{--bg:#f4f3ff;--bg-gradient:#f4f3ff;--surface:#ffffff;--surface-2:#f3f4f6;--border:#e5e7eb;--border-hover:#d1d5db;--text:#374151;--text-bright:#111827;--muted:#6b7280;--faint:#f3f4f6;--brand-gradient:linear-gradient(90deg,#4f46e5,#7c3aed,#db2777);--accent:#6366f1;--accent-dim:rgba(99,102,241,0.08);--accent-border:rgba(99,102,241,0.25);--amber:#d97706;--violet:#7c3aed;--rose:#e11d48;--green:#059669;--sim-bg:#f8fafc;--sim-grid:#e2e8f0;--sim-axis:#94a3b8;--sim-label:#64748b;--slider-ring:#ffffff;--font:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--mono:"JetBrains Mono","Fira Code",monospace;--lift:0;--chroma:0;--r:8px;--r-lg:12px;--col:680px;--shadow:0 4px 24px -4px rgba(0,0,0,0.08);--shadow-lg:0 12px 40px -8px rgba(0,0,0,0.12)}[data-theme=dark],html.dark{--lift:0.22;--chroma:0.03;--bg:#1a1d23;--bg-gradient:linear-gradient(160deg,#1a1d23,#1d2128);--surface:#232830;--surface-2:#2a3039;--border:#343b46;--border-hover:#46505e;--text:#d0d5de;--text-bright:#f2f4f8;--muted:#8791a1;--faint:#262c35;--brand-gradient:linear-gradient(90deg,#818cf8,#a78bfa,#f472b6);--accent:#818cf8;--accent-dim:rgba(129,140,248,0.12);--accent-border:rgba(129,140,248,0.3);--amber:#f59e0b;--violet:#a78bfa;--rose:#fb7185;--green:#34d399;--sim-bg:#080810;--sim-grid:#141420;--sim-axis:#3a3a55;--sim-label:#555570;--slider-ring:#080810;--shadow:0 4px 24px -4px rgba(0,0,0,0.4);--shadow-lg:0 12px 40px -8px rgba(0,0,0,0.5)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#__next,body,html{height:100%}body{background:var(--bg-gradient);background-color:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer}code{font-family:var(--mono)}::selection{background:rgba(99,102,241,.18)}.theme-toggle{position:fixed;top:20px;right:20px;z-index:100;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--muted);box-shadow:var(--shadow);transition:border-color .15s,color .15s,transform .15s}.theme-toggle:hover{border-color:var(--accent-border);color:var(--accent);transform:scale(1.05)}.home{min-height:100vh;padding:72px 48px 120px;max-width:1120px;margin:0 auto}.home-header{margin-bottom:64px}.apex-launch{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:20px;gap:20px;margin:-30px 0 64px;padding:22px;border:1px solid var(--accent-border);border-radius:18px;background:radial-gradient(circle at 88% 15%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 30%),var(--surface);box-shadow:var(--shadow);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.apex-launch:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.apex-launch:focus-visible{outline:3px solid var(--accent-dim);outline-offset:3px}.apex-launch-mark{display:grid;width:56px;height:56px;place-items:center;border:1px solid var(--accent-border);border-radius:17px;background:var(--accent-dim);color:var(--accent);font-family:var(--mono);font-weight:800}.apex-launch-copy,.apex-launch-copy small,.apex-launch-copy strong{display:block}.apex-launch-copy small{color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.apex-launch-copy strong{margin-top:1px;color:var(--text-bright);font-size:22px;letter-spacing:-.04em}.apex-launch-copy>span{display:block;max-width:700px;margin-top:3px;color:var(--muted);font-size:13px;line-height:1.5}.apex-launch-action{display:flex;align-items:center;gap:16px;color:var(--accent);font-size:12px;font-weight:700;white-space:nowrap}.apex-launch-action i{font-style:normal}.home-eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:10px}.home-title{font-size:36px;font-weight:800;color:var(--text-bright);letter-spacing:-.8px;margin-bottom:10px}.home-subtitle{font-size:16px;color:var(--muted);max-width:520px;line-height:1.6}.library-sections{display:flex;flex-direction:column;gap:72px}.library-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.library-section-heading{min-width:0}.library-section-title{font-size:22px;font-weight:700;color:var(--text-bright);letter-spacing:-.4px;margin-bottom:6px}.library-section-desc{font-size:14px;color:var(--muted);line-height:1.55;max-width:480px}.library-section-count{flex-shrink:0;font-size:12px;font-weight:600;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 12px;white-space:nowrap}.library-shelf{display:flex;flex-wrap:wrap;gap:36px 40px;align-items:flex-start}.library-book{display:block;width:180px;text-decoration:none;color:inherit;transition:transform .2s ease}.library-book:hover:not(.soon){transform:translateY(-6px)}.library-book.soon{opacity:.72;cursor:default;pointer-events:none}@media (max-width:640px){.home{padding:48px 24px 80px}.library-section-header{flex-direction:column;gap:12px}.library-shelf{gap:32px;justify-content:center}.apex-launch{grid-template-columns:auto 1fr;margin-top:-20px}.apex-launch-action{grid-column:1/-1;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border)}}.book-cover{position:relative;width:180px;height:260px;border-radius:6px 10px 10px 6px;background:linear-gradient(160deg,var(--cover-from) 0,var(--cover-via) 50%,var(--cover-to) 100%);box-shadow:0 8px 32px -8px rgba(0,0,0,.22),0 2px 8px -2px rgba(0,0,0,.12),inset 3px 0 8px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.22);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:20px 18px;transition:box-shadow .25s,transform .25s}.book-cover.dimmed{filter:saturate(.6) brightness(.9)}.library-book:hover:not(.soon) .book-cover{box-shadow:0 20px 48px -10px rgba(0,0,0,.28),0 4px 12px -4px rgba(0,0,0,.14),inset 3px 0 8px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.25)}.book-cover-bg{inset:0;width:100%}.book-cover-bg,.book-cover-shine{position:absolute;height:100%;pointer-events:none}.book-cover-shine{top:0;left:0;width:55%;background:linear-gradient(105deg,rgba(255,255,255,.14),transparent 60%)}.book-cover-body{position:relative;z-index:1}.book-cover-subject{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.65);font-weight:700;margin-bottom:8px}.book-cover-title{font-size:18px;font-weight:800;color:#ffffff;line-height:1.25;letter-spacing:-.2px}.book-overview{min-height:100vh;max-width:720px;margin:0 auto;padding:60px 32px 120px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);margin-bottom:48px;transition:color .12s}.back-link:hover{color:var(--accent)}.book-overview-header{margin-bottom:52px}.subject-tag{letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:8px;margin-right:12px}.edition-tag,.subject-tag{display:inline-block;font-size:11px}.edition-tag{color:var(--muted);font-style:italic}.book-overview-title{font-size:36px;font-weight:800;color:var(--text-bright);letter-spacing:-.7px;line-height:1.15;margin-bottom:14px}.book-overview-desc{font-size:16px;color:var(--muted);line-height:1.65;margin-bottom:12px}.book-overview-stats{font-size:13px;color:var(--muted);font-weight:500}.unit-section{margin-bottom:44px}.unit-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:16px}.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.topic-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px 20px 18px;box-shadow:var(--shadow);transition:border-color .15s,transform .15s,box-shadow .15s;overflow:hidden;position:relative}.topic-card:hover:not(.soon){border-color:var(--topic-color,var(--accent));transform:translateY(-3px);box-shadow:var(--shadow-lg)}.topic-card.soon{opacity:.55;pointer-events:none;cursor:default}.topic-card-bar{position:absolute;top:0;left:0;right:0;height:3px;background:var(--topic-color,var(--accent))}.topic-card-title{font-size:15.5px;font-weight:600;color:var(--text-bright);margin:4px 0 0;text-decoration:underline;-webkit-text-decoration-color:var(--topic-color,var(--accent));text-decoration-color:var(--topic-color,var(--accent));text-decoration-thickness:1.5px;text-underline-offset:3px}.topic-card:hover:not(.soon) .topic-card-title{text-decoration-thickness:2px}.topic-card-desc{font-size:13.5px;color:var(--muted);line-height:1.5;margin-bottom:14px}.topic-overview{min-height:100vh;max-width:640px;margin:0 auto;padding:60px 32px 120px}.topic-header{margin-bottom:40px}.unit-tag{display:inline-block;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:10px}.topic-title{font-size:32px;font-weight:800;color:var(--text-bright);letter-spacing:-.5px;margin-bottom:0}.topic-header-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:10px}.topic-shipped-badge{font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:999px;padding:4px 11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.topic-curriculum-note{font-size:13.5px;color:var(--muted);margin:0 0 20px;line-height:1.5}.topic-curriculum-note code{font-size:12px;background:var(--surface-2);padding:2px 6px;border-radius:4px}.topic-desc{font-size:16px;color:var(--muted);line-height:1.6}.coming-soon{text-align:center;padding:60px 32px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--r-lg);color:var(--muted)}.coming-soon-icon{font-size:36px;margin-bottom:12px}.chapter-index{display:flex;flex-direction:column;gap:4px}.chapter-index-item{display:flex;align-items:center;gap:16px;padding:16px 20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);transition:border-color .15s,transform .15s,box-shadow .15s}.chapter-index-item:hover{border-color:var(--accent-border);transform:translateX(4px);box-shadow:var(--shadow-lg)}.chapter-index-num{font-size:12px;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;min-width:24px}.chapter-index-title{font-size:15px;color:var(--text-bright);font-weight:600;display:block;text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-decoration-thickness:1.5px;text-underline-offset:3px}.chapter-index-item:hover .chapter-index-title{color:var(--accent);text-decoration-thickness:2px}.chapter-index-meta{flex:1 1;min-width:0}.chapter-prereq-note{display:block;font-size:12px;color:var(--muted);margin-top:3px;font-weight:400}.chapter-index-arrow{font-size:14px;color:var(--muted);transition:transform .15s,color .15s}.chapter-index-item:hover .chapter-index-arrow{color:var(--accent);transform:translateX(3px)}.reader{display:grid;grid-template-columns:210px 1fr;min-height:100vh;max-width:1120px;margin:0 auto;padding:0 32px}.reader .sidebar{padding-left:0;padding-right:20px}@media (max-width:640px){.reader{padding:0 20px}}.reader--studio-dev{--studio-rail:420px}.reader--studio-dev .reader-main{padding-top:var(--studio-pagebox,0)}@media (min-width:1406px){.reader--studio-dev{grid-template-columns:210px 1fr var(--studio-rail)}}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;border-right:2px solid var(--border);background:transparent;padding:32px 20px;display:flex;flex-direction:column;gap:0}.sidebar-back{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-bottom:16px;transition:color .12s}.sidebar-back:hover{color:var(--accent)}.sidebar-topic{display:block;font-size:14px;font-weight:600;color:var(--text-bright);margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border);transition:color .12s}.sidebar-topic:hover{color:var(--accent)}.sidebar-unit{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text);margin-bottom:6px;transition:color .12s}.sidebar-unit:hover{color:oklch(from var(--uc,var(--accent)) calc(l + var(--lift)) calc(c + var(--chroma)) h)}.sidebar-unit-no{margin-right:2px}.sidebar-topic-no,.sidebar-unit-no{font-weight:800;color:oklch(from var(--uc,var(--accent)) calc(l + var(--lift)) calc(c + var(--chroma)) h)}.sidebar-topic-no{margin-right:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sidebar-link-no{display:inline-block;min-width:22px;font-size:11px;font-weight:700;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.8}.sidebar-nav .sidebar-link{display:grid;grid-template-columns:22px minmax(0,1fr);grid-column-gap:6px;column-gap:6px;align-items:baseline}.sidebar-nav .sidebar-link .sidebar-link-no{min-width:0}.sidebar-link.active .sidebar-link-no{color:var(--accent);opacity:1}.sidebar-book{position:relative;display:inline-block;font-size:22px;font-weight:800;letter-spacing:-.5px;line-height:1.1;color:var(--text-bright);padding-bottom:7px;margin-bottom:18px}.sidebar-book-bar{position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:99px}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-link{display:block;font-size:13.5px;color:var(--muted);padding:9px 12px;border-radius:var(--r);transition:color .12s,background .12s;border-left:2px solid transparent;line-height:1.35;text-decoration:underline;-webkit-text-decoration-color:transparent;text-decoration-color:transparent;text-underline-offset:3px;text-decoration-thickness:1.5px}.sidebar-link:hover{color:var(--text);background:var(--surface)}.sidebar-link.active,.sidebar-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.sidebar-link.active{color:var(--text-bright);border-left-color:var(--accent);background:var(--accent-dim);font-weight:500}.reader-main{display:flex;justify-content:center;padding:72px 48px 160px;min-width:0}.reader-content{width:100%;max-width:var(--col);min-width:0}.reader-content h1{font-size:30px;font-weight:700;color:var(--text-bright);letter-spacing:-.5px;line-height:1.2;margin-bottom:12px}.reader-content h2{font-size:19px;font-weight:600;color:var(--text-bright);margin-top:52px;margin-bottom:14px;letter-spacing:-.2px}.reader-content .practice-heading{font-size:22px;font-weight:700;margin-top:56px;margin-bottom:32px;letter-spacing:-.3px}.reader-content .practice-heading~p{margin-top:40px;margin-bottom:10px}.reader-content .practice-heading~p:first-of-type{margin-top:0}.reader-content .practice-heading~.steps-wrap{margin-top:4px;margin-bottom:44px}.reader-content .practice-heading~.sim-wrap{margin-top:16px;margin-bottom:8px}.reader-content p{color:var(--text);margin-bottom:18px;font-size:15.5px}.reader-content p:last-child{margin-bottom:0}.reader-content strong{color:var(--text-bright);font-weight:600}.reader-content ol,.reader-content ul{padding-left:22px;color:var(--text);margin-bottom:18px}.reader-content li{margin-bottom:6px;font-size:15.5px}.reader-content hr{border:none;border-top:1px solid var(--border);margin:44px 0}.reader-content table{width:100%;border-collapse:collapse;margin:20px 0 28px;font-size:14.5px}.reader-content td,.reader-content th{border:1px solid var(--border);padding:10px 14px;text-align:left;vertical-align:top}.reader-content th{background:var(--surface-2);color:var(--text-bright);font-weight:600}.reader-content td{color:var(--text)}.reader-content tr:nth-child(2n) td{background:color-mix(in srgb,var(--border) 18%,transparent)}.reader-content .katex-display{margin:22px 0;overflow-x:auto;overflow-y:hidden;padding:4px 0}:root{--lesson-body-size:clamp(16px,1.9vw,17px)}.reader-content .lesson-redesign-prose h2{font-size:clamp(23px,4vw,28px);margin-top:72px}.reader-content .lesson-redesign-prose h3{font-size:clamp(16.5px,2.6vw,19px);font-weight:650;margin-top:40px;margin-bottom:2px}.reader-content .lesson-redesign-prose p{font-size:var(--lesson-body-size);line-height:1.7}.reader-content .lesson-redesign-prose .callout,.reader-content .lesson-redesign-prose .callout p,.reader-content .lesson-redesign-prose li{font-size:var(--lesson-body-size)}.reader-content .lesson-redesign-prose .callout-label{font-size:11.5px}.reader-content .lesson-redesign-prose .callout ul{margin:2px 0 0;padding-left:18px}.reader-content .lesson-redesign-prose .callout li{margin-bottom:4px}.reader-content .lesson-redesign-prose .callout li:last-child{margin-bottom:0}.reader-content .lesson-redesign-prose .lede{font-size:clamp(17px,2vw,18px);line-height:1.6;color:var(--text-bright);max-width:620px;margin-bottom:22px}.reader-content .lesson-redesign-prose .lede strong{color:var(--accent);font-weight:600}.reader-content .lesson-redesign-prose .kicker{font-size:var(--lesson-body-size);color:var(--muted);max-width:560px;border-left:2px solid var(--border);padding-left:12px;margin-bottom:14px}.reader-content .lesson-redesign-prose .formula-note{font-size:var(--lesson-body-size);color:var(--muted);text-align:center;margin-top:8px}.morph-tex-host .katex-display,.morph-tex-layer .katex-display,.sim-wrap .katex-display{overflow:visible;padding:0}.condensed-board .katex-display>.katex,.condensed-board .katex-html{white-space:normal}.condensed-board .base:has(>.mord.text):not(:has(>.mord:not(.text))){white-space:normal;width:auto}.chapter-nav{display:flex;gap:12px;margin-top:80px;padding-top:32px;border-top:1px solid var(--border)}.chapter-nav-btn{flex:1 1;display:block;border:1px solid var(--border);background:var(--surface);border-radius:var(--r-lg);padding:16px 20px;transition:border-color .12s,transform .12s}.chapter-nav-btn:hover{border-color:var(--border-hover);transform:translateY(-1px)}.chapter-nav-btn.next{text-align:right}.chapter-nav-btn.disabled{opacity:.25;pointer-events:none}.nav-dir{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.nav-title{font-size:14px;color:var(--text-bright);font-weight:500}.nav-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;pointer-events:none;overflow:hidden;background:rgba(99,102,241,.12)}.nav-progress-bar{height:100%;width:35%;background:var(--accent);animation:nav-progress-slide 1s ease-in-out infinite}@keyframes nav-progress-slide{0%{transform:translateX(-100%)}to{transform:translateX(320%)}}.chapter-loading{position:relative}.chapter-loading-bar{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:chapter-load-bar 1.2s ease-in-out infinite}@keyframes chapter-load-bar{0%{transform:translateX(-100%);opacity:.4}50%{opacity:1}to{transform:translateX(100%);opacity:.4}}.chapter-loading-line{height:14px;border-radius:6px;margin-bottom:14px;background:color-mix(in srgb,var(--border) 55%,transparent);animation:chapter-load-pulse 1.4s ease-in-out infinite}.chapter-loading-line-lg{width:62%;height:28px;margin-bottom:24px}.chapter-loading-line-sm{width:38%}.chapter-loading-block{height:220px;border-radius:var(--r-lg);margin:28px 0 32px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 80%,transparent);animation:chapter-load-pulse 1.4s ease-in-out infinite}@keyframes chapter-load-pulse{0%,to{opacity:.55}50%{opacity:1}}.sim-placeholder{min-height:268px;border-radius:var(--r-lg)}.callout,.sim-placeholder{border:1px solid var(--border)}.callout{border-radius:var(--r-lg);padding:16px 18px;margin:28px 0;background:var(--surface);font-size:15px}.callout.key{border-color:var(--accent-border);background:var(--accent-dim)}.callout.warn{border-color:rgba(217,119,6,.3);background:rgba(217,119,6,.06)}.callout p{margin:0;color:var(--text);font-size:15px}.callout.key p{color:var(--text-bright)}.callout-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:6px;color:var(--muted)}.callout.key .callout-label{color:var(--accent)}.callout.warn .callout-label{color:var(--amber)}.equation-box{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px 24px;margin:28px 0;overflow-x:auto}.equation-box .katex-display{margin:0}.quiz-wrap{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin:36px 0}.quiz-q{padding:20px 20px 16px;border-bottom:1px solid var(--border);font-size:15px;color:var(--text-bright);background:var(--surface);line-height:1.55}.quiz-options{background:var(--bg);padding:12px;display:flex;flex-direction:column;gap:6px}.quiz-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r);background:transparent;color:var(--text);text-align:left;font-size:14.5px;width:100%;transition:border-color .12s,background .12s}.quiz-opt:not(:disabled):hover{border-color:var(--border-hover);background:var(--surface)}.quiz-opt .marker{width:22px;height:22px;border-radius:5px;border:1px solid var(--border);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--muted);flex:none}.quiz-opt.correct{border-color:rgba(52,211,153,.4);background:rgba(52,211,153,.07)}.quiz-opt.correct .marker{background:var(--green);border-color:var(--green);color:#0a1a12}.quiz-opt.wrong{border-color:rgba(251,113,133,.35);background:rgba(251,113,133,.07)}.quiz-opt.wrong .marker{background:var(--rose);border-color:var(--rose);color:#1a0408}.quiz-feedback{padding:14px 20px;font-size:14px;border-top:1px solid var(--border);color:var(--text);background:var(--surface);line-height:1.55}.quiz-retry{background:none;border:none;color:var(--accent);font-size:13px;margin-top:8px;padding:0}.steps-wrap{margin:32px 0}.steps-trigger{background:none;border:1px solid var(--border);color:var(--text-bright);padding:11px 18px;border-radius:var(--r);font-size:14px;font-weight:500;transition:border-color .12s}.steps-trigger:hover{border-color:var(--border-hover)}.steps-hint{background:none;border:1px solid var(--border);color:var(--muted);padding:9px 18px;border-radius:var(--r);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .12s,color .12s}.steps-hint:hover{border-color:var(--border-hover);color:var(--text-bright)}.steps-hint-text{font-size:13.5px;color:var(--muted);padding:10px 14px;border-left:2px solid var(--border);margin-bottom:14px;font-style:italic}.steps-hint-text .katex-display{display:block;margin:8px 0;font-style:normal}.steps-hint-text .katex{font-style:normal}.steps-list{display:flex;flex-direction:column;gap:0;border-left:1px solid var(--border);margin-left:10px;padding-left:0}.step-item{display:grid;grid-template-columns:42px 1fr;grid-gap:0;gap:0;margin-bottom:4px}.step-num{padding-top:14px;font-size:11px;color:var(--muted);text-align:right;padding-right:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.step-body{padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);margin-bottom:6px;font-size:15px}.step-body p{margin:6px 0 0;color:var(--text);font-size:15px}.step-body p:first-child{margin-top:0}.step-body .katex-display{margin:10px 0 0}.step-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);margin-bottom:8px}.steps-next{background:none;border:1px solid var(--border);color:var(--text-bright);padding:9px 16px;border-radius:var(--r);font-size:13.5px;font-weight:500;margin-top:10px;margin-left:42px;transition:border-color .12s}.steps-next:hover{border-color:var(--border-hover)}.steps-done{margin-top:10px;margin-left:42px;font-size:13px;color:var(--green)}.step-body{will-change:opacity,transform}.step-item .step-num{animation:stepNumIn .46s ease both}.step-item .step-body{animation:stepBodyIn .5s cubic-bezier(.22,.61,.36,1) both}.step-item .step-label{animation:stepLabelIn .34s ease both}.step-ink{animation:stepInkIn .55s ease .09s both}@keyframes stepNumIn{0%{opacity:0;transform:scale(.55);color:var(--accent)}55%{opacity:1;transform:scale(1);color:var(--accent)}to{opacity:1;transform:scale(1);color:var(--muted)}}@keyframes stepBodyIn{0%{opacity:0;transform:translateY(7px);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}55%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(0);border-color:var(--border);box-shadow:0 0 0 0 rgba(0,0,0,0)}}@keyframes stepLabelIn{0%{opacity:0;transform:translateX(-3px)}to{opacity:1;transform:translateX(0)}}@keyframes stepInkIn{0%{opacity:0;filter:blur(1.6px)}to{opacity:1;filter:blur(0)}}@media (prefers-reduced-motion:reduce){.step-ink,.step-item .step-body,.step-item .step-label,.step-item .step-num{animation:none}}.optional-wrap{margin:28px 0 36px}.optional-trigger{background:none;border:1px solid var(--border);color:var(--muted);padding:11px 18px;border-radius:var(--r);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .12s,color .12s}.optional-trigger:hover{border-color:var(--border-hover);color:var(--text-bright)}.optional-open{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.optional-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface-2)}.optional-label{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.optional-collapse{background:none;border:none;color:var(--muted);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:var(--r);transition:color .12s}.optional-collapse:hover{color:var(--text-bright)}.optional-body{padding:18px 16px 8px}.optional-body>h2:first-child,.optional-body>h3:first-child{margin-top:0}.sim-wrap{background:var(--sim-bg);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin:32px 0}.sim-intro-envelope:not(.sim-intro-controls-ready) .sim-intro-controls-zone{opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .4s ease,transform .4s ease}.sim-intro-envelope.sim-intro-controls-ready .sim-intro-controls-zone{opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .4s ease,transform .4s ease}.sim-katex-hud{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 20px);padding:.4em .55em;box-sizing:border-box;line-height:normal;overflow:visible}.sim-katex-hud .katex{color:inherit;font-size:1em;line-height:normal}.sim-katex-hud .katex .katex-html{overflow:visible}.sim-loading{height:300px;display:grid;place-items:center;font-size:13px;color:var(--muted)}.sim-load-error{padding:24px 28px;margin:32px 0;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--sim-bg)}.sim-load-error-text{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--muted)}.sim-load-error-actions{display:flex;gap:10px;flex-wrap:wrap}.sim-load-retry{font:inherit;font-size:13px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.sim-load-retry:hover{border-color:var(--accent);color:var(--accent)}.sim-canvas{display:block;width:100%}.sim-bar{padding:14px 18px;border-top:1px solid var(--border);display:flex;align-items:center;gap:14px;background:var(--surface)}.sim-play{background:none;border:1px solid var(--border);color:var(--text);width:32px;height:32px;border-radius:var(--r);font-size:13px;display:grid;place-items:center;transition:border-color .12s;flex:none}.sim-play:hover{border-color:var(--border-hover)}.sim-slider-wrap{flex:1 1;display:flex;align-items:center;gap:10px}.sim-slider-label{font-size:12px;color:var(--muted);white-space:nowrap}.sim-slider-val{font-size:12px;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:36px;text-align:right;white-space:nowrap}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:99px;background:var(--border);flex:1 1;outline:none;min-width:80px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent);border:3px solid var(--slider-ring);box-shadow:0 0 0 1px var(--accent);cursor:pointer}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:3px solid var(--slider-ring);cursor:pointer}.sim-stat{font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sim-stat b{color:var(--text)}.region-plot{margin:32px 0;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--sim-bg)}.region-plot svg{display:block;width:100%;height:auto}@media (max-width:860px){.reader{grid-template-columns:1fr}.sidebar{position:relative;height:auto;border-right:none;border-bottom:1px solid var(--border);flex-direction:row;flex-wrap:wrap;align-items:center;gap:0;padding:16px 20px}.sidebar-book{display:none}.sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:4px}.sidebar-link{padding:5px 10px;font-size:12.5px}.reader-main{padding:32px 20px 80px}}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}.filter-btn{padding:6px 14px;border-radius:99px;border:1.5px solid var(--border);background:var(--surface);color:var(--muted);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s;font-family:var(--font)}.filter-btn:hover{border-color:var(--border-hover);color:var(--text)}.filter-btn.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.curr-tag{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.03em;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--curr-color) 12%,transparent);color:var(--curr-color);border:1px solid color-mix(in srgb,var(--curr-color) 25%,transparent);line-height:1.4}.curr-tag-active{background:color-mix(in srgb,var(--curr-color) 20%,transparent)}.topic-chapter-count{font-size:12px;color:var(--muted);margin:4px 0 0}.chapter-stub{opacity:.55}.chapter-stub .chapter-index-arrow{color:var(--muted)}.curriculum-list{display:flex;flex-direction:column;gap:36px}.curr-unit-header{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;padding-bottom:8px;border-bottom:1.5px solid var(--border)}.curr-unit-title{font-size:15px;font-weight:700;color:var(--text-bright);letter-spacing:-.01em}.curr-unit-count{font-size:12px;color:var(--muted);font-weight:400}.curr-chapter-list{display:flex;flex-direction:column;gap:2px}.curr-chapter-item{display:flex;align-items:center;gap:14px;padding:11px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);transition:border-color .13s,transform .13s;text-decoration:none}.curr-chapter-item:hover{border-color:var(--accent-border);transform:translateX(3px)}.curr-chapter-idx{font-size:11px;font-weight:700;color:var(--accent);min-width:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.curr-chapter-name{font-size:14px;color:var(--text-bright);font-weight:500;flex:1 1;min-width:0}.curr-chapter-topic{font-size:11.5px;color:var(--muted);flex-shrink:0;white-space:nowrap}.curr-chapter-arrow{font-size:13px;color:var(--muted);transition:transform .13s,color .13s;flex-shrink:0}.curr-chapter-item:hover .curr-chapter-arrow{color:var(--accent);transform:translateX(2px)}.coming-soon-note{color:var(--muted);font-size:15px;margin-top:12px}.stub-page{padding:24px 0 48px}.stub-eyebrow{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500;margin:0 0 12px}.stub-title{font-size:28px;font-weight:700;color:var(--text-bright);margin:0 0 20px;line-height:1.25}.stub-body{font-size:16px;color:var(--muted);margin:0 0 16px}.stub-curr{font-size:13px;color:var(--muted)}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .3s ease}@keyframes writeOn{0%{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0)}to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.write-on{animation:writeOn .7s cubic-bezier(.4,0,.2,1) forwards}.ink-stroke-overlay{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes labelFadeIn{0%{opacity:0}to{opacity:1}}@keyframes morphRemovePop{0%{transform:scale(1);opacity:1}30%{transform:scale(1.07);opacity:1}50%{transform:scale(1.06);opacity:1}to{transform:scale(1.02);opacity:0}}.tutor-tip{position:fixed;z-index:60;transform:translate(-50%,calc(-100% - 10px));background:var(--surface);border:1px solid var(--border-hover);border-radius:10px;box-shadow:var(--shadow-lg);padding:4px;animation:fadeUp .14s ease}.tutor-tip-btn{display:inline-flex;align-items:center;gap:7px;background:var(--accent);color:#fff;border:none;border-radius:7px;padding:7px 13px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.tutor-tip-btn:hover{filter:brightness(1.06)}.tutor-tip-q{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:rgba(255,255,255,.22);font-size:11px;font-weight:700}.tutor-tip-form{display:flex;gap:5px;align-items:center}.tutor-tip-input{width:220px;background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:8px 11px;font-size:13.5px;font-family:inherit;color:var(--text-bright);outline:none}.tutor-tip-input:focus{border-color:var(--accent)}.tutor-tip-send{background:var(--accent);color:#fff;border:none;border-radius:7px;padding:8px 13px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.tutor-tip-send:disabled{opacity:.5;cursor:default}.tutor-mount{display:block}.tutor-card{position:relative;margin:14px 0;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--accent-border);box-shadow:var(--shadow);overflow:hidden}.tutor-card-x{position:absolute;top:8px;right:10px;background:none;border:none;color:var(--muted);font-size:12px;cursor:pointer;padding:3px 5px;line-height:1;border-radius:4px}.tutor-card-x:hover{color:var(--text-bright);background:var(--surface-2)}.tutor-card-body{padding:13px 38px 13px 14px}.tutor-status-row{display:flex;flex-direction:column;gap:8px}.tutor-status-line{display:flex;align-items:center;gap:8px}.tutor-status-text{font-size:13px;color:var(--muted);flex:1 1}.tutor-spinner-sm{width:13px;height:13px;flex-shrink:0;border:2px solid var(--accent-border);border-top-color:var(--accent);border-radius:50%;animation:tutorSpin .8s linear infinite}@keyframes tutorSpin{to{transform:rotate(1turn)}}.tutor-bar{height:4px;border-radius:2px;background:var(--surface-2);overflow:hidden}.tutor-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--violet));transition:width .3s ease}.tutor-explanation{font-size:14px;line-height:1.65;color:var(--text)}.tutor-explanation .katex{font-size:1em}.tutor-explanation .katex-display{margin:6px 0;overflow-x:auto}.tutor-partial{opacity:.88}.mathtext-p{margin:0 0 8px}.mathtext-p:last-child{margin-bottom:0}.mathtext-block{display:block;margin:6px 0;text-align:center}.tutor-card-foot{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.tutor-card-foot--done{margin-top:10px}.tutor-gotit{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-border);border-radius:6px;padding:5px 12px;font-size:12.5px;font-weight:600;font-family:inherit;cursor:pointer}.tutor-gotit:hover{background:var(--accent);color:#fff}.tutor-cancel-btn{background:none;border:none;color:var(--muted);font-size:12.5px;font-family:inherit;cursor:pointer;padding:0}.tutor-cancel-btn:hover{color:var(--text)}.tutor-disclaimer{font-size:11px;color:var(--muted)}.tutor-note{font-size:13.5px;color:var(--text);line-height:1.55;margin:0}.tutor-note-err{color:var(--rose)}.tutor-card-scroll{padding-bottom:10px}.tutor-turn{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.tutor-turn--first{margin-top:0;padding-top:0;border-top:none}.tutor-turn-q{font-size:13px;font-weight:600;color:var(--text-bright);margin-bottom:8px;line-height:1.4}.tutor-composer{display:flex;gap:6px;align-items:center;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface-2)}.tutor-composer-input{flex:1 1;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-size:13.5px;font-family:inherit;color:var(--text-bright);outline:none}.tutor-composer-input:focus{border-color:var(--accent)}.tutor-composer-input:disabled{opacity:.6;cursor:default}.tutor-composer-send{flex-shrink:0;background:var(--accent);color:#fff;border:none;border-radius:8px;width:34px;height:34px;font-size:16px;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.tutor-composer-send:disabled{opacity:.45;cursor:default}.tutor-bar--inline{margin-top:6px}.tutor-margin-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin:6px 0;border-radius:6px;border:1px solid var(--accent-border);background:var(--accent-dim);color:var(--accent);font-size:13px;cursor:pointer}.tutor-margin-mark:hover{background:var(--accent);color:#fff}[data-anchor]{scroll-margin-top:24px}.lessonmap{border:1px solid var(--accent-border);background:var(--accent-dim);border-radius:var(--r-lg);padding:16px 18px;margin:28px 0}.lessonmap-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.lessonmap-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;counter-reset:lm}.lessonmap-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:none;border:none;border-radius:var(--r);padding:9px 10px;cursor:pointer;color:var(--text);font-size:14.5px;font-family:inherit;transition:background .12s,color .12s}.lessonmap-row.is-active,.lessonmap-row:hover{background:var(--surface);color:var(--text-bright)}.lessonmap-q{display:flex;align-items:baseline;gap:8px}.lessonmap-q:before{counter-increment:lm;content:counter(lm);flex-shrink:0;font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:5px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}.lessonmap-go{color:var(--muted);flex-shrink:0;transition:transform .12s}.lessonmap-row:hover .lessonmap-go{transform:translateX(3px);color:var(--accent)}.predict{border:1px solid rgba(124,58,237,.3);background:rgba(124,58,237,.05);border-radius:var(--r-lg);padding:16px 18px;margin:24px 0}.predict-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--violet);margin-bottom:8px}.predict-q{font-size:15px;font-weight:600;color:var(--text-bright);margin-bottom:12px}.predict-options{display:flex;flex-wrap:wrap;gap:8px}.predict-opt{flex:1 1 auto;min-width:120px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:10px 14px;font-size:14px;font-family:inherit;color:var(--text);cursor:pointer;transition:border-color .12s,background .12s}.predict-opt:hover:not(:disabled){border-color:var(--violet)}.predict-opt:disabled{cursor:default}.predict-opt.is-correct{border-color:var(--green);background:rgba(5,150,105,.1);color:var(--text-bright);font-weight:600}.predict-opt.is-wrong{border-color:var(--rose);background:rgba(225,29,72,.08)}.predict-feedback{margin-top:12px;font-size:14px;color:var(--text);line-height:1.5}.selfcheck{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0 4px;padding:10px 12px;border:1px dashed var(--border);border-radius:var(--r)}.selfcheck-q{font-size:13px;color:var(--muted)}.selfcheck-btns{display:flex;gap:6px}.selfcheck-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:5px 12px;font-size:12.5px;font-family:inherit;font-weight:500;color:var(--text);cursor:pointer;transition:border-color .12s,background .12s,color .12s}.selfcheck-btn.got.is-on,.selfcheck-btn.got:hover{border-color:var(--green);background:rgba(5,150,105,.1);color:var(--green)}.selfcheck-btn.review.is-on,.selfcheck-btn.review:hover{border-color:var(--amber);background:rgba(217,119,6,.08);color:var(--amber)}.selfcheck-note{font-size:12.5px}.selfcheck-note.ok{color:var(--green)}.selfcheck-note.flag{color:var(--amber)}.term-wrap{position:relative;display:inline}.term-trigger{background:none;border:none;padding:0;font:inherit;color:var(--accent);cursor:pointer;border-bottom:1.5px dotted var(--accent-border);transition:border-color .12s}.term-trigger.is-open,.term-trigger:hover{border-bottom-color:var(--accent)}.term-backdrop{position:fixed;inset:0;z-index:40}.term-pop{position:absolute;z-index:41;top:calc(100% + 8px);left:0;width:max-content;max-width:300px;background:var(--surface);border:1px solid var(--border-hover);border-radius:var(--r);box-shadow:var(--shadow-lg);padding:10px 12px;display:block;white-space:normal}.term-pop-label{display:block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.term-pop-body{display:block;font-size:13.5px;line-height:1.5;color:var(--text)}.study-guide-entry{border-color:var(--accent-border);background:var(--accent-dim)}.study-guide-entry:hover{border-color:var(--accent);background:var(--accent-dim)}.sg-icon{color:var(--accent);font-size:14px}.sidebar-study-guide-wrap{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.sidebar-study-guide-link{font-weight:500;color:var(--accent)}.sidebar-study-guide-link.active,.sidebar-study-guide-link:hover{color:var(--accent);background:var(--accent-dim)}.sidebar-study-guide-link.active{border-left-color:var(--accent)}.sg-page{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg);background-image:linear-gradient(var(--sg-grid-line,rgba(99,102,241,.05)) 1px,transparent 1px),linear-gradient(90deg,var(--sg-grid-line,rgba(99,102,241,.05)) 1px,transparent 1px);background-size:24px 24px}html.dark .sg-page{--sg-grid-line:rgba(129,140,248,0.06)}.sg-header{display:flex;align-items:center;gap:12px;padding:0 16px;height:40px;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:10}.sg-back{font-size:12px;color:var(--muted);transition:color .12s;white-space:nowrap}.sg-back:hover{color:var(--accent)}.sg-header-label{font-size:13px;font-weight:700;color:var(--text-bright);letter-spacing:-.2px}.sg-header-book{font-size:11px;color:var(--muted);margin-left:auto}.sg-body{padding:.75em .875em;font-size:clamp(16px,2vw,28px);--sg-text:1.28em}.sg-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.65em;gap:.65em;align-items:start}.sg-col{gap:.7em;min-width:0;container-type:inline-size}.sg-col,.sg-section{display:flex;flex-direction:column}.sg-section{gap:.55em;font-size:clamp(15px,6.4cqi,28px)}.sg-section-title{display:block;font-size:.88em;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--sgc-hue,var(--accent));background:var(--sgc-label,var(--accent-dim));padding:.42em .75em;border-left:3px solid var(--sgc-hue,var(--accent));border-radius:0 5px 5px 0;margin-bottom:.18em}.sg-concept{border:1px solid var(--sgc-border,var(--border));border-left:3px solid var(--sgc-hue,var(--accent));border-radius:6px;background:var(--surface);padding:.95em 1.1em;position:relative;overflow:hidden}.sg-concept:before{content:"";position:absolute;inset:0;background:var(--sgc-bg,transparent);pointer-events:none}.sg-concept-header{display:flex;align-items:baseline;gap:.44em;margin-bottom:.28em;flex-wrap:wrap;position:relative}.sg-concept-name{font-size:1.22em;font-weight:700;color:var(--sgc-hue,var(--text-bright));line-height:1.2}.sg-concept-link{text-decoration:underline;-webkit-text-decoration-color:var(--sgc-hue,var(--accent));text-decoration-color:var(--sgc-hue,var(--accent));text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer}.sg-concept-link:hover{color:var(--sgc-hue,var(--accent));text-decoration-thickness:2.5px}.sg-concept-note{font-size:.85em;color:var(--muted);font-style:italic;line-height:1.2}.sg-concept-body{font-size:var(--sg-text);line-height:1.45;color:var(--text-bright);position:relative}.sg-concept-body p{margin:0 0 .35em;font-size:1em;color:inherit}.sg-concept-body p:last-child{margin-bottom:0}.sg-concept-body strong{color:var(--text-bright);font-weight:600;font-size:1em}.sg-concept-body .sg-composition-body,.sg-concept-body .sg-epsilon-body,.sg-concept-body .sg-formula-stack:not(.sg-graph-text),.sg-concept-body .sg-itv-text,.sg-concept-body .sg-squeeze-text{font-size:1em;color:var(--text-bright);line-height:1.45}.sg-concept-body .sg-graph-text{font-size:1em;color:var(--sg-graph-hue,var(--text-bright));line-height:1.45}.sg-page .sg-concept-body .sg-graph-text .katex,.sg-page .sg-concept-body .sg-graph-text .katex-display>.katex{color:inherit}.sg-page .sg-concept-body .katex-display{margin:.2em 0;overflow-x:auto;text-align:left;font-size:1em}.sg-page .sg-concept-body .katex,.sg-page .sg-concept-body .katex-display>.katex{font-size:1em;color:inherit}.sg-split{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);grid-gap:.85em;gap:.85em;align-items:center;padding-top:.25em}.sg-viz{width:100%;position:relative}.sg-viz>svg{display:block;width:100%;height:100%}.sg-viz--std{aspect-ratio:252/98}.sg-viz--split-graph{aspect-ratio:150/105;min-height:6.5em}.sg-viz--pipeline{aspect-ratio:252/65;min-height:4.5em}.sg-viz--compact{width:76%;margin:0 auto;aspect-ratio:1.35/1}.sg-continuity{display:flex;flex-direction:column;align-items:center;gap:.4em;padding-top:.15em}.sg-viz--continuity{width:68%;margin:0 auto;aspect-ratio:252/115}.sg-viz--itv{width:100%;margin:0;aspect-ratio:252/118}.sg-split--itv{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1em;align-items:center}.sg-split--itv .sg-itv-text,.sg-split--itv .sg-itv-text .katex{color:var(--text-bright)}.sg-split--itv .sg-formula-stack{gap:.35em;justify-content:center}.sg-split--itv .sg-formula-stack p{margin:0}.sg-split--theorem{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:.95em;align-items:center}.sg-viz--composition{width:100%;aspect-ratio:252/52;max-height:4.2em}.sg-composition{display:flex;flex-direction:column;gap:.65em}.sg-composition-body{display:flex;flex-direction:column;gap:.35em;line-height:1.45;color:var(--text-bright)}.sg-composition-body p{margin:0}.sg-viz--epsilon{width:72%;margin:0 auto;aspect-ratio:252/140;max-height:9em}.sg-epsilon{gap:.7em}.sg-epsilon,.sg-epsilon-body{display:flex;flex-direction:column}.sg-epsilon-body{gap:.35em;line-height:1.45;color:var(--text-bright)}.sg-epsilon-body p{margin:0}.sg-epsilon-body .katex-display{margin:0;text-align:left;overflow-x:auto}.sg-epsilon-body strong{font-weight:700;color:var(--text-bright)}.sg-squeeze{display:flex;flex-direction:column;gap:.45em;align-items:stretch}.sg-squeeze .sg-squeeze-text,.sg-squeeze .sg-squeeze-text .katex{color:var(--text-bright)}.sg-squeeze .sg-formula-stack{gap:.3em;font-size:1em;color:var(--text-bright)}.sg-viz--squeeze{width:78%;margin:0 auto;aspect-ratio:252/98;max-height:6.5em}.sg-split--limit{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65em;align-items:start;padding-top:0}.sg-viz--limit{width:100%;aspect-ratio:252/96}.sg-split--asymptote .sg-formula-stack,.sg-split--asymptote .sg-graph-text,.sg-split--limit .sg-formula-stack,.sg-split--limit .sg-graph-text,.sg-split--theorem .sg-formula-stack{gap:.35em;justify-content:flex-start;padding-top:.1em;font-size:1em}.sg-split--asymptote .sg-formula-stack,.sg-split--asymptote .sg-graph-text{justify-content:center}.sg-formula-stack{display:flex;flex-direction:column;gap:.35em;min-width:0;color:var(--text-bright);line-height:1.45}.sg-formula-stack p{margin:0}.sg-formula-stack .katex-display{margin:0;text-align:left;overflow-x:auto}.sg-formula-stack .katex-display .katex{color:inherit}.sg-cc-label{font-family:inherit;font-size:1em;font-weight:800;color:var(--text-bright);text-align:center;line-height:1.45;padding-top:.1em;letter-spacing:.01em}.sg-concept-body table{width:100%;border-collapse:collapse;font-size:.78em;margin:.25em 0 .12em}.sg-concept-body td,.sg-concept-body th{padding:.2em .44em;text-align:left;border-bottom:1px solid var(--border)}.sg-concept-body th{font-weight:700;font-size:.7em;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sg-concept-body tr:last-child td{border-bottom:none}.sg-trap{display:flex;align-items:baseline;gap:.38em;margin-top:.5em;padding:.44em .65em;background:rgba(217,119,6,.07);border:1px solid rgba(217,119,6,.22);border-radius:4px;font-size:1em;line-height:1.45;color:var(--text-bright);position:relative}html.dark .sg-trap{background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.18)}.sg-trap-label{font-size:.68em;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);flex-shrink:0;line-height:1.5}.sg-trap-body{color:var(--text)}.sg-trap-body .katex{font-size:1em}@media (max-width:900px){.sg-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.sg-grid{grid-template-columns:1fr}.sg-split,.sg-split--asymptote,.sg-split--itv,.sg-split--limit,.sg-split--theorem{grid-template-columns:1fr;gap:.5em}.sg-split>.sg-viz{max-width:70%;margin-inline:auto}}.sv-play-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,rgba(99,102,241,.16),rgba(99,102,241,.08));border:1.5px solid rgba(99,102,241,.38);color:#818cf8;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .22s,transform .15s,color .2s;flex-shrink:0;font-family:inherit;margin:.5em 0 .8em;position:relative;z-index:1}.sv-play-btn:hover{background:linear-gradient(135deg,rgba(99,102,241,.3),rgba(99,102,241,.18));border-color:rgba(99,102,241,.75);box-shadow:0 0 0 8px rgba(99,102,241,.09),0 0 28px rgba(99,102,241,.32);transform:scale(1.12);color:#c7d2fe}.sv-play-btn:active{transform:scale(.94)}.sv-play-btn-loading,.sv-play-btn:disabled{cursor:wait;opacity:.85}.sv-play-btn-loading:hover{transform:none}.sv-play-spinner{display:block;width:14px;height:14px;border:2px solid rgba(129,140,248,.25);border-top-color:#818cf8;border-radius:50%;animation:sv-spin .7s linear infinite}@keyframes sv-spin{to{transform:rotate(1turn)}}.sv-modal{position:fixed;z-index:9000}.sv-modal,.sv-shell{inset:0;background:#050508}.sv-shell{position:absolute;display:flex;flex-direction:column;animation:sv-zoom-in .46s cubic-bezier(.16,1,.3,1) forwards;overflow:hidden}.sv-closing .sv-shell{animation:sv-zoom-out .3s cubic-bezier(.55,0,.85,.15) forwards}@keyframes sv-zoom-in{0%{transform:translate(var(--sv-dx,0),var(--sv-dy,0)) scale(.02);opacity:0}45%{opacity:1}to{transform:translate(0) scale(1);opacity:1}}@keyframes sv-zoom-out{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--sv-dx,0),var(--sv-dy,0)) scale(.02);opacity:0}}.sv-stage-wrap{flex:1 1;min-height:0;display:flex;align-items:center;justify-content:center}.sv-stage-canvas,.sv-stage-wrap{overflow:hidden;background:#090914}.sv-stage-canvas{flex-shrink:0;position:relative;background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 0);background-size:64px 64px;transform-origin:center center}.sv-modal .vid-math .katex-display{text-align:left}.sv-modal .vid-math .hl-L,.sv-modal .vid-math .hl-bound,.sv-modal .vid-math .hl-cos,.sv-modal .vid-math .hl-f,.sv-modal .vid-math .hl-g,.sv-modal .vid-math .hl-h,.sv-modal .vid-math .hl-lower,.sv-modal .vid-math .hl-one,.sv-modal .vid-math .hl-sin,.sv-modal .vid-math .hl-tan,.sv-modal .vid-math .hl-upper,.sv-modal .vid-math .hl-x,.sv-modal .vid-math .hl-zero{transition:color .28s ease,text-shadow .28s ease}.sv-modal .vid-math.active-hl-g .hl-g,.sv-modal .vid-math.active-hl-h .hl-h{color:#34d399;text-shadow:0 0 14px rgba(52,211,153,.6)}.sv-modal .vid-math.active-hl-f .hl-f{color:#a5b4fc;text-shadow:0 0 14px rgba(165,180,252,.65)}.sv-modal .vid-math.active-hl-L .hl-L{color:#fbbf24;text-shadow:0 0 14px rgba(251,191,36,.65)}.sv-modal .vid-math.active-hl-bound .hl-bound,.sv-modal .vid-math.active-hl-lower .hl-lower,.sv-modal .vid-math.active-hl-upper .hl-upper{color:#34d399;text-shadow:0 0 14px rgba(52,211,153,.55)}.sv-modal .vid-math.active-hl-zero .hl-zero{color:#fb7185;text-shadow:0 0 14px rgba(251,113,133,.55)}.sv-modal .vid-math.active-hl-one .hl-one{color:#e2e8f0;text-shadow:0 0 10px rgba(255,255,255,.45)}.sv-modal .vid-math.active-hl-sin .hl-sin{color:#a5b4fc;text-shadow:0 0 14px rgba(165,180,252,.6)}.sv-modal .vid-math.active-hl-x .hl-x{color:#fbbf24;text-shadow:0 0 14px rgba(251,191,36,.6)}.sv-modal .vid-math.active-hl-cos .hl-cos,.sv-modal .vid-math.active-hl-tan .hl-tan{color:#34d399;text-shadow:0 0 14px rgba(52,211,153,.55)}.sv-modal .vid-math{position:relative}.sv-modal .vp-plot-compact{position:absolute;left:0;right:0;top:0;height:64%;z-index:1}.sv-modal .vp-equations-compact{left:0;right:0;bottom:0;height:36%;background:#090914;border-top:1px solid rgba(255,255,255,.06);padding:0 60px;overflow:hidden}.sv-modal .vp-equations-compact,.sv-modal .vp-full-compact{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center}.sv-modal .vp-full-compact{inset:0;flex-direction:column;gap:24px}.sv-modal .vp-scene-title{display:none}.sv-modal .morph-tex-host{width:100%;display:flex;align-items:center;justify-content:center}.sv-modal .morph-tex-layer{text-align:center}.sv-modal .vid-math{font-size:1em}.sv-modal .vid-math .katex{color:#f1f5f9}.sv-modal .vid-math .katex-display{margin:0}.sv-modal .vid-math .katex-display .katex{color:#f1f5f9}.sv-modal .morph-tex-out{z-index:10}.sv-modal .morph-tex-in{z-index:1}.sv-modal .vp-note{font-size:13px;color:#94a3b8;font-style:italic}.sv-modal .vp-note-em{font-style:normal;font-weight:500;color:#94a3b8}.sv-modal .vp-pattern-layout{gap:18px}.sv-modal .vp-pattern-box{padding:18px 22px;min-width:150px}.sv-modal .vp-pattern-box-title{font-size:15px}.sv-modal .vp-pattern-eg{font-size:13px}.sv-modal .vp-pattern-bound{font-size:12px}.sv-modal .vp-pattern-op{font-size:32px}.sv-modal .vp-pattern-result{font-size:30px}.sv-modal .vp-pattern-note{font-size:13px;max-width:480px}.sv-modal .vp-vicegrip{margin-top:6px}.sv-modal .vp-frame,.sv-modal .vp-graph{position:absolute;inset:0}.sv-modal .vp-graph{z-index:1}.sv-modal .vp-frame-splitTall .vp-graph{bottom:25%}.sv-modal .vp-eq{position:absolute;left:0;right:0;display:flex;align-items:center;justify-content:center;z-index:3;pointer-events:none;padding:0 48px}.sv-modal .vp-eq-cinema.vp-eq-bottom{bottom:5%}.sv-modal .vp-eq-cinema.vp-eq-top{top:6%}.sv-modal .vp-eq-cinema .morph-tex-host{width:auto;max-width:88%;padding:14px 32px;border-radius:16px;background:rgba(8,8,18,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border:1px solid rgba(255,255,255,.07)}.sv-modal .vp-eq-cinema .vid-math{font-size:1.5em}.sv-modal .vp-eq-splitTall{bottom:0;height:25%;background:#090914;border-top:1px solid rgba(255,255,255,.06)}.sv-modal .vp-eq-splitTall .vid-math{font-size:1.7em}.sv-modal .vp-hero{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 80px;z-index:2}.sv-modal .vp-hero .vid-math{font-size:2.2em}.sv-modal .vp-hero .morph-tex-host{width:100%}.sv-controls{flex-shrink:0;padding:0 20px 10px;background:#090914;border-top:1px solid rgba(255,255,255,.06)}.sv-scrub{position:relative;height:28px;cursor:pointer;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center}.sv-scrub-track{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:3px;background:rgba(255,255,255,.1);border-radius:99px;transition:height .15s ease}.sv-dragging .sv-scrub-track,.sv-scrub:hover .sv-scrub-track{height:5px}.sv-scrub-fill{position:absolute;left:0;top:50%;transform:translateY(-50%);height:3px;background:#fff;border-radius:99px;pointer-events:none;transition:height .15s ease}.sv-dragging .sv-scrub-fill,.sv-scrub:hover .sv-scrub-fill{height:5px}.sv-controls:not(.sv-dragging) .sv-scrub-fill{transition:width .08s linear,height .15s ease}.sv-dragging .sv-scrub-fill{transition:height .15s ease}.sv-scrub-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:0;height:0;border-radius:50%;background:#fff;box-shadow:0 0 12px rgba(255,255,255,.5);pointer-events:none;opacity:0;transition:opacity .15s,width .15s,height .15s}.sv-dragging .sv-scrub-thumb,.sv-scrub:hover .sv-scrub-thumb{opacity:1;width:14px;height:14px}.sv-controls-row{display:flex;align-items:center;gap:4px;height:40px;margin-top:2px}.sv-spacer{flex:1 1}.sv-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:rgba(255,255,255,.75);cursor:pointer;transition:background .15s,color .15s,transform .12s;font-family:inherit}.sv-icon:hover{background:rgba(255,255,255,.1);color:#fff}.sv-icon:active{transform:scale(.92)}.sv-icon-play{width:42px;height:42px;color:#fff;background:rgba(255,255,255,.12)}.sv-icon-play:hover{background:rgba(255,255,255,.2)}.sv-pill{font-size:11px;font-weight:600;letter-spacing:.02em;padding:6px 10px;border:none;border-radius:99px;background:transparent;color:rgba(255,255,255,.45);cursor:pointer;font-family:inherit;transition:background .15s,color .15s}.sv-pill:hover{color:rgba(255,255,255,.8)}.sv-pill.active{background:rgba(255,255,255,.12);color:#fff}.ce-card{margin:32px 0;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--sim-bg);overflow:hidden}.ce-card.ce-pass{border-color:rgba(16,185,129,.55)}.ce-prompt{padding:14px 18px;font-size:14.5px;line-height:1.55;color:var(--text)}.ce-plan,.ce-prompt{border-bottom:1px solid var(--border)}.ce-plan{padding:10px 18px;background:var(--accent-dim)}.ce-plan>summary{cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);list-style:none}.ce-plan>summary::-webkit-details-marker{display:none}.ce-plan>summary:before{content:"▸ "}.ce-plan[open]>summary:before{content:"▾ "}.ce-plan ol{margin:10px 0 4px;padding-left:22px;font-size:13.5px;line-height:1.6;color:var(--text)}.ce-plan ol li{margin:3px 0}.ce-editor{background:#0f172a}.ce-header{display:flex;align-items:center;gap:8px;padding:7px 14px;background:#1e293b}.ce-dots{display:flex;gap:5px}.ce-dots span{width:10px;height:10px;border-radius:50%;opacity:.7}.ce-dots span:first-child{background:#ef4444}.ce-dots span:nth-child(2){background:#f59e0b}.ce-dots span:nth-child(3){background:#10b981}.ce-filename{font-size:11px;color:#64748b;margin-left:4px;font-family:var(--font-mono,monospace)}.ce-mode{margin-left:auto;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#475569}.ce-body{max-height:460px;overflow:auto}.ce-blank{font-family:inherit;font-size:inherit;line-height:inherit;color:#fde68a;background:rgba(245,158,11,.13);border:none;border-bottom:1.5px dashed #f59e0b;border-radius:3px 3px 0 0;padding:0 3px;margin:0 1px;outline:none;box-sizing:content-box;caret-color:#fde68a;transition:background .12s}.ce-blank::placeholder{color:#b45309;opacity:.7}.ce-blank:focus{background:rgba(245,158,11,.22)}.ce-blank[data-empty=true]{background:rgba(239,68,68,.18);border-bottom-color:#ef4444}.ce-actions{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--surface)}.ce-run{font:inherit;font-size:13px;font-weight:700;padding:7px 20px;border-radius:8px;border:none;background:#10b981;color:#fff;cursor:pointer}.ce-run:disabled{opacity:.6;cursor:default}.ce-btn{font:inherit;font-size:13px;padding:7px 14px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.ce-btn:hover{border-color:var(--accent);color:var(--accent)}.ce-reveal{margin-left:auto}.ce-hints{padding:0 18px 8px;background:var(--surface)}.ce-hint{font-size:13.5px;line-height:1.55;color:var(--text);padding:8px 12px;margin-bottom:6px;border-left:2px solid var(--accent);background:var(--accent-dim);border-radius:0 6px 6px 0}.ce-output{background:#020617;border-top:1px solid #1e293b;padding:12px 16px}.ce-out-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#475569;margin:2px 0 4px}.ce-pre{margin:0 0 8px;font-family:var(--font-mono,monospace);font-size:13px;line-height:1.65;color:#86efac;white-space:pre-wrap;word-break:break-word}.ce-pre.ce-err{color:#f87171}.ce-tests{margin-top:4px}.ce-tests-head{font-size:12px;font-weight:700;color:#cbd5e1;margin-bottom:8px}.ce-card.ce-pass .ce-tests-head{color:#34d399}.ce-test{display:flex;align-items:baseline;gap:8px;font-size:13px;line-height:1.5;padding:3px 0}.ce-test-icon{font-weight:700;flex:none}.ce-test.ok .ce-test-icon{color:#34d399}.ce-test.bad .ce-test-icon{color:#f87171}.ce-test-name{color:#cbd5e1;flex:none}.ce-test-msg{color:#fca5a5;font-size:12.5px}.il-test-page{min-height:100vh;max-width:720px;margin:0 auto;padding:48px 24px 120px}.il-test-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:40px}.il-test-lesson-link{font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.il-test-lesson-link:hover{text-decoration:underline}.il-test-header{margin-bottom:48px}.il-test-title{font-size:28px;font-weight:800;letter-spacing:-.5px;color:var(--text-bright);margin-bottom:12px}.il-test-lead{font-size:15px;line-height:1.65;color:var(--muted);max-width:560px}.il-test-lead code{font-size:13px;padding:2px 6px;border-radius:4px;background:var(--surface);border:1px solid var(--border)}.il-test-section{margin-bottom:56px}.il-test-section-spaced{margin-bottom:0}.il-test-section-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.il-test-badge{flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;border-radius:8px;font-size:13px;font-weight:800;color:var(--accent);background:var(--surface);border:1px solid var(--border)}.il-test-section-title{font-size:18px;font-weight:700;color:var(--text-bright);margin-bottom:6px;letter-spacing:-.2px}.il-test-section-desc{font-size:14px;line-height:1.6;color:var(--muted);max-width:520px}.il-draw-wrap{position:relative}.il-draw-sliders{display:flex;gap:16px;padding:4px 16px 10px;align-items:center}.il-draw-slider-col{flex:1 1}.il-draw-slider-label{font-size:10px;margin-bottom:2px;font-weight:600}.il-draw-slider-label-left{color:#6366f1}.il-draw-slider-label-right{color:#10b981}.il-draw-hint{position:absolute;bottom:52px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:600;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 12px;pointer-events:none;white-space:nowrap}.il-test-scroll-pad{min-height:55vh;display:flex;align-items:flex-end;padding-bottom:32px}.il-test-scroll-pad-bottom{min-height:40vh;align-items:flex-start;padding-top:32px;padding-bottom:0}.il-test-filler{font-size:14px;line-height:1.65;color:var(--muted);max-width:480px}.il-draw-scroll-target{scroll-margin-top:24px}.il-test-config-note{font-size:11px;color:var(--muted);padding:0 16px 10px;margin:0}@media (max-width:520px){[data-manim-film] .manim-film-header{flex-wrap:nowrap!important;padding-right:58px!important}[data-manim-film] .manim-active-section{display:none}}:root{--lm-ease:cubic-bezier(0.16,1,0.3,1);--lm-ease-io:cubic-bezier(0.87,0,0.13,1);--lm-board:#0a0a0f;--lm-turn:1100ms}.lm-home{--lm-page-gutter:clamp(24px,4vw,72px);max-width:none;padding:0 0 120px;overflow-x:clip}.lm-home .library-sections{width:100%;max-width:1120px;margin:0 auto;padding:40px 32px 0}.lm-home .library-shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,280px));justify-content:space-between;grid-gap:44px 40px;gap:44px 40px}.lm-home .library-book{width:100%}.lm-home .book-cover{width:100%;height:auto;aspect-ratio:180/260;padding:9% 8%}.lm-home .book-cover-title{font-size:clamp(18px,1.55vw,22px)}.lm-home .book-cover-subject{font-size:10px}.lm-hero{position:relative;width:100%;min-height:78vh;max-width:none;margin:0;padding:72px var(--lm-page-gutter) 32px;display:grid;grid-template-columns:minmax(0,60fr) minmax(0,40fr);grid-gap:64px;gap:64px;align-items:center;overflow:visible}.lm-hero-glow{position:absolute;inset:-10% -20% auto -20%;height:120%;pointer-events:none;z-index:0;background:radial-gradient(60% 60% at 35% 45%,rgba(99,102,241,.14),transparent 70%),radial-gradient(40% 50% at 82% 30%,rgba(219,39,119,.07),transparent 70%);filter:blur(10px)}html.dark .lm-hero-glow{background:radial-gradient(60% 60% at 35% 45%,rgba(129,140,248,.16),transparent 70%),radial-gradient(40% 50% at 82% 30%,rgba(244,114,182,.08),transparent 70%)}.lm-hero-left,.lm-hero-right{position:relative;z-index:1;min-width:0}.lm-hero-right{display:flex;align-items:center;justify-content:flex-end}.lm-mark{font-family:var(--font-mark),"Unbounded",sans-serif;font-weight:800;font-size:clamp(64px,9.6vw,158px);letter-spacing:-.035em;line-height:.95;color:var(--text-bright);margin:0;display:flex;white-space:nowrap}.lm-mark span{display:inline-block;font-variation-settings:"wght" 800;transition:font-variation-settings .7s var(--lm-ease),transform .7s var(--lm-ease);animation:lm-rise 1.1s var(--lm-ease) both;animation-delay:calc(.14s + var(--i) * 55ms)}.lm-mark:hover span{font-variation-settings:"wght" 500}.lm-mark span:hover{font-variation-settings:"wght" 800;transform:translateY(-3%)}@keyframes lm-rise{0%{opacity:0;transform:translateY(.45em) rotate(1.5deg);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}.lm-tile{position:relative;aspect-ratio:16/9;border-radius:22px;padding:6px;background:rgba(17,24,39,.06);box-shadow:0 0 0 1px rgba(17,24,39,.06);transform-origin:0 0}html.dark .lm-tile{background:rgba(255,255,255,.05);box-shadow:0 0 0 1px rgba(255,255,255,.07)}.lm-tile-core{position:absolute;inset:6px;border-radius:16px;overflow:hidden;background:var(--lm-board);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.lm-tile.interactive .lm-tile-core,.lm-tile.live .lm-tile-core{background:#f8fafc}.lm-tile .live-canvas,.lm-tile video{object-fit:cover;touch-action:none}.lm-tile .live-canvas,.lm-tile iframe,.lm-tile video{position:absolute;inset:0;width:100%;height:100%;display:block}.lm-tile iframe{border:0;pointer-events:none;background:#f8fafc}.lm-tile .live-canvas{cursor:ew-resize}.lm-tile:not(.is-active) .lm-tile-core:after{content:"";position:absolute;inset:0;background:rgba(10,10,15,.18);transition:opacity .6s var(--lm-ease)}.lm-tile.live:not(.is-active) .lm-tile-core:after{background:rgba(244,243,255,.35)}.lm-tile.is-active .lm-tile-core:after{opacity:0}.lm-wheel{position:relative;width:100%;aspect-ratio:16/13.8}.lm-wheel .lm-tile{position:absolute;left:0;top:0;width:100%;transition:transform var(--lm-turn) var(--lm-ease),box-shadow var(--lm-turn) var(--lm-ease),opacity .6s var(--lm-ease);animation:lm-tile-in 1.2s var(--lm-ease) both;animation-delay:var(--d,0s)}@keyframes lm-tile-in{0%{opacity:0;translate:0 28px}to{opacity:1;translate:0 0}}.lm-hero.reduced .lm-wheel .lm-tile{animation:none}.lm-wheel .slot-front{transform:translate(0) scale(1);z-index:3}.lm-wheel .slot-left{transform:translateY(calc(100% + 18px)) scale(.485);z-index:2}.lm-wheel .slot-right{transform:translate(51.5%,calc(100% + 18px)) scale(.485);z-index:1}.lm-wheel .slot-hidden{transform:translate(103%,calc(100% + 18px)) scale(.485);opacity:0!important;visibility:hidden;pointer-events:none;z-index:0;transition:transform var(--lm-turn) var(--lm-ease),opacity .6s var(--lm-ease),visibility 0s .6s}.lm-hero-ribbon,.lm-hero-ring{display:block;padding-bottom:24px}.lm-hero-ribbon .lm-mark,.lm-hero-ring .lm-mark{justify-content:center;margin-bottom:36px}.lm-ring-scene{perspective:1600px;height:440px;position:relative;z-index:1}.lm-ring{left:50%;top:0;margin-left:-380px;height:428px;transform-style:preserve-3d}.lm-ring,.lm-ring .lm-tile{position:absolute;width:760px}.lm-ring .lm-tile{inset:0;transform-origin:50% 50%;transition:transform 1.3s var(--lm-ease-io),opacity .9s var(--lm-ease)}.lm-ribbon{--lm-ribbon-tile:43vw;overflow:hidden;margin:0 calc(-1 * var(--lm-page-gutter))}.lm-ribbon-track{display:flex;gap:22px;width:max-content;animation:lm-drift 70s linear infinite;padding:8px 0 24px}.lm-ribbon-track .lm-tile{width:var(--lm-ribbon-tile);flex:0 0 auto}@keyframes lm-drift{to{transform:translateX(-50%)}}.lm-ribbon-track.lm-js{animation:none;margin-left:calc(100% - var(--lm-ribbon-tile) - var(--lm-ribbon-tile) - var(--lm-ribbon-tile) - 44px)}.lm-stage{position:relative;aspect-ratio:16/9}.lm-stage .lm-tile{position:absolute;inset:0;opacity:0;transition:opacity 1.2s var(--lm-ease)}.lm-stage .lm-tile.is-front{opacity:1;z-index:2}.lm-variants{position:fixed;right:16px;bottom:16px;z-index:40;display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.lm-variants a{font-size:12px;font-weight:600;color:var(--muted);padding:7px 12px;border-radius:999px}.lm-variants a.on{color:var(--accent);background:var(--accent-dim)}.lm-hero.reduced .lm-mark span,.lm-hero.reduced .lm-ribbon-track{animation:none}@media (prefers-reduced-motion:reduce){.lm-mark span,.lm-ribbon-track{animation:none}}@media (max-width:960px){.lm-hero{grid-template-columns:1fr;padding:56px var(--lm-page-gutter) 24px;gap:28px;min-height:0}.lm-hero-right{justify-content:flex-start;order:-1}.lm-mark{font-size:clamp(60px,17vw,120px)}.lm-home .library-sections{padding:64px var(--lm-page-gutter) 0}.lm-ring{margin-left:-44vw;height:calc(88vw * 9 / 16)}.lm-ring,.lm-ring .lm-tile{width:88vw}.lm-ring-scene{height:calc(88vw * 9 / 16 + 40px)}}.cover-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .26s var(--lm-ease)}.library-book:focus-visible .cover-motion,.library-book:hover .cover-motion{opacity:1}.library-book:focus-visible .cover-static,.library-book:hover .cover-static{opacity:0}.cover-static{transition:opacity .26s var(--lm-ease)}@media (prefers-reduced-motion:reduce){.cover-motion{display:none}.library-book:hover .cover-static{opacity:1}}.cover-static{position:absolute;inset:0}.cover-static .book-cover-bg{position:absolute;inset:0;width:100%;height:100%}.cm-step{opacity:0;animation:cm-step 3.2s step-end infinite}.cm-s1{animation-delay:0s}.cm-s2{animation-delay:-2.4s}.cm-s3{animation-delay:-1.6s}.cm-s4{animation-delay:-.8s}@keyframes cm-step{0%,24.9%{opacity:1}25%,to{opacity:0}}.cm-ring{opacity:0;transform-box:fill-box;transform-origin:center;animation:cm-ring 2.4s var(--lm-ease) infinite}@keyframes cm-ring{0%{opacity:0;transform:scale(.6)}25%{opacity:.7}70%{opacity:0;transform:scale(1.02)}to{opacity:0}}.cm-blink{opacity:.4;animation:cm-blink 1.75s var(--lm-ease) infinite}@keyframes cm-blink{0%,to{opacity:.4}18%{opacity:1}40%{opacity:.4}}.cm-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:cm-draw 2.6s var(--lm-ease) infinite}@keyframes cm-draw{0%{stroke-dashoffset:1;opacity:.7}55%{stroke-dashoffset:0;opacity:.7}85%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:1;opacity:0}}.cm-draw-late{stroke-dasharray:1;stroke-dashoffset:1;animation:cm-draw-late 3s var(--lm-ease) infinite}@keyframes cm-draw-late{0%,38%{stroke-dashoffset:1}72%{stroke-dashoffset:0;opacity:.65}92%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:1;opacity:0}}.cm-draw-seq{stroke-dasharray:1;stroke-dashoffset:1;opacity:.85;animation:cm-draw-seq 2.4s var(--lm-ease) infinite}@keyframes cm-draw-seq{0%{stroke-dashoffset:1}30%{stroke-dashoffset:0}75%{stroke-dashoffset:0;opacity:.85}90%,to{stroke-dashoffset:0;opacity:0}}.cm-bar{transform-box:fill-box;transform-origin:bottom;animation:cm-bar 3s var(--lm-ease) infinite}@keyframes cm-bar{0%{transform:scaleY(0)}22%{transform:scaleY(1)}88%{transform:scaleY(1)}to{transform:scaleY(0)}}.cm-type{transform-box:fill-box;transform-origin:left;animation:cm-type 2.6s var(--lm-ease) infinite}@keyframes cm-type{0%{transform:scaleX(0)}18%{transform:scaleX(1)}82%{transform:scaleX(1);opacity:1}92%,to{transform:scaleX(1);opacity:0}}.cm-light{opacity:0;animation:cm-light 2.4s var(--lm-ease) infinite}@keyframes cm-light{0%{opacity:0}12%{opacity:.95}70%{opacity:.75}88%,to{opacity:0}}.cm-pulse{animation:cm-pulse 1.6s var(--lm-ease) infinite}@keyframes cm-pulse{0%{stroke-opacity:.45}12%{stroke-opacity:.95}to{stroke-opacity:.45}}.lm-home .library-section-header{align-items:baseline;margin-bottom:14px;padding-bottom:10px}.lm-home .library-section-heading{min-width:0}.lm-home .library-section-title{margin:0;white-space:nowrap}.cover-art{pointer-events:none}@media (prefers-reduced-motion:reduce){.cover-art *{animation:none!important}}.ca-redraw{stroke-dasharray:1;stroke-dashoffset:0;animation:ca-redraw 3s var(--lm-ease) infinite}.ca-second{stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:ca-second 3s var(--lm-ease) infinite}@keyframes ca-second{0%,35%{stroke-dashoffset:1;opacity:0}40%{opacity:.5}80%{stroke-dashoffset:0;opacity:.5}95%,to{stroke-dashoffset:0;opacity:0}}.ca-wave{transform-box:fill-box;transform-origin:center;animation:ca-wave 2s var(--lm-ease) infinite}@keyframes ca-wave{0%{transform:scale(1)}12%{transform:scale(1.8)}30%,to{transform:scale(1)}}.ca-pop{transform-box:view-box;animation:ca-pop 3s var(--lm-ease) infinite}@keyframes ca-pop{0%{transform:scale(1);opacity:1}6%{transform:scale(0);opacity:0}40%{transform:scale(0);opacity:0}55%{transform:scale(1.15);opacity:1}65%,to{transform:scale(1)}}.ca-type{transform-box:fill-box;transform-origin:left;animation:ca-type 2.8s var(--lm-ease) infinite}@keyframes ca-type{0%{transform:scaleX(1)}5%{transform:scaleX(0)}30%{transform:scaleX(0)}55%{transform:scaleX(1)}to{transform:scaleX(1)}}.ca-blink{animation:ca-blink 1s step-end infinite}@keyframes ca-blink{0%,49%{opacity:.6}50%,to{opacity:.1}}.ca-swing{transform-box:view-box;transform-origin:100px 20px;animation:ca-swing 2.6s cubic-bezier(.45,0,.55,1) infinite}@keyframes ca-swing{0%{transform:rotate(0)}50%{transform:rotate(-56deg)}to{transform:rotate(0)}}.ca-spring{transform-box:view-box;transform-origin:100px 14px;animation:ca-spring 2.2s cubic-bezier(.45,0,.55,1) infinite}@keyframes ca-spring{0%{transform:scaleY(1)}25%{transform:scaleY(1.3)}50%{transform:scaleY(1)}75%{transform:scaleY(.78)}to{transform:scaleY(1)}}.ca-mass{animation:ca-mass 2.2s cubic-bezier(.45,0,.55,1) infinite}@keyframes ca-mass{0%{transform:translateY(0)}25%{transform:translateY(18px)}50%{transform:translateY(0)}75%{transform:translateY(-13px)}to{transform:translateY(0)}}.ca-rise{transform-box:fill-box;transform-origin:bottom;animation:ca-rise 2.8s var(--lm-ease) infinite}@keyframes ca-rise{0%{transform:scaleY(1)}8%{transform:scaleY(0)}22%{transform:scaleY(0)}55%{transform:scaleY(1)}to{transform:scaleY(1)}}.ca-glow{animation:ca-glow 1.5s var(--lm-ease) infinite}@keyframes ca-glow{0%,55%{fill-opacity:.34}70%{fill-opacity:.85}to{fill-opacity:.34}}.library-book:hover .ca-electrons{opacity:0}.ca-electrons{transition:opacity .2s}.lm-mark span{-webkit-text-stroke:0}.lm-mark span:before{content:""}.lm-hero-band,.lm-hero-hand{max-width:none;padding:0}.lm-hero-band>.lm-hero-left,.lm-hero-band>.lm-hero-right,.lm-hero-hand>.lm-hero-left,.lm-hero-hand>.lm-hero-right{position:relative;z-index:1}.lm-hero-band:before,.lm-hero-hand:before{content:"";position:absolute;inset:0;background:#0a0a0f}.lm-hero-band,.lm-hero-hand{display:grid;grid-template-columns:minmax(0,60fr) minmax(0,40fr);grid-gap:64px;gap:64px;align-items:center;padding:80px calc((100vw - 1360px) / 2 + 48px) 56px;min-height:0}@media (max-width:1456px){.lm-hero-band,.lm-hero-hand{padding-left:48px;padding-right:48px}}.lm-hero-band .lm-hero-glow,.lm-hero-hand .lm-hero-glow{background:radial-gradient(60% 60% at 30% 40%,rgba(129,140,248,.22),transparent 70%),radial-gradient(40% 50% at 85% 70%,rgba(244,114,182,.1),transparent 70%)}.lm-hero-band .lm-mark,.lm-hero-hand .lm-mark{color:#e9e7e0}.lm-hero-band .lm-tile,.lm-hero-hand .lm-tile{background:rgba(255,255,255,.06);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 40px 90px -30px rgba(0,0,0,.8)}.lm-hero-band .lm-tile-core,.lm-hero-hand .lm-tile-core{box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.lm-hero-band .lm-tile:not(.is-active) .lm-tile-core:after,.lm-hero-hand .lm-tile:not(.is-active) .lm-tile-core:after{background:rgba(10,10,15,.35)}.lm-hero-band+.lm-divider,.lm-hero-hand+.lm-divider{display:none}.lm-mark-hand{display:block;position:relative;font-family:var(--font-hand),"Caveat",cursive;font-weight:700;font-size:clamp(64px,7vw,124px);letter-spacing:-.01em;line-height:1;white-space:nowrap}.lm-hand-text{display:inline-block;animation:lm-write 1.4s steps(28) both;animation-delay:.3s;-webkit-clip-path:inset(-10% 0 -10% 0);clip-path:inset(-10% 0 -10% 0)}@keyframes lm-write{0%{-webkit-clip-path:inset(-10% 100% -10% 0);clip-path:inset(-10% 100% -10% 0)}to{-webkit-clip-path:inset(-10% 0 -10% 0);clip-path:inset(-10% 0 -10% 0)}}.lm-hand-line{position:absolute;left:2%;right:4%;bottom:-6px;width:94%;height:24px;overflow:visible}.lm-hand-line path{fill:none;stroke:#a78bfa;stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:lm-underline .7s var(--lm-ease) both;animation-delay:1.75s}@keyframes lm-underline{to{stroke-dashoffset:0}}.lm-hero.reduced .lm-hand-line path,.lm-hero.reduced .lm-hand-text{animation:none;stroke-dashoffset:0}.lm-divider{width:100%;max-width:none;height:1px;margin:24px 0 0;background:var(--border-strong,var(--border));box-shadow:0 1px 0 color-mix(in srgb,var(--bg) 78%,transparent)}@media (max-width:960px){.lm-hero-band,.lm-hero-hand{grid-template-columns:1fr;padding:48px var(--lm-page-gutter) 32px}.lm-hero-band .lm-hero-right,.lm-hero-hand .lm-hero-right{order:-1;justify-content:flex-start}}.lm-hero-orbit,.lm-hero-orbit-all,.lm-hero-orbit-turn{display:block;padding:24px 48px 8px;min-height:0}.lm-orbit{position:relative;width:min(100%,1180px);margin:0 auto;aspect-ratio:1180/850;--R:300px}.lm-orbit-center{position:absolute;left:50%;top:53.5%;transform:translate(-50%,-50%);z-index:2}.lm-orbit .lm-mark{font-size:clamp(56px,7.4vw,124px);letter-spacing:-.04em}.lm-orbit .lm-tile{position:absolute;left:0;top:0;width:calc(46% * var(--s, 1));offset-path:circle(var(--R) at 50% 53.5%);offset-anchor:50% 50%;offset-rotate:0deg;transition:offset-distance var(--lm-turn) var(--lm-ease),width var(--lm-turn) var(--lm-ease),opacity .5s var(--lm-ease)}.lm-orbit .orb-0{z-index:3}.lm-orbit .orb-4{opacity:0;pointer-events:none}.lm-orbit.all .lm-tile:not(.is-active) .lm-tile-core:after{opacity:0}.lm-orbit:before{content:"";position:absolute;left:50%;top:53.5%;width:calc(var(--R) * 2);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(99,102,241,.16);pointer-events:none}html.dark .lm-orbit:before{border-color:rgba(129,140,248,.18)}@media (max-width:960px){.lm-orbit{aspect-ratio:auto;display:grid;grid-gap:16px;gap:16px}.lm-orbit .lm-tile{position:relative;width:100%;transform:none!important;offset-path:none!important;opacity:1!important}.lm-orbit-center{position:relative;left:auto;top:auto;transform:none;order:-1}.lm-orbit:before{display:none}}.lm-home-spine{display:grid;grid-template-columns:128px minmax(0,1fr)}.lm-home-spine .lm-spine{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;align-items:flex-end;justify-content:center;padding-bottom:40px;border-right:1px solid var(--border)}.lm-home-spine .lm-spine .lm-mark{writing-mode:vertical-rl;transform:rotate(180deg);font-size:clamp(56px,6vw,88px);line-height:1}.lm-home-spine .lm-spine .lm-mark span{animation:none}.lm-home-spine>.lm-body{min-width:0}.lm-home-spine .lm-hero{grid-template-columns:1fr;padding-right:56px}.lm-home-spine .lm-hero .lm-hero-right{display:none}.lm-home-spine .library-sections,.lm-home-spine .lm-divider{margin-left:0}@media (max-width:960px){.lm-home-spine{grid-template-columns:1fr}.lm-home-spine .lm-spine{position:static;height:auto;border:0;padding:40px 24px 0;justify-content:flex-start}.lm-home-spine .lm-spine .lm-mark{writing-mode:horizontal-tb;transform:none}}.ca-shear{transform-box:view-box;transform:var(--m);animation:ca-shear 3.4s cubic-bezier(.45,0,.55,1) infinite}@keyframes ca-shear{0%{transform:var(--m)}10%{transform:var(--m)}45%{transform:matrix(1,0,0,1,0,0)}60%{transform:matrix(1,0,0,1,0,0)}95%,to{transform:var(--m)}}.ca-trace{stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:ca-trace 3s var(--lm-ease) infinite}@keyframes ca-trace{0%{stroke-dashoffset:1;opacity:0}5%{opacity:1}30%{stroke-dashoffset:0;opacity:1}78%{stroke-dashoffset:0;opacity:1}92%,to{stroke-dashoffset:0;opacity:0}}.ca-beat{transform-box:view-box;animation:ca-beat 3s var(--lm-ease) infinite}@keyframes ca-beat{0%,to{transform:scale(1)}8%{transform:scale(1.7)}24%{transform:scale(1)}}.ca-pin{animation:ca-pin 2s var(--lm-ease) infinite}@keyframes ca-pin{0%,to{fill-opacity:.6}6%{fill-opacity:1}30%{fill-opacity:.6}}.ca-layer{animation:ca-layer 1.8s var(--lm-ease) infinite}@keyframes ca-layer{0%,to{opacity:1}10%{opacity:1}40%{opacity:1}}.ca-fire{animation:ca-fire 1.8s var(--lm-ease) infinite}@keyframes ca-fire{0%,to{fill-opacity:.92}8%{fill-opacity:.35}22%{fill-opacity:1}50%{fill-opacity:.92}}.ca-scan{animation:ca-scan 2.6s var(--lm-ease) infinite}.ca-sway{transform-box:view-box;animation:ca-sway 1.6s cubic-bezier(.45,0,.55,1) infinite}@keyframes ca-sway{0%,to{transform:rotate(0)}50%{transform:rotate(9deg)}}.ca-travel{animation:ca-travel 2.6s linear infinite}@keyframes ca-travel{0%{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--lam)))}}.lm-hero-ribbon-2{display:block;padding:24px 0;min-height:0;max-width:none}.lm-ribbon2{display:flex;flex-direction:column;gap:8px}.lm-ribbon2 .lm-ribbon{margin:0}.lm-ribbon2 .lm-ribbon-track .lm-tile{width:440px}.lm-ribbon2 .lm-ribbon-track.rev{animation-direction:reverse;animation-duration:84s}.lm-ribbon2 .lm-mark{justify-content:center;margin:12px 0;font-size:clamp(56px,8vw,132px)}.lm-home .library-book.soon{opacity:1}.lm-home .book-cover.dimmed{filter:none}.ca-pendulum{transform-box:view-box;animation:ca-pendulum 2.6s linear infinite}@keyframes ca-pendulum{0.00%{transform:rotate(0deg)}4.17%{transform:rotate(5.176deg)}8.33%{transform:rotate(10deg)}12.50%{transform:rotate(14.142deg)}16.67%{transform:rotate(17.321deg)}20.83%{transform:rotate(19.319deg)}25.00%{transform:rotate(20deg)}29.17%{transform:rotate(19.319deg)}33.33%{transform:rotate(17.321deg)}37.50%{transform:rotate(14.142deg)}41.67%{transform:rotate(10deg)}45.83%{transform:rotate(5.176deg)}50.00%{transform:rotate(0deg)}54.17%{transform:rotate(-5.176deg)}58.33%{transform:rotate(-10deg)}62.50%{transform:rotate(-14.142deg)}66.67%{transform:rotate(-17.321deg)}70.83%{transform:rotate(-19.319deg)}75.00%{transform:rotate(-20deg)}79.17%{transform:rotate(-19.319deg)}83.33%{transform:rotate(-17.321deg)}87.50%{transform:rotate(-14.142deg)}91.67%{transform:rotate(-10deg)}95.83%{transform:rotate(-5.176deg)}100.00%{transform:rotate(0deg)}}.ca-shm-spring{transform-box:view-box;animation:ca-shm-spring 2.4s linear infinite}@keyframes ca-shm-spring{0.00%{transform:scaleY(1)}4.17%{transform:scaleY(1.0828)}8.33%{transform:scaleY(1.16)}12.50%{transform:scaleY(1.2263)}16.67%{transform:scaleY(1.2771)}20.83%{transform:scaleY(1.3091)}25.00%{transform:scaleY(1.32)}29.17%{transform:scaleY(1.3091)}33.33%{transform:scaleY(1.2771)}37.50%{transform:scaleY(1.2263)}41.67%{transform:scaleY(1.16)}45.83%{transform:scaleY(1.0828)}50.00%{transform:scaleY(1)}54.17%{transform:scaleY(.9172)}58.33%{transform:scaleY(.84)}62.50%{transform:scaleY(.7737)}66.67%{transform:scaleY(.7229)}70.83%{transform:scaleY(.6909)}75.00%{transform:scaleY(.68)}79.17%{transform:scaleY(.6909)}83.33%{transform:scaleY(.7229)}87.50%{transform:scaleY(.7737)}91.67%{transform:scaleY(.84)}95.83%{transform:scaleY(.9172)}100.00%{transform:scaleY(1)}}.ca-shm-mass{animation:ca-shm-mass 2.4s linear infinite}@keyframes ca-shm-mass{0.00%{transform:translateY(0)}4.17%{transform:translateY(5.694px)}8.33%{transform:translateY(11px)}12.50%{transform:translateY(15.556px)}16.67%{transform:translateY(19.053px)}20.83%{transform:translateY(21.25px)}25.00%{transform:translateY(22px)}29.17%{transform:translateY(21.25px)}33.33%{transform:translateY(19.053px)}37.50%{transform:translateY(15.556px)}41.67%{transform:translateY(11px)}45.83%{transform:translateY(5.694px)}50.00%{transform:translateY(0)}54.17%{transform:translateY(-5.694px)}58.33%{transform:translateY(-11px)}62.50%{transform:translateY(-15.556px)}66.67%{transform:translateY(-19.053px)}70.83%{transform:translateY(-21.25px)}75.00%{transform:translateY(-22px)}79.17%{transform:translateY(-21.25px)}83.33%{transform:translateY(-19.053px)}87.50%{transform:translateY(-15.556px)}91.67%{transform:translateY(-11px)}95.83%{transform:translateY(-5.694px)}100.00%{transform:translateY(0)}}.ca-scan{animation:ca-scan 3s var(--lm-ease) infinite}@keyframes ca-scan{0%,to{fill-opacity:var(--o)}8%{fill-opacity:1}30%{fill-opacity:var(--o)}}.ca-carbon{animation:ca-carbon 3s var(--lm-ease) infinite}@keyframes ca-carbon{0%,to{fill-opacity:1}50%{fill-opacity:.7}}.ca-bond{stroke-dasharray:1;stroke-dashoffset:1;animation:ca-bond 4s var(--lm-ease) infinite}@keyframes ca-bond{0%,30%{stroke-dashoffset:1}45%{stroke-dashoffset:0}85%{stroke-dashoffset:0}to{stroke-dashoffset:1}}.ca-reagent{transform-box:view-box;animation:ca-reagent 4s var(--lm-ease) infinite}@keyframes ca-reagent{0%{transform:translate(-6px,-34px);opacity:0}12%{opacity:1}40%{transform:translate(0);opacity:1}80%{transform:translate(0);opacity:1}92%,to{transform:translate(-4px,-22px);opacity:0}}.ca-calc-stage{opacity:0}.ca-calc-s1{animation:ca-calc-s1 3.35s ease-in-out infinite}.ca-calc-s2{animation:ca-calc-s2 3.35s ease-in-out infinite}.ca-calc-s3{animation:ca-calc-s3 3.35s ease-in-out infinite}.ca-calc-s4{animation:ca-calc-s4 3.35s ease-in-out infinite}.ca-calc-s5{animation:ca-calc-s5 3.35s ease-in-out infinite}@keyframes ca-calc-s1{0%,13%{opacity:1}20%,93%{opacity:0}to{opacity:1}}@keyframes ca-calc-s2{0%,13%{opacity:0}20%,33%{opacity:1}40%,to{opacity:0}}@keyframes ca-calc-s3{0%,33%{opacity:0}40%,53%{opacity:1}60%,to{opacity:0}}@keyframes ca-calc-s4{0%,53%{opacity:0}60%,73%{opacity:1}80%,to{opacity:0}}@keyframes ca-calc-s5{0%,73%{opacity:0}80%,93%{opacity:1}to{opacity:0}}@keyframes ca-redraw{0%{stroke-dashoffset:0;opacity:1}10%{opacity:0;stroke-dashoffset:0}14%{stroke-dashoffset:1;opacity:1}70%{stroke-dashoffset:0}to{stroke-dashoffset:0}}.lm-hero-ribbon,.lm-hero-ribbon-2{min-height:0;padding-bottom:8px}.lm-home .library-sections{padding-top:56px}.lm-divider{margin-top:24px}.lm-mark span{animation:lm-rise 1.1s var(--lm-ease) both,lm-breathe 7s ease-in-out infinite;animation-delay:calc(.14s + var(--i) * 55ms),calc(1.4s + var(--i) * .26s)}@keyframes lm-breathe{0%,to{font-variation-settings:"wght" 800}50%{font-variation-settings:"wght" 560}}.ca-velocity{animation:ca-velocity 2.6s linear infinite}@keyframes ca-velocity{0.00%{transform:scaleX(1)}4.17%{transform:scaleX(.966)}8.33%{transform:scaleX(.866)}12.50%{transform:scaleX(.707)}16.67%{transform:scaleX(.5)}20.83%{transform:scaleX(.259)}25.00%{transform:scaleX(0)}29.17%{transform:scaleX(-.259)}33.33%{transform:scaleX(-.5)}37.50%{transform:scaleX(-.707)}41.67%{transform:scaleX(-.866)}45.83%{transform:scaleX(-.966)}50.00%{transform:scaleX(-1)}54.17%{transform:scaleX(-.966)}58.33%{transform:scaleX(-.866)}62.50%{transform:scaleX(-.707)}66.67%{transform:scaleX(-.5)}70.83%{transform:scaleX(-.259)}75.00%{transform:scaleX(0)}79.17%{transform:scaleX(.259)}83.33%{transform:scaleX(.5)}87.50%{transform:scaleX(.707)}91.67%{transform:scaleX(.866)}95.83%{transform:scaleX(.966)}100.00%{transform:scaleX(1)}}.ca-shm-x{animation:ca-shm-x 2.4s linear infinite}@keyframes ca-shm-x{0.00%{transform:scaleY(0)}4.17%{transform:scaleY(.259)}8.33%{transform:scaleY(.5)}12.50%{transform:scaleY(.707)}16.67%{transform:scaleY(.866)}20.83%{transform:scaleY(.966)}25.00%{transform:scaleY(1)}29.17%{transform:scaleY(.966)}33.33%{transform:scaleY(.866)}37.50%{transform:scaleY(.707)}41.67%{transform:scaleY(.5)}45.83%{transform:scaleY(.259)}50.00%{transform:scaleY(0)}54.17%{transform:scaleY(-.259)}58.33%{transform:scaleY(-.5)}62.50%{transform:scaleY(-.707)}66.67%{transform:scaleY(-.866)}70.83%{transform:scaleY(-.966)}75.00%{transform:scaleY(-1)}79.17%{transform:scaleY(-.966)}83.33%{transform:scaleY(-.866)}87.50%{transform:scaleY(-.707)}91.67%{transform:scaleY(-.5)}95.83%{transform:scaleY(-.259)}100.00%{transform:scaleY(0)}}.ca-diene,.ca-philе{transform-box:view-box;animation:5s var(--lm-ease) infinite}.ca-diene{animation-name:ca-diene}.ca-philе{animation-name:ca-phile}@keyframes ca-diene{0%,18%{transform:translate(-26px)}45%{transform:translate(0)}80%{transform:translate(0)}to{transform:translate(-26px)}}@keyframes ca-phile{0%,18%{transform:translate(26px)}45%{transform:translate(0)}80%{transform:translate(0)}to{transform:translate(26px)}}.ca-diene-dot,.ca-philе-dot{transform-box:view-box;animation:5s var(--lm-ease) infinite}.ca-diene-dot{animation-name:ca-diene}.ca-philе-dot{animation-name:ca-phile}.ca-close{animation:ca-close 5s var(--lm-ease) infinite}.ca-old{animation:ca-old 5s var(--lm-ease) infinite}.ca-new{animation:ca-new 5s var(--lm-ease) infinite}.book-cover-sub{display:block;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.8);line-height:1.2;margin-top:3px}.lm-home .book-cover-sub{font-size:clamp(12px,1.05vw,14px)}.lm-variants-top{right:16px;bottom:60px}.lm-hero-ribbon{position:relative}.lm-top{position:absolute;left:50%;top:0;width:min(1240px,100vw);height:360px;transform:translateX(-50%);pointer-events:none;z-index:0}.lm-hero-ribbon .lm-mark,.lm-hero-ribbon .lm-ribbon{position:relative;z-index:1}.lm-top-halo i{position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(60px);opacity:.55;mix-blend-mode:multiply;animation:lm-drift-a 18s ease-in-out infinite alternate}html.dark .lm-top-halo i{mix-blend-mode:screen;opacity:.35}.lm-top-halo i:first-child{left:12%;top:-60%;background:radial-gradient(circle,rgba(129,140,248,.55),transparent 65%)}.lm-top-halo i:nth-child(2){left:48%;top:-40%;background:radial-gradient(circle,rgba(244,114,182,.42),transparent 65%);animation-name:lm-drift-b;animation-duration:23s}.lm-top-halo i:nth-child(3){left:30%;top:-30%;width:420px;height:420px;background:radial-gradient(circle,rgba(45,212,191,.35),transparent 65%);animation-name:lm-drift-c;animation-duration:27s}@keyframes lm-drift-a{to{transform:translate(120px,60px)}}@keyframes lm-drift-b{to{transform:translate(-140px,40px)}}@keyframes lm-drift-c{to{transform:translate(60px,-50px)}}.lm-top-curve{height:420px;top:-60px}.lm-top-curve path{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;opacity:.22;stroke-dasharray:1;stroke-dashoffset:1;animation:lm-draw 9s var(--lm-ease) infinite}.lm-top-curve path.c2{opacity:.12;animation-delay:1.4s;stroke-width:2}@keyframes lm-draw{0%{stroke-dashoffset:1}40%{stroke-dashoffset:0}82%{stroke-dashoffset:0;opacity:.22}90%{opacity:0}91%{stroke-dashoffset:1;opacity:0}to{stroke-dashoffset:1;opacity:.22}}.lm-top-grid{top:-20px;height:420px}.lm-top-grid pattern path{fill:none;stroke:var(--accent);stroke-opacity:.16;stroke-width:1}.lm-top-grid .wave{fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;opacity:.35;stroke-dasharray:1;stroke-dashoffset:1;animation:lm-wave 8s linear infinite}@keyframes lm-wave{0%{stroke-dashoffset:1}60%{stroke-dashoffset:0}to{stroke-dashoffset:-1}}.lm-top-board{height:100%;width:100vw;background:linear-gradient(180deg,#0a0a0f 0,#0a0a0f 86%,transparent)}.lm-hero-ribbon.lm-with-board .lm-mark{color:#e9e7e0}.lm-hero-ribbon.lm-with-board{padding-top:40px}.lm-tile-name .lm-tile-core{display:flex;align-items:center;justify-content:center;background:var(--lm-board)}.lm-tile-name{width:var(--lm-ribbon-tile);flex:0 0 auto}.lm-tile-name .lm-mark{color:#e9e7e0;font-size:96px;margin:0}.lm-hero-ribbon.lm-with-inline{padding-top:56px}.lm-variants-mark{right:16px;bottom:104px;max-width:60vw;flex-wrap:wrap;justify-content:flex-end}.lm-mark-gallery{max-width:1180px;margin:40px auto 8px;padding:0 48px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:28px 40px;gap:28px 40px}.lm-mark-cell{position:relative;padding:28px 24px 24px;border:1px solid var(--border);border-radius:16px;background:var(--surface);display:flex;align-items:center;justify-content:center;min-height:190px;overflow:hidden}.lm-mark-cell .lm-mark{font-size:clamp(40px,4.4vw,68px)}.lm-mark-label{position:absolute;left:14px;top:10px;font-size:12px;font-weight:600;color:var(--accent);display:flex;gap:8px;align-items:baseline}.lm-mark-label small{font-weight:400;color:var(--muted)}.lm-mark{align-items:baseline}.lm-mark .lm-tex{display:inline-block;font-size:.92em;line-height:1;animation:lm-rise 1.1s var(--lm-ease) both}.lm-mark .lm-tex .katex{font-size:1em}.lm-mark .lm-tex .katex-display{margin:0;display:inline-block}.lm-mark .lm-tex .katex-display>.katex{display:inline-block;text-align:left}.m-lim .lm-tex{margin-right:.08em}.m-lim-sub{align-items:baseline}.m-lim-sub .lm-tex{font-size:.92em}.m-lim-sub .lm-tex .katex .mop .vlist-t{vertical-align:baseline}.m-lim-sub .lm-tex .katex .mop .vlist-r .sizing,.m-lim-sub .lm-tex .katex .msupsub{font-size:.55em}.m-lim-sub .lm-tex .katex .mop{display:inline-block}.m-lim-arrow .lm-tex .mrel{display:inline-block;animation:lm-arrow 2.6s var(--lm-ease) infinite}@keyframes lm-arrow{0%,to{transform:translateX(0)}50%{transform:translateX(.18em)}}.m-tex{font-family:KaTeX_Main,Latin Modern Roman,serif;font-weight:400;letter-spacing:0}.m-tex .lm-tex{font-size:.9em}.m-tex .erse .katex{font-family:KaTeX_Main,serif}.m-split .w9 span{font-variation-settings:"wght" 900}.m-split .w3 span{font-variation-settings:"wght" 300}.m-split:hover .w3 span{font-variation-settings:"wght" 900}.m-split:hover .w9 span{font-variation-settings:"wght" 300}.m-outline span{-webkit-text-stroke:2px var(--text-bright);color:transparent;transition:color .5s var(--lm-ease);animation:lm-rise 1.1s var(--lm-ease) both}.m-outline:hover span{color:var(--text-bright)}.m-wave span{animation:lm-rise 1.1s var(--lm-ease) both,lm-swell 3.6s ease-in-out infinite;animation-delay:calc(.14s + var(--i) * 55ms),calc(1.4s + var(--i) * .18s)}@keyframes lm-swell{0%,to{transform:translateY(0)}50%{transform:translateY(-.09em)}}.m-point .idot{position:relative}.m-point .idot i{position:absolute;left:50%;top:.12em;width:.16em;height:.16em;margin-left:-.08em;border-radius:50%;background:var(--accent);animation:lm-limitpt 3s var(--lm-ease) infinite}@keyframes lm-limitpt{0%{transform:translate(-.5em,.1em) scale(.6);opacity:0}15%{opacity:1}60%{transform:translate(0) scale(1)}85%{transform:translate(0) scale(1);opacity:1}to{transform:translate(0) scale(1);opacity:0}}.m-caps{letter-spacing:.06em;font-weight:700}.m-caps span{font-variation-settings:"wght" 700}.m-ink span{color:var(--accent);background:linear-gradient(100deg,#4f46e5,#7c3aed 45%,#db2777);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% 100%;animation:lm-rise 1.1s var(--lm-ease) both,lm-inkdrift 9s ease-in-out infinite alternate;animation-delay:calc(.14s + var(--i) * 55ms),0s}@keyframes lm-inkdrift{0%{background-position:0 50%}to{background-position:100% 50%}}.m-lim-caps span{letter-spacing:.04em}.lm-mark:hover span{animation-play-state:running,paused}.m-caps span,.m-lim-caps span,.m-outline span,.m-split span{animation:lm-rise 1.1s var(--lm-ease) both;animation-delay:calc(.14s + var(--i) * 55ms)}.ca-close{stroke-dasharray:1;stroke-dashoffset:1;animation:ca-close 7s var(--lm-ease) infinite}@keyframes ca-close{0%,40%{stroke-dashoffset:1}50%{stroke-dashoffset:0}84%{stroke-dashoffset:0}90%,to{stroke-dashoffset:1}}.ca-old{animation:ca-old 7s var(--lm-ease) infinite}@keyframes ca-old{0%,46%{opacity:1}56%{opacity:0}84%{opacity:0}92%,to{opacity:1}}.ca-new{opacity:0;animation:ca-new 7s var(--lm-ease) infinite}@keyframes ca-new{0%,48%{opacity:0}58%{opacity:1}84%{opacity:1}90%,to{opacity:0}}.cover-art.is-off *{animation-play-state:paused}.lm-lim{position:relative;display:inline-block;font-family:KaTeX_Main,Times New Roman,serif;font-weight:400;letter-spacing:-.01em;line-height:1;margin-right:.08em;animation:lm-rise 1.1s var(--lm-ease) both}.lm-lim .lim{font-size:1.22em;display:inline-block;line-height:.8;font-style:italic;padding-right:.04em;-webkit-text-stroke:.014em var(--bg);paint-order:fill stroke}.lm-lim .under{position:absolute;left:0;width:100%;top:100%;text-align:center;font-size:.34em;white-space:nowrap;padding-top:0;margin-top:-.55em;line-height:1}.lm-lim .under .katex{display:inline-block;-webkit-text-stroke:.072em currentColor;paint-order:stroke fill;font-size:1em}.m-lim-sub{padding-bottom:.22em}.m-lim-arrow .under .mrel{display:inline-block;animation:lm-arrow 2.6s var(--lm-ease) infinite}.lm-mark-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}.lm-moving .lm-mark{will-change:transform;transform:translateX(calc(var(--lead, 0) * 1em)) skewX(calc(var(--lean, 0) * -1deg)) scale(var(--sx,1),var(--sy,1));transform-origin:50% 92%}.lm-moving .lm-lim .under{transform:translateX(calc(var(--trail, 0) * 2.4em))}.lm-numberline{--lm-number-line:#4f46e5;--lm-number-tick:#4338ca;--lm-number-label:#312e81;display:block;width:100%;height:92px;color:var(--text-bright);opacity:1}html.dark .lm-numberline{--lm-number-line:#818cf8;--lm-number-tick:#93a4ff;--lm-number-label:#b8c2ff}.lm-hero-ribbon .lm-mark-wrap{position:relative;z-index:1;margin-bottom:30px}.lm-hero-ribbon .lm-mark-wrap .lm-mark{margin-bottom:0}.ca-charge{animation:ca-charge 2.4s var(--lm-ease) infinite}@keyframes ca-charge{0%,to{fill-opacity:.55}50%{fill-opacity:.9}}.lm-home .library-section-title{font-size:clamp(26px,2.4vw,34px);letter-spacing:-.6px}@media (max-width:520px){.lm-home .library-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}}.lm-home{--lm-band:var(--bg);--lm-band-glow:rgba(99,102,241,.16);--lm-band-line:var(--border);--lm-band-grid:rgba(17,24,39,.09);--lm-mark-color:var(--text-bright);--lm-tile-shell:rgba(17,24,39,.06);--lm-tile-ring:rgba(17,24,39,.08);--lm-tile-shadow:0 24px 64px -34px rgba(17,24,39,.35)}html.dark .lm-home{--lm-band:#0b0b14;--lm-band-glow:rgba(129,140,248,.20);--lm-band-line:rgba(255,255,255,.09);--lm-band-grid:rgba(255,255,255,.10);--lm-mark-color:#f4f2f7;--lm-tile-shell:rgba(255,255,255,.075);--lm-tile-ring:rgba(255,255,255,.08);--lm-tile-shadow:0 24px 64px -34px rgba(0,0,0,.9)}.lm-hero-ribbon{isolation:isolate;padding:6px 0 0;overflow:hidden;background:radial-gradient(70% 100% at 50% -25%,var(--lm-band-glow),transparent 72%),var(--lm-band);border-bottom:1px solid var(--lm-band-line)}.lm-hero-ribbon:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--lm-band-grid) 1px,transparent 1px),linear-gradient(90deg,var(--lm-band-grid) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(180deg,black,transparent 62%);mask-image:linear-gradient(180deg,black,transparent 62%)}.lm-hero-ribbon .lm-hero-glow{inset:-30% -15% auto;height:115%;opacity:.72}.lm-hero-brand{position:relative;z-index:2;width:-moz-fit-content;width:fit-content;margin:0 auto;padding:0 var(--lm-page-gutter);text-align:center}.lm-hero-ribbon .lm-hero-brand .lm-mark{color:var(--lm-mark-color);margin:0;font-size:clamp(56px,6.4vw,100px)}.lm-hero-ribbon .lm-ribbon{--lm-ribbon-tile:clamp(280px,27vw,380px);margin:6px 0 0;padding-bottom:6px}.lm-hero-ribbon .lm-ribbon-track{gap:clamp(14px,1.5vw,22px);padding:6px 0 12px}.lm-hero-ribbon .lm-tile{background:var(--lm-tile-shell);box-shadow:0 0 0 1px var(--lm-tile-ring),var(--lm-tile-shadow)}.lm-hero-ribbon+.lm-divider{display:none}.lm-home .library-sections{padding-top:26px}@media (max-width:640px){.lm-hero-ribbon{padding-top:12px}.lm-hero-ribbon .lm-ribbon{margin-top:8px;padding-bottom:16px}.lm-ribbon{--lm-ribbon-tile:72vw}}.motion-off,.motion-off *{animation-play-state:paused!important}.topic-card{cursor:pointer;text-align:left;padding-right:42px}.topic-card.is-open{border-color:var(--topic-color,var(--accent));box-shadow:var(--shadow-lg);background:color-mix(in srgb,var(--topic-color,var(--accent)) 5%,var(--surface))}.topic-card:hover:not(.soon){background:color-mix(in srgb,var(--topic-color,var(--accent)) 3%,var(--surface))}.topic-card-title a:hover{color:var(--topic-color,var(--accent))}.tcard-chev,.topic-card-chev{position:absolute;right:16px;top:22px;width:16px;height:16px;color:var(--muted);transition:transform .2s,color .2s}.topic-card.is-open .tcard-chev{transform:rotate(90deg);color:var(--topic-color,var(--accent))}.topic-panel{grid-column:1/-1;display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);animation:topic-panel-in .22s ease}.topic-panel-two{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 14px;gap:0 14px}@keyframes topic-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.lesson-row{display:flex;align-items:center;gap:14px;padding:9px 10px;border-radius:var(--r);color:var(--text-bright);font-size:14.5px;font-weight:500;transition:background .12s}.lesson-row:hover{background:color-mix(in srgb,var(--tc,var(--accent)) 9%,transparent)}.lesson-row-num{font-size:12px;color:var(--tc,var(--accent));font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:22px}.guide-link{display:flex;align-items:center;gap:14px;padding:13px 16px 13px 14px;border-radius:var(--r-lg);color:var(--text-bright);background:color-mix(in srgb,var(--tc,var(--accent)) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--tc,var(--accent)) 28%,transparent);transition:transform .15s,border-color .15s,box-shadow .15s}.guide-link:hover{transform:translateY(-2px);border-color:var(--tc,var(--accent));box-shadow:var(--shadow)}.guide-icon{width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--tc,var(--accent)) 16%,transparent);color:var(--tc,var(--accent));display:grid;place-items:center;flex:none}.guide-icon svg{width:19px;height:19px}.guide-text{flex:1 1;font-size:15px;font-weight:600;line-height:1.3}.guide-arrow{color:var(--tc,var(--accent));opacity:.7;transition:transform .15s;display:flex}.guide-arrow svg{width:16px;height:16px}.guide-link:hover .guide-arrow{transform:translateX(3px);opacity:1}@media (max-width:640px){.topic-panel-two{grid-template-columns:1fr}}.lesson-tiles{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:12px}.lesson-tiles-guide{grid-column:1/-1;--tc:var(--uc)}.lesson-tile{display:flex;flex-direction:column;gap:12px;padding:16px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);transition:border-color .15s,transform .15s,box-shadow .15s}.lesson-tile:hover{border-color:var(--uc,var(--accent));transform:translateY(-3px);box-shadow:var(--shadow-lg)}.lesson-tile-num{font-size:24px;font-weight:800;color:oklch(from var(--uc,var(--accent)) calc(l + var(--lift)) calc(c + var(--chroma)) h);letter-spacing:-.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;opacity:.85}.lesson-tile-title{font-size:15px;font-weight:600;color:var(--text-bright);line-height:1.35}.lesson-tile.chapter-stub{opacity:.6}@media (max-width:640px){.lesson-tiles{grid-template-columns:1fr}}.reader-content.sg-lesson{max-width:1120px}.sg-in-reader .sg-body{font-size:clamp(13px,1.15vw,17px)}.sg-lesson-head{margin-bottom:18px}.sg-lesson-kicker{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}.sg-lesson-title{font-size:30px;font-weight:800;letter-spacing:-.5px;color:var(--text-bright);margin:0;line-height:1.15}.sg-page.sg-in-reader{min-height:0;background-image:none;background-color:transparent;border-radius:14px}.sg-in-reader .sg-body{padding:0}.sg-lesson .chapter-nav{margin-top:40px}.ca-join{stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:ca-join 8s linear infinite}@keyframes ca-join{0%,39%{stroke-dashoffset:1;opacity:0}40%{opacity:1;stroke-dashoffset:1}47%{stroke-dashoffset:0;opacity:1}80%{stroke-dashoffset:0;opacity:1}84%,to{stroke-dashoffset:0;opacity:0}}.lesson-kicker{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 -18px}.reader-content--wide{max-width:none}.lesson-frame-title{font-size:30px;font-weight:700;letter-spacing:-.5px;color:var(--text-bright);margin:0 0 16px}.lesson-frame{display:block;width:100%;height:calc(100vh - 120px);min-height:640px;border:1px solid var(--border);border-radius:14px;background:#fff}