@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap";:root{--bg: #f4f0eb;--surface: #fffcf8d9;--surface-raised: #faf8f5;--surface-glass: #fffcf8b3;--fg: #2c2a27;--fg-secondary: #3d3b37;--muted: #7a756e;--border: #d4cec4;--border-subtle: #2c2a270f;--border-glow: #2c2a271f;--accent: #5b6e71;--accent-hover: #4a5c5f;--accent-light: #5b6e7114;--accent-muted: #5b6e710a;--accent-text: #5b6e71;--sidebar-bg: #f4f0ebd9;--sidebar-active: #5b6e710f;--code-bg: #0d1117;--code-border: #ffffff0f;--code-header: #161b22;--success: #4a7c59;--warning: #a67c52;--error: #a65050;--glow: #5b6e710a;--noise-opacity: .035;--shadow-sm: 0 1px 2px #0000000a, 0 1px 3px #00000008;--shadow-md: 0 2px 8px #0000000d, 0 4px 16px #00000008;--shadow-lg: 0 8px 32px #00000012, 0 16px 48px #0000000a;--font-display: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", "IBM Plex Mono", ui-monospace, monospace;--radius: 2px}.dark,[data-theme=dark]{--bg: #151210;--surface: #141210e6;--surface-raised: #1c1916;--surface-glass: #141210b3;--fg: #e4dfd9;--fg-secondary: #c9c3bb;--muted: #8b857d;--border: #302c28;--border-subtle: #e4dfd90f;--border-glow: #e4dfd914;--accent: #889a9d;--accent-hover: #9aabae;--accent-light: #889a9d1f;--accent-muted: #889a9d0f;--accent-text: #889a9d;--sidebar-bg: #151210d9;--sidebar-active: #889a9d14;--success: #6a9f7a;--warning: #c49a6e;--error: #c47a7a;--glow: #889a9d0f;--noise-opacity: .06}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:.9375rem;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s,color .3s}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:calc(var(--noise-opacity) * 5);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.055'/%3E%3C/svg%3E")}a{color:var(--accent);text-underline-offset:3px}.topbar{position:fixed;top:0;left:0;right:0;z-index:50;height:56px;background:var(--sidebar-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}.topbar.scrolled{border-bottom-color:var(--border)}.topbar-inner{height:100%;max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 16px}@media(min-width:1024px){.topbar-inner{padding:0 24px}}.topbar-left{display:flex;align-items:center;gap:12px}.brand{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none;font:500 14px var(--font-display);letter-spacing:-.025em}.brand img{width:24px;height:24px;object-fit:contain}.top-nav{display:flex;align-items:center;gap:2px}.top-nav a{color:var(--muted);text-decoration:none;font:500 13px var(--font-body);padding:6px 12px;transition:color .15s}.top-nav a:hover{color:var(--fg)}.top-actions{display:flex;align-items:center;gap:6px}.btn{display:inline-flex;align-items:center;gap:8px;font:500 13px var(--font-body);text-decoration:none;padding:10px 18px;border-radius:var(--radius);cursor:pointer;transition:transform .15s,background .15s,border-color .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.btn-primary:hover{background:var(--fg-secondary)}.btn-ghost{background:transparent;color:var(--fg);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--accent)}.btn-key{padding:6px 14px;font-family:var(--font-body);font-size:13px;background:var(--accent);color:var(--bg);border:0}.btn-key:hover{background:var(--accent);opacity:.8;transform:none}.icon-button{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;transition:color .15s}.icon-button:hover{color:var(--fg)}.menu-button{display:none}.searchbar{display:flex;align-items:center;gap:8px;padding:6px 10px;background:transparent;border:0;color:var(--muted);font:13px var(--font-body);cursor:pointer;text-align:left;transition:color .15s}.searchbar svg{flex:none}.searchbar span{flex:1}.searchbar kbd,.search-input kbd{font:500 10px var(--font-mono);color:var(--muted);border:1px solid var(--border);padding:2px 6px;background:var(--surface)}.searchbar:hover{color:var(--fg)}.search-overlay{position:fixed;inset:0;z-index:60;background:#14121066;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;justify-content:center;padding-top:12vh}.search-overlay[hidden]{display:none}.search-panel{width:min(560px,92vw);height:max-content;background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 24px 60px #00000047}.search-input{display:flex;align-items:center;gap:10px;padding:0 14px;height:52px;border-bottom:1px solid var(--border);color:var(--muted)}.search-input input{flex:1;border:0;background:transparent;color:var(--fg);font:15px var(--font-body);outline:none}.search-results{max-height:50vh;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.search-results a{color:var(--fg-secondary);text-decoration:none;font-size:13.5px;padding:10px 12px;border-left:2px solid transparent}.search-results a:hover{color:var(--fg);background:var(--accent-light);border-left-color:var(--accent)}.search-empty{padding:24px 14px;color:var(--muted);font-size:13px}.shell{padding-top:56px;display:grid;grid-template-columns:238px minmax(0,800px) 190px;max-width:1280px;margin:0 auto}.sidebar,.toc{position:sticky;top:56px;height:calc(100vh - 56px);padding:38px 25px}.sidebar{padding-left:8px;padding-right:20px}.sidebar{border-right:1px solid var(--border)}.toc{border-left:1px solid var(--border);padding-left:28px}.sidebar nav{gap:0}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:24px}.sidebar-label{font:600 10px/1 var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin-bottom:12px}.sidebar nav,.toc nav{display:flex;flex-direction:column;gap:3px}.sidebar nav a{position:relative;display:block;color:var(--fg-secondary);text-decoration:none;font-size:14px;line-height:1.4;padding:9px 14px;border-radius:8px;transition:background .12s,color .12s}.sidebar nav a:hover{color:var(--fg);background:var(--accent-light)}.sidebar nav a.active{color:var(--fg);font-weight:500;background:var(--sidebar-active)}.sidebar nav a.active:before{content:"";position:absolute;left:-6px;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--accent)}.toc nav a{position:relative;display:block;color:var(--muted);text-decoration:none;font-size:12.5px;line-height:1.4;padding:6px 12px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s,color .12s}.toc nav a.toc-h3{padding-left:24px;font-size:12px}.toc nav a:hover{color:var(--fg)}.toc nav a.active{color:var(--fg);font-weight:500;background:var(--sidebar-active)}.toc nav a.active:before{content:"";position:absolute;left:-6px;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--accent)}.docs{min-width:0;padding:40px 68px 28px;border-left:1px solid var(--border);margin-left:-1px}article{max-width:690px}.hero{position:relative;max-width:900px;margin:0 0 20px;padding:30px 0 54px;border-bottom:1px solid var(--border);overflow:hidden}.hero-grid{position:absolute;inset:0;z-index:0;background-image:radial-gradient(var(--border) 1px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 25% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(ellipse 90% 70% at 25% 30%,#000 30%,transparent 100%);opacity:.6}.hero-glow{position:absolute;top:-80px;left:-60px;width:380px;height:380px;z-index:0;background:radial-gradient(circle,var(--accent-light),transparent 70%);filter:blur(20px)}.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.hero-copy h1{font-size:clamp(44px,4.4vw,62px);line-height:1.03;margin:22px 0 20px}.hero-copy p{font-size:18px;line-height:1.6;color:var(--fg-secondary);max-width:440px}.badge{display:inline-flex;align-items:center;gap:8px;font:500 11px var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent);padding:6px 13px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:100px;background:var(--accent-light)}.badge .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-card{min-width:0}.hero-card .code-block{margin:0;box-shadow:0 18px 50px #00000029}.hero-code pre{font-size:11.5px;overflow-x:auto}.hero-code-head{justify-content:flex-start;gap:12px;text-transform:none;letter-spacing:0}.hero-code-head .dots{display:inline-flex;gap:6px}.hero-code-head .dots i{width:11px;height:11px;border-radius:50%;background:#40464e}.hero-code-head .dots i:nth-child(1){background:#ff5f56}.hero-code-head .dots i:nth-child(2){background:#ffbd2e}.hero-code-head .dots i:nth-child(3){background:#27c93f}.hero-file{font:11.5px var(--font-mono);color:#8b949e}.method{display:inline-block;font:600 11px var(--font-mono);letter-spacing:.06em;padding:3px 9px;border-radius:var(--radius);margin-right:10px;vertical-align:middle}.method.get{color:var(--success);background:color-mix(in srgb,var(--success) 14%,transparent);border:1px solid color-mix(in srgb,var(--success) 40%,transparent)}.method.post{color:var(--accent);background:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}h3+p .method:first-child{margin-left:0}.table-wrap{overflow-x:auto;margin:24px 0 28px;border:1px solid var(--border)}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;font:600 10px var(--font-mono);text-transform:uppercase;letter-spacing:.09em;color:var(--muted);padding:12px 16px;background:var(--surface-raised);border-bottom:1px solid var(--border)}td{padding:12px 16px;color:var(--fg-secondary);border-bottom:1px solid var(--border-subtle);vertical-align:top}tr:last-child td{border-bottom:0}td code{white-space:nowrap}td em{font-style:normal;font:600 9px var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--warning);margin-left:6px}h1,h2,h3,h4{font-family:var(--font-display);color:var(--fg);letter-spacing:-.025em;position:relative}h1{font-size:clamp(38px,5vw,55px);line-height:1.05;font-weight:600;margin:0 0 25px}h2{font-size:27px;font-weight:600;margin:74px 0 24px;padding-top:2px}h3{font-size:19px;font-weight:600;margin:38px 0 15px}h4{font-size:15px;font-weight:600;margin:30px 0 12px}.heading-anchor{position:absolute;right:100%;padding-right:9px;color:var(--border);text-decoration:none;opacity:0;font-family:var(--font-mono);font-weight:400}h1:hover .heading-anchor,h2:hover .heading-anchor,h3:hover .heading-anchor,h4:hover .heading-anchor{opacity:1}p,li{color:var(--fg-secondary);font-size:15px;line-height:1.78}p{margin:0 0 18px}li{margin:5px 0}ul,ol{padding-left:24px;margin:0 0 21px}strong{color:var(--fg);font-weight:600}hr{border:0;border-top:1px solid var(--border);margin:58px 0 -20px}blockquote{margin:30px 0;padding:16px 20px;border-left:3px solid var(--accent);background:var(--accent-light)}blockquote p{margin:0;font-size:13.5px}code{font-family:var(--font-mono);font-size:.88em}p code,li code{background:var(--accent-light);color:var(--fg);border:1px solid var(--border);padding:2px 5px}.code-block{margin:22px 0 28px;border:1px solid #30363d;background:var(--code-bg);color:#e6edf3;overflow:hidden;box-shadow:0 9px 25px #00000012}.code-head{height:37px;background:var(--code-header);border-bottom:1px solid #30363d;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#8b949e;text-transform:uppercase;letter-spacing:.08em;font:10px var(--font-mono)}.copy{border:0;background:transparent;color:#8b949e;font:inherit;cursor:pointer}.copy:hover{color:#fff}pre{margin:0;overflow-x:auto;padding:19px 21px;font:12.5px/1.7 var(--font-mono);tab-size:2}.code-block code.hljs{color:#e6edf3;background:transparent}.hljs-comment,.hljs-quote{color:#8b949e}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-type{color:#ff7b72}.hljs-string,.hljs-meta .hljs-string,.hljs-regexp,.hljs-addition{color:#a5d6ff}.hljs-number,.hljs-symbol,.hljs-bullet{color:#79c0ff}.hljs-title,.hljs-title.class_,.hljs-title.function_,.hljs-section{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-variable,.hljs-template-variable{color:#79c0ff}.hljs-built_in,.hljs-name,.hljs-builtin-name{color:#ffa657}.hljs-params{color:#c9d1d9}.hljs-meta,.hljs-doctag{color:#8b949e}.hljs-property{color:#79c0ff}.hljs-deletion{color:#ffa198}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 0;margin-top:70px;border-top:1px solid var(--border);color:var(--muted);font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.08em}@media(max-width:1040px){.shell{grid-template-columns:220px minmax(0,1fr)}.toc{display:none}.hero-inner{grid-template-columns:1fr;gap:30px}.hero-copy p{max-width:none}}@media(max-width:900px){.top-nav{display:none}}@media(max-width:860px){.searchbar span,.searchbar kbd{display:none}.searchbar{flex:none;width:36px;padding:0;justify-content:center}}@media(max-width:720px){.topbar-inner{padding:0 14px}.btn-key{display:none}.menu-button{display:block}.hero{padding:20px 0 40px}.hero-copy h1{font-size:34px}.hero-copy p{font-size:15px}.docs{padding-top:24px}.shell{display:block}.sidebar{display:none;position:fixed;inset:56px 0 0;z-index:15;height:auto;background:var(--bg);border:0;overflow-y:auto}.sidebar.open{display:block}.docs{padding:46px 23px 25px}h1{font-size:39px}h2{font-size:24px;margin-top:62px}h3{font-size:18px}p,li{font-size:14px;line-height:1.72}pre{font-size:11.5px;padding:17px}footer{flex-direction:column}}
