:root{--c-bg:#fbf8f2;--c-bg-elev:#fff;--c-surface:#f1ece0;--c-text:#1a1814;--c-muted:#6b6458;--c-border:#e3dcca;--c-border-strong:#bdb49d;--c-accent:#3a2a5a;--c-accent-strong:#241a3d;--c-accent-soft:#ece6f5;--c-rule:#1a1814;--c-info:#2d5c8a;--c-success:#3f6b3a;--c-warn:#9a6b1a;--c-danger:#8a2f32;--c-code-bg:#1a1814;--c-code-fg:#f1ece0;--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-serif:ui-serif,"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,Georgia,"Times New Roman",serif;--font-mono:ui-monospace,"JetBrains Mono",Menlo,"SF Mono",Consolas,monospace;--radius:4px;--radius-sm:2px;--radius-lg:6px;--sidebar-w:240px;--header-h:60px;--content-max:720px;--wide-max:1040px;--marketing-max:1400px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;color-scheme:light}@media(prefers-color-scheme:dark){:root{--c-bg:#15130f;--c-bg-elev:#1b1814;--c-surface:#242019;--c-text:#ede7d6;--c-muted:#9a9283;--c-border:#2e2a22;--c-border-strong:#4a4338;--c-accent:#b7a3e0;--c-accent-strong:#d6c8f0;--c-accent-soft:#2a2340;--c-rule:#ede7d6;--c-info:#87b0d8;--c-success:#8fbd88;--c-warn:#d6a863;--c-danger:#d98a8d;--c-code-bg:#0d0c09;--c-code-fg:#ede7d6;color-scheme:dark}}*{box-sizing:border-box}#__nuxt,body,html{height:100%}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-sans);font-size:16px;line-height:1.65;margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--c-accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--c-accent) 40%,transparent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{text-decoration-color:currentColor}code,kbd,pre,samp{font-family:var(--font-mono)}::-moz-selection{background:var(--c-accent);color:#fff}::selection{background:var(--c-accent);color:#fff}.site-header{background:var(--c-bg);border-bottom:1px solid var(--c-border);height:var(--header-h);position:sticky;top:0;z-index:10}.site-header-inner{align-items:center;display:flex;gap:16px;height:100%;justify-content:space-between;margin:0 auto;max-width:var(--marketing-max);padding:0 28px}.brand{align-items:baseline;display:inline-flex;font-family:var(--font-serif);font-weight:600;gap:10px;letter-spacing:-.005em}.brand,.brand:hover{color:var(--c-text);text-decoration:none}.brand-mark{background:var(--c-text);border-radius:var(--radius-sm);color:var(--c-bg);display:inline-grid;font-family:var(--font-sans);font-size:11px;font-weight:700;height:22px;letter-spacing:.02em;place-items:center;position:relative;top:2px;width:22px}.brand-text{font-size:18px}.brand-tag{border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);color:var(--c-muted);font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.1em;margin-left:4px;padding:1px 6px;text-transform:uppercase}.top-links{align-items:center;display:flex;gap:22px}.top-links a{color:var(--c-muted);font-size:14px;font-weight:500;text-decoration:none}.top-links a:hover{color:var(--c-text)}.lang-switch{border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);color:var(--c-muted);display:inline-grid;font-size:11px;font-weight:600;letter-spacing:.1em;min-width:34px;padding:4px 8px;place-items:center;text-decoration:none}.lang-switch:hover{border-color:var(--c-text);color:var(--c-text)}.app{display:flex;flex-direction:column;min-height:100%}.layout{display:grid;flex:1;gap:80px;grid-template-columns:var(--sidebar-w) minmax(0,1fr);margin:0 auto;max-width:var(--marketing-max);padding:0 32px;width:100%}@media(max-width:860px){.layout{gap:24px;grid-template-columns:1fr;padding:0 20px}.sidebar{max-height:none!important;padding-top:16px!important;position:static!important}}.sidebar{align-self:start;border-right:1px solid var(--c-border);margin-right:-28px;max-height:calc(100vh - var(--header-h));overflow-y:auto;padding:40px 28px 48px 0;position:sticky;top:var(--header-h)}@media(max-width:860px){.sidebar{border-right:0;margin-right:0;padding-right:0}}.sidebar-nav{display:flex;flex-direction:column;gap:28px}.sidebar-group h4{color:var(--c-muted);font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.14em;margin:0 0 10px;text-transform:uppercase}.sidebar-group ul{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.sidebar-link{color:var(--c-muted);display:block;font-size:14px;padding:4px 0;text-decoration:none}.sidebar-link:hover{color:var(--c-text)}.sidebar-link.router-link-active,.sidebar-link.router-link-exact-active{color:var(--c-text);font-weight:500;position:relative}.sidebar-link.router-link-active:before,.sidebar-link.router-link-exact-active:before{background:var(--c-text);content:"";height:1px;left:-16px;position:absolute;top:50%;transform:translateY(-50%);width:6px}.content{min-width:0;padding:56px 0 96px}.app:not(.is-landing) .page-body>.callout,.app:not(.is-landing) .page-body>.prose,.app:not(.is-landing) .page-body>.text-section,.app:not(.is-landing) .page-body>h2,.app:not(.is-landing) .page-body>h3,.app:not(.is-landing) .page-body>ol,.app:not(.is-landing) .page-body>p,.app:not(.is-landing) .page-body>ul,.app:not(.is-landing) .page>.page-header,.doc-page{max-width:var(--content-max)}.app:not(.is-landing) .page-body>.code,.app:not(.is-landing) .page-body>.endpoint,.app:not(.is-landing) .page-body>.env-var,.app:not(.is-landing) .page-body>.feature-grid,.app:not(.is-landing) .page-body>.service-card{max-width:var(--wide-max)}.app.is-landing .layout{gap:0;grid-template-columns:1fr;max-width:none;padding:0}.app.is-landing .content{padding:0 0 96px}.app.is-landing .doc-page{max-width:none}.site-footer{background:var(--c-bg);border-top:1px solid var(--c-border);color:var(--c-muted);font-size:13px;padding:48px 28px}.site-footer-inner{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:var(--marketing-max)}.site-footer-inner .sep{opacity:.6}.site-footer-brand{align-items:center;color:var(--c-muted);display:flex;gap:12px}.site-footer-brand .brand,.site-footer-brand .brand-text{font-size:15px}.site-footer-links{display:flex;gap:24px}.site-footer-links a{color:var(--c-muted);text-decoration:none}.site-footer-links a:hover{color:var(--c-text)}.page-header{border-bottom:1px solid var(--c-border);margin-bottom:40px;padding-bottom:24px}.page-header h1{color:var(--c-text);font-size:clamp(30px,4vw,44px);font-weight:600;letter-spacing:-.01em;line-height:1.12;margin:0 0 14px}.page-header h1,.page-lede{font-family:var(--font-serif)}.page-lede{color:var(--c-muted);font-size:19px;font-style:italic;line-height:1.5;margin:0}.hero{background:var(--c-bg);border-bottom:1px solid var(--c-border);margin:0;padding:clamp(80px,10vw,140px) 28px clamp(64px,8vw,96px);position:relative;text-align:center}.hero-inner{margin:0 auto;max-width:820px}.hero-eyebrow{background:transparent;border:0;color:var(--c-muted);display:inline-block;font-family:var(--font-serif);font-size:14px;font-style:italic;letter-spacing:0;margin-bottom:28px;padding:0;position:relative;text-transform:none}.hero-eyebrow:after,.hero-eyebrow:before{background:var(--c-border-strong);content:"";display:inline-block;height:1px;margin:0 12px;vertical-align:middle;width:24px}.hero-title{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--c-text);font-size:clamp(40px,6vw,72px);font-weight:600;letter-spacing:-.02em;line-height:1.05;margin:0 0 24px}.hero-subtitle,.hero-title{font-family:var(--font-serif)}.hero-subtitle{color:var(--c-muted);font-size:clamp(18px,1.8vw,21px);font-weight:400;line-height:1.55;margin:0 auto 40px;max-width:620px}.hero-actions{flex-wrap:wrap;gap:16px;justify-content:center}.btn,.hero-actions{align-items:center;display:inline-flex}.btn{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--c-text);cursor:pointer;font-family:var(--font-sans);font-size:14px;font-weight:500;gap:8px;letter-spacing:.01em;padding:11px 20px;transition:background .14s ease,color .14s ease,border-color .14s ease}.btn,.btn:hover{text-decoration:none}.btn-primary{background:var(--c-text);border-color:var(--c-text);color:var(--c-bg)}.btn-primary:hover{background:var(--c-accent-strong);border-color:var(--c-accent-strong);color:var(--c-bg)}.btn-secondary{background:transparent;border-color:var(--c-border-strong);color:var(--c-text)}.btn-secondary:hover{border-color:var(--c-text)}.btn-arrow{display:inline-block;transition:transform .16s ease}.btn:hover .btn-arrow{transform:translate(3px)}.hero-stats{background:var(--c-bg);border-bottom:1px solid var(--c-border);border-top:0;display:grid;gap:0;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:var(--marketing-max);padding:0 28px}@media(max-width:720px){.hero-stats{grid-template-columns:repeat(2,1fr)}}.hero-stat{border-right:1px solid var(--c-border);padding:32px 20px;text-align:center}.hero-stat:last-child{border-right:none}@media(max-width:720px){.hero-stat:nth-child(2n){border-right:none}.hero-stat:nth-child(-n+2){border-bottom:1px solid var(--c-border)}}.hero-stat-value{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--c-text);font-family:var(--font-serif);font-size:clamp(28px,3.2vw,36px);font-weight:600;letter-spacing:-.02em;line-height:1.1}.hero-stat-label{color:var(--c-muted);font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.14em;margin-top:8px;text-transform:uppercase}.app:not(.is-landing) .hero{background:none;border-bottom:1px solid var(--c-border);margin-bottom:40px;padding:32px 0;text-align:left}.app:not(.is-landing) .hero-title{color:var(--c-text);font-size:clamp(30px,4vw,44px)}.app:not(.is-landing) .hero-subtitle{font-style:normal;margin:0 0 24px}.app:not(.is-landing) .hero-eyebrow{color:var(--c-muted);margin-bottom:16px}.app:not(.is-landing) .hero-eyebrow:before{display:inline-block;margin-left:0}.app.is-landing .page>.hero{margin-left:0;margin-right:0}.app.is-landing .page>.page-body{padding:0}.app.is-landing .page>.page-body>*{margin-left:auto;margin-right:auto;max-width:var(--marketing-max);padding-left:28px;padding-right:28px}.text-section{margin:80px 0}.text-section h2{color:var(--c-text);font-family:var(--font-serif);font-size:clamp(26px,3vw,34px);font-weight:600;letter-spacing:-.015em;margin:0 0 16px;scroll-margin-top:80px}.app.is-landing .text-section{max-width:720px;text-align:left}.app.is-landing .text-section .prose{color:var(--c-muted);font-size:17px}.prose p{margin:0 0 16px}.prose ol,.prose ul{margin:0 0 16px;padding-left:22px}.prose li{margin-bottom:4px}.prose a.rt-link{color:var(--c-accent)}.prose .rt-code,.prose code{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);font-size:.88em;padding:1px 5px}.prose strong{color:var(--c-text);font-weight:600}.prose .rt-pre{margin:16px 0}.feature-grid{margin:96px 0}.feature-grid h2{color:var(--c-text);font-family:var(--font-serif);font-size:clamp(28px,3vw,38px);font-weight:600;letter-spacing:-.015em;margin:0 0 14px}.feature-intro{color:var(--c-muted);font-size:17px;line-height:1.55;margin:0 0 44px;max-width:620px}.app.is-landing .feature-grid{text-align:left}.app.is-landing .feature-grid>h2{font-size:clamp(32px,3.6vw,42px)}.app.is-landing .feature-intro{margin:0 0 44px}.cards{border-left:1px solid var(--c-border);border-top:1px solid var(--c-border);display:grid;gap:0;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.cards.cols-2{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}.cards.cols-4{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.feature-card{background:var(--c-bg);border-bottom:1px solid var(--c-border);border-radius:0;border-right:1px solid var(--c-border);color:inherit;display:block;padding:32px 28px;position:relative;text-align:left;text-decoration:none;transition:background .16s ease}.feature-card:hover,a.feature-card:hover{background:var(--c-surface);text-decoration:none}.feature-icon{align-items:center;background:transparent;border:1px solid var(--c-text);border-radius:0;box-shadow:none;color:var(--c-text);display:inline-flex;height:32px;justify-content:center;margin-bottom:18px;position:relative;width:32px}.feature-icon:before{background:var(--c-accent);border-radius:50%;content:"";height:10px;inset:-5px -5px auto auto;position:absolute;width:10px}.cards>:nth-child(3n+2) .feature-icon:before{background:var(--c-accent);opacity:.55}.cards>:nth-child(3n+3) .feature-icon:before{background:var(--c-accent);opacity:.25}.feature-icon-dot{background:var(--c-text);border-radius:0;box-shadow:none;height:10px;width:10px}.feature-card h3{color:var(--c-text);font-family:var(--font-serif);font-size:19px;font-weight:600;letter-spacing:-.005em;margin:0 0 8px}.feature-card p{color:var(--c-muted);font-size:14.5px;line-height:1.65;margin:0}.app.is-landing .feature-card{text-align:left}.callout{background:transparent;border:0;border-left:2px solid var(--c-border-strong);border-radius:0;color:var(--c-text);display:flex;font-size:14.5px;gap:12px;line-height:1.6;margin:20px 0;padding:12px 16px}.callout-icon{background:transparent;color:var(--c-muted);display:inline-grid;flex:none;font-family:var(--font-serif);font-size:13px;font-style:italic;font-weight:600;height:18px;margin-top:1px;place-items:center;width:18px}.callout-body{min-width:0}.callout-title{color:var(--c-text);font-family:var(--font-sans);font-size:14px;font-size:11px;font-weight:600;letter-spacing:.1em;margin:0 0 6px;text-transform:uppercase}.callout .prose{color:var(--c-muted);font-size:14.5px}.callout .prose :first-child{margin-top:0}.callout .prose :last-child{margin-bottom:0}.callout .prose p{margin:0 0 6px}.callout-info{border-left-color:var(--c-info)}.callout-info .callout-icon,.callout-info .callout-title{color:var(--c-info)}.callout-success,.callout-tip{border-left-color:var(--c-success)}.callout-success .callout-icon,.callout-success .callout-title,.callout-tip .callout-icon,.callout-tip .callout-title{color:var(--c-success)}.callout-warning{border-left-color:var(--c-warn)}.callout-warning .callout-icon,.callout-warning .callout-title{color:var(--c-warn)}.callout-danger{border-left-color:var(--c-danger)}.callout-danger .callout-icon,.callout-danger .callout-title{color:var(--c-danger)}.code{background:var(--c-code-bg);border:1px solid var(--c-border);border-radius:var(--radius-sm);box-shadow:none;margin:28px 0 36px;overflow:hidden}.app.is-landing .code{margin-left:auto;margin-right:auto;max-width:860px;text-align:left}.code-header{align-items:center;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--c-code-fg) 18%,transparent);color:var(--c-code-fg);display:flex;font-family:var(--font-mono);font-size:11.5px;gap:12px;justify-content:space-between;padding:10px 16px}.code-filename{font-weight:500;opacity:.95}.code-lang{color:color-mix(in srgb,var(--c-code-fg) 55%,transparent);letter-spacing:.08em;text-transform:uppercase}.code-copy{background:transparent;border:1px solid color-mix(in srgb,var(--c-code-fg) 20%,transparent);border-radius:var(--radius-sm);color:inherit;cursor:pointer;font:inherit;padding:3px 10px}.code-copy:hover{border-color:var(--c-code-fg)}.code-pre{background:var(--c-code-bg);color:var(--c-code-fg);font-size:13px;line-height:1.7;margin:0;overflow-x:auto;padding:20px 22px}.code-pre code{background:transparent;border:0;color:inherit;padding:0}.code-caption{background:var(--c-surface);border-top:1px solid var(--c-border);color:var(--c-muted);font-family:var(--font-serif);font-size:13px;font-style:italic;padding:10px 16px}.endpoint{background:var(--c-bg-elev);border:1px solid var(--c-border);border-radius:var(--radius-sm);margin:24px 0 32px;padding:20px 22px}.endpoint-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.endpoint-method{align-items:center;border-radius:var(--radius-sm);color:#fff;display:inline-flex;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em;padding:3px 9px}.method-get{background:#355f3a}.method-post{background:#2a5577}.method-put{background:#8a5a14}.method-patch{background:#5a3d8a}.method-delete{background:#8a2f32}.endpoint-path{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13.5px;padding:2px 8px;word-break:break-all}.endpoint-auth{color:var(--c-muted);font-family:var(--font-sans);font-size:11px;letter-spacing:.1em;margin-left:auto;text-transform:uppercase}.endpoint-summary{color:var(--c-muted);font-size:15px;margin:4px 0 12px}.endpoint-example{margin-top:16px}.endpoint-example h5{color:var(--c-muted);font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.1em;margin:0 0 6px;text-transform:uppercase}.endpoint-example pre{border-radius:var(--radius-sm);font-size:12.5px;margin:0;padding:14px 16px}.env-var{background:var(--c-bg-elev);border:1px solid var(--c-border);border-radius:var(--radius-sm);margin:14px 0;padding:18px 20px}.env-var header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:6px}.env-name{background:var(--c-surface);border:1px solid var(--c-border);font-family:var(--font-mono);font-size:13.5px}.env-badge,.env-name{border-radius:var(--radius-sm);font-weight:600;padding:2px 8px}.env-badge{border:1px solid transparent;font-family:var(--font-sans);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.env-required{background:transparent;border-color:var(--c-accent);color:var(--c-accent)}.env-optional{background:transparent;border-color:var(--c-border-strong);color:var(--c-muted)}.env-default{color:var(--c-muted);font-size:13px}.env-default code{font-size:12.5px}.env-var p{color:var(--c-muted);font-size:14px;margin:8px 0 0}.env-example{background:var(--c-code-bg);border-radius:var(--radius-sm);color:var(--c-code-fg);font-size:12.5px;margin:12px 0 0;overflow-x:auto;padding:12px 14px}.service-card{background:var(--c-bg-elev);border:1px solid var(--c-border);border-radius:var(--radius-sm);margin:14px 0;padding:16px 20px}.service-card header{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:6px}.service-card h3{font-family:var(--font-serif);font-size:16px;font-weight:600;letter-spacing:-.005em;margin:0}.service-meta{align-items:center;color:var(--c-muted);display:flex;font-size:12px;gap:10px}.service-port{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);font-family:var(--font-mono);padding:1px 6px}.service-internal{font-family:var(--font-sans);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.service-card p{color:var(--c-muted);font-size:14px;margin:0}.not-found{color:var(--c-muted);padding:96px 0;text-align:center}.not-found h1{color:var(--c-text);font-family:var(--font-serif);font-size:96px;font-weight:600;letter-spacing:-.04em;margin:0 0 8px}
