
:root{
  color-scheme: dark;
  --bg:#070a12; --bg-2:#0b1020; --panel:#0d1424; --panel-2:#101827; --panel-3:#111c31;
  --text:#e7ecf5; --muted:#98a4b8; --soft:#c4ccda; --line:rgba(151,163,184,.18);
  --brand:#e8c978; --brand-2:#79ddcc; --blue:#82aaff; --shadow:0 28px 80px rgba(0,0,0,.42);
  --radius:22px; --sidebar:326px; --rail:0px; --topbar:68px; --content:980px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 14% 8%,rgba(232,201,120,.10),transparent 28%),radial-gradient(circle at 92% 2%,rgba(121,221,204,.08),transparent 26%),linear-gradient(180deg,var(--bg),#05070d 62%,#05070d);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.68;min-height:100vh;overflow-x:hidden;opacity:0;animation:bodyFade .28s ease forwards}
body.page-leaving{opacity:0;transition:opacity .14s ease}
@keyframes bodyFade{to{opacity:1}}
@keyframes pageIn{from{opacity:0;transform:translateY(12px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
@keyframes navReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.ambient{position:fixed;z-index:-1;pointer-events:none;filter:blur(82px);opacity:.38}.ambient-one{width:430px;height:430px;background:rgba(232,201,120,.16);left:-170px;top:100px}.ambient-two{width:510px;height:510px;background:rgba(80,120,255,.13);right:-240px;top:280px}
.topbar{height:var(--topbar);display:flex;align-items:center;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(7,10,18,.78);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);min-width:0}.brand-mark{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#191f31,#080b13);border:1px solid rgba(232,201,120,.38);color:var(--brand);font-weight:800;letter-spacing:.02em;box-shadow:0 8px 30px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.05)}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text strong{font-size:14px;letter-spacing:.02em}.brand-text small{font-size:12px;color:var(--muted)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.topbar-link{color:var(--soft);border:1px solid var(--line);background:rgba(255,255,255,.03);padding:8px 12px;border-radius:999px;text-decoration:none;font-size:13px;transition:.18s ease}.topbar-link:hover{color:var(--brand);border-color:rgba(232,201,120,.40);transform:translateY(-1px);background:rgba(232,201,120,.05)}.mobile-nav-toggle{display:none;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);border-radius:12px;width:40px;height:40px;font-size:18px}
.layout-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);gap:26px;max-width:1380px;margin:0 auto;padding:26px 28px 56px}.sidebar{position:sticky;top:calc(var(--topbar) + 18px);height:calc(100vh - var(--topbar) - 36px);align-self:start}.sidebar-inner{height:100%;overflow:auto;padding:14px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,24,39,.94),rgba(9,13,24,.88));border-radius:var(--radius);box-shadow:var(--shadow);scrollbar-width:thin}.sidebar-tools{position:sticky;top:0;background:linear-gradient(180deg,rgba(16,24,39,1),rgba(16,24,39,.88));padding-bottom:12px;z-index:2}.sidebar-search{width:100%;height:42px;padding:0 14px;border-radius:14px;border:1px solid var(--line);background:rgba(7,10,18,.74);color:var(--text);outline:none;transition:.18s ease}.sidebar-search:focus{border-color:rgba(232,201,120,.55);box-shadow:0 0 0 3px rgba(232,201,120,.08)}.nav-controls{display:flex;gap:8px;margin-top:9px}.nav-controls button{flex:1;border:1px solid rgba(151,163,184,.16);background:rgba(255,255,255,.035);color:var(--muted);border-radius:11px;padding:6px 8px;font-size:12px;cursor:pointer;transition:.16s ease}.nav-controls button:hover{color:var(--brand);border-color:rgba(232,201,120,.28);background:rgba(232,201,120,.055)}
.nav-list{list-style:none;margin:0;padding:0}.nav-list.depth-0{display:flex;flex-direction:column;gap:5px}.nav-list.depth-1,.nav-list.depth-2,.nav-list.depth-3,.nav-list.depth-4{margin:4px 0 8px 12px;padding-left:10px;border-left:1px solid rgba(151,163,184,.14);animation:navReveal .18s ease both}.nav-item a{display:block;color:var(--muted);text-decoration:none;font-size:13px;line-height:1.35;padding:7px 9px;border-radius:11px;transition:color .16s ease,background .16s ease,transform .16s ease}.nav-item a:hover{color:var(--text);background:rgba(255,255,255,.047);transform:translateX(2px)}.nav-item.active>a,.nav-item.active summary>a{color:#fff;background:linear-gradient(90deg,rgba(232,201,120,.18),rgba(121,221,204,.06));box-shadow:inset 0 0 0 1px rgba(232,201,120,.18)}.nav-item.in-branch>details>summary>a{color:var(--soft)}.nav-item details{display:block}.nav-item summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;border-radius:12px}.nav-item summary::-webkit-details-marker{display:none}.nav-item summary a{flex:1;min-width:0}.chevron{width:8px;height:8px;border-right:1.7px solid var(--muted);border-bottom:1.7px solid var(--muted);transform:rotate(-45deg);margin-right:8px;transition:.18s ease}.nav-item details[open]>summary .chevron{transform:rotate(45deg)}.nav-item.hidden-by-search{display:none!important}
.page-main{min-width:0}.content-card{max-width:var(--content);margin:0 auto;padding:44px 54px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(17,24,39,.84),rgba(8,12,22,.80));border-radius:28px;box-shadow:var(--shadow);min-height:calc(100vh - var(--topbar) - 80px);animation:pageIn .34s ease both}.breadcrumbs{margin:-14px 0 28px;color:var(--muted);font-size:13px}.breadcrumbs a{color:var(--brand);text-decoration:none}.breadcrumbs .sep{margin:0 8px;color:#465166}.content-card h1{font-size:clamp(2rem,4vw,3.55rem);line-height:1.05;margin:0 0 24px;letter-spacing:-.045em}.content-card h2{font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.18;margin:48px 0 16px;letter-spacing:-.025em}.content-card h3{font-size:1.22rem;line-height:1.3;margin:34px 0 10px}.content-card h4{font-size:1.05rem;margin:28px 0 8px;color:#dfe6f3}.content-card p{margin:14px 0;color:#d7deeb}.content-card strong{color:#fff}.content-card em{color:#d8dfeb}.content-card a{color:#8ce6d8;text-decoration:none;border-bottom:1px solid rgba(140,230,216,.25);transition:.16s ease}.content-card a:hover{color:var(--brand);border-color:rgba(232,201,120,.38)}.content-card img{max-width:100%;height:auto;border-radius:18px;margin:8px 0 20px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.content-card img[src$='.svg']{box-shadow:none;border-radius:0}.content-card table{display:block;width:100%;overflow:auto;border-collapse:collapse;margin:22px 0;border:1px solid var(--line);border-radius:18px;background:rgba(5,8,15,.38)}.content-card th,.content-card td{border-bottom:1px solid var(--line);padding:12px 14px;vertical-align:top;min-width:140px}.content-card th{color:#fff;text-align:left;background:rgba(255,255,255,.045);font-weight:700}.content-card tr:last-child td{border-bottom:0}.content-card blockquote{margin:24px 0;padding:16px 18px;border-left:3px solid var(--brand);background:rgba(232,201,120,.07);border-radius:0 16px 16px 0;color:#e5dec7}.content-card ul,.content-card ol{padding-left:1.35rem}.content-card li{margin:7px 0;color:#d7deeb}.content-card hr{border:0;border-top:1px solid var(--line);margin:34px 0}.content-card code{font-family:"JetBrains Mono","SFMono-Regular",Consolas,monospace;font-size:.88em;background:rgba(232,201,120,.09);border:1px solid rgba(232,201,120,.15);border-radius:7px;padding:.12em .38em;color:#ffe4a3}.content-card pre{position:relative;overflow:auto;margin:22px 0;padding:18px;border:1px solid rgba(151,163,184,.20);background:linear-gradient(180deg,#07101d,#050914);border-radius:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.content-card pre code{display:block;padding:0;background:transparent;border:0;color:#dce6f7;font-size:13px;line-height:1.6;white-space:pre}.copy-code{position:absolute;top:10px;right:10px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--soft);border-radius:9px;padding:5px 8px;font-size:12px;cursor:pointer}.copy-code:hover{color:var(--brand)}.mermaid{background:#0b1020;border:1px solid var(--line);border-radius:18px;padding:18px;margin:22px 0;overflow:auto}.task-list-item{list-style:none}.task-list-item input{margin-right:.45rem}
.right-rail{display:none!important}.prev-next{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:52px;padding-top:26px;border-top:1px solid var(--line)}.prev-next a{display:block;border:1px solid var(--line);border-radius:18px;padding:15px 16px;background:rgba(255,255,255,.035);text-decoration:none;transition:.16s ease}.prev-next a:hover{transform:translateY(-2px);border-color:rgba(232,201,120,.3);background:rgba(232,201,120,.045)}.prev-next a span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.prev-next a strong{display:block;margin-top:4px;color:var(--text);font-size:14px;line-height:1.35}.prev-next .next{text-align:right}.back-to-top{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:rgba(16,24,39,.88);color:var(--brand);box-shadow:0 14px 34px rgba(0,0,0,.3);cursor:pointer;opacity:0;pointer-events:none;transition:.18s ease}.back-to-top.visible{opacity:1;pointer-events:auto}.back-to-top:hover{transform:translateY(-2px)}.home-page .content-card{background:linear-gradient(180deg,rgba(18,27,44,.88),rgba(8,12,22,.80))}.home-page .content-card h1:first-of-type{font-size:clamp(2.4rem,5vw,4.5rem)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (max-width:1220px){.layout-shell{grid-template-columns:var(--sidebar) minmax(0,1fr)}.content-card{max-width:none}}
@media (max-width:900px){.topbar{padding:0 16px}.mobile-nav-toggle{display:grid;place-items:center}.topbar-actions{display:none}.layout-shell{display:block;padding:18px 14px 42px}.sidebar{position:fixed;z-index:80;left:12px;right:12px;top:calc(var(--topbar) + 12px);height:calc(100vh - var(--topbar) - 24px);transform:translateX(-110%);transition:.22s ease}.sidebar.open{transform:translateX(0)}.content-card{padding:30px 22px;border-radius:22px}.content-card table{font-size:14px}.brand-text small{display:none}}
@media print{.topbar,.sidebar,.right-rail,.back-to-top,.prev-next{display:none}.layout-shell{display:block;padding:0}.content-card{box-shadow:none;border:0;padding:0;max-width:none}body{background:#fff;color:#000}.content-card p,.content-card li{color:#000}.content-card a{color:#000}}
