:root{color-scheme:dark;--bg:#0b0e1b;--panel:#161d31;--line:#35425f;--text:#e8efff;--muted:#a9bbd6;--cyan:#54d8f7;--purple:#b89cff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.68 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--cyan);text-underline-offset:.2em}a:hover{color:#fff}.wrap{max-width:1170px;margin:auto;padding:0 24px}.hero{padding:42px 0 24px;background:linear-gradient(115deg,#141e38,#211534)}.brand{display:inline-block;max-width:100%;font-size:1.4rem;overflow-wrap:anywhere;letter-spacing:.07em;font-weight:800;color:#fff;text-decoration:none}.brand strong{color:var(--cyan)}.brand small{color:var(--purple);font-size:.58em;letter-spacing:.1em}.mark{font-size:1.2em;color:var(--cyan)}.hero p{color:var(--muted);margin:6px 0 0}.navigation{position:sticky;top:0;z-index:3;background:#0e1426;border-bottom:1px solid var(--line)}.navinner{display:flex;flex-wrap:wrap;gap:6px 20px;padding-top:12px;padding-bottom:12px}.navigation a{color:#e3efff;font-size:.94rem;text-decoration:none}.navigation a:hover{text-decoration:underline}.shell{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:36px;padding-top:28px;padding-bottom:75px}.content{min-width:0}.content h1{font-size:2.35rem;line-height:1.2;letter-spacing:-.035em}.content h2{margin-top:2em;padding-bottom:6px;border-bottom:1px solid var(--line);color:#d4e6ff}.content h3{color:var(--cyan);margin-top:1.5em}.content p,.content li{max-width:76ch}.content code{overflow-wrap:anywhere;background:#1e2a42;padding:2px 5px;border-radius:4px}.content pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#0d1427;border:1px solid var(--line);padding:16px;border-radius:8px}.content table{display:block;overflow-x:auto;width:100%;border-collapse:collapse;margin:20px 0}.content th,.content td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}.content th{background:#22314a}.content blockquote{border-left:3px solid var(--purple);margin-left:0;padding:10px 18px;background:var(--panel)}.content hr{border:0;border-top:1px solid var(--line);margin:26px 0}.sidebar{align-self:start;position:sticky;top:82px;border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:20px}.sidebar h2{margin:0 0 12px}.sidebar>a{display:block;margin:8px 0}.sidebar hr{border:0;border-top:1px solid var(--line);margin:16px 0}footer{background:#080c17;border-top:1px solid var(--line);color:var(--muted);padding:28px 0;font-size:.9rem}.skip{position:absolute;left:-10000px;top:auto}.skip:focus{left:12px;top:12px;z-index:10;padding:8px;background:#fff;color:#000}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{position:static}.content h1{font-size:1.9rem}.wrap{padding:0 16px}.navinner{padding-top:10px;padding-bottom:10px;gap:8px 15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Ordered chapter navigation and accessible page-to-page controls. */
.navigation a[aria-current="page"]{color:var(--cyan);font-weight:750;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.breadcrumbs{margin:0 0 14px;font-size:.88rem;color:var(--muted)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:7px;list-style:none;margin:0;padding:0}
.breadcrumbs li+li::before{content:"/";color:#8395b7;margin-right:7px}
.breadcrumbs li[aria-current="page"]{color:#e2edff;font-weight:650}
.chapter-progress{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:25px;color:var(--muted);font-size:.84rem}
.chapter-progress progress{width:160px;max-width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;background:#273554;accent-color:var(--cyan)}
.chapter-progress progress::-webkit-progress-bar{background:#273554;border-radius:999px}
.chapter-progress progress::-webkit-progress-value{background:var(--cyan);border-radius:999px}
.chapter-progress progress::-moz-progress-bar{background:var(--cyan);border-radius:999px}
.chapter-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.chapter-list a{display:flex;align-items:center;gap:11px;min-height:44px;padding:9px 10px;border:1px solid transparent;border-radius:8px;color:var(--text);text-decoration:none;line-height:1.4;font-size:.89rem}
.chapter-list a:hover{background:#253250;border-color:#46567b;color:#fff}
.chapter-list a.is-active{background:#293951;border-color:var(--cyan);color:#fff;font-weight:750}
.chapter-index{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:7px;background:#283752;color:var(--muted);font-size:.76rem;font-weight:750}
.chapter-list a.is-active .chapter-index{background:#114c62;color:#c6f5ff}
.sidebar .open-app{display:block;min-height:44px;align-content:center;font-weight:650}
.guide-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:44px 0 15px;padding-top:24px;border-top:1px solid var(--line)}
.pager-link{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:88px;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:var(--panel);text-decoration:none;color:#fff;overflow-wrap:anywhere;transition:background-color .15s ease,border-color .15s ease}
.pager-link:hover{background:#263452;border-color:var(--cyan);color:#fff}
.pager-link strong{font-size:1.04rem;line-height:1.4}
.pager-kicker{font-size:.85rem;color:var(--cyan);font-weight:750}
.pager-next{text-align:right;align-items:flex-end}
.pager-previous{text-align:left;align-items:flex-start}
.back-to-top{text-align:right;margin:18px 0 0;font-size:.92rem}
.content [id]{scroll-margin-top:80px}
@media(max-width:620px){
  .navinner a{display:inline-flex;align-items:center;min-height:42px}
  .guide-pager{grid-template-columns:minmax(0,1fr);gap:12px}
  .pager-placeholder{display:none}
  .pager-link{min-height:76px}
  .pager-next{text-align:left;align-items:flex-start}
  .chapter-progress{gap:7px}
  .chapter-progress progress{width:100%}
}
@media(prefers-reduced-motion:reduce){.pager-link{transition:none}}
