:root{color-scheme:light;--bg:#f8fafc;--surface:#ffffff;--tint:#eff3f8;--line:#dee3eb;--line-strong:#c6cfda;--field:#7f8794;--ink:#1b2330;--ink-2:#3f4857;--muted:#5c6471;--accent:#3957c5;--accent-line:#c7d7ff;--backdrop:rgb(15 23 42 / .45);--shadow-lift:0 14px 32px -16px rgb(15 23 42 / .32);--show-sun:none;--show-moon:block;--icon-search:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%226.5%22%2F%3E%3Cpath%20d%3D%22m20%2020-4.2-4.2%22%2F%3E%3C%2Fsvg%3E");--icon-chevron-right:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%206%206%206-6%206%22%2F%3E%3C%2Fsvg%3E");--icon-chevron-down:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E");--icon-check:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%2012.5%204.2%204.2L19%207%22%2F%3E%3C%2Fsvg%3E");--icon-note:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020h4L19.5%208.5a2.1%202.1%200%200%200-3-3L5%2017z%22%2F%3E%3Cpath%20d%3D%22m14.5%207.5%202%202%22%2F%3E%3C%2Fsvg%3E");--icon-summary:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%206.5h11M9%2012h11M9%2017.5h11M4.5%206.5h.01M4.5%2012h.01M4.5%2017.5h.01%22%2F%3E%3C%2Fsvg%3E");--icon-tip:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9.5%2018h5M10.5%2021h3%22%2F%3E%3Cpath%20d%3D%22M12%203a6%206%200%200%200-3.7%2010.7c.7.6%201.2%201.4%201.2%202.3v.5h5V16c0-.9.5-1.7%201.2-2.3A6%206%200%200%200%2012%203z%22%2F%3E%3C%2Fsvg%3E");--icon-success:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.5%22%2F%3E%3Cpath%20d%3D%22m8.2%2012.3%202.6%202.6%205-5.4%22%2F%3E%3C%2Fsvg%3E");--icon-question:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.5%22%2F%3E%3Cpath%20d%3D%22M9.6%209.4a2.5%202.5%200%200%201%204.8.8c0%201.7-2.4%202.2-2.4%203.8M12%2017.2h.01%22%2F%3E%3C%2Fsvg%3E");--icon-warning:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%204.2%2020.7%2019.3H3.3z%22%2F%3E%3Cpath%20d%3D%22M12%2010v4.2M12%2016.9h.01%22%2F%3E%3C%2Fsvg%3E");--icon-danger:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%202.8%205.2%2013.6h6l-1%207.6%207.8-10.8h-6z%22%2F%3E%3C%2Fsvg%3E");--icon-example:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9.5%203.5h5M10.5%203.5v5.2l-4.9%208.7a2.2%202.2%200%200%200%201.9%203.1h9a2.2%202.2%200%200%200%201.9-3.1l-4.9-8.7V3.5M7.6%2014.5h8.8%22%2F%3E%3C%2Fsvg%3E");--icon-quote:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%208H6.5v4.5H10M10%208v5c0%202.4-1.2%203.8-3.4%204.4M17.5%208H14v4.5h3.5M17.5%208v5c0%202.4-1.2%203.8-3.4%204.4%22%2F%3E%3C%2Fsvg%3E");--font-ui:"Segoe UI Variable Text","Segoe UI Variable","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--font-display:"Segoe UI Variable Display","Segoe UI Variable","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--font-mono:"Cascadia Code","Cascadia Mono",ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--font-brand:"Palatino Linotype","Book Antiqua",Palatino,"Iowan Old Style",Georgia,serif;--topbar-height:56px;--radius:8px}
.callout-note{--c:#0268a5}
.callout-summary{--c:#3f5bb8}
.callout-tip{--c:#017558}
.callout-success{--c:#02782e}
.callout-question{--c:#8a5601}
.callout-warning{--c:#9a4901}
.callout-danger{--c:#a8353a}
.callout-example{--c:#7847a6}
.callout-quote{--c:#5c6471}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#0e131c;--surface:#151b26;--tint:#1c2330;--line:#272e3b;--line-strong:#3a4353;--field:#646c7b;--ink:#dfe3eb;--ink-2:#bbc1cc;--muted:#9ca3b0;--accent:#97b3ff;--accent-line:#364670;--backdrop:rgb(0 0 0 / .6);--shadow-lift:0 16px 36px -16px rgb(0 0 0 / .75);--show-sun:block;--show-moon:none}
:root:not([data-theme=light]) .callout-note{--c:#79c2ff}
:root:not([data-theme=light]) .callout-summary{--c:#9eb8ff}
:root:not([data-theme=light]) .callout-tip{--c:#60d3ac}
:root:not([data-theme=light]) .callout-success{--c:#83d08e}
:root:not([data-theme=light]) .callout-question{--c:#ecac5f}
:root:not([data-theme=light]) .callout-warning{--c:#f7a470}
:root:not([data-theme=light]) .callout-danger{--c:#fe9b98}
:root:not([data-theme=light]) .callout-example{--c:#cca7f8}
:root:not([data-theme=light]) .callout-quote{--c:#9ca3b0}}
:root[data-theme=dark]{color-scheme:dark;--bg:#0e131c;--surface:#151b26;--tint:#1c2330;--line:#272e3b;--line-strong:#3a4353;--field:#646c7b;--ink:#dfe3eb;--ink-2:#bbc1cc;--muted:#9ca3b0;--accent:#97b3ff;--accent-line:#364670;--backdrop:rgb(0 0 0 / .6);--shadow-lift:0 16px 36px -16px rgb(0 0 0 / .75);--show-sun:block;--show-moon:none}
:root[data-theme=dark] .callout-note{--c:#79c2ff}
:root[data-theme=dark] .callout-summary{--c:#9eb8ff}
:root[data-theme=dark] .callout-tip{--c:#60d3ac}
:root[data-theme=dark] .callout-success{--c:#83d08e}
:root[data-theme=dark] .callout-question{--c:#ecac5f}
:root[data-theme=dark] .callout-warning{--c:#f7a470}
:root[data-theme=dark] .callout-danger{--c:#fe9b98}
:root[data-theme=dark] .callout-example{--c:#cca7f8}
:root[data-theme=dark] .callout-quote{--c:#9ca3b0}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-height) + 24px)}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
a{color:var(--accent)}
button,input{font:inherit;color:inherit}
::selection{background:var(--accent-line);color:var(--ink)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:12px;top:-80px;z-index:100;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);text-decoration:none}
.skip-link:focus{top:12px}
.i{flex:none;width:18px;height:18px}
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;height:var(--topbar-height);padding:0 clamp(14px,2.4vw,28px);border-bottom:1px solid var(--line);background:var(--bg)}
.brand{flex:none;color:var(--ink);font:600 1.22rem/1 var(--font-brand);letter-spacing:.005em;text-decoration:none}
.brand span{font-style:italic;font-weight:400}
.topbar-sep{flex:none;width:1px;height:18px;background:var(--line-strong)}
.topbar-collection{min-width:0;overflow:hidden;color:var(--ink-2);font-size:.92rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}
.topbar-collection:hover{color:var(--ink);text-decoration:underline}
.topbar-actions{display:flex;align-items:center;gap:4px;margin-left:auto}
.icon-button{display:inline-grid;flex:none;place-items:center;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:var(--radius);background:none;color:var(--ink-2);cursor:pointer}
.icon-button:hover{border-color:var(--line);color:var(--ink)}
.icon-sun{display:var(--show-sun)}
.icon-moon{display:var(--show-moon)}
.nav-toggle{display:none}
.layout{display:grid;grid-template-columns:272px minmax(0,1fr);max-width:1440px;margin:0 auto}
.layout.has-rail{grid-template-columns:272px minmax(0,1fr) 220px}
main{min-width:0;padding:40px clamp(20px,4vw,56px) 0}
.reading-page{justify-self:center;width:100%;max-width:calc(44rem + 2 * clamp(20px,4vw,56px))}
.collection-home{justify-self:center;width:100%;max-width:calc(50rem + 2 * clamp(20px,4vw,56px))}
.sidebar{position:sticky;top:var(--topbar-height);align-self:start;height:calc(100vh - var(--topbar-height));height:calc(100dvh - var(--topbar-height));overflow-y:auto;overscroll-behavior:contain;padding:22px 12px 48px 18px;border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
.sidebar:focus{outline:none}
.sidebar-head{padding:0 8px 14px}
.collection-label{display:block;color:var(--ink);font-weight:600;text-decoration:none}
.collection-label:hover{text-decoration:underline}
.sidebar-head p{margin:2px 0 0;color:var(--muted);font-size:.8rem}
.search-field{position:relative}
.search-field::before{content:"";position:absolute;top:50%;left:11px;width:15px;height:15px;margin-top:-7.5px;background:var(--muted);pointer-events:none;-webkit-mask:var(--icon-search) center/contain no-repeat;mask:var(--icon-search) center/contain no-repeat}
.search-field input{width:100%;border:1px solid var(--field);border-radius:var(--radius);background:var(--surface);color:var(--ink);-webkit-appearance:none;appearance:none}
.search-field input::placeholder{color:var(--muted);opacity:1}
.search-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}
.sidebar .search-field{margin:0 0 12px}
#nav-filter{height:34px;padding:0 10px 0 33px;font-size:.86rem}
.tree ul{margin:0;padding:0;list-style:none}
.tree ul ul{margin:1px 0 6px 14px;padding:0 0 0 8px;border-left:1px solid var(--line)}
.tree a,.tree summary{display:flex;align-items:baseline;gap:8px;padding:5px 8px;border-radius:6px;color:var(--ink-2);font-size:.86rem;line-height:1.4;text-decoration:none}
.tree a:hover,.tree summary:hover{background:var(--tint);color:var(--ink)}
.tree a[aria-current=page]{background:var(--tint);box-shadow:inset 2px 0 0 var(--accent);color:var(--ink);font-weight:600}
.tree summary{color:var(--ink);font-weight:600;cursor:pointer;list-style:none}
.tree summary::-webkit-details-marker{display:none}
.tree summary::before{content:"";flex:none;align-self:center;width:12px;height:12px;margin:0 -2px 0 -4px;background:var(--muted);transition:transform .15s;-webkit-mask:var(--icon-chevron-right) center/contain no-repeat;mask:var(--icon-chevron-right) center/contain no-repeat}
.tree details[open]>summary::before{transform:rotate(90deg)}
.tree .n{flex:none;min-width:1.4rem;color:var(--muted);font:400 .74rem/1 var(--font-mono);font-variant-numeric:tabular-nums}
.tree .t{min-width:0;overflow-wrap:anywhere}
.tree .count{margin-left:auto;color:var(--muted);font-size:.74rem;font-weight:400;font-variant-numeric:tabular-nums}
.tree a.is-read::after,.note-list a.is-read::after{content:"";flex:none;align-self:center;width:13px;height:13px;margin-left:auto;background:var(--muted);-webkit-mask:var(--icon-check) center/contain no-repeat;mask:var(--icon-check) center/contain no-repeat}
.hero{padding:8px 0 0}
.collection-intro{max-width:38rem;margin:0 0 6px;color:var(--ink-2);font-size:1.06rem;line-height:1.6}
.collection-stats{margin:0;color:var(--muted);font-size:.86rem;font-variant-numeric:tabular-nums}
.search-panel{position:sticky;top:var(--topbar-height);z-index:6;margin:16px 0 0;padding:12px 0;background:var(--bg)}
#note-search{height:42px;padding:0 14px 0 34px;font-size:.96rem}
.search-status{margin:8px 0 0;color:var(--muted);font-size:.82rem}
.search-status:empty{display:none}
.area{margin:30px 0 0;scroll-margin-top:72px}
.area-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 16px;padding:0 0 8px;border-bottom:1px solid var(--line-strong)}
.area-header h2{margin:0;font:600 1.15rem/1.3 var(--font-display);letter-spacing:-.005em}
.area-header p{margin:0;color:var(--muted);font-size:.84rem}
.folder{border-bottom:1px solid var(--line);scroll-margin-top:72px}
.folder>summary{display:grid;grid-template-columns:1.75rem minmax(0,1fr) auto 14px;align-items:baseline;gap:4px 12px;padding:12px 4px;cursor:pointer;list-style:none}
.folder>summary::-webkit-details-marker{display:none}
.folder>summary::after{content:"";grid-column:4;grid-row:1;align-self:center;width:14px;height:14px;background:var(--muted);transition:transform .15s;-webkit-mask:var(--icon-chevron-down) center/contain no-repeat;mask:var(--icon-chevron-down) center/contain no-repeat}
.folder[open]>summary::after{transform:rotate(180deg)}
.folder>summary:hover .folder-name{text-decoration:underline;text-underline-offset:.2em}
.folder-number{grid-column:1;color:var(--muted);font:400 .8rem/1 var(--font-mono);font-variant-numeric:tabular-nums}
.folder-name{grid-column:2;min-width:0;color:var(--ink);font-weight:600}
.folder-meta{grid-column:3;color:var(--muted);font-size:.84rem;text-align:right;font-variant-numeric:tabular-nums}
.note-list{margin:0;padding:0;list-style:none}
.folder .note-list{padding:0 0 14px calc(1.75rem + 10px);columns:2 17rem;column-gap:32px}
.note-list li{break-inside:avoid}
.note-list a{display:flex;align-items:baseline;gap:10px;padding:4px 6px;border-radius:6px;color:var(--ink-2);font-size:.92rem;line-height:1.45;text-decoration:none}
.note-list a:hover{background:var(--tint);color:var(--ink)}
.note-number{flex:none;min-width:1.5rem;color:var(--muted);font:400 .74rem var(--font-mono);font-variant-numeric:tabular-nums}
.note-title{min-width:0;overflow-wrap:anywhere}
.note-group{break-after:avoid;padding:10px 6px 2px;color:var(--muted);font-size:.78rem;font-weight:600}
.area-root .note-list a{padding:11px 4px;border-bottom:1px solid var(--line);border-radius:0}
.area-root .note-list a:hover{background:none;color:var(--accent)}
#empty-search{margin:24px 0;color:var(--muted)}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;margin:0 0 14px;padding:0;color:var(--muted);font-size:.84rem;list-style:none}
.breadcrumb li{min-width:0}
.breadcrumb li+li::before{content:"/";margin:0 8px;color:var(--line-strong)}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--ink);text-decoration:underline}
.page-title{margin:0 0 10px;font:650 clamp(1.85rem,1.4rem + 1.7vw,2.4rem)/1.15 var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance}
.reading-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:0 0 28px;padding:0 0 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.86rem;font-variant-numeric:tabular-nums}
.chip-button{margin-left:auto;padding:0;border:0;background:none;color:var(--accent);font-size:.86rem;cursor:pointer}
.chip-button:hover{text-decoration:underline}
.link-button{padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer}
.toc-inline{margin:0 0 24px;border:1px solid var(--line);border-radius:var(--radius)}
.toc-inline>summary{display:flex;align-items:center;gap:8px;padding:9px 14px;color:var(--ink-2);font-size:.88rem;font-weight:600;cursor:pointer;list-style:none}
.toc-inline>summary::-webkit-details-marker{display:none}
.toc-inline>summary::after{content:"";width:14px;height:14px;margin-left:auto;background:var(--muted);transition:transform .15s;-webkit-mask:var(--icon-chevron-down) center/contain no-repeat;mask:var(--icon-chevron-down) center/contain no-repeat}
.toc-inline[open]>summary::after{transform:rotate(180deg)}
.toc-inline ol{margin:0;padding:0 14px 12px;list-style:none}
.toc-inline a,.toc-rail a{display:block;color:var(--muted);line-height:1.4;text-decoration:none}
.toc-inline a{padding:4px 0;font-size:.88rem}
.toc-inline .toc-3 a{padding-left:14px}
.toc-rail{position:sticky;top:var(--topbar-height);align-self:start;max-height:calc(100dvh - var(--topbar-height));overflow:auto;padding:44px 20px 40px 4px}
.toc-title{margin:0 0 8px;color:var(--ink-2);font-size:.82rem;font-weight:600}
.toc-rail ol{margin:0;padding:0;border-left:1px solid var(--line);list-style:none}
.toc-rail a{margin-left:-1px;padding:4px 0 4px 12px;border-left:1px solid transparent;font-size:.82rem}
.toc-rail .toc-3 a{padding-left:24px}
.toc-inline a:hover,.toc-rail a:hover{color:var(--ink)}
.toc-rail a.is-active{border-left-color:var(--ink);color:var(--ink)}
.toc-inline a.is-active{color:var(--ink)}
.prose{color:var(--ink);font-size:1.0625rem;line-height:1.75;overflow-wrap:break-word}
.prose>:first-child{margin-top:0}
.prose p{margin:0 0 1.1em}
.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:var(--ink);font-family:var(--font-display)}
.prose h1{margin:2em 0 .6em;font-size:1.7rem;font-weight:650;line-height:1.2;letter-spacing:-.015em}
.prose h2{margin:2em 0 .6em;font-size:1.4rem;font-weight:650;line-height:1.3;letter-spacing:-.01em}
.prose h3{margin:1.7em 0 .5em;font-size:1.15rem;font-weight:650;line-height:1.35}
.prose h4,.prose h5,.prose h6{margin:1.6em 0 .45em;color:var(--ink-2);font-size:1.02rem;font-weight:650;line-height:1.4}
.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-decoration-thickness:1px;text-underline-offset:.18em}
.prose a:hover{text-decoration-color:currentColor}
.prose strong{font-weight:650}
.prose ul,.prose ol{margin:0 0 1.15em;padding-left:1.4em}
.prose li{margin:.3em 0}
.prose li>ul,.prose li>ol{margin:.3em 0 .4em}
.prose li::marker{color:var(--muted)}
.prose img{display:block;max-width:100%;height:auto;margin:1.6em auto;border-radius:var(--radius)}
.prose blockquote{margin:1.4em 0;padding:.1em 0 .1em 1.1em;border-left:2px solid var(--line-strong);color:var(--ink-2)}
.prose code{padding:.12em .36em;border-radius:5px;background:var(--tint);color:var(--ink);font-family:var(--font-mono);font-size:.86em}
.prose pre{margin:1.5em 0;padding:14px 16px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:.88rem;line-height:1.6;tab-size:4}
.prose pre code{padding:0;background:none;font-size:inherit}
.code-block{margin:1.5em 0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.code-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:2px 6px 2px 14px;border-bottom:1px solid var(--line);color:var(--muted);font:400 .76rem/1.6 var(--font-mono)}
.code-copy{height:26px;padding:0 8px;border:0;border-radius:6px;background:none;color:var(--muted);font:400 .78rem var(--font-ui);cursor:pointer}
.code-copy:hover{background:var(--tint);color:var(--ink)}
.prose .code-block pre{margin:0;border:0;border-radius:0}
.table-wrap{margin:1.5em 0;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}
.prose table{width:100%;border-collapse:collapse;font-size:.94rem;line-height:1.55}
.prose th{background:var(--tint);font-weight:600;text-align:left}
.prose th,.prose td{padding:9px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.prose tr:last-child td{border-bottom:0}
.prose hr{margin:2.4em 0;border:0;border-top:1px solid var(--line)}
.prose input[type=checkbox]{accent-color:var(--accent)}
.unavailable-link{color:var(--muted);text-decoration:underline dotted;cursor:default}
.embed-reference{display:inline-block;padding:0 8px;border:1px solid var(--line);border-radius:6px}
.attachment-link::after{content:" ↗"}
.callout{margin:1.5em 0;border:1px solid var(--line);border-left:3px solid var(--c);border-radius:0 6px 6px 0;background:var(--tint);color:var(--ink)}
.callout>.callout-title{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px 14px;color:var(--ink);font-weight:600;line-height:1.5}
.callout-title::before{content:"";flex:none;width:17px;height:17px;margin-top:.2em;background:var(--c)}
.callout-note>.callout-title::before{-webkit-mask:var(--icon-note) center/contain no-repeat;mask:var(--icon-note) center/contain no-repeat}
.callout-summary>.callout-title::before{-webkit-mask:var(--icon-summary) center/contain no-repeat;mask:var(--icon-summary) center/contain no-repeat}
.callout-tip>.callout-title::before{-webkit-mask:var(--icon-tip) center/contain no-repeat;mask:var(--icon-tip) center/contain no-repeat}
.callout-success>.callout-title::before{-webkit-mask:var(--icon-success) center/contain no-repeat;mask:var(--icon-success) center/contain no-repeat}
.callout-question>.callout-title::before{-webkit-mask:var(--icon-question) center/contain no-repeat;mask:var(--icon-question) center/contain no-repeat}
.callout-warning>.callout-title::before{-webkit-mask:var(--icon-warning) center/contain no-repeat;mask:var(--icon-warning) center/contain no-repeat}
.callout-danger>.callout-title::before{-webkit-mask:var(--icon-danger) center/contain no-repeat;mask:var(--icon-danger) center/contain no-repeat}
.callout-example>.callout-title::before{-webkit-mask:var(--icon-example) center/contain no-repeat;mask:var(--icon-example) center/contain no-repeat}
.callout-quote>.callout-title::before{-webkit-mask:var(--icon-quote) center/contain no-repeat;mask:var(--icon-quote) center/contain no-repeat}
.callout-body{margin-top:-4px;padding:0 14px 12px 40px;font-size:.97em}
.callout-body>:first-child{margin-top:0}
.callout-body>:last-child{margin-bottom:0}
details.callout>summary{cursor:pointer;list-style:none}
details.callout>summary::-webkit-details-marker{display:none}
details.callout>summary::after{content:"";flex:none;width:15px;height:15px;margin:.25em 0 0 auto;background:var(--muted);transition:transform .15s;-webkit-mask:var(--icon-chevron-down) center/contain no-repeat;mask:var(--icon-chevron-down) center/contain no-repeat}
details.callout[open]>summary::after{transform:rotate(180deg)}
.prose .callout code{background:var(--surface)}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:48px 0 0;padding:20px 0 0;border-top:1px solid var(--line)}
.pager a{display:flex;flex-direction:column;gap:2px;color:var(--ink);text-decoration:none}
.pager a:hover span{color:var(--accent);text-decoration:underline}
.pager small{color:var(--muted);font-size:.8rem}
.pager span{font-weight:600;line-height:1.35}
.pager em{color:var(--muted);font-size:.8rem;font-style:normal}
.pager-next{grid-column:2;align-items:flex-end;text-align:right}
.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin:48px 0 0;padding:20px 0 40px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}
.wp-diagram{margin:1.8em 0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-family:var(--font-ui);font-size:.9rem;line-height:1.5}
.wp-diagram>figcaption{padding:9px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.82rem;font-weight:600}
.diagram-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line)}
.diagram-toolbar[hidden]{display:none}
.diagram-toolbar button,.diagram-close{min-height:30px;padding:4px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink-2);font:400 .8rem/1.3 var(--font-ui);cursor:pointer}
.diagram-toolbar button:hover,.diagram-close:hover{border-color:var(--line-strong);color:var(--ink)}
.diagram-toolbar button:focus-visible,.diagram-close:focus-visible,.diagram-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.diagram-toolbar output{min-width:44px;color:var(--muted);font-size:.75rem;text-align:center;font-variant-numeric:tabular-nums}
.diagram-toolbar .diagram-expand{margin-left:auto}
.diagram-viewport{min-height:100px;max-height:680px;padding:20px;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}
.diagram-canvas{margin:0 auto;max-width:none}
.diagram-canvas>svg{display:block;width:100%;height:100%;max-width:none!important;overflow:visible}
.diagram-status{margin:0!important;padding:16px;color:var(--muted);font-size:.85rem}
.diagram-status[hidden]{display:none}
.diagram-source{padding:9px 14px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}
.diagram-source summary{cursor:pointer}
.prose .diagram-source pre{max-height:340px;margin:10px 0 4px;overflow:auto;font-size:.75rem;line-height:1.55;white-space:pre}
.diagram-error .diagram-status{color:var(--ink)}
.diagram-dialog{width:min(1400px,96vw);max-width:96vw;max-height:95dvh;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-lift);color:var(--ink)}
.diagram-dialog::backdrop{background:var(--backdrop)}
.diagram-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;border-bottom:1px solid var(--line);font-family:var(--font-ui)}
.diagram-dialog-header h2{margin:0;font-size:1rem;font-weight:600}
.diagram-dialog .diagram-viewport{min-height:35dvh;max-height:72dvh}
.diagram-render-scratch{position:absolute;top:0;left:-100000px;visibility:hidden;pointer-events:none}
@media (max-width:1279px){.layout.has-rail{grid-template-columns:272px minmax(0,1fr)}.toc-rail{display:none}}
@media (min-width:1280px){.toc-inline{display:none}}
@media (max-width:999px){
.layout,.layout.has-rail{grid-template-columns:minmax(0,1fr)}
.nav-toggle{display:inline-grid}
.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;width:min(88vw,340px);height:auto;padding-top:20px;background:var(--bg);box-shadow:var(--shadow-lift);transform:translateX(-104%);visibility:hidden;transition:transform .25s ease,visibility 0s linear .25s}
.nav-open .sidebar{transform:none;visibility:visible;transition:transform .25s ease}
.nav-backdrop{position:fixed;inset:0;z-index:45;background:var(--backdrop)}
.nav-open body{overflow:hidden}
}
@media (min-width:1000px){.nav-backdrop{display:none!important}}
@media (max-width:640px){
main{padding:24px 18px 0}
.topbar{gap:10px}
.topbar-sep,.topbar-collection{display:none}
.prose{font-size:1.02rem}
.callout-body{padding-left:14px}
.folder .note-list{padding-left:0;columns:1}
.folder-meta{grid-column:2/4;grid-row:2;text-align:left}
.pager{grid-template-columns:1fr}
.pager-next{grid-column:auto;align-items:flex-start;text-align:left}
.chip-button{margin-left:0}
}
@media (max-width:600px){.diagram-viewport{max-height:65dvh;padding:12px}.diagram-toolbar{gap:5px;padding:8px}.diagram-toolbar .diagram-expand{margin-left:0}.diagram-dialog{max-height:96dvh}.diagram-dialog .diagram-viewport{max-height:70dvh}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.topbar,.sidebar,.toc-rail,.toc-inline,.pager,.nav-backdrop,.search-panel,.diagram-toolbar,.answers-toggle,.code-copy{display:none!important}.layout,.layout.has-rail{display:block}main{padding:0}body{background:#fff}}