:root{--bg: #FFFFFF;--bg-subtle: #F5F7FF;--bg-tinted: #EDF1FF;--navy: #070F3F;--blue-800: #0F2070;--blue-700: #1A32A0;--blue-600: #2248D4;--blue-500: #3B63F5;--blue-300: #7DA3FF;--blue-100: #D6E4FF;--blue-50: #EEF4FF;--orange: #E8611A;--green: #16A34A;--border: rgba(7,15,63,.08);--border-hi: rgba(7,15,63,.15);--sidebar-w: 240px;--nav-h: 56px;--r: 8px;--r-lg: 12px;--r-pill: 999px;--font-display: "Bricolage Grotesque", "Arial Black", sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SF Mono", "Fira Code", "Cascadia Code", "Consolas", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--navy);font-family:var(--font-body);font-weight:300;line-height:1.6}.layout{display:flex;flex-direction:column;min-height:100dvh}.body{display:flex;flex:1;overflow:hidden;height:calc(100dvh - var(--nav-h))}.nav{position:sticky;top:0;z-index:40;height:var(--nav-h);background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;gap:.625rem;height:100%;padding:0 1.5rem}.nav-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;flex-shrink:0}.nav-logo img{border-radius:5px}.nav-logo span{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--navy);letter-spacing:-.01em}.nav-sep{color:var(--blue-300);font-size:.875rem}.nav-section{font-family:var(--font-display);font-size:.8125rem;font-weight:600;color:var(--blue-600);letter-spacing:-.01em}.nav-right{margin-left:auto;display:flex;align-items:center;gap:.5rem}.nav-gh{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r);color:var(--blue-700);transition:background .15s ease,color .15s ease}.nav-gh:hover{background:var(--blue-50);color:var(--navy)}.nav-home{display:inline-flex;align-items:center;gap:.3rem;padding:.375rem .875rem;color:var(--blue-700);border:1px solid var(--border-hi);border-radius:var(--r-pill);font-family:var(--font-display);font-size:.8125rem;font-weight:600;text-decoration:none;transition:border-color .15s ease,background .15s ease,color .15s ease}.nav-home:hover{border-color:var(--blue-300);background:var(--blue-50);color:var(--navy)}.menu-btn{display:none;background:none;border:none;cursor:pointer;color:var(--blue-700);padding:.375rem;border-radius:var(--r);transition:color .15s ease,background .15s ease}.menu-btn:hover{color:var(--navy);background:var(--blue-50)}.sidebar{width:var(--sidebar-w);flex-shrink:0;height:100%;overflow-y:auto;padding:1.75rem 0;border-right:1px solid var(--border);background:var(--bg-subtle)}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:var(--blue-100);border-radius:2px}.sidebar-label{font-family:var(--font-display);font-size:.625rem;font-weight:700;color:var(--orange);letter-spacing:.1em;text-transform:uppercase;padding:0 1.25rem;margin-bottom:.625rem}.sidebar ul{list-style:none}.sidebar-link{display:block;padding:.4375rem 1.25rem;font-family:var(--font-display);font-size:.875rem;font-weight:600;color:var(--blue-700);text-decoration:none;border-left:2px solid transparent;letter-spacing:-.01em;transition:color .15s ease,border-color .15s ease,background .15s ease}.sidebar-link:hover{color:var(--navy);background:#070f3f0a}.sidebar-link.active{color:var(--blue-600);border-left-color:var(--blue-600);background:var(--blue-50)}.sidebar-overlay{display:none}.content{flex:1;overflow-y:auto;padding:3rem 4rem 5rem;min-width:0;background:var(--bg)}.content::-webkit-scrollbar{width:6px}.content::-webkit-scrollbar-track{background:transparent}.content::-webkit-scrollbar-thumb{background:var(--blue-100);border-radius:3px}.prose{max-width:72ch;color:var(--blue-700);line-height:1.75}.prose h1{font-family:var(--font-display);font-weight:800;font-size:clamp(1.875rem,3vw,2.5rem);color:var(--navy);line-height:1.05;letter-spacing:-.03em;margin-bottom:1rem;margin-top:0}.prose h2{font-family:var(--font-display);font-weight:700;font-size:1.3125rem;color:var(--navy);line-height:1.2;letter-spacing:-.02em;margin-top:2.75rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.prose h3{font-family:var(--font-display);font-weight:700;font-size:1.0625rem;color:var(--navy);letter-spacing:-.01em;margin-top:2rem;margin-bottom:.5rem}.prose h4{font-family:var(--font-display);font-size:.9375rem;font-weight:700;color:var(--blue-700);margin-top:1.5rem;margin-bottom:.375rem}.prose p{margin-bottom:1.125rem;font-size:.9375rem;font-weight:300}.prose a{color:var(--blue-600);text-decoration:underline;text-decoration-color:var(--blue-100);text-underline-offset:3px;transition:text-decoration-color .15s ease,color .15s ease}.prose a:hover{color:var(--navy);text-decoration-color:var(--blue-300)}.prose strong{font-weight:600;color:var(--navy)}.prose em{font-style:italic}.prose ul,.prose ol{margin:0 0 1.125rem 1.25rem}.prose li{font-size:.9375rem;font-weight:300;margin-bottom:.4rem}.prose li::marker{color:var(--blue-500)}.prose code:not(pre code){font-family:var(--font-mono);font-size:.8125rem;background:var(--bg-tinted);color:var(--blue-600);border:1px solid var(--blue-100);border-radius:5px;padding:.125em .4em}.prose pre{background:var(--bg-subtle);border:1px solid var(--border-hi);border-radius:var(--r-lg);padding:1.25rem 1.5rem;overflow-x:auto;margin-bottom:1.25rem}.prose pre code,.prose pre .hljs{font-family:var(--font-mono);font-size:.8125rem;line-height:1.7;background:transparent;border:none;padding:0;color:var(--navy)}.hljs-comment,.hljs-quote{color:#3d5870;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-built_in{color:var(--blue-600);font-weight:600}.hljs-string,.hljs-attr{color:#1a7a4a}.hljs-number,.hljs-literal{color:#7d3d00}.hljs-type,.hljs-class .hljs-title{color:var(--blue-700)}.hljs-function .hljs-title,.hljs-title.function_{color:var(--blue-800);font-weight:600}.hljs-params,.hljs-variable,.hljs-name{color:var(--navy)}.hljs-property,.hljs-punctuation{color:var(--blue-700)}.hljs-operator{color:var(--blue-600)}.hljs-meta{color:#7d3d00}.hljs-section{color:var(--blue-600);font-weight:700}.hljs-tag{color:var(--blue-700)}.hljs-attribute{color:var(--blue-600)}.prose hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}.prose blockquote{border-left:2px solid var(--blue-500);padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--blue-50);border-radius:0 var(--r) var(--r) 0}.prose blockquote p{margin:0;color:var(--navy)}.prose table{width:100%;border-collapse:collapse;margin-bottom:1.25rem;font-size:.875rem}.prose th{text-align:left;font-family:var(--font-display);font-weight:700;font-size:.75rem;color:var(--navy);letter-spacing:.02em;padding:.625rem .875rem;border-bottom:1px solid var(--border-hi);background:var(--bg-subtle)}.prose td{padding:.5625rem .875rem;border-bottom:1px solid var(--border);color:var(--blue-700);font-size:.875rem;font-weight:300;vertical-align:top}.prose tr:last-child td{border-bottom:none}.doc-footer{margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.edit-link{font-size:.8125rem;font-weight:400;color:var(--blue-700);text-decoration:none;display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .875rem;border:1px solid var(--border-hi);border-radius:var(--r-pill);transition:border-color .15s ease,background .15s ease,color .15s ease}.edit-link:hover{border-color:var(--blue-300);background:var(--blue-50);color:var(--navy)}@media (max-width: 768px){.menu-btn{display:flex;margin-left:auto}.nav-right>*:not(.menu-btn){display:none}.body{overflow:visible;height:auto}.sidebar{position:fixed;top:var(--nav-h);left:0;bottom:0;z-index:30;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);width:min(var(--sidebar-w),85vw);height:calc(100dvh - var(--nav-h))}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;top:var(--nav-h);background:#070f3f4d;z-index:29;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.content{padding:2rem 1.25rem 3rem;height:auto;overflow:visible}.body{height:auto;min-height:calc(100dvh - var(--nav-h))}}
