*,*:before,*:after{box-sizing:border-box}:root{--bg: #f4f4f5;--surface: #ffffff;--border: #e4e4e7;--border-md: #d4d4d8;--text: #09090b;--text-muted: #52525b;--text-subtle: #a1a1aa;--primary: #0f766e;--primary-light: #f0fdfa;--primary-ring: #99f6e4;--dk-bg: #101820;--dk-surface: #0d1520;--dk-border: rgba(255,255,255,.06);--dk-fg: #c8d9e4;--dk-muted: #5e7d91;--dk-active-bg: rgba(15,118,110,.25);--dk-active-fg: #5eead4;--dk-hover: rgba(255,255,255,.06);--radius: .625rem;--radius-sm: .375rem;--shadow: 0 1px 3px 0 rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .06)}body{margin:0;font-family:Manrope,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input{font:inherit;cursor:pointer}a{color:inherit}p,h1,h2,h3,h4{margin:0}code,pre{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace}.shell{display:flex;height:100vh;overflow:hidden}.svc-panel{width:160px;flex:0 0 160px;background:var(--dk-bg);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--dk-border)}.brand{display:flex;align-items:center;gap:8px;padding:14px 12px;color:#eef4f8;border-bottom:1px solid var(--dk-border);flex-shrink:0}.brand-name{font-size:13px;font-weight:800;color:#eef4f8;line-height:1.2}.brand-sub{font-size:10px;color:var(--dk-muted);margin-top:1px}.service-list{flex:1;overflow-y:auto;padding:6px 0}.service-item{width:100%;border:0;background:transparent;color:var(--dk-fg);display:flex;align-items:center;padding:9px 10px;font-size:11.5px;font-weight:600;text-align:left;opacity:.55;transition:background .1s,opacity .1s}.service-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}.service-item.active{background:var(--dk-active-bg);color:var(--dk-active-fg);opacity:1}.service-item:hover:not(.active){background:var(--dk-hover);opacity:.85}.nav-panel{width:220px;flex:0 0 220px;background:var(--dk-surface);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--dk-border)}.nav-panel-header{display:flex;align-items:center;justify-content:space-between;padding:11px 14px 9px;border-bottom:1px solid var(--dk-border);flex-shrink:0}.nav-panel-title{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--dk-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-close{display:none;border:0;background:transparent;color:var(--dk-muted);padding:3px;border-radius:4px}.nav-close:hover{color:var(--dk-fg)}.mobile-svc-list{display:none;flex-direction:column;border-bottom:1px solid var(--dk-border);padding:4px 0;flex-shrink:0}.mobile-svc-item{border:0;background:transparent;color:var(--dk-fg);text-align:left;padding:9px 14px;font-size:13px;font-weight:600;opacity:.6;transition:background .1s,opacity .1s;width:100%}.mobile-svc-item.active{background:var(--dk-active-bg);color:var(--dk-active-fg);opacity:1}.mobile-svc-item:hover:not(.active){background:var(--dk-hover);opacity:.9}.search-box{display:flex;align-items:center;gap:8px;padding:9px 13px;border-bottom:1px solid var(--dk-border);color:var(--dk-muted);flex-shrink:0}.search-box input{border:0;outline:0;background:transparent;color:var(--dk-fg);font-size:12.5px;width:100%}.search-box input::placeholder{color:#2d4558}.nav-scroll{flex:1;overflow-y:auto;padding:4px 0 20px}.nav-scroll::-webkit-scrollbar{width:3px}.nav-scroll::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.tag-group{margin-bottom:2px}.tag-group-header{width:100%;border:0;background:transparent;color:var(--dk-muted);display:flex;align-items:center;gap:6px;padding:7px 13px 7px 14px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:left;transition:color .1s}.tag-group-header:hover{color:#8baec2}.tag-group-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-count{background:#ffffff12;color:var(--dk-muted);border-radius:99px;padding:1px 6px;font-size:10px;font-weight:700}.tag-endpoints{padding-bottom:2px}.endpoint-item{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:7px;padding:5px 13px 5px 18px;text-align:left;color:#5e7d91;transition:background .1s,color .1s;min-width:0}.endpoint-item:hover{background:#ffffff0a;color:var(--dk-fg)}.endpoint-item.active{background:var(--dk-active-bg);color:#fff}.endpoint-item.active .ep-path{color:#d0f4ef}.ep-path{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:#4a6a7d}.resource-group{margin-bottom:1px}.resource-group-header{width:100%;border:0;background:transparent;color:#4a6a7e;display:flex;align-items:center;gap:5px;padding:5px 12px 5px 24px;text-align:left;transition:color .1s,background .1s}.resource-group-header:hover{color:#89b0c8;background:#ffffff08}.resource-name{flex:1;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.resource-count{font-size:9px;font-weight:700;color:#3d5a6e;background:#ffffff0d;border-radius:99px;padding:1px 5px;min-width:16px;text-align:center;flex-shrink:0}.resource-endpoints{padding-bottom:2px}.resource-endpoints .endpoint-item{padding-left:30px}.method-mini{flex-shrink:0;font-size:8.5px;font-weight:800;border-radius:3px;padding:2px 4px;color:#fff;min-width:32px;text-align:center;letter-spacing:.02em}.method{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:12px;font-weight:800;letter-spacing:.02em;padding:4px 12px;color:#fff;flex-shrink:0}.method-get{background:#2563eb}.method-post{background:#059669}.method-put{background:#d97706}.method-patch{background:#7c3aed}.method-delete{background:#dc2626}.method-head,.method-options{background:#6b7280}.main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.mobile-topbar{display:none}.hamburger{border:0;background:transparent;color:var(--text-muted);padding:6px;border-radius:var(--radius-sm);flex-shrink:0;display:flex;align-items:center}.hamburger:hover{background:var(--bg)}.mobile-topbar-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.mobile-topbar-service{font-size:13px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-topbar-ep{font-size:11.5px;font-family:ui-monospace,Menlo,monospace;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:199}.main-body{flex:1;display:flex;overflow:hidden}.content-panel{flex:1;min-width:0;overflow-y:auto;padding:22px 28px 32px;background:var(--bg)}.content-panel::-webkit-scrollbar{width:5px}.content-panel::-webkit-scrollbar-thumb{background:var(--border-md);border-radius:3px}.info-panel{width:260px;flex-shrink:0;background:var(--surface);border-left:1px solid var(--border);overflow-y:auto;padding:20px 18px 32px;display:flex;flex-direction:column;gap:16px}.info-panel::-webkit-scrollbar{width:3px}.info-panel::-webkit-scrollbar-thumb{background:var(--border-md);border-radius:2px}.info-version{font-size:10px;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.08em}.info-title{font-size:16px;font-weight:700;line-height:1.3;margin:0}.info-stats{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px;border-right:1px solid var(--border)}.stat:last-child{border-right:0}.stat-value{font-size:16px;font-weight:700;line-height:1}.stat-label{font-size:10px;color:var(--text-subtle)}.openapi-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--primary);text-decoration:none;background:var(--primary-light);border:1px solid var(--primary-ring);border-radius:var(--radius-sm);padding:7px 10px;white-space:nowrap;transition:background .1s;align-self:flex-start}.openapi-link:hover{background:#ccfbf1}.desc-text{font-size:12.5px;color:var(--text-muted);line-height:1.65;display:flex;flex-direction:column;gap:8px}.desc-text p{margin:0}.desc-text ol,.desc-text ul{margin:0;padding-left:17px;display:flex;flex-direction:column;gap:3px}.desc-text li{margin:0}.detail-view{max-width:820px}.detail-heading{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;margin-bottom:14px;box-shadow:var(--shadow)}.detail-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.detail-path{font-size:13.5px;font-weight:500;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 10px;overflow-wrap:anywhere;color:var(--text)}.detail-summary{font-size:18px;font-weight:700;line-height:1.3;margin-bottom:4px}.detail-description{color:var(--text-muted);font-size:13.5px;line-height:1.6}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}.tag-chip{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-ring);border-radius:99px;padding:3px 10px;font-size:12px;font-weight:600}.auth-chip{display:inline-flex;align-items:center;gap:4px;background:#fefce8;color:#92400e;border:1px solid #fde68a;border-radius:99px;padding:3px 10px;font-size:12px;font-weight:600}.spec-link-small{display:inline-flex;align-items:center;gap:4px;color:var(--text-subtle);text-decoration:none;font-size:12px;padding:3px 9px;border:1px solid var(--border);border-radius:99px;transition:background .1s,color .1s}.spec-link-small:hover{background:var(--bg);color:var(--text-muted)}.detail-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 22px;margin-bottom:14px;box-shadow:var(--shadow)}.section-title{font-size:11px;font-weight:800;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;margin-bottom:14px;display:flex;align-items:center;gap:8px}.required-label{background:#fee2e2;color:#b91c1c;border-radius:99px;padding:2px 8px;font-size:10px;text-transform:none;letter-spacing:0;font-weight:700}.section-desc{color:var(--text-muted);font-size:13.5px;margin-bottom:12px}.empty-msg{color:var(--text-subtle);font-size:13.5px}.schema-table{width:100%;border-collapse:collapse;font-size:13.5px}.schema-table th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);padding:0 14px 9px 0;border-bottom:1px solid var(--border)}.schema-table td{padding:9px 14px 9px 0;vertical-align:top;border-bottom:1px solid var(--bg)}.schema-table tr:last-child td{border-bottom:0}.field-name{font-size:12.5px;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1px 6px;white-space:nowrap}.type-badge{font-size:11.5px;font-weight:600;font-family:ui-monospace,SF Mono,Menlo,monospace;color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;padding:1px 6px;white-space:nowrap;display:inline-block}.required-dot{color:#dc2626;font-size:13px;line-height:1}.optional-dot{color:var(--border-md);font-size:13px;line-height:1}.field-desc{color:var(--text-muted);font-size:13px;line-height:1.55}.field-example{color:var(--text-subtle);font-size:12px}.field-example code{background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:0 4px;font-size:11px}.field-enum{margin-top:5px;display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:12px;color:var(--text-subtle)}.field-enum code{background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:0 5px;font-size:11px;color:var(--text-muted)}.param-sections{display:flex;flex-direction:column;gap:18px}.param-group-label{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:8px}.content-type-badge{display:inline-block;font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 8px;margin-bottom:13px}.responses-list{display:flex;flex-direction:column;gap:6px}.response-item{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.response-header{width:100%;border:0;background:var(--bg);display:flex;align-items:center;gap:10px;padding:9px 14px;text-align:left;font-size:13.5px;transition:background .1s}.response-header:hover{background:#ececed}.response-header.open{background:var(--surface)}.status-code{font-weight:700;font-size:12.5px;font-family:ui-monospace,Menlo,monospace;border-radius:var(--radius-sm);padding:2px 8px;text-align:center}.status-ok{background:#dcfce7;color:#15803d}.status-client{background:#fef3c7;color:#92400e}.status-server{background:#fee2e2;color:#b91c1c}.status-default{background:var(--border);color:var(--text-muted)}.response-desc{flex:1;color:var(--text-muted);font-size:13.5px}.response-chevron{color:var(--text-subtle);display:flex}.response-body{padding:14px 16px;border-top:1px solid var(--border)}.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;gap:10px;color:var(--text-subtle);text-align:center;padding:32px}.empty-state h3,.error-state h3{font-size:17px;font-weight:700;color:var(--text)}.empty-state p,.error-state p{font-size:13.5px;color:var(--text-muted);max-width:340px;line-height:1.6}@media (max-width: 1024px){.info-panel{display:none}.detail-view{max-width:100%}}@media (max-width: 768px){.svc-panel{width:56px;flex:0 0 56px}.brand{padding:12px 8px;justify-content:center}.brand>div{display:none}.service-item{padding:10px 6px}.service-item-name{display:none}.nav-panel{width:200px;flex:0 0 200px}}@media (max-width: 560px){.svc-panel{display:none}.nav-panel{position:fixed;left:0;top:0;bottom:0;width:280px;z-index:200;transform:translate(-100%);transition:transform .22s cubic-bezier(.4,0,.2,1)}.nav-panel.open{transform:translate(0)}.nav-close,.mobile-svc-list{display:flex}.mobile-topbar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.content-panel{padding:14px 14px 24px}.detail-view{max-width:100%}.detail-heading,.detail-section{padding:14px 16px}.detail-path{font-size:12px;word-break:break-all}.schema-table{font-size:12.5px;display:block;overflow-x:auto}}
