:root{--font-read:"STIX Two Text";--fs:18px;--lh:1.6;--measure:66ch;--font-body:var(--font-read), "STIX Two Math", "Noto Sans Math", "Iowan Old Style", Georgia, serif;--font-ui:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans Math", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ui-xs:14px;--ui-s:15px;--ui-m:16px;--t-h1:2.15em;--t-h2:1.45em;--t-h3:1.17em;--t-lede:1.15em;--w-regular:400;--w-label:600;--w-head:650;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--radius:10px;--radius-s:6px;--radius-l:14px;--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.14s;--t-med:.22s;--bg:#fbf7ef;--text:#2b2620;--text-3:#6b5e4f;--accent-theme:#0f766e}[data-theme=paper]{--bg:#fbf7ef;--text:#2b2620;--text-3:#6b5e4f;--accent-theme:#0f766e}[data-theme=sepia]{--bg:#f4ecd8;--text:#433422;--text-3:#6b5842;--accent-theme:#9a3412}[data-theme=cool]{--bg:#f3f6fa;--text:#1a2430;--text-3:#52606f;--accent-theme:#0b5fd0}[data-theme=white]{--bg:#fff;--text:#1f1f1f;--text-3:#595959;--accent-theme:#3f3fbf}[data-theme=dark]{--bg:#1c1b22;--text:#e8e6e3;--text-3:#a6a3ad;--accent-theme:#4fd1c5}[data-theme=dusk]{--bg:#211e1a;--text:#e9e2d6;--text-3:#a89f90;--accent-theme:#f0a868}[data-theme=black]{--bg:#000;--text:#e6e6e6;--text-3:#a0a0a0;--accent-theme:#7ab7ff}[data-theme=contrast]{--bg:#000;--text:#fff;--text-3:#d0d0d0;--accent-theme:#ffee32}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#1c1b22;--text:#e8e6e3;--text-3:#a6a3ad;--accent-theme:#4fd1c5}}:root{--accent:var(--accent-theme)}[data-accent=teal]{--accent:#0f766e}[data-mode=dark][data-accent=teal]{--accent:#4fd1c5}[data-accent=blue]{--accent:#0b5fd0}[data-mode=dark][data-accent=blue]{--accent:#7ab7ff}[data-accent=indigo]{--accent:#3f3fbf}[data-mode=dark][data-accent=indigo]{--accent:#a5b4ff}[data-accent=violet]{--accent:#6d28d9}[data-mode=dark][data-accent=violet]{--accent:#c4b5fd}[data-accent=crimson]{--accent:#b3261e}[data-mode=dark][data-accent=crimson]{--accent:#ff8a80}[data-accent=rust]{--accent:#9a3412}[data-mode=dark][data-accent=rust]{--accent:#f0a868}[data-accent=forest]{--accent:#2f6b3a}[data-mode=dark][data-accent=forest]{--accent:#7fd08f}[data-accent=ink]{--accent:var(--text)}:root{--text-2:color-mix(in srgb, var(--text) 62%, var(--text-3));--surface:color-mix(in srgb, var(--bg) 55%, #fff);--surface-2:color-mix(in srgb, var(--text) 5%, var(--bg));--line:color-mix(in srgb, var(--text) 14%, var(--bg));--line-strong:color-mix(in srgb, var(--text) 70%, var(--bg));--accent-soft:color-mix(in srgb, var(--accent) 12%, var(--bg));--note:#245a9e;--warn:#8a4b00;--defend:#6a3fa0;--key:var(--accent);--mark:color-mix(in srgb, #f5c400 38%, var(--bg));color-scheme:light}[data-mode=dark]{--surface:color-mix(in srgb, var(--text) 5%, var(--bg));--surface-2:color-mix(in srgb, var(--text) 9%, var(--bg));--line:color-mix(in srgb, var(--text) 16%, var(--bg));--accent-soft:color-mix(in srgb, var(--accent) 16%, var(--bg));--note:#8db6ee;--warn:#e7b25e;--defend:#c3a2ee;--mark:color-mix(in srgb, #f5c400 30%, var(--bg));color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-mode]){--surface:color-mix(in srgb, var(--text) 5%, var(--bg));--surface-2:color-mix(in srgb, var(--text) 9%, var(--bg));--line:color-mix(in srgb, var(--text) 16%, var(--bg));--accent-soft:color-mix(in srgb, var(--accent) 16%, var(--bg));--note:#8db6ee;--warn:#e7b25e;--defend:#c3a2ee;color-scheme:dark}}[data-theme=contrast]{--line:#8a8a8a;--surface:#000;--surface-2:#1a1a1a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:var(--ui-m)/1.5 var(--font-ui);font-variant-numeric:lining-nums;transition:background-color var(--t-med) var(--ease), color var(--t-med) var(--ease);margin:0}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}kbd{font:600 12px/1 var(--font-ui);border:1px solid var(--line);color:var(--text-3);border-radius:4px;padding:3px 5px}.muted{color:var(--text-3)}::selection{background:color-mix(in srgb, var(--accent) 28%, var(--bg))}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--bar-h:56px;--nav-h:64px;--rail-w:88px;--safe-b:env(safe-area-inset-bottom,0px)}.appnav{z-index:25;height:calc(var(--nav-h) + var(--safe-b));padding:0 var(--s2) var(--safe-b);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);view-transition-name:appnav;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.appnav-brand{display:none}.appnav-item{max-width:120px;color:var(--text-3);font:600 var(--ui-xs)/1.2 var(--font-ui);-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.appnav-icon{width:56px;height:30px;transition:background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border-radius:99px;place-items:center;display:grid}.appnav-item[aria-current=page]{color:var(--text)}.appnav-item[aria-current=page] .appnav-icon{background:var(--accent-soft);color:var(--accent)}.appnav-item[aria-current=page] path{stroke-width:2.2px}body{padding-bottom:calc(var(--nav-h) + var(--safe-b))}.topbar{z-index:20;align-items:center;gap:var(--s1);height:var(--bar-h);padding:0 var(--s2) 0 var(--s4);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);view-transition-name:topbar;display:flex;position:sticky;top:0}.bar-back{width:44px;height:44px;margin-left:calc(-1 * var(--s3));color:var(--text);-webkit-tap-highlight-color:transparent;border-radius:99px;flex:none;place-items:center;display:grid}.bar-back:active{background:var(--surface-2)}.bar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:var(--w-head) var(--ui-m)/1.2 var(--font-ui);color:var(--text);letter-spacing:-.01em;flex:1;margin:0;overflow:hidden}.bar-title.reveal{opacity:0;transition:opacity var(--t-med) var(--ease), transform var(--t-med) var(--ease);transform:translateY(4px)}.bar-title.reveal.shown{opacity:1;transform:none}.topbar button{width:44px;height:44px;color:var(--text-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:0;border-radius:99px;flex:none;place-items:center;padding:0;display:grid}.topbar button:active,.topbar button[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.reader-open{letter-spacing:.02em;font:600 17px/1 var(--font-body)!important}[data-tab=settings] .reader-open,[data-tab=settings] .theme-toggle{display:none!important}.sections{top:var(--bar-h);z-index:19;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);view-transition-name:sections;position:sticky}.sections ol{gap:var(--s1);padding:0 var(--s4);scrollbar-width:none;scroll-padding:0 var(--s4);margin:0;list-style:none;display:flex;overflow-x:auto}.sections ol::-webkit-scrollbar{display:none}.sections a{height:48px;padding:0 var(--s3);white-space:nowrap;color:var(--text-3);font:600 var(--ui-s)/1 var(--font-ui);-webkit-tap-highlight-color:transparent;align-items:center;text-decoration:none;display:flex;position:relative}.sections a[aria-current=page]{color:var(--text)}.sections a[aria-current=page]:after{content:"";left:var(--s3);right:var(--s3);background:var(--accent);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0}html{scroll-padding-top:calc(var(--bar-h) + 48px + var(--s3))}@media (width>=1024px){body{padding-bottom:0;padding-left:var(--rail-w)}.appnav{width:var(--rail-w);justify-content:flex-start;gap:var(--s3);height:auto;padding:var(--s3) 0;border-top:0;border-right:1px solid var(--line);background:var(--bg);-webkit-backdrop-filter:none;flex-direction:column;top:0;right:auto}.appnav-brand{width:44px;height:44px;margin:0 auto var(--s4);background:var(--text);color:var(--bg);font:600 22px/1 var(--font-body);border-radius:12px;place-items:center;text-decoration:none;display:grid}.appnav-item{gap:var(--s1);max-width:none;padding:var(--s1) 0;flex:none}.appnav-icon{height:32px}.appnav-item:hover:not([aria-current]) .appnav-icon{background:var(--surface-2);color:var(--text)}.topbar{height:60px;padding:0 var(--s4) 0 var(--s5)}.bar-back{margin-left:calc(-1 * var(--s2))}.topbar button:hover{background:var(--surface-2);color:var(--text)}.sections{display:none}html{scroll-padding-top:76px}}@view-transition{navigation:auto}main,.layout{view-transition-name:page}::view-transition-group(page){animation-duration:.26s}::view-transition-old(page){animation:.18s var(--ease) both rs-fade-out}::view-transition-new(page){animation:.26s var(--ease) both rs-fade-in}html:active-view-transition-type(forward)::view-transition-old(page){animation:.26s var(--ease) both rs-out-left}html:active-view-transition-type(forward)::view-transition-new(page){animation:.26s var(--ease) both rs-in-right}html:active-view-transition-type(back)::view-transition-old(page){animation:.26s var(--ease) both rs-out-right}html:active-view-transition-type(back)::view-transition-new(page){animation:.26s var(--ease) both rs-in-left}@keyframes rs-fade-out{to{opacity:0}}@keyframes rs-fade-in{0%{opacity:0}}@keyframes rs-in-right{0%{opacity:0;transform:translate(40px)}}@keyframes rs-out-left{to{opacity:0;transform:translate(-24px)}}@keyframes rs-in-left{0%{opacity:0;transform:translate(-24px)}}@keyframes rs-out-right{to{opacity:0;transform:translate(40px)}}@media (width<=1023px){body:has(input:focus,textarea:focus) .appnav{display:none}body:has(input:focus,textarea:focus){padding-bottom:0}}.tab-main{max-width:720px;padding:var(--s5) var(--s4) var(--s7);margin:0 auto}.tab-main h1,.notes-main h1{font:var(--w-head) clamp(30px, 6vw, 40px)/1.1 var(--font-ui);letter-spacing:-.02em;margin:0 0 var(--s5)}.search-field{top:calc(var(--bar-h) + var(--s2));z-index:5;align-items:center;gap:var(--s3);height:52px;padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);color:var(--text-3);display:flex;position:sticky}.search-field:focus-within{border-color:var(--accent)}.search-field input{min-width:0;height:100%;color:var(--text);font:var(--ui-m) var(--font-ui);background:0 0;border:0;outline:none;flex:1}.search-count{margin:var(--s4) 0 var(--s2);font:600 var(--ui-xs) var(--font-ui);color:var(--text-3)}.search-page .search-results{max-height:none;margin:0;padding:0;list-style:none}.search-page .search-results li+li{border-top:1px solid var(--line)}.search-page .search-results a{padding:var(--s3) 0;color:var(--text);font:var(--ui-m)/1.4 var(--font-ui);text-decoration:none;display:block}.search-page .search-results a.active b{color:var(--accent)}.search-page .search-results small{color:var(--text-3);font-size:var(--ui-xs);margin-bottom:2px;display:block}.search-page .search-results b{font-weight:var(--w-label)}.search-page .search-results p{margin:var(--s1) 0 0;color:var(--text-2);font-size:var(--ui-xs);line-height:1.5}.search-empty{color:var(--text-2);font:var(--ui-s)/1.5 var(--font-ui)}.search-empty button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.tab-main .section-label{margin-top:var(--s6);border-top:0;padding-top:0}.tab-main h1+.section-label{margin-top:0}.reader-inline{border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);overflow:hidden}.reader-inline .rp-body{max-height:none;padding:var(--s2) var(--s4) var(--s4);overflow:visible}.reader-inline .rp-reset{border:0;border-top:1px solid var(--line);width:100%;height:48px;color:var(--accent);font:600 var(--ui-s) var(--font-ui);cursor:pointer;background:0 0;display:block}.rows{border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.rows li+li .row{border-top:1px solid var(--line)}.row{align-items:center;gap:var(--s3);width:100%;min-height:64px;padding:var(--s3) var(--s4);color:var(--text);text-align:left;font:var(--ui-m)/1.35 var(--font-ui);cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}div.row{cursor:default}.row>span{flex:1;min-width:0}.row b{font-weight:var(--w-label);display:block}.row small{color:var(--text-3);font-size:var(--ui-xs);margin-top:2px;display:block}.row svg{color:var(--text-3);flex:none}.row[aria-busy=true] svg{animation:.9s linear infinite rs-spin}@keyframes rs-spin{to{transform:rotate(360deg)}}.about{margin:var(--s6) 0 0;text-align:center;font:var(--ui-xs) var(--font-ui);color:var(--text-3)}.continue{margin:0 0 var(--s6)}.continue-card{align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);color:var(--text);text-decoration:none;display:flex;position:relative;overflow:hidden}.continue-text{flex:1;min-width:0}.continue-text small{color:var(--text-3);font:var(--ui-xs)/1.4 var(--font-ui);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.continue-text b{font:var(--w-head) 19px/1.3 var(--font-body);margin-top:2px;display:block}.continue-pct{font:600 var(--ui-s) var(--font-ui);color:var(--text-2);font-variant-numeric:tabular-nums}.continue-bar{background:var(--line);height:3px;position:absolute;bottom:0;left:0;right:0}.continue-bar span{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.search-panel{z-index:40;padding:10vh var(--s4) var(--s4);background:#0006;position:fixed;inset:0}.search-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);max-width:640px;margin:0 auto;overflow:hidden;box-shadow:0 20px 60px #00000047}.search-box:focus-within{border-color:var(--accent)}[data-mode=dark] .search-box{background:color-mix(in srgb, var(--text) 7%, var(--bg))}.search-box input{border:0;border-bottom:1px solid var(--line);width:100%;padding:var(--s4) 18px;font:17px var(--font-ui);color:var(--text);background:0 0;outline:none}.search-results{max-height:60vh;margin:0;padding:6px;list-style:none;overflow:auto}.search-results li a{padding:10px var(--s3);border-radius:var(--radius-s);color:var(--text);text-decoration:none;display:block}.search-results li a:hover,.search-results li a.active{background:var(--accent-soft)}.search-results small{color:var(--text-3);font-size:var(--ui-xs);display:block}.search-results p{margin:var(--s1) 0 0;font-size:var(--ui-xs);color:var(--text-2);line-height:1.45}.search-results mark{background:var(--mark);color:inherit;border-radius:2px}.search-results .empty{color:var(--text-3);font-size:var(--ui-xs);padding:14px}.reader-panel{z-index:45;top:68px;right:var(--s5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);flex-direction:column;width:380px;max-height:calc(100vh - 88px);display:flex;position:fixed;box-shadow:0 18px 50px #00000038}[data-mode=dark] .reader-panel{background:color-mix(in srgb, var(--text) 7%, var(--bg))}.reader-panel[hidden]{display:none}.rp-head{padding:var(--s4) var(--s5) var(--s2);justify-content:space-between;align-items:center;display:flex}.rp-head h2{font:var(--w-head) 17px var(--font-ui);margin:0}.rp-reset{color:var(--accent);font:600 var(--ui-xs) var(--font-ui);cursor:pointer;padding:var(--s2);margin-right:calc(-1 * var(--s2));background:0 0;border:0}.rp-body{padding:0 var(--s5);overflow:hidden auto}.rp-group{padding:var(--s3) 0;border:0;min-width:0;margin:0}.rp-group+.rp-group{border-top:1px solid var(--line)}.rp-group legend{margin-bottom:var(--s2);font:600 var(--ui-xs) var(--font-ui);color:var(--text-2);padding:0}.rp-options{gap:var(--s1);background:var(--surface-2);border-radius:var(--radius);padding:3px;display:flex}.rp-opt{min-height:40px;color:var(--text-2);font:500 var(--ui-xs) var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1}.rp-opt[aria-pressed=true]{background:var(--bg);color:var(--text);font-weight:600;box-shadow:0 1px 3px #0000001f}[data-mode=dark] .rp-opt[aria-pressed=true]{background:color-mix(in srgb, var(--text) 16%, var(--bg))}.rp-themes .rp-options{gap:var(--s2);background:0 0;grid-template-columns:repeat(3,1fr);padding:0;display:grid}.rp-themes .rp-opt{align-items:center;gap:var(--s2);padding:6px var(--s2);border:1px solid var(--line);background:0 0;justify-content:flex-start;display:flex}.rp-themes .rp-opt[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:0 0}.rp-swatch{width:28px;height:28px;font:600 13px/1 var(--font-body);border:1px solid #7f7f7f59;border-radius:50%;flex:none;place-items:center;display:inline-grid}.rp-accents .rp-options{background:0 0;grid-template-columns:repeat(9,1fr);gap:2px;padding:0;display:grid}.rp-accents .rp-opt{aspect-ratio:1;border-radius:50%;justify-self:center;place-items:center;width:100%;min-width:0;max-width:40px;min-height:0;display:grid}.rp-dot{border-radius:50%;width:26px;height:26px;box-shadow:inset 0 0 0 1px #0000001f}.rp-accents .rp-opt[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--text);background:0 0}.rp-fonts .rp-options{background:0 0;flex-direction:column;gap:2px;padding:0}.rp-fonts .rp-opt{justify-content:space-between;align-items:baseline;gap:var(--s3);padding:9px var(--s3);text-align:left;color:var(--text);font-size:17px;display:flex}.rp-fonts .rp-opt small{font:var(--ui-xs) var(--font-ui);color:var(--text-3);text-align:right}.rp-fonts .rp-opt[aria-pressed=true]{background:var(--accent-soft);box-shadow:none}.rp-stepper{background:var(--surface-2);border-radius:var(--radius);grid-template-columns:56px 1fr 56px;align-items:center;padding:3px;display:grid}.rp-step{background:var(--bg);height:40px;color:var(--text);font-family:var(--font-body);cursor:pointer;border:0;border-radius:8px}.rp-step:disabled{opacity:.35;cursor:default}.rp-stepper output{text-align:center;font:600 var(--ui-s) var(--font-ui);font-variant-numeric:tabular-nums}.rp-foot{padding:var(--s3) var(--s5) var(--s4);border-top:1px solid var(--line)}.rp-done{border-radius:var(--radius);background:var(--text);width:100%;height:44px;color:var(--bg);font:600 var(--ui-s) var(--font-ui);cursor:pointer;border:0}.layout{max-width:1360px;padding:0 var(--s5);grid-template-columns:248px minmax(0,1fr) 220px;gap:48px;margin:0 auto;display:grid}.sidebar,.toc{max-height:calc(100vh - 92px);padding:var(--s6) 0;font-size:var(--ui-xs);align-self:start;position:sticky;top:76px;overflow:auto}.side-project{font-weight:var(--w-head);font-size:var(--ui-s);margin:var(--s4) 0 var(--s2);color:var(--text);line-height:1.35}.side-pages,.side-others,.toc ol{margin:0;padding:0;list-style:none}.side-pages a{justify-content:space-between;align-items:baseline;gap:var(--s2);color:var(--text-2);border-radius:8px;padding:7px 10px;line-height:1.35;text-decoration:none;display:flex}.side-pages a small{color:var(--text-3);white-space:nowrap;letter-spacing:.01em;font-size:12px}.side-pages a:hover{background:var(--surface-2);color:var(--text)}.side-pages a[aria-current=page]{background:var(--accent-soft);color:var(--text);font-weight:var(--w-label)}.side-pages a[aria-current=page] small{color:var(--accent)}.side-label{margin:var(--s5) 0 var(--s2);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:12px;font-weight:600}.side-others a{color:var(--text-2);padding:5px 10px;text-decoration:none;display:block}.side-others a:hover{color:var(--accent)}.toc h2{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin:0 0 var(--s2);font-size:12px;font-weight:600}.toc a{padding:5px 0 5px var(--s3);border-left:2px solid var(--line);color:var(--text-3);line-height:1.35;text-decoration:none;display:block}.toc .toc-h3 a{padding-left:var(--s5)}.toc a:hover{color:var(--text)}.toc a.active{color:var(--text);border-left-color:var(--accent)}.content{min-width:0;padding:var(--s6) 0 var(--s8);font:var(--w-regular) var(--fs)/var(--lh) var(--font-body)}[data-weight=bold] .content{--w-regular:500}[data-weight=bold] .content strong,[data-weight=bold] .content b{font-weight:750}.content>h1{font-size:clamp(1.75em, 5vw, var(--t-h1));letter-spacing:-.015em;margin:0 0 var(--s3);max-width:26ch;line-height:1.12;font-weight:var(--w-head);text-wrap:balance}.lede{font-size:var(--t-lede);color:var(--text-2);max-width:var(--measure);margin:0 0 var(--s4);text-wrap:pretty;line-height:1.5}.meta{align-items:center;gap:var(--s2);font:var(--ui-xs)/1.4 var(--font-ui);color:var(--text-3);margin:0 0 var(--s2);flex-wrap:wrap;display:flex}.status{background:var(--accent-soft);color:var(--text);font:600 var(--ui-xs)/1.5 var(--font-ui);border-radius:99px;padding:2px 10px;display:inline-block}.status:before{content:"";background:var(--accent);vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.tags{margin:var(--s2) 0 0;flex-wrap:wrap;gap:6px;display:flex}.tag{font:var(--ui-xs)/1.4 var(--font-ui);color:var(--text-2);background:var(--surface-2);border-radius:99px;padding:3px 10px}.prose{max-width:var(--measure);margin-top:var(--s6);border-top:1px solid var(--line);padding-top:var(--s2);hanging-punctuation:first}.prose p{text-wrap:pretty;margin:0 0 1em}[data-align=justify] .prose p,[data-align=justify] .prose li{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.prose h2{font-size:var(--t-h2);letter-spacing:-.01em;line-height:1.25;font-weight:var(--w-head);text-wrap:balance;margin:1.9em 0 .5em}.prose h3{font-size:var(--t-h3);line-height:1.35;font-weight:var(--w-head);margin:1.6em 0 .4em}.prose h4{font:600 var(--ui-xs)/1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--text-2);margin:var(--s5) 0 var(--s2)}.prose ul,.prose ol{margin:0 0 1em;padding-left:1.3em}.prose li{margin:.3em 0}.prose li::marker{color:var(--text-3)}.prose strong{font-weight:700}.prose hr{border:0;border-top:1px solid var(--line);margin:var(--s7) 0}.prose blockquote{border-left:3px solid var(--line);color:var(--text-2);margin:1.2em 0;padding:0 0 0 1em}.prose mark{background:var(--mark);color:inherit;border-radius:2px;padding:0 2px}.anchor{margin-left:var(--s2);color:var(--text-3);opacity:0;transition:opacity var(--t-fast);font-weight:400;text-decoration:none}h2:hover .anchor,h3:hover .anchor,.anchor:focus{opacity:1}code{font:.85em var(--font-mono);background:var(--surface-2);border-radius:4px;padding:1px 5px}pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px var(--s4);max-width:100%;font-size:14px;line-height:1.55;overflow-x:auto}pre code{font-size:inherit;background:0 0;padding:0}.num,.prose td,.stats b{font-variant-numeric:lining-nums tabular-nums}.nowrap{white-space:nowrap}mjx-container{color:inherit}mjx-container[display=true]{max-width:100%;padding:2px 0;overflow:auto hidden;margin:1.1em 0!important}.prose .eq-note{font:var(--ui-xs)/1.45 var(--font-ui);color:var(--text-3);margin-top:-.6em}.env{border-left:2px solid var(--line);margin:1.4em 0;padding:.1em 0 .1em 1.1em}.env>p:last-child{margin-bottom:0}.env-head{font-style:normal}.env-head b{font-weight:700}.env-head .env-name{font-weight:400}.theorem,.lemma,.proposition,.corollary,.conjecture{border-left-color:var(--accent);font-style:italic}.theorem .env-head,.lemma .env-head,.proposition .env-head,.corollary .env-head,.conjecture .env-head,.theorem em,.lemma em,.proposition em,.corollary em,.definition,.assumption,.example{font-style:normal}.remark .env-head b{font-style:italic;font-weight:400}.proof{border-left:0;padding-left:0}.proof>.env-head i{font-style:italic}.proof>p:last-child:after{content:"∎";float:right;color:var(--text-2);margin-left:.6em}.table-wrap{max-width:100%;margin:1.6em 0;overflow-x:auto}.table-wrap.wide{max-width:none}.prose table{border-collapse:collapse;width:100%;font:var(--ui-s)/1.45 var(--font-ui);border-top:1.5px solid var(--line-strong);border-bottom:1.5px solid var(--line-strong)}.prose caption{caption-side:top;text-align:left;padding:0 0 var(--s2);font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-2)}.prose caption b{color:var(--text)}.table-fig{margin:1.6em 0}.table-fig>figcaption{margin:0 0 var(--s2)}.table-fig>.table-wrap{margin:0}.prose th,.prose td{padding:9px var(--s3);text-align:left;vertical-align:top}.prose thead th{border-bottom:1px solid var(--line-strong);color:var(--text);white-space:nowrap;vertical-align:bottom;font-weight:600}.prose tbody tr+tr td{border-top:1px solid var(--line)}.prose td.num,.prose th.num{text-align:right;white-space:nowrap}.prose td.best{font-weight:700}.prose td.second{text-underline-offset:3px;text-decoration:underline}.prose td.bad{color:var(--warn)}.prose tr.group td{color:var(--text-2);border-top:1px solid var(--line-strong);padding-top:14px;font-weight:600}.prose .table-note{font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-3);margin:calc(-1 * var(--s3)) 0 var(--s5)}.callout{--c:var(--note);border-radius:var(--radius);background:color-mix(in srgb, var(--c) 9%, var(--bg));border-left:3px solid var(--c);margin:1.4em 0;padding:14px 18px}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout .label{font:700 var(--ui-xs)/1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--c);margin-bottom:var(--s1);display:block}.callout.key{--c:var(--key)}.callout.warn{--c:var(--warn)}.callout.defend{--c:var(--defend)}[data-theme=contrast] .callout{border:1px solid var(--c);background:0 0;border-left-width:4px}.qa{margin:var(--s3) 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.qa>summary{cursor:pointer;gap:var(--s3);padding:14px 18px;font-weight:600;line-height:1.4;list-style:none;display:flex}.qa>summary::-webkit-details-marker{display:none}.qa>summary:before{content:"Q";font:700 var(--ui-xs)/26px var(--font-ui);text-align:center;background:var(--accent-soft);width:26px;height:26px;color:var(--accent);border-radius:7px;flex:none}.qa>summary:after{content:"";border-right:2px solid var(--text-3);border-bottom:2px solid var(--text-3);width:9px;height:9px;transition:transform var(--t-fast) var(--ease);flex:none;margin-top:7px;margin-left:auto;transform:rotate(45deg)}.qa[open]>summary:after{margin-top:11px;transform:rotate(-135deg)}.qa[open]>summary{border-bottom:1px solid var(--line)}.qa>.answer{padding:var(--s3) 18px var(--s4)}.qa>.answer>:last-child{margin-bottom:0}.qa .asked{font:var(--ui-xs) var(--font-ui);color:var(--text-3)}figure{margin:1.8em 0}figure img,figure svg{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);max-width:100%;height:auto}figcaption{font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-2);margin-top:var(--s2);max-width:var(--measure)}figcaption b{color:var(--text)}.stats{gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));max-width:none;margin:1.4em 0;list-style:none;display:grid;padding:0!important}.stats li{padding:var(--s4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-family:var(--font-ui);margin:0}.stats b{letter-spacing:-.015em;margin-bottom:6px;font-size:26px;font-weight:650;line-height:1.2;display:block}.stats span{font-size:var(--ui-xs);color:var(--text-2);line-height:1.4;display:block}.stats span.gl{font-size:inherit;color:inherit;display:inline}.steps{counter-reset:step;list-style:none;padding:0!important}.steps>li{counter-increment:step;margin:var(--s4) 0;padding-left:42px;position:relative}.steps>li:before{content:counter(step);background:var(--accent-soft);width:28px;height:28px;color:var(--accent);font:700 var(--ui-xs)/28px var(--font-ui);text-align:center;border-radius:50%;position:absolute;top:.1em;left:0}.file-list{margin:var(--s5) 0;max-width:none;list-style:none;padding:0!important}.file-card{gap:var(--s3);padding:var(--s4);margin:0 0 var(--s3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-family:var(--font-ui);grid-template-columns:32px 1fr auto;align-items:start;max-width:none;display:grid}.file-card a{font-weight:600;font-size:var(--ui-m);text-decoration:none}.file-card a:hover{text-decoration:underline}.file-card p{font-size:var(--ui-xs);color:var(--text-2);margin:3px 0 0;line-height:1.45}.file-step{background:var(--surface-2);width:28px;height:28px;color:var(--text-2);font:700 var(--ui-xs)/28px var(--font-ui);text-align:center;border-radius:50%}.file-meta{font-size:var(--ui-xs);color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;padding-top:2px}.sources{padding-left:1.6em}.sources li{margin:.6em 0;padding-left:.2em}.sources li::marker{font:var(--ui-xs) var(--font-ui);color:var(--text-3)}.verified,.unverified{font:600 12px/1.5 var(--font-ui);white-space:nowrap;border-radius:99px;margin-left:6px;padding:1px 7px}.verified{background:color-mix(in srgb, var(--accent) 14%, var(--bg));color:var(--text)}.unverified{background:color-mix(in srgb, var(--warn) 16%, var(--bg));color:var(--text)}.log{border-left:2px solid var(--line);margin-left:6px;list-style:none;padding:0!important}.log li{padding:0 0 var(--s5) var(--s5);position:relative}.log li:before{content:"";background:var(--bg);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:.45em;left:-7px}.log time{font:600 var(--ui-xs) var(--font-ui);color:var(--text-3);font-variant-numeric:tabular-nums;display:block}.pager{gap:var(--s3);max-width:var(--measure);margin-top:var(--s8);font-family:var(--font-ui);grid-template-columns:1fr 1fr;display:grid}.pager a{padding:14px var(--s4);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-weight:600;font-size:var(--ui-m);transition:border-color var(--t-fast) var(--ease);line-height:1.35;text-decoration:none;display:block}.pager a:hover{border-color:var(--accent)}.pager small{color:var(--text-3);font-weight:400;font-size:var(--ui-xs);margin-bottom:2px;display:block}.pager .next{text-align:right;grid-column:2}.home-main{max-width:1360px;padding:0 var(--s5) 72px;margin:0 auto}.hero{padding:80px 0 var(--s7);font-family:var(--font-body)}.hero h1{letter-spacing:-.025em;margin:0 0 var(--s4);font-size:clamp(40px,6vw,62px);line-height:1.04;font-weight:var(--w-head);text-wrap:balance;max-width:24ch}.hero .lede{max-width:62ch;font-size:21px}.hero-search{margin-top:var(--s5);align-items:center;gap:var(--s3);min-height:52px;padding:0 var(--s4);border-radius:var(--radius-l);border:1px solid var(--line);background:var(--surface);color:var(--text-3);font:var(--ui-m) var(--font-ui);text-decoration:none;display:inline-flex}.hero-search:hover{border-color:var(--accent);color:var(--text)}.section-label{font:600 12px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin:0 0 var(--s4);padding-top:var(--s5);border-top:1px solid var(--line)}.cards{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin:0;padding:0;list-style:none;display:grid}.card a{height:100%;padding:var(--s5);border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);color:var(--text);transition:border-color var(--t-fast) var(--ease);flex-direction:column;text-decoration:none;display:flex}.card a:hover{border-color:var(--accent)}.card h2{font:var(--w-head) 23px/1.25 var(--font-body);margin:var(--s3) 0 var(--s2);letter-spacing:-.01em}.card p{margin:0 0 var(--s3);color:var(--text-2);font:17px/1.5 var(--font-body)}.card .card-meta{align-items:center;gap:var(--s2);font:var(--ui-xs) var(--font-ui);color:var(--text-3);flex-wrap:wrap;margin:0;display:flex}.card .card-foot{font:var(--ui-xs) var(--font-ui);color:var(--text-3);padding-top:var(--s2);margin-top:auto}.card .tags{margin:0}@media (width<=1200px){.layout{grid-template-columns:232px minmax(0,1fr);gap:40px}.toc{display:none}}@media (width<=1023px){.layout{padding:0 var(--s4);display:block}.content{padding-top:var(--s5)}.sidebar{display:none}}@media (width<=820px){.theme-toggle{display:none!important}.home-main{padding:0 var(--s4) 56px}.hero{padding:var(--s6) 0 var(--s6)}.hero-search{width:100%;display:flex}.hero .lede{font-size:19px}.cards{grid-template-columns:1fr}.file-card{grid-template-columns:28px 1fr}.file-meta{grid-column:2}.reader-panel{border-bottom:0;border-radius:18px 18px 0 0;width:auto;max-height:82vh;inset:auto 0 0}.rp-head,.rp-body,.rp-foot{padding-left:var(--s4);padding-right:var(--s4)}.rp-foot{padding-bottom:calc(var(--s4) + env(safe-area-inset-bottom))}}@media print{.topbar,.appnav,.sections,.sidebar,.toc,.pager,.anchor,.reader-panel,.player,.toast{display:none!important}body{padding:0!important}.layout{display:block}.qa{break-inside:avoid}:root{--bg:#fff;--text:#000}}.prose{counter-reset:env}.env:not(.proof):not(.env-fixed){counter-increment:env}.env-num:before{content:" " counter(env)}:root{--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a}[data-mode=dark]{--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70}@media (prefers-color-scheme:dark){:root:not([data-mode]){--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70}}.chart{max-width:none;font-family:var(--font-ui);margin:1.8em 0}.chart-title{margin:0 0 var(--s2);font:600 var(--ui-s)/1.4 var(--font-ui);color:var(--text)}.chart-legend{gap:var(--s1) var(--s4);margin:0 0 var(--s2);font-size:var(--ui-xs);color:var(--text-2);flex-wrap:wrap;list-style:none;display:flex;padding:0!important}.chart-legend li{align-items:center;gap:var(--s2);margin:0;display:flex}.chart-key{border-radius:1px;flex:none;width:16px;height:2px;display:inline-block}.chart-key-dot{border-radius:50%;width:10px;height:10px}.chart-key-bar{border-radius:2px;width:10px;height:10px}.chart-plot{width:100%}.chart-plot svg{overflow:visible}.chart-tip{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-s);padding:var(--s2) var(--s3);font-size:var(--ui-xs);color:var(--text);box-shadow:0 6px 20px #00000024}[data-mode=dark] .chart-tip{background:color-mix(in srgb, var(--text) 9%, var(--bg))}.chart-tip p{align-items:center;gap:var(--s2);margin:2px 0;display:flex}.chart-tip b{padding-left:var(--s4);font-variant-numeric:tabular-nums;margin-left:auto}.chart-tip .chart-tip-head{color:var(--text-3)}.chart figcaption{margin-top:var(--s2)}.chart-data{margin-top:var(--s2);font-size:var(--ui-xs)}.chart-data summary{cursor:pointer;color:var(--accent);width:max-content}.chart-data .table-wrap{margin:var(--s2) 0 0}.refresh-open svg{transition:transform var(--t-med) var(--ease)}.refresh-open[aria-busy=true] svg{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{z-index:60;left:50%;bottom:var(--s5);align-items:center;gap:var(--s2);width:max-content;max-width:min(440px,100vw - 32px);padding:12px var(--s4);border-radius:var(--radius);background:var(--text);color:var(--bg);font:500 var(--ui-xs)/1.4 var(--font-ui);opacity:0;transition:opacity var(--t-med) var(--ease), transform var(--t-med) var(--ease);display:flex;position:fixed;transform:translate(-50%,8px);box-shadow:0 10px 30px #00000038}.toast.show{opacity:1;transform:translate(-50%)}.toast:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.toast[data-kind=ok]:before{background:var(--series-3)}.toast[data-kind=error]:before{background:var(--warn)}.progress{pointer-events:none;height:2px;position:absolute;bottom:-1px;left:0;right:0}.progress span{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.page-tools{align-items:center;gap:var(--s2) var(--s3);margin:var(--s4) 0 0;font:var(--ui-xs)/1.4 var(--font-ui);color:var(--text-3);flex-wrap:wrap;display:flex}.read-time{margin-right:var(--s1)}.tool-row{gap:var(--s2);flex-wrap:wrap;display:flex}.tool{height:34px;padding:0 var(--s3);border:1px solid var(--line);color:var(--text-2);font:500 var(--ui-xs) var(--font-ui);cursor:pointer;background:0 0;border-radius:99px;align-items:center;text-decoration:none;display:inline-flex}.tool:hover{color:var(--text);border-color:var(--text-3)}.tool[aria-pressed=true]{background:var(--accent-soft);color:var(--text);border-color:#0000}.depth{background:var(--surface-2);border-radius:99px;padding:3px;display:inline-flex}.depth button{height:28px;padding:0 var(--s3);color:var(--text-2);font:500 var(--ui-xs) var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:99px}.depth button[aria-checked=true]{background:var(--bg);color:var(--text);box-shadow:0 1px 3px #0000001f}.link-btn{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.takeaways{max-width:var(--measure);margin:var(--s5) 0 0;padding:var(--s4) var(--s5);border-radius:var(--radius);background:var(--accent-soft)}.takeaways .label{margin:0 0 var(--s2);font:600 12px/1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-2)}.takeaways ul{margin:0;padding-left:1.2em}.takeaways li{margin:.25em 0}.takeaways li::marker{color:var(--accent)}[data-depth=short] .takeaways{outline:2px solid var(--accent);outline-offset:-2px}.deep-stub{width:100%;padding:10px var(--s4);border:1px dashed var(--line);border-radius:var(--radius);color:var(--text-2);font:var(--ui-xs)/1.4 var(--font-ui);text-align:left;cursor:pointer;justify-content:space-between;gap:var(--s3);background:0 0;margin:1em 0;display:none}.deep-stub span{color:var(--text);font-weight:600}.deep-stub small{color:var(--accent);font-size:inherit;white-space:nowrap}.deep-stub:hover{border-color:var(--accent)}[data-depth=short] .deep:not(.open)>.deep-body,[data-depth=standard] .deep[data-level=full]:not(.open)>.deep-body{display:none}[data-depth=short] .deep:not(.open)>.deep-stub,[data-depth=standard] .deep[data-level=full]:not(.open)>.deep-stub{display:flex}.explain{margin:-.4em 0 1.2em;font-size:.94em}.explain summary{cursor:pointer;width:max-content;max-width:100%;color:var(--accent);font:500 var(--ui-xs)/1.6 var(--font-ui)}.explain-body{margin-top:var(--s2);padding:var(--s3) var(--s4);border-radius:var(--radius-s);background:var(--surface-2)}.explain-body>:last-child{margin-bottom:0}.flow-fig{max-width:none;margin:1.6em 0}.flow{counter-reset:flow;gap:28px;margin:0;list-style:none;display:flex;padding:0!important}.flow li{padding:var(--s3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font:var(--ui-xs)/1.45 var(--font-ui);color:var(--text-2);counter-increment:flow;flex:1 1 0;margin:0;position:relative}.flow li b{margin-bottom:var(--s1);color:var(--text);font-weight:600;display:block}.flow li b:before{content:counter(flow);width:20px;height:20px;margin-right:var(--s2);background:var(--accent-soft);color:var(--text);border-radius:50%;place-items:center;font-size:12px;display:inline-grid}.flow li:not(:last-child):after{content:"";background:var(--text-3);clip-path:polygon(0 15%,100% 50%,0 85%);width:14px;height:14px;position:absolute;top:50%;right:-21px;transform:translateY(-50%)}@media (width<=820px){.flow{flex-direction:column;gap:22px}.flow li:not(:last-child):after{inset:auto auto -18px 50%;transform:translate(-50%)rotate(90deg)}}.sn-ref{background:var(--accent-soft);min-width:18px;height:18px;color:var(--text);font:600 11px/1 var(--font-ui);vertical-align:super;cursor:pointer;border:0;border-radius:99px;place-items:center;margin:0 1px 0 2px;padding:0 4px;display:inline-grid}.sn-body{display:none}.sn.open .sn-body{margin:var(--s2) 0;padding:var(--s3) var(--s4);border-left:2px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius-s) var(--radius-s) 0;font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-2);display:block}.sn-margin .sn-ref{cursor:default}.sn-margin .sn-body{float:right;clear:right;width:var(--sn-w,200px);margin-right:calc(-1 * var(--sn-w,200px) - 32px);font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-3);display:block}.sn-margin .sn-body:before{content:attr(data-n) "  ";color:var(--accent);font-weight:600}.fix{padding:var(--s4);border:1px solid var(--line);border-radius:var(--radius);margin:1.4em 0}.fix-head{justify-content:space-between;gap:var(--s2);margin:0 0 var(--s3);font:var(--ui-s)/1.4 var(--font-ui);flex-wrap:wrap;display:flex}.fix-head span{color:var(--text-3);font-size:var(--ui-xs)}.fix-cols{gap:var(--s3);grid-template-columns:1fr 1fr;display:grid}.fix-cols>div{padding:var(--s3);border-radius:var(--radius-s);font-size:.94em}.fix-cols p{margin:0}.fix-cols small{margin-bottom:var(--s1);font:600 12px/1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:flex}.fix-before{background:color-mix(in srgb, var(--warn) 9%, transparent)}.fix-before small{color:var(--text-2)}.fix-before small:before{content:"✕";color:var(--warn)}.fix-after{background:color-mix(in srgb, var(--series-3) 12%, transparent)}.fix-after small{color:var(--text-2)}.fix-after small:before{content:"✓";color:var(--series-3)}.fix-why{margin-top:var(--s3);color:var(--text-2);font-size:.94em}.fix-why>:last-child{margin-bottom:0}@media (width<=640px){.fix-cols{grid-template-columns:1fr}}.explore{margin:1.8em 0}.explore-controls{align-items:flex-end;gap:var(--s3) var(--s5);font:var(--ui-xs)/1.4 var(--font-ui);color:var(--text-2);flex-wrap:wrap;display:flex}.explore-controls label{gap:var(--s1);flex:200px;display:grid}.explore-controls label span{justify-content:space-between;display:flex}.explore-controls output{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.explore-controls input{width:100%;accent-color:var(--accent);height:28px}.explore-readout{margin:var(--s3) 0 0;padding:var(--s3) var(--s4);border-radius:var(--radius-s);background:var(--surface-2);font:var(--ui-s)/1.5 var(--font-ui);color:var(--text);min-height:3em}.explore .chart{margin-top:var(--s4)}.gl{text-decoration:underline dotted var(--text-3);text-underline-offset:4px;cursor:help;border-radius:2px;text-decoration-thickness:1.5px}.gl:hover,.gl:focus-visible{text-decoration-color:var(--accent);background:var(--accent-soft);outline:none}.cite{font:600 .78em var(--font-ui);color:var(--accent);vertical-align:super;padding:0 1px;line-height:0;text-decoration:none}.pop{z-index:55;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font:var(--ui-xs)/1.5 var(--font-ui);color:var(--text-2);position:absolute;box-shadow:0 10px 30px #00000029}[data-mode=dark] .pop{background:color-mix(in srgb, var(--text) 9%, var(--bg))}.pop p{margin:0 0 var(--s2)}.pop .pop-head{color:var(--text);font-weight:600;font-size:var(--ui-s);margin-bottom:var(--s1)}.pop a{color:var(--accent)}.glossary{margin:1em 0}.glossary>div{padding:var(--s3) 0;border-bottom:1px solid var(--line);scroll-margin-top:80px}.glossary dt{font-weight:700}.glossary dt small{font:400 var(--ui-xs) var(--font-ui);color:var(--text-3);margin-left:var(--s2)}.glossary dd{margin:var(--s1) 0 0;color:var(--text-2)}.glossary>div:target{background:var(--accent-soft);border-radius:var(--radius-s);padding-left:var(--s3)}.sources li{scroll-margin-top:80px}.sources li:target{background:var(--accent-soft);border-radius:var(--radius-s)}.src-note{color:var(--text-2)}.src-actions{gap:var(--s3);margin-left:var(--s2);font:var(--ui-xs) var(--font-ui);display:inline-flex}.speaking{background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:var(--radius-s);box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 14%, transparent)}.player{z-index:58;left:50%;bottom:calc(var(--s4) + env(safe-area-inset-bottom));align-items:center;gap:var(--s1);background:var(--text);color:var(--bg);font:500 var(--ui-xs) var(--font-ui);border-radius:99px;padding:6px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000040}.player button{min-width:44px;height:44px;padding:0 var(--s2);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:99px;place-items:center;display:grid}.player button:hover{background:color-mix(in srgb, var(--bg) 14%, transparent)}.player .primary{background:var(--bg);color:var(--text)}.player .primary:hover{background:var(--bg)}.player .pos{padding:0 var(--s2);white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.8}.player~.toast{bottom:84px}.focus .sidebar,.focus .toc,.focus .pager,.focus .appnav,.focus .sections{display:none!important}.focus body{padding-bottom:0;padding-left:0}.focus .layout{max-width:calc(var(--measure) + 360px);grid-template-columns:minmax(0,1fr)}.focus .content{width:min(100%, calc(var(--measure) + 300px));justify-self:center}.quiz{z-index:70;padding:var(--s4);background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.quiz-card{width:min(560px,100%);max-height:calc(100vh - 32px);padding:var(--s5);border-radius:var(--radius-l);background:var(--bg);color:var(--text);font:var(--ui-s)/1.5 var(--font-ui);overflow:auto;box-shadow:0 20px 60px #0000004d}.quiz-top{justify-content:space-between;align-items:center;display:flex}.quiz-count{color:var(--text-3);font-size:var(--ui-xs);margin:0}.quiz-x{width:40px;height:40px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:24px}.quiz-q,.quiz-card h2{margin:var(--s3) 0 var(--s4);font:var(--w-head) 22px/1.35 var(--font-body)}.quiz-a{padding:var(--s4);border-radius:var(--radius);background:var(--surface-2);font:var(--fs)/var(--lh) var(--font-body)}.quiz-a>:last-child,.quiz-a .answer>:last-child{margin-bottom:0}.quiz-actions{justify-content:flex-end;gap:var(--s2);margin-top:var(--s4);display:flex}.quiz-actions button,.sel-actions button{height:44px;padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font:600 var(--ui-xs) var(--font-ui);cursor:pointer;background:0 0}.quiz-actions .primary,.sel-actions .primary{background:var(--text);color:var(--bg);border-color:#0000}mark.hl{background:var(--mark);color:inherit;cursor:pointer;border-radius:2px}mark.hl.has-note:after{content:"";background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin:0 0 .5em 2px;display:inline-block}.sel-pop{z-index:56;border-radius:var(--radius);background:var(--text);gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 10px 30px #00000040}.sel-pop>button{height:38px;padding:0 var(--s3);border-radius:var(--radius-s);color:var(--bg);font:600 var(--ui-xs) var(--font-ui);cursor:pointer;background:0 0;border:0}.sel-pop>button:hover{background:color-mix(in srgb, var(--bg) 16%, transparent)}.sel-pop.editing{width:min(320px,100vw - 32px);padding:var(--s3);background:var(--surface);border:1px solid var(--line);display:block}.sel-note{gap:var(--s1);font:600 var(--ui-xs) var(--font-ui);color:var(--text-2);display:grid}.sel-note textarea{box-sizing:border-box;width:100%;padding:var(--s2);border:1px solid var(--line);border-radius:var(--radius-s);background:var(--bg);color:var(--text);font:400 var(--ui-s)/1.45 var(--font-ui);resize:vertical}.sel-actions{justify-content:flex-end;gap:var(--s2);margin-top:var(--s2);display:flex}.sel-actions button{height:38px}.notes-main{max-width:calc(var(--measure) + 48px);padding:var(--s6) var(--s5) var(--s8);font:var(--fs)/var(--lh) var(--font-body);margin:0 auto}.notes-main h1{font-size:clamp(1.75em, 5vw, var(--t-h1));margin:0 0 var(--s3);font-weight:var(--w-head)}.note-group{margin-top:var(--s6)}.note-group h2{font-size:var(--t-h3);margin:0}.note-group h2 a{color:var(--text);text-decoration:none}.note-project{margin:0 0 var(--s3);font:var(--ui-xs) var(--font-ui);color:var(--text-3)}.note-group ul{margin:0;padding:0;list-style:none}.note-group li{padding:var(--s3) 0;border-top:1px solid var(--line)}.note-group blockquote{padding-left:var(--s3);border-left:3px solid var(--mark);margin:0}.note-group blockquote a{color:var(--text);text-decoration:none}.note-group li p{margin:var(--s2) 0;color:var(--text-2)}.note-group .link-btn{font:var(--ui-xs) var(--font-ui)}.empty-note{color:var(--text-2)}@media print{.page-tools,.progress,.player,.pop,.sel-pop,.deep-stub,.sn-ref,.toast,.explore-controls{display:none!important}.deep-body{display:block!important}.sn-body{font-style:italic;float:none!important;width:auto!important;margin:0!important;display:inline!important}.sn-body:before{content:" ("!important}.sn-body:after{content:")"}.content{padding:0}.takeaways{border:1px solid var(--text-3);background:0 0}}@media (width<=1023px){.player,.toast{bottom:calc(var(--nav-h) + var(--safe-b) + var(--s3))}.player~.toast{bottom:calc(var(--nav-h) + var(--safe-b) + 84px)}.focus .player{bottom:calc(var(--s4) + var(--safe-b))}}.cover{--cover-bg:color-mix(in srgb, var(--accent) 9%, var(--surface));background:var(--cover-bg);overflow:hidden}.cover svg{width:100%;height:100%;display:block}.cover-page{height:148px;margin:var(--s4) 0 var(--s5);border-radius:var(--radius-l);border:1px solid var(--line)}.cover-page.cover-first{height:200px}@media (width>=768px){.cover-page{height:180px}.cover-page.cover-first{height:260px}}.cover-card{height:132px;margin:calc(-1 * var(--s5)) calc(-1 * var(--s5)) var(--s4);border-bottom:1px solid var(--line);border-radius:calc(var(--radius-l) - 1px) calc(var(--radius-l) - 1px) 0 0;flex:none}.hero{isolation:isolate;position:relative}.cover-hero{z-index:-1;inset:0 calc(-1 * var(--s5));background:0 0;position:absolute;-webkit-mask-image:linear-gradient(#000,#00000080 55%,#0000);mask-image:linear-gradient(#000,#00000080 55%,#0000)}.cover-hero svg{opacity:.7}.focus .cover-page{display:none}@media print{.cover{display:none}}@media (hover:none){.sel-pop>button{height:44px;padding:0 var(--s4)}}.sel-pop.sheet{left:var(--s4);right:var(--s4);bottom:calc(var(--s4) + var(--safe-b));width:auto;padding:var(--s4);border-radius:var(--radius-l);position:fixed;top:auto}.sel-pop.sheet .sel-actions button{height:44px}@media (width<=1023px){.reading .appnav{display:none}body.reading{padding-bottom:var(--safe-b)}.reading .player,.reading .toast{bottom:calc(var(--s4) + var(--safe-b))}.reading .player~.toast{bottom:calc(84px + var(--safe-b))}}.sel-pop[hidden]{display:none}
