
/* Only series-specific components. The editorial theme comes from kernel-series.css. */
body[data-dujin-template]{margin:0;font-family:"Segoe UI","Malgun Gothic",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.8}
body[data-dujin-template] .topbar{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;min-height:64px;margin:0;padding:14px clamp(18px,4vw,48px);color:var(--ink);background:rgba(242,239,230,.97);grid-column:auto}
.topbar>a{color:var(--ink);font:800 16px/1.5 "Segoe UI","Malgun Gothic",sans-serif}.topbar-links{display:flex;gap:24px;flex-wrap:wrap}.topbar-links a{color:var(--muted);font:700 13px/1.5 "Segoe UI","Malgun Gothic",sans-serif}.topbar-links a::before{display:none!important}
.dujin-main{display:block;position:static;width:100%;max-width:none;margin:0;padding:0;background:transparent}
.dujin-main>.hero{display:block;position:static;width:100%;margin:0;padding:0;transform:none;color:var(--ink);background:var(--paper);border-bottom:1px solid rgba(23,22,18,.72)}
.dujin-main>.hero>.hero-inner{display:block;position:static;width:calc(100% - 48px);max-width:1240px;margin:0 auto;padding:52px 0 46px;transform:none;text-align:left}
.hero h1{max-width:1050px;margin:0;font-size:clamp(36px,5vw,56px);line-height:1.15;color:var(--ink)}.hero h1 code{color:inherit;background:transparent}.hero .eyebrow{color:var(--green);margin:0 0 12px;font-size:11px}.hero .lead,.hero .lead p{color:var(--muted)}
.breadcrumbs{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 24px;font-size:13px;line-height:1.8;color:var(--muted)}.breadcrumbs a{color:var(--muted);text-underline-offset:3px}
.document-tabs{display:flex;flex-wrap:wrap;gap:0;margin:28px 0 0;border-bottom:1px solid var(--line)}.document-tabs a{padding:11px 20px;color:var(--muted);text-decoration:none;font-size:15px;border-bottom:3px solid transparent}.document-tabs a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--green);font-weight:800;background:transparent}
.dujin-main>.page-grid{display:grid;grid-template-columns:238px minmax(0,1fr);gap:32px;width:calc(100% - 48px);max-width:1240px;margin:0 auto;padding:42px 0 84px}
.page-grid>.toc{align-self:start;position:sticky;top:78px;max-height:calc(100vh - 100px);overflow:auto;padding:4px 22px 4px 0;background:transparent;border:0;border-right:1px solid var(--line)}.toc-fold{margin:0;padding:0;border:0}.toc-fold summary{cursor:pointer;font-size:14px;font-weight:800;color:var(--ink)}.toc-fold ol{padding-left:18px}.toc-fold li{margin:0}.toc-fold strong{display:none}.toc-fold a{display:block;font-size:12px;padding:7px 0;color:var(--muted)}
.dujin-article{min-width:0;padding:0;background:transparent;border:0}.dujin-article h2{font-size:30px;line-height:1.35}.dujin-article h3{font-size:19px;line-height:1.5}.dujin-article p{margin:12px 0 18px;color:var(--ink)}.dujin-article a{color:#1554b0}.dujin-article code{color:#1554b0;background:#edf2fa}.dujin-article pre{font:15px/1.85 Consolas,"Cascadia Mono",monospace;margin:14px 0 20px;padding:14px 16px;overflow:auto;tab-size:8;white-space:pre;background:#fff;color:#174f9c;border:1px solid #c7ced7;border-radius:0}.dujin-article pre code{font:inherit;color:inherit;background:transparent;padding:0}.dujin-article pre a{color:#1554b0}
.line-lesson{padding:18px 0;border-bottom:1px solid var(--line)}.line-meta,.meta,.version,.scope,figcaption{font-size:13px;color:var(--muted)}.line-meta a{margin-right:18px}.line-lesson p{margin:10px 0}.line-notes dt{margin:16px 0 5px;color:#1554b0;font-family:Consolas,monospace}.line-notes dd{margin:0 0 14px}.context,.legend{border-left:2px solid var(--line);padding-left:15px}.definition{margin:26px 0}.source-line{display:block;min-height:1.85em}.ln{display:inline-block;min-width:4.5em;color:#69717b;user-select:none}.code-line:target,.source-line:target,.line-lesson:target{background:#fff0bd}section,article[id],[id^="L"]{scroll-margin-top:90px}
.dujin-article figure{margin:24px 0 30px}.dujin-article figure img,.animation-frame{display:block;width:100%;height:auto}.dujin-article figcaption{margin-top:12px;line-height:1.8}.animation-buttons{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}.animation-buttons button{font:inherit;font-size:14px;color:#1554b0;padding:7px 12px;border:1px solid #8fa7c4;background:var(--panel);cursor:pointer;border-radius:0}.animation-buttons button:hover,.animation-buttons button[aria-pressed="true"]{background:#e8f0fd}.animation-status{font-size:13px}.animation{border-top:1px solid var(--line);padding-top:15px}.teaching-visual{margin:25px 0 40px}details:not(.toc-fold){margin:14px 0;padding:10px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer}
.dujin-article table{width:100%;border-collapse:collapse}.dujin-article th,.dujin-article td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mode-links{display:flex;gap:14px;flex-wrap:wrap;font-size:14px}.document-neighbors{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:36px;padding:24px 0;font-size:14px}.topic-list li{padding:9px 0}.top{position:fixed;bottom:16px;right:18px;z-index:12;padding:5px 12px;border:1px solid var(--line);background:var(--panel);font-size:12px;color:#1554b0}
@media(max-width:800px){body[data-dujin-template] .topbar{padding:12px 16px;gap:12px}.topbar-links{gap:14px}.topbar-links a{font-size:12px}.dujin-main>.hero>.hero-inner{width:calc(100% - 32px);padding:30px 0}.hero h1{font-size:32px}.dujin-main>.page-grid{display:flex;flex-direction:column;width:calc(100% - 32px);gap:22px;padding:24px 0 60px}.page-grid>.toc{position:static;width:100%;max-height:none;padding:0 0 18px;border-right:0;border-bottom:1px solid var(--line)}.dujin-article{width:100%}.dujin-article pre{font-size:14px}.dujin-article h2{font-size:25px}.dujin-article table{display:block;overflow:auto}.document-neighbors{flex-direction:column}.document-tabs a{padding:10px 15px}}
@media print{.topbar,.toc,.top,.document-tabs,.animation{display:none!important}.dujin-main>.page-grid{display:block;width:100%}.dujin-main>.hero{background:white;color:black}.dujin-article pre{white-space:pre-wrap}}
