:root{--paper:#ffffff;--paper-2:oklch(0.985 0 0);--paper-3:oklch(0.965 0 0);--ink:oklch(0.18 0.01 80);--ink-2:oklch(0.32 0.008 80);--mute:oklch(0.5 0.008 80);--mute-2:oklch(0.65 0.008 80);--rule:oklch(0.92 0 0);--rule-2:oklch(0.96 0 0);--accent:oklch(0.62 0.16 235);--accent-soft:oklch(0.93 0.04 235);--good:oklch(0.62 0.13 145);--warn:oklch(0.7 0.15 75);--f-sans:var(--font-bricolage),var(--font-geist-sans),ui-sans-serif,system-ui,-apple-system,"Helvetica Neue",sans-serif;--f-display:"PP Neue York",Georgia,"Times New Roman",serif;--f-serif:"PP Pangaia",var(--font-instrument-serif),"Times New Roman",Georgia,serif;--f-mono:var(--font-jetbrains-mono),ui-monospace,"SF Mono",Menlo,monospace}body{background:var(--paper)}.docs-shell{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - 64px)}.docs-side{border-right:1px solid var(--rule);background:var(--paper);padding:24px 14px 64px;position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto}.docs-side::-webkit-scrollbar{width:3px}.docs-side::-webkit-scrollbar-track{background:transparent}.docs-side::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px}.docs-side h4{font-family:var(--f-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:24px 12px 8px}.docs-side h4:first-child{margin-top:4px}.docs-side a{position:relative;display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:4px;font-size:13px;color:var(--ink-2);text-decoration:none;transition:background .12s ease,color .12s ease}.docs-side a:hover{background:var(--paper-2);color:var(--ink)}.docs-side a:hover .ic{color:var(--ink-2)}.docs-side a.active{background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--accent);font-weight:500}.docs-side a.active .ic{color:var(--accent)}.docs-side a .ic{width:15px;height:15px;color:var(--mute);flex-shrink:0;display:grid;place-items:center;transition:color .12s ease}.docs-side a .ic svg{width:15px;height:15px}.docs-main{padding:56px clamp(28px,5vw,80px) 120px;max-width:880px}.docs-breadcrumb{font-family:var(--f-mono);font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;display:flex;gap:8px;align-items:center}.docs-breadcrumb span:not(:last-child):after{content:"›";margin-left:8px;color:var(--rule)}.docs-section-chip{font-family:var(--f-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);background:var(--paper-3);border:1px solid var(--rule);padding:2px 8px;border-radius:4px;margin-left:8px;font-weight:500;white-space:nowrap}.docs-h1{font-family:var(--f-display);font-weight:700;letter-spacing:-.018em;font-size:clamp(36px,4.5vw,52px);line-height:1.05;margin:0 0 14px;text-wrap:balance;text-decoration:none}.docs-h1 em{font-family:var(--f-serif);font-style:italic;font-weight:400}.docs-lede{font-size:18px;line-height:1.5;color:var(--ink-2);margin:0 0 36px;max-width:60ch;text-wrap:pretty}.docs-main h2{font-family:var(--f-display);font-weight:700;letter-spacing:-.012em;font-size:26px;line-height:1.15;margin:56px 0 14px;padding-top:28px;border-top:1px solid var(--rule);text-decoration:none}.docs-main h2:first-of-type{border-top:0;padding-top:0}.docs-main h3{font-family:var(--f-display);font-weight:700;font-size:17px;margin:28px 0 10px;letter-spacing:-.006em;text-decoration:none}.docs-main p{font-size:15px;line-height:1.65;color:var(--ink-2);margin:0 0 14px;max-width:68ch}.docs-main ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}.docs-main ul li{font-size:15px;line-height:1.6;color:var(--ink-2);padding-left:22px;position:relative;max-width:68ch}.docs-main ul li:before{content:"";position:absolute;left:2px;top:12px;width:8px;height:1.5px;background:var(--mute);border-radius:1px}.docs-main ul li strong{color:var(--ink);font-weight:600}.docs-main ol{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px;counter-reset:docs-ol}.docs-main ol li{font-size:15px;line-height:1.6;color:var(--ink-2);padding-left:28px;position:relative;counter-increment:docs-ol}.docs-main ol li:before{content:counter(docs-ol);position:absolute;left:0;top:2px;font-family:var(--f-mono);font-size:12px;color:var(--mute);font-weight:500}.docs-main code,.docs-main kbd{font-family:var(--f-mono);font-size:12.5px;background:var(--paper-2);border:1px solid var(--rule);padding:1px 6px;border-radius:4px;color:var(--ink)}.docs-main kbd{box-shadow:0 1px 0 var(--rule)}.docs-main pre{background:oklch(.14 .01 80);border:1px solid oklch(.22 .01 80);border-radius:10px;padding:18px 20px;margin:16px 0 20px;overflow-x:auto;font-family:var(--f-mono);font-size:13px;line-height:1.6;color:oklch(.9 .005 85)}.docs-main pre code{background:transparent;border:0;padding:0;font-size:inherit;color:inherit}.docs-table{width:100%;border-collapse:collapse;margin:16px 0 20px;border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:var(--paper)}.docs-table thead th{text-align:left;background:var(--paper-2);font-family:var(--f-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);font-weight:500;padding:10px 14px;border-bottom:1px solid var(--rule)}.docs-table tbody td{padding:12px 14px;font-size:14px;line-height:1.5;border-bottom:1px solid var(--rule-2);color:var(--ink-2);vertical-align:top}.docs-table tbody tr:last-child td{border-bottom:0}.docs-table tbody td:first-child{color:var(--ink);font-weight:500;white-space:nowrap}.method-chip{display:inline-block;font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:.04em;padding:2px 7px;border-radius:4px;vertical-align:middle}.method-chip.get{background:oklch(.92 .06 155);color:oklch(.35 .12 155)}.method-chip.post{background:oklch(.92 .06 260);color:oklch(.35 .12 260)}.method-chip.put{background:oklch(.92 .06 80);color:oklch(.38 .12 80)}.method-chip.patch{background:oklch(.93 .05 80);color:oklch(.4 .1 80)}.method-chip.delete{background:oklch(.92 .06 20);color:oklch(.38 .14 20)}.endpoint-block{border:1px solid var(--rule);border-radius:10px;background:var(--paper);margin:16px 0 20px;overflow:hidden}.endpoint-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--rule);background:var(--paper-2)}.endpoint-header code{font-family:var(--f-mono);font-size:13px;color:var(--ink);background:transparent;border:0;padding:0}.endpoint-body{padding:16px;font-size:14px;line-height:1.55;color:var(--ink-2)}.endpoint-body p{margin:0 0 10px}.endpoint-body p:last-child{margin-bottom:0}.endpoint-body code{font-family:var(--f-mono);font-size:12.5px;background:var(--paper-3);border:1px solid var(--rule);padding:1px 6px;border-radius:4px;color:var(--ink)}.callout{margin:20px 0;padding:14px 16px;border:1px solid var(--rule);border-radius:10px;background:var(--paper-2);display:grid;grid-template-columns:18px 1fr;gap:12px;font-size:14px;line-height:1.55;color:var(--ink-2);max-width:68ch}.callout-mark{width:18px;height:18px;background:var(--accent);color:var(--paper);border-radius:5px;display:grid;place-items:center;font-family:var(--f-mono);font-size:11px;font-weight:600}.callout strong{color:var(--ink);font-weight:600}.docs-toc{position:fixed;top:96px;right:clamp(16px,3vw,40px);width:220px;font-size:12.5px;color:var(--mute);display:none}@media (min-width:1380px){.docs-toc{display:block}.docs-main{margin-right:240px}}.docs-toc h5{font-family:var(--f-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);font-weight:500;margin:0 0 12px}.docs-toc a{display:block;padding:4px 0 4px 12px;border-left:1.5px solid var(--rule);color:var(--mute);text-decoration:none;transition:color .12s ease,border-color .12s ease}.docs-toc a.active,.docs-toc a:hover{color:var(--ink);border-left-color:var(--ink)}.pagination{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:80px;padding-top:32px;border-top:1px solid var(--rule)}.page-link{border:1px solid var(--rule);border-radius:12px;padding:18px 20px;background:var(--paper);transition:border-color .15s ease,transform .12s ease;display:grid;gap:4px;text-decoration:none;color:inherit}.page-link:hover{border-color:var(--ink);transform:translateY(-1px)}.page-link.next{text-align:right}.page-link .lbl{font-family:var(--f-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}.page-link .t{font-size:15px;font-weight:500;color:var(--ink)}.docs-nav .docs-tag{font-family:var(--f-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);padding:3px 8px;border:1px solid var(--rule);border-radius:5px;margin-left:4px}.docs-main a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}.docs-main a:hover{color:var(--accent)}.docs-main blockquote{margin:16px 0;padding:12px 16px;border-left:3px solid var(--accent);background:var(--paper-2);border-radius:0 8px 8px 0;font-size:14px;color:var(--ink-2);font-style:italic}.docs-main hr{border:0;border-top:1px solid var(--rule);margin:40px 0}.docs-main img{border:1px solid var(--rule);border-radius:10px;margin:16px 0;max-width:100%}@media (max-width:860px){.docs-shell{grid-template-columns:1fr}.docs-side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--rule)}.docs-main{padding:32px 24px 80px}}.brand-mark{width:22px;height:22px;background:var(--ink);border-radius:6px;position:relative;display:inline-grid;place-items:center;flex-shrink:0}.brand-mark:before{content:"";width:10px;height:10px;border:1.5px solid var(--paper);border-radius:2px;display:block}.brand-mark:after{content:"";position:absolute;width:4px;height:4px;background:var(--accent);border-radius:1px;top:5px;right:5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border-radius:3px;font-family:var(--font-geist-sans),var(--f-sans);font-size:13px;font-weight:500;line-height:1;border:1px solid transparent;white-space:nowrap;cursor:pointer;transition:background 80ms ease,opacity 80ms ease,border-color 80ms ease}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{opacity:.88}.btn-ghost{background:var(--paper);color:var(--ink);border-color:var(--rule)}.btn-ghost:hover{background:color-mix(in srgb,var(--ink) 4%,transparent);border-color:var(--ink-2)}@media (max-width:720px){.docs-nav nav{display:none}}