:root{--surface-page:#f5f5f5;--surface-card:#fff;--surface-sunken:#ececec;--surface-selected:#efefef;--border-subtle:#e0e0e1;--border-strong:#c6c7c9;--text-primary:#1a1d1f;--text-secondary:#5a5d60;--text-onbrand:#fff;--graphite-900:#212428;--graphite-700:#34383f;--graphite-500:#5b616a;--graphite-300:#9ca1a8;--graphite-100:#d4d6d9;--graphite-50:#efefef;--brand-mark:#34383f;--brand-mark-left:#5b616a;--brand-mark-right:#9ca1a8;--brand-mark-rule:#d4d6d9;--amber-500:#f0a93b;--amber-text:#8f5e12;--success:#1f7a4c;--warning:#9a5c0a;--danger:#c13a2e;--shadow-overlay:0 8px 32px #14141629;--font-sans:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--sidebar-width:272px;--header-height:64px;color-scheme:light}:root.dark{--surface-page:#15171a;--surface-card:#1e2124;--surface-sunken:#0b0c0d;--surface-selected:#24272a;--border-subtle:#2d3033;--border-strong:#464a4d;--text-primary:#ededee;--text-secondary:#a3a7aa;--graphite-50:#262a2d;--brand-mark:#6e747a;--brand-mark-left:#9299a1;--brand-mark-right:#c3c7cc;--brand-mark-rule:#e8e9ea;--amber-500:#f7bc5c;--amber-text:#f7bc5c;--success:#4fb383;--warning:#e8a33d;--danger:#f08173;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:calc(var(--header-height) + 16px)}body{background:var(--surface-page);min-height:100dvh;color:var(--text-primary);margin:0;font-size:15px;line-height:23px}a{color:inherit}:focus-visible{outline:3px solid color-mix(in srgb, var(--graphite-500) 50%, transparent);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.text-display{letter-spacing:-.02em;text-wrap:balance;font-size:34px;font-weight:800;line-height:40px}.text-h1{letter-spacing:-.01em;font-size:28px;font-weight:700;line-height:34px}.text-h2{font-size:22px;font-weight:700;line-height:28px}.text-h3{font-size:18px;font-weight:700;line-height:24px}.text-small{font-size:13px;line-height:19px}.text-secondary{color:var(--text-secondary)}.shell{min-height:100dvh;display:flex}.sidebar{width:var(--sidebar-width);border-right:1px solid var(--border-subtle);background:var(--surface-page);flex-direction:column;flex-shrink:0;height:100dvh;display:none;position:sticky;top:0}@media (width>=1024px){.sidebar{display:flex}}.sidebar-brand{height:var(--header-height);flex-shrink:0;align-items:center;gap:10px;padding:0 20px;text-decoration:none;display:flex}.sidebar-brand .badge{margin-top:2px}.nav{flex:1;align-content:start;gap:20px;padding:8px 12px 24px;display:grid;overflow-y:auto}.nav-group{gap:2px;display:grid}.nav-group-title{border-radius:var(--radius-md);height:40px;color:var(--text-primary);align-items:center;gap:12px;padding:0 12px;font-weight:700;text-decoration:none;display:flex}.nav-group-title:hover{background:var(--surface-selected)}.nav-group-title .icon{color:var(--text-secondary)}.nav-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.nav-link{border-radius:var(--radius-md);min-height:36px;color:var(--text-secondary);align-items:center;padding:6px 12px 6px 44px;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;transition:background-color .12s,color .12s;display:flex;position:relative}.nav-link:hover,.nav-link[aria-current=page]{background:var(--surface-selected);color:var(--text-primary)}.nav-link[aria-current=page]:before{content:"";background:var(--amber-500);border-radius:999px;width:2px;position:absolute;top:8px;bottom:8px;left:0}.sidebar-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;padding:12px}.main-column{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:30;height:var(--header-height);background:color-mix(in srgb, var(--surface-page) 85%, transparent);-webkit-backdrop-filter:blur(8px);align-items:center;gap:12px;padding:0 16px;display:flex;position:sticky;top:0}@media (width>=640px){.topbar{padding:0 24px}}@media (width>=1024px){.topbar{padding:0 32px}.topbar-brand,.menu-button{display:none!important}}.topbar-brand{text-decoration:none;display:inline-flex}.topbar-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.content{flex:1;padding:24px 16px 64px}@media (width>=640px){.content{padding:24px 24px 64px}}@media (width>=1024px){.content{padding:32px 32px 80px}}.content-inner{width:100%;max-width:1120px}.site-footer{border-top:1px solid var(--border-subtle);color:var(--text-secondary);flex-wrap:wrap;gap:8px 24px;padding:24px 16px;font-size:13px;line-height:19px;display:flex}@media (width>=1024px){.site-footer{padding:24px 32px}}.site-footer a{color:var(--text-primary);text-underline-offset:4px;font-weight:600}.drawer{background:var(--surface-page);width:min(300px,85vw);max-width:none;height:100dvh;max-height:none;color:var(--text-primary);box-shadow:var(--shadow-overlay);border:0;margin:0;padding:0}.drawer[open]{flex-direction:column;animation:.18s ease-out drawer-in;display:flex}.drawer::backdrop{background:#0a0b0c73}.drawer .sidebar-brand{justify-content:space-between;padding-right:8px}@keyframes drawer-in{0%{transform:translate(-100%)}}.btn{border-radius:var(--radius-md);height:40px;color:var(--text-primary);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn-primary{background:var(--graphite-700);color:var(--text-onbrand)}.btn-primary:hover,.dark .btn-primary{background:var(--graphite-500)}.dark .btn-primary:hover{background:var(--graphite-700)}.btn-outline{border-color:var(--border-strong);background:var(--surface-card)}.btn-outline:hover,.btn-ghost:hover{background:var(--surface-selected)}.btn-icon{width:40px;padding:0}.btn-sm{height:32px;padding:0 12px;font-size:13px}.badge{border-radius:var(--radius-sm);background:var(--graphite-50);height:22px;color:var(--text-secondary);letter-spacing:.02em;white-space:nowrap;align-items:center;padding:0 8px;font-size:11px;font-weight:600;line-height:16px;display:inline-flex}.badge-outline{border:1px solid var(--border-strong);background:0 0}.card{border:1px solid var(--border-subtle);background:var(--surface-card);border-radius:var(--radius-lg)}.chalk{background:linear-gradient(var(--amber-500), var(--amber-500)) 0 100% / 100% 3px no-repeat;padding-bottom:2px;text-decoration:none;transition:background-size .15s ease-out;animation:.7s cubic-bezier(.2,.7,.2,1) .25s backwards chalk-draw}.chalk:hover,.chalk:focus-visible{background-size:100% 6px}@keyframes chalk-draw{0%{background-size:0 3px}}.search{flex:1;max-width:420px;position:relative}.search-input{border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-page);width:100%;height:40px;color:var(--text-primary);font:inherit;padding:0 44px 0 38px}.search-input::placeholder{color:var(--text-secondary)}.search-input:focus{outline:3px solid color-mix(in srgb, var(--graphite-500) 40%, transparent);outline-offset:0;border-color:var(--graphite-500)}.search>.icon{width:16px;height:16px;color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search kbd{font:500 11px/16px var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-strong);pointer-events:none;border-radius:4px;padding:1px 6px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}@media (width<=639px){.search kbd{display:none}}.search-results{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);min-width:min(420px,100vw - 32px);max-height:min(70vh,520px);box-shadow:var(--shadow-overlay);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.search-results[hidden]{display:none}.search-results a{border-radius:var(--radius-md);gap:2px;padding:10px 12px;text-decoration:none;display:grid}.search-results a:hover,.search-results a[aria-selected=true]{background:var(--surface-selected)}.search-results .result-section{letter-spacing:.02em;color:var(--text-secondary);font-size:11px;font-weight:600;line-height:16px}.search-results .result-title{font-weight:700}.search-results .result-snippet{color:var(--text-secondary);font-size:13px;line-height:19px}.search-results mark{background:color-mix(in srgb, var(--amber-500) 35%, transparent);color:inherit;border-radius:2px}.search-empty{color:var(--text-secondary);padding:12px;font-size:13px}.section-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.section-card{align-content:start;gap:8px;padding:20px;text-decoration:none;transition:border-color .12s,background-color .12s;display:grid}.section-card:hover{border-color:var(--graphite-300)}.section-card .icon{width:24px;height:24px;color:var(--text-secondary)}.section-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:19px}.article-list{border-top:1px solid var(--border-subtle);margin:0;padding:0;list-style:none}.article-list li{border-bottom:1px solid var(--border-subtle)}.article-list a{gap:2px;padding:14px 4px;text-decoration:none;display:grid}.article-list a:hover .article-list-title{text-underline-offset:4px;text-decoration:underline}.article-list-title{font-weight:700}.article-list-desc{color:var(--text-secondary);font-size:13px;line-height:19px}.breadcrumb{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;padding:0;font-size:13px;line-height:19px;list-style:none;display:flex}.breadcrumb a{font-weight:600;text-decoration:none}.breadcrumb a:hover{color:var(--text-primary)}.breadcrumb li+li:before{content:"/";color:var(--border-strong);margin-right:6px}.article-layout{gap:40px;display:grid}@media (width>=1200px){.article-layout{grid-template-columns:minmax(0,1fr) 220px}}.article-header{border-bottom:1px solid var(--border-subtle);gap:8px;margin-bottom:32px;padding-bottom:24px;display:grid}.article-header p{margin:0}.article-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.toc{top:calc(var(--header-height) + 16px);align-self:start;font-size:13px;line-height:19px;display:none;position:sticky}@media (width>=1200px){.toc{display:block}}.toc p{margin:0 0 8px;font-weight:700}.toc ul{border-left:1px solid var(--border-subtle);gap:6px;margin:0;padding:0 0 0 12px;list-style:none;display:grid}.toc a{color:var(--text-secondary);text-decoration:none}.toc a:hover{color:var(--text-primary)}.toc .toc-sub{padding-left:12px}.pager{gap:12px;margin-top:48px;display:grid}@media (width>=640px){.pager{grid-template-columns:1fr 1fr}}.pager a{gap:2px;padding:16px 20px;text-decoration:none;display:grid}.pager a:hover{border-color:var(--graphite-300)}.pager .pager-next{text-align:right;grid-column:2}@media (width<=639px){.pager .pager-next{grid-column:auto}}.pager span:first-child{color:var(--text-secondary);font-size:13px}.pager span:last-child{font-weight:700}.help-box{background:var(--surface-sunken);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-top:32px;padding:20px;display:flex}.help-box p{margin:0}.prose{max-width:720px}.prose>:first-child{margin-top:0}.prose h2{margin:40px 0 12px;font-size:22px;font-weight:700;line-height:28px}.prose h3{margin:28px 0 8px;font-size:18px;font-weight:700;line-height:24px}.prose p,.prose ul,.prose ol,.prose table,.prose blockquote,.prose pre{margin:0 0 16px}.prose ul,.prose ol{padding-left:22px}.prose li{margin:4px 0}.prose li::marker{color:var(--text-secondary)}.prose ol>li::marker{font-weight:700}.prose a{text-decoration-color:var(--amber-500);text-underline-offset:4px;font-weight:600;text-decoration-thickness:2px}.prose a:hover{text-decoration-thickness:3px}.prose strong{font-weight:700}.prose code{font-family:var(--font-mono);border-radius:var(--radius-sm);background:var(--surface-sunken);padding:1px 6px;font-size:13px}.prose pre{border-radius:var(--radius-md);padding:16px;font-size:13px;line-height:20px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose hr{border:0;border-top:1px solid var(--border-subtle);margin:32px 0}.prose blockquote{border-left:3px solid var(--amber-500);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--graphite-50);color:var(--text-primary);padding:12px 16px}.prose blockquote>:last-child{margin-bottom:0}.prose blockquote.is-warning{border-left-color:var(--warning)}.prose blockquote.is-danger{border-left-color:var(--danger)}.prose .table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:0 0 16px;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;margin:0;font-size:14px;line-height:20px}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:10px 12px}.prose th{background:var(--surface-sunken);font-weight:700}.prose tr:last-child td{border-bottom:0}.prose td{background:var(--surface-card)}.prose .heading-anchor{color:var(--border-strong);opacity:0;margin-left:6px;text-decoration:none;transition:opacity .12s}.prose h2:hover .heading-anchor,.prose h3:hover .heading-anchor,.prose .heading-anchor:focus-visible{opacity:1}.terms-table{border-collapse:collapse;width:100%;font-size:14px;line-height:20px}.terms-table th,.terms-table td{text-align:left;border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:10px 12px}.terms-table thead th{background:var(--surface-sunken);font-weight:700}.terms-table tbody th{color:var(--text-secondary);font-weight:600}.terms-table tr:last-child>*{border-bottom:0}.logo[data-astro-cid-f7espo7c]{height:var(--size);display:inline-flex}.logo[data-astro-cid-f7espo7c]>span[data-astro-cid-f7espo7c]{height:100%;display:inline-flex}.logo[data-astro-cid-f7espo7c] svg{width:auto;height:100%}.logo-dark[data-astro-cid-f7espo7c],.dark .logo-light[data-astro-cid-f7espo7c]{display:none!important}.dark .logo-dark[data-astro-cid-f7espo7c]{display:inline-flex!important}
