:root{--brand-dark: #0e3a2f;--brand-light: #78faae;--bg: #ffffff;--bg-subtle: oklch(.985 .005 155);--bg-muted: oklch(.96 .008 155);--surface: #ffffff;--surface-raised: #ffffff;--border: oklch(.9 .012 155);--border-strong: oklch(.82 .02 155);--divider: oklch(.94 .008 155);--fg: oklch(.22 .01 260);--fg-muted: oklch(.48 .012 260);--fg-subtle: oklch(.62 .012 260);--fg-faint: oklch(.78 .01 260);--accent: var(--brand-dark);--accent-hover: var(--brand-light);--accent-soft: var(--brand-light);--accent-soft-2: oklch(.88 .1 155);--accent-fg: #ffffff;--accent-ring: rgb(14 58 47 / .25);--ok: var(--brand-dark);--ok-soft: var(--brand-light);--warn: oklch(.72 .14 75);--warn-soft: oklch(.96 .05 85);--err: oklch(.58 .18 25);--err-soft: oklch(.96 .04 25);--info: oklch(.58 .11 240);--info-soft: oklch(.96 .03 240);--violet: oklch(.58 .12 295);--violet-soft: oklch(.96 .03 295);--font-sans: "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--shadow-xs: 0 1px 0 0 oklch(.22 .01 260 / .04);--shadow-sm: 0 1px 2px 0 oklch(.22 .01 260 / .05), 0 1px 3px 0 oklch(.22 .01 260 / .04);--shadow-md: 0 2px 4px -1px oklch(.22 .01 260 / .06), 0 4px 12px -2px oklch(.22 .01 260 / .08);--shadow-lg: 0 8px 24px -6px oklch(.22 .01 260 / .12), 0 2px 6px -2px oklch(.22 .01 260 / .06);--sidebar-w: 248px;--topbar-h: 52px;--subbar-h: 44px;--content-max: 1400px}:root[data-theme=dark]{--bg: oklch(.17 .008 260);--bg-subtle: oklch(.19 .008 260);--bg-muted: oklch(.22 .008 260);--surface: oklch(.2 .008 260);--surface-raised: oklch(.23 .009 260);--border: oklch(.28 .008 260);--border-strong: oklch(.34 .008 260);--divider: oklch(.26 .008 260);--fg: oklch(.96 .005 110);--fg-muted: oklch(.72 .008 110);--fg-subtle: oklch(.58 .008 110);--fg-faint: oklch(.42 .008 110);--accent: var(--brand-light);--accent-hover: oklch(.84 .16 155);--accent-soft: oklch(.3 .06 155);--accent-soft-2: oklch(.38 .09 155);--accent-fg: var(--brand-dark);--accent-ring: rgb(120 250 174 / .3);--ok: var(--brand-light);--ok-soft: oklch(.3 .06 155);--warn: oklch(.8 .14 85);--warn-soft: oklch(.3 .06 85);--err: oklch(.72 .16 25);--err-soft: oklch(.3 .07 25);--info: oklch(.76 .12 240);--info-soft: oklch(.28 .05 240);--violet: oklch(.76 .13 295);--violet-soft: oklch(.3 .05 295);--shadow-xs: 0 1px 0 0 rgba(0,0,0,.3);--shadow-sm: 0 1px 2px 0 rgba(0,0,0,.4), 0 1px 3px 0 rgba(0,0,0,.3);--shadow-md: 0 2px 4px -1px rgba(0,0,0,.4), 0 4px 12px -2px rgba(0,0,0,.5);--shadow-lg: 0 8px 24px -6px rgba(0,0,0,.6), 0 2px 6px -2px rgba(0,0,0,.4)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--fg);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01";letter-spacing:-.005em}button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}input,select,textarea{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--fg-faint)}.mono{font-family:var(--font-mono);font-feature-settings:"ss01"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.icon-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-md);color:var(--fg-muted);transition:background .15s ease,color .15s ease}.icon-btn:hover{background:var(--bg-muted);color:var(--fg)}.icon-btn.danger:hover{background:var(--err-soft);color:var(--err)}.icon-btn.attention{background:var(--accent);color:var(--accent-fg)}.icon-btn.attention:hover{background:var(--accent-hover, var(--accent));color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;font-size:13px;font-weight:500;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);transition:all .15s ease;white-space:nowrap}.btn:hover{background:var(--bg-muted);border-color:var(--fg-faint)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:transparent;box-shadow:0 1px 2px 0 var(--accent-ring)}.btn.primary:hover{background:var(--accent-hover);color:var(--accent)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--bg-muted);border-color:transparent}.btn.sm{padding:5px 9px;font-size:12px;border-radius:var(--r-sm)}.btn.danger{color:var(--err)}.btn.danger:hover{background:var(--err-soft);border-color:var(--err)}.btn .ic{width:14px;height:14px}.checkbox-modern{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid var(--border-strong);border-radius:4px;background:var(--surface);cursor:pointer;position:relative;flex:0 0 auto;transition:background .15s ease,border-color .15s ease;margin:0}.checkbox-modern:hover:not(:checked):not(:disabled){border-color:var(--fg-faint)}.checkbox-modern:checked{background:var(--accent);border-color:var(--accent)}.checkbox-modern:checked:after{content:"";position:absolute;top:2px;left:5px;width:4px;height:9px;border:solid var(--accent-fg);border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-modern:focus-visible{outline:2px solid var(--accent-ring, var(--accent));outline-offset:2px}.checkbox-modern:disabled{opacity:.5;cursor:not-allowed}.gateway-toggle-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gateway-toggle{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--r-md);border:1.5px solid;font-family:inherit;font-size:13.5px;font-weight:500;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .1s ease}.gateway-toggle .dot{width:22px;height:22px;border-radius:99px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:#ffffffa6}.gateway-toggle .lbl{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.gateway-toggle .lbl-line{font-weight:500}.gateway-toggle .lbl-sub{font-size:11px;font-weight:400;opacity:.78;letter-spacing:0;word-break:break-all}.gateway-toggle .state{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.85}.gateway-toggle.locked{cursor:not-allowed}.gateway-toggle.locked .state{opacity:1}.gateway-toggle.on{background:var(--ok-soft);color:var(--ok);border-color:var(--ok)}.gateway-toggle.on:hover{background:var(--ok);color:#fff;border-color:var(--ok)}.gateway-toggle.on:hover .dot{background:#fffffff2;color:var(--ok)}.gateway-toggle.off{background:var(--err-soft);color:var(--err);border-color:var(--err)}.gateway-toggle.off:hover{background:var(--err);color:#fff;border-color:var(--err)}.gateway-toggle.off:hover .dot{background:#fffffff2;color:var(--err)}.gateway-toggle.on:hover .lbl-sub,.gateway-toggle.off:hover .lbl-sub,.gateway-toggle.on:hover .state,.gateway-toggle.off:hover .state{color:#fff;opacity:1}.gateway-toggle.unavailable{background:var(--bg-muted);color:var(--fg-subtle);border-color:var(--border);cursor:not-allowed}.gateway-toggle:focus-visible{outline:2px solid var(--accent-ring, var(--accent));outline-offset:2px}.fieldset-card{position:relative;border:2.5px solid var(--border-strong);border-radius:var(--r-md);padding:18px 16px 22px;margin-top:14px;transition:border-color .15s ease}.fieldset-card.accent{border-color:var(--accent)}.fieldset-card.violet{border-color:var(--violet)}.fieldset-card input,.fieldset-card select,.fieldset-card textarea{padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--fg);outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.fieldset-card input:focus,.fieldset-card select:focus,.fieldset-card textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.fieldset-card .hint{font-size:11.5px;color:var(--fg-subtle)}.fieldset-card-legend{position:absolute;top:-9px;left:14px;padding:0 8px;background:var(--surface);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);white-space:nowrap}.fieldset-card.accent>.fieldset-card-legend{color:var(--accent)}.fieldset-card.violet>.fieldset-card-legend{color:var(--violet)}.fieldset-card-legend.bottom.off{color:var(--err)}.fieldset-card-legend.bottom{top:auto;left:50%;bottom:-9px;transform:translate(-50%)}.bordered-list{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.bordered-list>.row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--border);font-size:13px}.bordered-list>.row:last-child{border-bottom:0}.bordered-list>label.row{cursor:pointer;transition:background .12s ease}.bordered-list>label.row:hover{background:var(--bg-subtle)}.tbl tr.sub-row.is-clickable{cursor:pointer}.tbl tr.sub-row.is-clickable:hover,.tbl tr.sub-row.is-clickable:focus-within{background:var(--bg-subtle)}.sub-row-action{opacity:0;pointer-events:none;transition:opacity .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.tbl tr.sub-row.is-clickable:hover .sub-row-action,.tbl tr.sub-row.is-clickable:focus-within .sub-row-action{opacity:1;pointer-events:auto}.sub-row-action:hover:not(:disabled){background:var(--ok);color:#fff;border-color:var(--ok)}.sub-row-action:hover:not(:disabled) .ic{color:#fff}.bordered-list>.row .lbl-text{flex:1;min-width:0}.bordered-list>.row .lbl-name{font-weight:500}.bordered-list>.row .lbl-suffix{color:var(--fg-subtle);font-weight:400}.bordered-list .url-row-name{flex:0 0 auto;font-size:12.5px;color:var(--fg);font-weight:500;min-width:150px}.bordered-list .url-row-url{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px;color:var(--fg-muted);word-break:break-all}.bordered-list .url-row-net{flex:0 0 auto;font-size:11.5px;font-weight:500;padding:1px 8px;border-radius:var(--r-pill);letter-spacing:.02em}.bordered-list .url-row-net[data-net=internet]{background:var(--accent-soft);color:var(--accent)}.bordered-list .url-row-net[data-net=intranet]{background:var(--violet-soft);color:var(--violet)}.btn.playground{background:var(--accent-soft);color:var(--accent);border-color:transparent;font-weight:600;position:relative;animation:playground-pulse 2.4s ease-in-out infinite}.btn.playground:hover{background:var(--accent);color:var(--accent-fg);animation:none;transform:translateY(-1px);box-shadow:0 3px 8px var(--accent-ring)}.btn.playground .ic{color:inherit}@keyframes playground-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-ring)}50%{box-shadow:0 0 0 5px transparent}}@media (prefers-reduced-motion: reduce){.btn.playground{animation:none}}.menu-btn{position:relative;display:inline-flex}.menu-btn .btn .lbl-key{color:var(--fg-subtle);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.menu-btn .btn .lbl-val{font-weight:600}.menu-btn .btn .caret{width:12px;height:12px;color:var(--fg-subtle);margin-left:2px}.menu-btn-pop{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg);z-index:30;padding:4px;max-height:60vh;overflow-y:auto}.menu-btn-pop .opt{width:100%;display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r-sm);text-align:left;font-size:12.5px;color:var(--fg)}.menu-btn-pop .opt:hover:not(.disabled){background:var(--bg-muted)}.menu-btn-pop .opt.active{background:var(--bg-muted);font-weight:600}.menu-btn-pop .opt.disabled{opacity:.45;cursor:not-allowed}.menu-btn-pop .opt .check{width:14px;height:14px;color:var(--accent)}.menu-btn-pop .opt .meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.menu-btn-pop .opt .meta .ttl{font-size:12.5px}.menu-btn-pop .opt .meta .sub{font-size:11px;color:var(--fg-subtle)}.menu-btn-pop .opt .envs{display:inline-flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.menu-btn-pop .group-head{padding:6px 8px 4px;font-size:10.5px;font-weight:600;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.06em}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;font-size:11.5px;font-weight:500;border-radius:var(--r-pill);background:var(--bg-muted);color:var(--fg-muted);border:1px solid var(--border);white-space:nowrap;line-height:1.5}.chip.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.chip.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}.chip.err{background:var(--err-soft);color:var(--err);border-color:transparent}.chip.info{background:var(--info-soft);color:var(--info);border-color:transparent}.chip.violet{background:var(--violet-soft);color:var(--violet);border-color:transparent}.chip.accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}.chip .dot{width:6px;height:6px;border-radius:99px;background:currentColor}.api-name-cell{display:flex;align-items:center;gap:10px;min-width:0}.api-kind-badge{width:38px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--r-md);font-size:10px;font-weight:700;letter-spacing:0;line-height:1}.api-kind-badge.rest{background:var(--accent-soft);color:var(--accent)}.api-kind-badge.soap{background:var(--violet-soft);color:var(--violet)}.api-type-chip{background:var(--bg-muted);color:var(--fg-muted);border-color:var(--border)}.chip-select{font:inherit;padding:0;background:transparent;color:var(--fg);border:none;cursor:pointer}.chip-select:hover{color:var(--accent)}.kbd{font-family:var(--font-mono);font-size:10.5px;padding:1px 5px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:4px;color:var(--fg-muted);background:var(--surface);line-height:1.4}.app{display:grid;min-height:100vh;background:var(--bg);color:var(--fg)}.app.layout-sidebar{grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:1fr}.sidebar{border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.sidebar .brand{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);height:var(--topbar-h)}.sidebar .brand .logo{width:26px;height:26px;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--accent),var(--accent-hover));display:grid;place-items:center;color:var(--accent-fg);font-weight:700;font-size:13px;box-shadow:var(--shadow-xs)}.sidebar .brand .name{font-weight:600;font-size:14px;letter-spacing:-.01em}.sidebar .brand .ver{font-size:10.5px;color:var(--fg-subtle);margin-left:2px}.sidebar .app-picker{padding:12px;border-bottom:1px solid var(--border);position:relative}.app-picker-btn{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-md);background:var(--bg-subtle);border:1px solid var(--border);transition:border-color .15s}.app-picker-btn:hover{border-color:var(--border-strong)}.app-picker-btn .swatch{width:26px;height:26px;border-radius:var(--r-sm);background:var(--accent-soft-2);color:var(--accent);display:grid;place-items:center;font-weight:600;font-size:11px;font-family:var(--font-mono)}.app-picker-btn .meta{flex:1;text-align:left;min-width:0}.app-picker-btn .meta .t{font-size:13px;font-weight:600;color:var(--fg)}.app-picker-btn .meta .s{font-size:11px;color:var(--fg-subtle)}.app-picker-btn .chev{color:var(--fg-subtle)}.app-picker-menu{position:absolute;top:calc(100% - 4px);left:12px;right:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg);z-index:30;padding:4px;max-height:60vh;overflow-y:auto}.app-picker-menu .opt{width:100%;display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--r-sm);text-align:left}.app-picker-menu .opt.active{background:var(--bg-muted)}.app-picker-menu .opt .swatch{width:22px;height:22px;border-radius:4px;background:var(--accent-soft-2);color:var(--accent);display:grid;place-items:center;font-size:10px;font-family:var(--font-mono);font-weight:600}.app-picker-menu .opt .n{font-size:12.5px;font-weight:500}.app-picker-menu .opt .s{font-size:11px;color:var(--fg-subtle)}.nav-section{padding:10px 12px 4px}.nav-section .title{font-size:10.5px;font-weight:600;letter-spacing:.06em;color:var(--fg-subtle);text-transform:uppercase;padding:4px 10px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-sm);color:var(--fg-muted);font-size:13px;cursor:pointer;transition:background .12s,color .12s}.nav-item:hover{background:var(--bg-muted);color:var(--fg)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.nav-item .ic{width:15px;height:15px;flex-shrink:0}.nav-item .count{margin-left:auto;font-size:11px;color:var(--fg-subtle);font-variant-numeric:tabular-nums}.nav-item.active .count{color:var(--accent)}.sidebar .user{margin-top:auto;border-top:1px solid var(--border);padding:12px;display:flex;flex-direction:column;gap:8px}.sidebar .user .info{min-width:0;display:flex;flex-direction:column;gap:2px}.sidebar .user .info .n{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fg)}.sidebar .user .info .u{font-size:11.5px;font-weight:500;color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px}.sidebar .user .info .e{font-size:11px;color:var(--fg-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar .user .btn.logout{width:100%;justify-content:center;gap:6px;font-size:12px;padding:7px 10px}.topbar{height:var(--topbar-h);display:flex;align-items:center;padding:0 20px;border-bottom:1px solid var(--border);background:var(--surface);gap:12px;position:sticky;top:0;z-index:20}.topbar .crumbs{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--fg-muted)}.topbar .crumbs .sep{color:var(--fg-faint)}.topbar .crumbs .current{color:var(--fg);font-weight:500}.topbar .spacer{flex:1}.topbar .topbar-mock-banner{display:inline-flex;align-items:center;padding:4px 12px;border:1px solid #d44a4a;border-radius:var(--r-pill);background:#fdecec;color:#b81e1e;font-size:12px;font-weight:700;letter-spacing:.4px;white-space:nowrap;flex:0 0 auto}.topbar .topbar-version{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--fg-muted);font-family:var(--font-mono);font-size:11.5px;font-weight:600;cursor:pointer;flex:0 0 auto;transition:color .12s ease,border-color .12s ease,background .12s ease}.topbar .topbar-version:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.dialog.changelog-dialog{width:720px;max-width:92vw;max-height:80vh}.dialog.changelog-dialog .dialog-body{padding:0}.changelog-entry{padding:18px 22px;border-bottom:1px solid var(--border)}.changelog-entry:last-child{border-bottom:none}.changelog-entry-head{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.changelog-version{font-family:var(--font-mono);font-size:13.5px;font-weight:700;color:var(--fg)}.changelog-date{font-size:12px;color:var(--fg-muted);letter-spacing:.02em}.changelog-summary{margin:4px 0 12px;font-size:12.5px;line-height:1.5;color:var(--fg-muted)}.changelog-items{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:8px}.changelog-items:last-child{margin-bottom:0}.changelog-item{display:grid;grid-template-columns:92px 1fr;gap:10px;align-items:start;font-size:12.5px;line-height:1.5}.changelog-text{color:var(--fg)}.changelog-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 0;border-radius:var(--r-pill);border:1px solid transparent;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.changelog-tag.tag-new{background:var(--accent-soft);color:var(--accent)}.changelog-tag.tag-changed{background:var(--bg-muted);color:var(--fg)}.changelog-tag.tag-deprecated{background:#fff4e0;color:#a25c00}.changelog-tag.tag-removed{background:#fdecec;color:#b81e1e}.topbar .env-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);background:var(--bg-muted);font-size:11.5px;font-weight:500;color:var(--fg-muted)}.topbar .search{position:relative;width:320px;max-width:32vw}.topbar .search input{width:100%;padding:6px 10px 6px 30px;font-size:13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-subtle);outline:none;transition:border-color .15s,background .15s}.topbar .search input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-ring)}.topbar .search .ic{position:absolute;left:9px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--fg-subtle)}.topbar .search .kbd{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.method-chip{display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:3px 10px;border-radius:var(--r-sm);font-size:10.5px;font-weight:700;letter-spacing:.04em;flex:0 0 auto;text-transform:uppercase}.method-chip.get{background:#cff8cf;color:#005e15;color:oklch(.42 .16 145)}.method-chip.post{background:#ffebd1;background:oklch(.95 .08 75);color:#8a5600;color:oklch(.5 .17 70)}.method-chip.put{background:#d7eaff;background:oklch(.93 .06 250);color:#005798;color:oklch(.45 .2 250)}.method-chip.patch{background:#eae8ff;background:oklch(.94 .06 290);color:#6741ca}.method-chip.delete{background:#ffddd9;background:oklch(.93 .06 25);color:#cc272e}.method-chip.head{background:#e6e8eb;color:#4a4d53}.method-chip.options{background:#ffe1f4;background:oklch(.94 .07 340);color:#b73095}.method-chip.trace{background:#c5f6f8;color:#007276;color:oklch(.5 .15 200)}:root[data-theme=dark] .method-chip.get{background:#133015;color:#6ed274}:root[data-theme=dark] .method-chip.post{background:#422700;background:oklch(.3 .07 70);color:#fea92f}:root[data-theme=dark] .method-chip.put{background:#0e2a45;color:#7cbdff;color:oklch(.78 .16 250)}:root[data-theme=dark] .method-chip.patch{background:#292149;color:#b6aaff;color:oklch(.78 .18 290)}:root[data-theme=dark] .method-chip.delete{background:#4b1d1b;color:#ffa098;color:oklch(.8 .16 25)}:root[data-theme=dark] .method-chip.head{background:#232426;color:#9b9fa5}:root[data-theme=dark] .method-chip.options{background:#441e39;color:#ff93dd;color:oklch(.8 .18 340)}:root[data-theme=dark] .method-chip.trace{background:#003033;background:oklch(.28 .06 200);color:#00d0d9;color:oklch(.78 .16 200)}.content{padding:24px 28px 48px;max-width:var(--content-max);margin:0 auto;width:100%}.notif-btn{position:relative}.notif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--err);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;border:2px solid var(--surface);box-sizing:content-box}.notif-popover{position:absolute;top:calc(var(--topbar-h) - 4px);right:16px;width:380px;max-height:70vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 12px 32px #0000002e;z-index:50;display:flex;flex-direction:column}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border)}.notif-head h3{margin:0;font-size:14px;font-weight:600}.notif-body{flex:1;overflow-y:auto;padding:6px 0}.notif-item{display:flex;gap:10px;align-items:flex-start;width:100%;padding:10px 14px;background:transparent;border:0;text-align:left;cursor:pointer;transition:background .12s ease;font:inherit;color:inherit}.notif-item:hover{background:var(--bg-subtle)}.notif-item.is-unread{background:var(--accent-ring, var(--bg-subtle))}.notif-item.is-unread:hover{background:var(--bg-subtle)}.notif-ic{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);background:var(--bg-muted);color:var(--fg-muted);flex:0 0 auto}.notif-ic.notif-ic-ok{background:var(--ok-soft);color:var(--ok)}.notif-ic.notif-ic-err{background:var(--err-soft);color:var(--err)}.notif-body-line{color:var(--fg-muted)}.notif-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.notif-title{font-size:12.5px;line-height:1.35}.notif-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;color:var(--fg-subtle)}.notif-when{color:var(--fg-subtle)}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:18px}.kpi-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);text-align:left;font:inherit;color:inherit}.kpi-card.is-actionable{cursor:pointer;transition:background .12s ease,border-color .12s ease}.kpi-card.is-actionable:hover{background:var(--bg-subtle);border-color:var(--accent-ring, var(--border))}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--fg-subtle)}.kpi-value-row{display:flex;align-items:baseline;gap:8px}.kpi-value{font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1}.kpi-unit{font-size:12.5px;color:var(--fg-muted)}.kpi-card.tone-ok .kpi-value{color:var(--ok)}.kpi-card.tone-warn .kpi-value{color:var(--warn)}.kpi-card.tone-err .kpi-value{color:var(--err)}.dash-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 960px){.dash-cols{grid-template-columns:1fr}}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 600px){.quick-actions{grid-template-columns:1fr}}.quick-action{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.quick-action:hover{background:var(--bg-subtle);border-color:var(--accent-ring, var(--border))}.quick-action .qa-ic{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);background:var(--bg-subtle);color:var(--accent, var(--fg-muted));flex:0 0 auto}.quick-action .qa-text{display:flex;flex-direction:column;min-width:0}.quick-action .qa-title{font-weight:500;font-size:13.5px}.quick-action .qa-sub{font-size:11.5px;color:var(--fg-subtle);margin-top:2px}.traffic-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.traffic-row{display:grid;grid-template-columns:minmax(120px,1fr) 2fr auto;align-items:center;gap:10px;font-size:12.5px}.traffic-row .t-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.traffic-row .t-bar{height:6px;background:var(--bg-muted);border-radius:99px;overflow:hidden}.traffic-row .t-bar-fill{height:100%;background:var(--ok);border-radius:inherit}.traffic-row .t-count{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-muted);text-align:right;min-width:56px}.logs-table tbody td{vertical-align:top}.logs-table .log-expand-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);color:var(--fg-muted);cursor:pointer}.logs-table .log-expand-btn:hover{background:var(--bg-muted);color:var(--fg)}.log-detail-row>td{background:var(--bg-subtle);padding:14px 18px;border-top:0}.log-detail-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.log-detail-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px}.log-detail-section .title{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-subtle);margin-bottom:8px;font-weight:600}.log-detail-section .kv-list{display:grid;grid-template-columns:minmax(110px,max-content) 1fr;gap:4px 12px;font-size:12px}.log-detail-section .kv-list .k{color:var(--fg-subtle);white-space:nowrap}.log-detail-section .kv-list .v{color:var(--fg);font-family:var(--font-mono);word-break:break-all;overflow-wrap:anywhere}.log-detail-section.error{grid-column:1 / -1;border-color:var(--err);background:var(--err-soft)}.log-detail-section.error .title{color:var(--err)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-head h1{font-size:22px;font-weight:600;margin:0;letter-spacing:-.015em}.page-head .sub{color:var(--fg-muted);font-size:13px;margin-top:4px}.page-actions{display:flex;gap:8px;align-items:center}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.section-head h2{font-size:13px;font-weight:600;margin:0;letter-spacing:.02em;color:var(--fg-muted);text-transform:uppercase}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.card .card-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.card .card-head h3{font-size:13px;font-weight:600;margin:0;letter-spacing:-.005em}.card .card-head .sub{font-size:12px;color:var(--fg-subtle)}.card .card-body{padding:16px}.card.flat{box-shadow:none}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);padding:0 28px;background:var(--surface);position:sticky;top:var(--topbar-h);z-index:10}.tabs.flat{border-bottom:none;background:transparent;padding:0;position:static}.tab{padding:11px 14px;font-size:13px;font-weight:500;color:var(--fg-muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:color .15s}.tab:hover{color:var(--fg)}.tab.active{color:var(--fg);border-color:var(--accent)}.tab .count{font-size:11px;background:var(--bg-muted);color:var(--fg-subtle);padding:1px 6px;border-radius:var(--r-pill);font-variant-numeric:tabular-nums}.tab.active .count{background:var(--accent-soft);color:var(--accent)}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.tbl thead th{text-align:left;font-weight:500;font-size:11px;color:var(--fg-subtle);letter-spacing:.04em;text-transform:uppercase;padding:10px 14px;background:var(--bg-subtle);border-bottom:1px solid var(--border);white-space:nowrap}.tbl tbody td{padding:12px 14px;border-bottom:1px solid var(--divider);vertical-align:middle}.tbl tbody tr{transition:background .1s}.tbl tbody tr:hover{background:var(--bg-subtle)}.tbl tbody tr:last-child td{border-bottom:0}.tbl tbody tr.clickable{cursor:pointer}.tbl tbody tr.history-row.current,.tbl tbody tr.history-row.current:hover{background:var(--bg-muted)}.tbl .row-actions{display:flex;gap:2px;justify-content:flex-end;opacity:0;transition:opacity .1s}.tbl tbody tr:hover .row-actions{opacity:1}.tbl td.num{font-variant-numeric:tabular-nums;color:var(--fg-muted)}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:20px}.metric{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 16px}.metric .label{font-size:11.5px;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.metric .value{font-size:24px;font-weight:600;margin-top:6px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:6px}.metric .value .unit{font-size:12px;font-weight:400;color:var(--fg-subtle)}.metric .delta{font-size:12px;margin-top:4px;display:flex;align-items:center;gap:4px;color:var(--fg-subtle)}.metric .delta.up{color:var(--ok)}.metric .delta.down{color:var(--err)}.gw-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.gw-row{display:grid;grid-template-columns:220px repeat(3,1fr);border-bottom:1px solid var(--divider)}.gw-row:last-child{border-bottom:0}.gw-head .gw-cell{font-size:11px;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.04em;font-weight:500;padding:10px 14px;background:var(--bg-subtle);border-right:1px solid var(--divider)}.gw-head .gw-cell:last-child{border-right:0}.gw-cell{padding:14px 16px;border-right:1px solid var(--divider)}.gw-cell:last-child{border-right:0}.gw-label{font-size:13px;font-weight:500}.gw-label .sub{font-size:11.5px;color:var(--fg-subtle);font-weight:400;margin-top:2px}.gw-status{display:flex;align-items:center;gap:10px}.gw-status .pulse{width:8px;height:8px;border-radius:99px;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft);flex-shrink:0}.gw-status.err .pulse{background:var(--err);box-shadow:0 0 0 3px var(--err-soft)}.gw-status.warn .pulse{background:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}.gw-status.unknown .pulse{background:var(--fg-faint);box-shadow:0 0 0 3px var(--bg-muted)}.gw-status .t{font-size:13px;font-weight:500}.gw-status .t .s{font-size:11.5px;color:var(--fg-subtle);font-weight:400;margin-top:2px}.gw-meta{font-size:11.5px;color:var(--fg-subtle);margin-top:4px;font-family:var(--font-mono)}.filter-bar{display:flex;align-items:center;gap:10px;padding:10px 0 16px;flex-wrap:wrap}.filter-bar .search{position:relative;flex:1;min-width:200px;max-width:360px}.filter-bar .search input{width:100%;padding:7px 10px 7px 32px;font-size:13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);outline:none}.filter-bar .search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.filter-bar .search .ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--fg-subtle)}.segmented{display:inline-flex;background:var(--bg-muted);border-radius:var(--r-md);padding:2px;gap:0}.segmented button{padding:5px 12px;font-size:12.5px;font-weight:500;color:var(--fg-muted);border-radius:var(--r-sm);transition:all .12s}.segmented button.active{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-xs)}.segmented .count{font-size:10.5px;color:var(--fg-subtle);margin-left:4px;font-variant-numeric:tabular-nums}.segmented button.active .count{color:var(--fg-muted)}.empty{padding:40px 20px;text-align:center;color:var(--fg-subtle);font-size:13px}.empty.subtle{padding:16px 12px;text-align:left}.discover-list{display:flex;flex-direction:column;gap:10px}.discover-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.discover-card.open{border-color:var(--accent-ring)}.discover-card-head{display:flex;align-items:center;gap:10px;width:100%;padding:12px;background:transparent;border:0;cursor:pointer;text-align:left}.discover-card-head:hover{background:var(--surface-hover, rgba(0,0,0,.02))}.discover-card-head .swatch{width:32px;height:32px;border-radius:var(--r-md);background:linear-gradient(135deg,var(--info),var(--violet));color:#fff;display:grid;place-items:center;font-size:11px;font-weight:700}.discover-card-head .meta{flex:1;min-width:0}.discover-card-head .meta .n{font-size:13px;font-weight:600;color:var(--fg)}.discover-card-head .meta .s{font-size:11px;color:var(--fg-subtle);letter-spacing:.04em}.discover-card-head .chev{color:var(--fg-subtle);transition:transform .15s ease}.discover-card-head .chev.rot{transform:rotate(180deg)}.discover-card-body{padding:4px 12px 14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.discover-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-subtle);font-weight:600;padding:10px 2px 4px}.discover-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.discover-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--r-sm, 6px);background:var(--bg)}.discover-item .di-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.discover-item .di-meta .n{font-size:12.5px;font-weight:500;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discover-item .di-title{display:flex;align-items:center;gap:8px;min-width:0}.discover-item .di-title>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.discover-item .di-title .api-kind-badge{width:38px;height:22px;font-size:10px}.discover-item .di-meta .s{font-size:11px;color:var(--fg-subtle);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.discover-item .pill{font-size:10px;padding:1px 6px;border-radius:99px;background:var(--bg);border:1px solid var(--border);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em}.discover-item .pill.env{background:var(--accent-ring);color:var(--accent);border-color:transparent}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-row{display:grid;gap:12px;margin-bottom:14px;grid-template-columns:1fr 1fr}.form-row>.field{margin-bottom:0}.path-preview{padding:8px 10px;font-size:12.5px;color:var(--fg-muted);border:1px dashed var(--border);border-radius:var(--r-md);background:var(--bg-subtle)}.inline-add{display:flex;gap:8px;align-items:stretch}.inline-add>input{flex:1;min-width:0}.inline-add>.btn{flex:0 0 auto}.field .lbl{font-size:11.5px;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.field input,.field select,.field textarea{padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--fg);outline:none;transition:border-color .15s,box-shadow .15s}.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:30px;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px 12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.field textarea{font-family:var(--font-mono);font-size:12px;min-height:120px;resize:vertical}.field .hint{font-size:11.5px;color:var(--fg-subtle)}.field .err{font-size:11.5px;color:var(--err)}.banner{padding:10px 14px;border-radius:var(--r-md);font-size:13px;margin-bottom:14px;border:1px solid transparent}.banner.err{background:var(--err-soft);color:var(--err);border-color:transparent}.banner.warn{background:var(--warn-soft);color:var(--warn)}.banner.info{background:var(--info-soft);color:var(--info)}.banner.ok{background:var(--ok-soft);color:var(--ok)}.dialog-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:grid;place-items:center;z-index:50}.dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);width:520px;max-width:92vw;max-height:86vh;display:flex;flex-direction:column}.dialog .dialog-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.dialog .dialog-head h3{font-size:14px;font-weight:600;margin:0}.dialog .dialog-body{padding:16px;overflow-y:auto;flex:1 1 auto;min-height:0}.dialog .dialog-foot{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}.dialog.api-detail-dialog{width:1080px;max-width:96vw;height:86vh;max-height:86vh}.dialog.api-detail-dialog .dialog-head h3{font-size:16px}.api-detail-properties{padding:18px 22px}.api-detail-properties .kv-list .kv{grid-template-columns:200px 1fr;padding:8px 0}.api-detail-definition{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.api-detail-definition-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.api-detail-definition .policy-editor.definition-editor{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;border:none;border-radius:0}.api-detail-definition .policy-editor.definition-editor>.cm-theme,.api-detail-definition .policy-editor.definition-editor .cm-editor{flex:1 1 auto;min-height:0}.policy-section{margin-bottom:18px}.policy-section:last-child{margin-bottom:0}.policy-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);margin-bottom:8px;font-weight:600}.policy-list{display:flex;flex-direction:column;gap:8px}.policy-card{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md)}.policy-card.base{opacity:.7;background:var(--bg-subtle)}.policy-card.raw{border-style:dashed}.policy-card.off{background:repeating-linear-gradient(135deg,var(--bg-subtle) 0 6px,transparent 6px 12px),var(--surface);border-style:dashed}.policy-card.off .policy-card-icon,.policy-card.off .policy-card-body{opacity:.55}.policy-card.off .policy-card-title{text-decoration:line-through;text-decoration-color:var(--fg-faint)}.policy-card.off .policy-card-actions{opacity:1}.icon-btn.inactive{color:var(--fg-faint)}.icon-btn.inactive:hover{color:var(--fg);background:var(--bg-muted)}.policy-card-icon{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;flex-shrink:0;background:var(--bg-muted);color:var(--fg-muted)}.policy-card-icon.green{background:#dcfce7;color:#166534}.policy-card-icon.blue{background:#dbeafe;color:#1e40af}.policy-card-icon.purple{background:#ede9fe;color:#6d28d9}.policy-card-icon.amber{background:#fef3c7;color:#92400e}.policy-card-icon.teal{background:#ccfbf1;color:#115e59}.policy-card-icon.slate{background:#e2e8f0;color:#475569}.policy-card-icon.base{background:transparent;color:var(--fg-muted)}.policy-card-body{flex:1;min-width:0}.policy-card-title{font-weight:600;font-size:13px}.policy-card-summary{font-size:11.5px;color:var(--fg-muted);margin-top:2px}.policy-card-summary.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.policy-card-actions{display:flex;gap:4px;flex-shrink:0}.policy-pick{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:left;transition:background .1s}.policy-pick:hover{background:var(--bg-subtle)}.stepper{display:flex;align-items:center;gap:8px;margin-bottom:18px}.stepper .step{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--r-pill);font-size:12px;color:var(--fg-muted);background:var(--bg-muted);border:0;font-family:inherit;cursor:pointer;transition:background .12s ease,color .12s ease}.stepper .step:hover:not(:disabled):not(.active){background:var(--bg-subtle);color:var(--fg)}.stepper .step:disabled{cursor:not-allowed;opacity:.55}.stepper .step.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.stepper .step.done{background:var(--ok-soft);color:var(--ok)}.stepper .step .n{width:18px;height:18px;border-radius:99px;background:var(--surface);display:grid;place-items:center;font-size:10.5px;font-weight:600}.stepper .sep{width:14px;height:1px;background:var(--border-strong)}.hr{height:1px;background:var(--border);margin:16px 0}.split-cols{display:grid;grid-template-columns:1fr 320px;gap:20px}@media (max-width: 960px){.split-cols{grid-template-columns:1fr}}.api-detail-content{padding-top:24px}.api-detail-head{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:center;justify-content:initial;margin-bottom:20px}.api-detail-head>.page-actions{justify-self:end}.api-detail-title-cluster{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.api-detail-pivots{display:flex;align-items:center;gap:8px;margin-left:auto}@media (max-width: 960px){.api-detail-pivots{margin-left:0}}.api-detail-title-cluster h1{margin:0;font-size:22px;font-weight:600;letter-spacing:-.015em;line-height:1.2}.api-detail-url{margin-top:2px;font-size:12px;color:var(--fg-subtle);word-break:break-all}.status-chip{background:var(--accent-soft);color:var(--accent);border-color:transparent}.api-overview-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start}.op-row-toggle{display:flex;width:100%;align-items:center;gap:12px;padding:11px 14px;background:transparent;border:0;cursor:pointer;font:inherit;color:inherit;transition:background .12s ease}.op-row-toggle:hover{background:var(--bg-subtle)}.op-row-chev{flex:0 0 auto;color:var(--fg-subtle);transition:transform .15s ease}.op-row-chev.rot{transform:rotate(180deg)}.op-detail{background:var(--bg-subtle);border-top:1px solid var(--divider);padding:12px 14px;display:flex;flex-direction:column;gap:12px}.op-detail-section{display:flex;flex-direction:column;gap:6px}.op-detail-label{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-subtle)}.op-detail-text{font-size:12px;color:var(--fg);line-height:1.5}.op-detail-mono{font-family:var(--font-mono);font-size:11.5px;color:var(--fg)}.op-detail-chips{display:flex;gap:4px;flex-wrap:wrap}.op-detail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.op-param-row,.op-response-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 10px}.op-response-row{display:flex;gap:10px;align-items:flex-start}.api-overview-main,.api-overview-side{display:flex;flex-direction:column;gap:16px;min-width:0}.api-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.definition-editor{border:0;border-top:1px solid var(--border);border-radius:0}.kv-list.compact{gap:0}.kv-list.compact .kv{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:0}.kv-list.compact .kv .v{font-family:var(--font-sans);font-size:12.5px;color:var(--fg)}@media (max-width: 960px){.api-detail-head{grid-template-columns:1fr;align-items:flex-start}.api-detail-head>.page-actions{justify-self:start}.api-detail-title-cluster{align-items:flex-start}.api-overview-grid,.api-form-grid{grid-template-columns:1fr}}.policy-editor{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.policy-editor .cm-editor{font-size:12.5px}.policy-editor .cm-scroller{font-family:var(--font-mono)}.policy-editor.definition-editor{border:0;border-top:1px solid var(--border);border-radius:0}.kv-list{display:flex;flex-direction:column;gap:8px}.kv-list .kv{display:grid;grid-template-columns:180px 1fr;gap:10px;padding:6px 0;border-bottom:1px dashed var(--divider);font-size:13px}.kv-list .kv:last-child{border-bottom:0}.kv-list .kv .k{color:var(--fg-subtle);font-size:12px}.kv-list .kv .v{font-family:var(--font-mono);font-size:12px;word-break:break-all}.toast-stack{position:fixed;top:calc(var(--topbar-h) + 16px);right:16px;display:flex;flex-direction:column;gap:8px;z-index:200}.toast{padding:10px 14px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);font-size:13px;min-width:220px;max-width:360px}.toast.err{border-color:var(--err);color:var(--err)}.toast.ok{border-color:var(--accent);color:var(--accent)}.spinner{width:14px;height:14px;border-radius:99px;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin .7s linear infinite;display:inline-block;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.signin-mask{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--bg)}.signin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:28px;width:380px;max-width:90vw;text-align:center}.signin-card .logo{width:42px;height:42px;border-radius:var(--r-md);background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:var(--accent-fg);display:grid;place-items:center;font-size:18px;font-weight:700;margin:0 auto 12px}.signin-card h1{font-size:18px;font-weight:600;margin:0 0 4px}.signin-card p{font-size:13px;color:var(--fg-muted);margin:0 0 18px}
