:root{--portal-font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--portal-font-mono:"JetBrains Mono","Fira Code","Cascadia Code","Consolas",monospace;--portal-text-xs:12px;--portal-text-sm:13px;--portal-text-base:15px;--portal-text-lg:17px;--portal-text-xl:20px;--portal-text-2xl:24px;--portal-text-3xl:30px;--portal-bg:#fff;--portal-bg-subtle:#f9fafb;--portal-bg-muted:#f3f4f6;--portal-border:#e5e7eb;--portal-text:#111827;--portal-text-muted:#6b7280;--portal-text-subtle:#9ca3af;--portal-accent:#ff2d78;--portal-accent-hover:#f59;--portal-code-bg:#f8f8ff;--portal-required-color:#ef4444;--portal-required-bg:#fef2f2;--portal-required-border:#fecaca;--portal-get:#3b82f6;--portal-post:#10b981;--portal-put:#f59e0b;--portal-patch:#8b5cf6;--portal-delete:#ef4444;--portal-2xx:#10b981;--portal-3xx:#3b82f6;--portal-4xx:#f59e0b;--portal-5xx:#ef4444}[data-theme=dark]{--portal-bg:#0f1117;--portal-bg-subtle:#161b22;--portal-bg-muted:#1c2128;--portal-border:#30363d;--portal-text:#e6edf3;--portal-text-muted:#8b949e;--portal-text-subtle:#6e7681;--portal-code-bg:#161b22;--portal-required-color:#f87171;--portal-required-bg:#2d1b1b;--portal-required-border:#7f1d1d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--portal-bg:#0f1117;--portal-bg-subtle:#161b22;--portal-bg-muted:#1c2128;--portal-border:#30363d;--portal-text:#e6edf3;--portal-text-muted:#8b949e;--portal-text-subtle:#6e7681;--portal-code-bg:#161b22;--portal-required-color:#f87171;--portal-required-bg:#2d1b1b;--portal-required-border:#7f1d1d}}.portal-root{font-family:var(--portal-font-sans);font-size:var(--portal-text-base);color:var(--portal-text);background:var(--portal-bg);min-height:100vh}.portal-topbar{height:56px;background:var(--portal-bg);border-bottom:1px solid var(--portal-border);position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);background:color-mix(in srgb,var(--portal-bg) 92%,transparent);display:flex;align-items:center;padding:0 24px;gap:16px}.portal-body{display:flex;height:calc(100vh - 56px)}.portal-sidebar{width:240px;flex-shrink:0;background:var(--portal-bg-subtle);border-right:1px solid var(--portal-border);position:sticky;top:56px;height:calc(100vh - 56px);overflow-y:auto;padding:16px 0}.portal-content{flex:1;overflow-y:auto;padding:40px;max-width:900px}.sidebar-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--portal-text-subtle);padding:8px 16px 4px;margin-top:8px}.sidebar-tag{font-size:13px;font-weight:500;color:var(--portal-text-muted);padding:5px 16px;cursor:pointer;transition:color .1s}.sidebar-tag:hover{color:var(--portal-text)}.sidebar-nav-item{font-size:13px;padding:5px 16px 5px 24px;cursor:pointer;color:var(--portal-text-muted);display:flex;align-items:center;gap:8px;text-decoration:none;transition:background .1s,color .1s;border-left:2px solid transparent;border-radius:0 6px 6px 0;margin-right:8px}.sidebar-nav-item:hover{background:var(--portal-bg-muted);color:var(--portal-text)}.sidebar-nav-item.active{background:var(--portal-bg-muted);color:var(--portal-accent);border-left-color:var(--portal-accent);font-weight:500}.method-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.method-badge{display:inline-flex;align-items:center;justify-content:center;font-family:var(--portal-font-mono);font-size:12px;font-weight:600;text-transform:uppercase;color:#fff;border-radius:4px;width:52px;height:22px;flex-shrink:0}.method-badge.large{width:64px;height:28px;font-size:14px}.method-badge.get{background:#3b82f6}.method-badge.post{background:#10b981}.method-badge.put{background:#f59e0b}.method-badge.patch{background:#8b5cf6}.method-badge.delete{background:#ef4444}.method-badge.head,.method-badge.options{background:#6b7280}.portal-code{font-family:var(--portal-font-mono);font-size:13px;background:var(--portal-code-bg);border:1px solid var(--portal-border);border-radius:8px;padding:16px;overflow-x:auto;position:relative}.schema-table{width:100%;border-collapse:collapse;font-size:13px}.schema-table td{padding:6px 8px;vertical-align:top;border-bottom:1px solid var(--portal-border)}.schema-table tr:nth-child(2n) td{background:var(--portal-bg-subtle)}.schema-prop-name{font-family:var(--portal-font-mono);font-weight:600;color:var(--portal-text);white-space:nowrap}.schema-type{color:var(--portal-text-muted);font-size:12px;white-space:nowrap}.badge-required{font-weight:600;text-transform:uppercase;color:var(--portal-required-color);background:var(--portal-required-bg);border:1px solid var(--portal-required-border);border-radius:3px;padding:1px 4px}.badge-optional,.badge-required{display:inline-block;font-size:10px}.badge-optional{color:var(--portal-text-subtle)}.badge-deprecated{font-size:10px;font-weight:500;color:#92400e;background:#fef3c7;border:1px solid #fde68a;padding:1px 5px}.badge-deprecated,.enum-pill{display:inline-block;border-radius:3px}.enum-pill{font-family:var(--portal-font-mono);font-size:11px;padding:2px 6px;background:var(--portal-bg-muted);border:1px solid var(--portal-border);margin:2px;color:var(--portal-text)}.response-section{border-left:3px solid var(--portal-border);margin-bottom:12px;border-radius:0 8px 8px 0;overflow:hidden}.response-section.s2xx{border-left-color:#10b981}.response-section.s3xx{border-left-color:#3b82f6}.response-section.s4xx{border-left-color:#f59e0b}.response-section.s5xx{border-left-color:#ef4444}.response-header{padding:10px 16px;background:var(--portal-bg-subtle);cursor:pointer;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;user-select:none}.response-body{padding:16px;border-top:1px solid var(--portal-border)}.param-section{margin-bottom:24px}.param-section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--portal-text-muted);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--portal-border)}.schema-tabs{display:flex;gap:4px;margin-bottom:12px;flex-wrap:wrap}.schema-tab{padding:4px 10px;font-size:12px;border:1px solid var(--portal-border);border-radius:4px;cursor:pointer;color:var(--portal-text-muted);background:var(--portal-bg);transition:all .1s}.schema-tab.active{border-color:var(--portal-accent);color:var(--portal-accent);background:color-mix(in srgb,var(--portal-accent) 8%,var(--portal-bg))}@media (max-width:768px){.portal-sidebar{display:none;position:fixed;top:56px;left:0;bottom:0;z-index:40;box-shadow:4px 0 16px rgba(0,0,0,.12)}.portal-sidebar.open{display:block}.portal-content{padding:20px}.portal-drawer-backdrop{display:none;position:fixed;inset:0;top:56px;background:rgba(0,0,0,.4);z-index:39}.portal-drawer-backdrop.open{display:block}.portal-topbar-hamburger{display:flex}.portal-topbar-search-full,.portal-topbar-version{display:none}.portal-topbar{padding:0 12px;gap:8px}}@media (min-width:769px){.portal-topbar-hamburger{display:none}}@media (min-width:769px) and (max-width:1024px){.portal-sidebar{width:200px}}@keyframes portal-spin{to{transform:rotate(1turn)}}.portal-markdown p{margin:0 0 8px}.portal-markdown p:last-child{margin-bottom:0}.portal-markdown h1,.portal-markdown h2,.portal-markdown h3,.portal-markdown h4{font-size:14px;font-weight:600;color:var(--portal-text);margin:12px 0 4px}.portal-markdown ol,.portal-markdown ul{padding-left:20px;margin:4px 0 8px}.portal-markdown li{margin-bottom:2px}.portal-markdown code{font-family:var(--portal-font-mono);font-size:12px;background:var(--portal-code-bg);border:1px solid var(--portal-border);border-radius:3px;padding:1px 5px}.portal-markdown pre{background:var(--portal-code-bg);border:1px solid var(--portal-border);border-radius:6px;padding:12px;overflow-x:auto;margin:8px 0}.portal-markdown pre code{border:none;padding:0;background:transparent}.portal-markdown a{color:var(--portal-accent);text-decoration:underline}.portal-markdown strong{font-weight:600;color:var(--portal-text)}.portal-markdown hr{border:none;border-top:1px solid var(--portal-border);margin:12px 0}