@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraCode-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraCode-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraCode-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraCode-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraSans-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraSans-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraSans-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraSans-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSans-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSans-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-sans:"Fira Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Fira Code", ui-monospace, "SFMono-Regular", Menlo, monospace;--text-xs:12px;--text-sm:13px;--text-base:15px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:999px;--dur-fast:.12s;--dur-base:.2s;--dur-enter:.36s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--sidebar-w:248px;--sidebar-w-collapsed:64px;--topbar-h:56px;--bg:#0d1219;--surface:#141a23;--surface-2:#1a212c;--surface-hover:#1f2734;--border:#252e3b;--border-strong:#344052;--text:#e7ebf0;--text-muted:#9aa4b2;--text-subtle:#7d8898;--accent:#2d68cf;--accent-hover:#2f6fdb;--accent-press:#2860c2;--accent-text:#79a7f5;--accent-soft:#3f7fea24;--on-accent:#fff;--success:#43b97f;--success-soft:#43b97f24;--warning:#e3a63a;--warning-soft:#e3a63a24;--danger:#ee6464;--danger-soft:#ee646424;--on-danger:#1a0b0b;--focus:#79a7f5;--scrim:#05080c99;--shadow-overlay:0 12px 32px #00000073, 0 0 0 1px var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--surface-hover:#ebeef2;--border:#e1e5eb;--border-strong:#c9d0da;--text:#121822;--text-muted:#4e5968;--text-subtle:#636e7f;--accent:#2459c6;--accent-hover:#1e4daf;--accent-press:#1a4399;--accent-text:#2459c6;--accent-soft:#2459c61a;--on-accent:#fff;--success:#1c7c4d;--success-soft:#1c7c4d1a;--warning:#a35f08;--warning-soft:#a35f081a;--danger:#c33131;--danger-soft:#c3313117;--on-danger:#fff;--focus:#2459c6;--scrim:#12182266;--shadow-overlay:0 12px 32px #12182224, 0 0 0 1px var(--border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--surface-hover:#ebeef2;--border:#e1e5eb;--border-strong:#c9d0da;--text:#121822;--text-muted:#4e5968;--text-subtle:#636e7f;--accent:#2459c6;--accent-hover:#1e4daf;--accent-press:#1a4399;--accent-text:#2459c6;--accent-soft:#2459c61a;--on-accent:#fff;--success:#1c7c4d;--success-soft:#1c7c4d1a;--warning:#a35f08;--warning-soft:#a35f081a;--danger:#c33131;--danger-soft:#c3313117;--on-danger:#fff;--focus:#2459c6;--scrim:#12182266;--shadow-overlay:0 12px 32px #12182224, 0 0 0 1px var(--border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,p{margin:0}h1{font-size:var(--text-xl);letter-spacing:-.01em;font-weight:600;line-height:1.3}h2{font-size:var(--text-md);font-weight:600;line-height:1.4}h3{font-size:var(--text-base);font-weight:600}code,.mono{font-family:var(--font-mono);font-size:.9em}a{color:var(--accent-text)}button,input,select{font:inherit;color:inherit}svg.lucide{stroke-width:1.75px;flex-shrink:0;width:18px;height:18px}.icon-sm svg.lucide,svg.lucide.icon-sm{width:16px;height:16px}#main:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-4);z-index:100;background:var(--accent);color:var(--on-accent);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);text-decoration:none;position:absolute;top:-48px}.skip-link:focus{top:var(--space-2)}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;transition:grid-template-columns var(--dur-base) var(--ease-in-out);display:grid}.app[data-sidebar=collapsed]{grid-template-columns:var(--sidebar-w-collapsed) minmax(0, 1fr)}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-head{height:var(--topbar-h);align-items:center;gap:var(--space-3);padding:0 var(--space-4) 0 18px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.brand-mark{width:28px;height:28px;color:var(--accent);flex-shrink:0}.brand-name{font-weight:600;font-size:var(--text-md);white-space:nowrap}.brand-version{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap}.nav{padding:var(--space-3) var(--space-3);flex:1;overflow:hidden auto}.nav-group+.nav-group{margin-top:var(--space-4)}.nav-group-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);padding:0 var(--space-3);margin-bottom:var(--space-1);white-space:nowrap;height:20px;transition:opacity var(--dur-fast) linear;font-weight:500}.nav ul{margin:0;padding:0;list-style:none}.nav-item{align-items:center;gap:var(--space-3);height:38px;padding:0 var(--space-3) 0 11px;border-radius:var(--radius-md);color:var(--text-muted);font-weight:500;font-size:var(--text-base);white-space:nowrap;transition:background-color var(--dur-fast) linear, color var(--dur-fast) linear;text-decoration:none;display:flex;position:relative}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item:active{background:var(--surface-2)}.nav-item[aria-current=page]{background:var(--accent-soft);color:var(--text)}.nav-item[aria-current=page] svg.lucide{color:var(--accent-text)}.nav-item[aria-current=page]:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:-12px}.nav-label{transition:opacity var(--dur-fast) linear}.nav-count{font-size:var(--text-xs);padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--warning-soft);color:var(--warning);transition:opacity var(--dur-fast) linear;margin-left:auto;font-weight:500}.sidebar-foot{border-top:1px solid var(--border);padding:var(--space-3) var(--space-4) var(--space-3) 21px;align-items:center;gap:var(--space-3);white-space:nowrap;min-height:56px;display:flex}.status-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.is-warning{background:var(--warning)}.status-dot.is-danger{background:var(--danger)}.sidebar-foot .foot-text{font-size:var(--text-sm);color:var(--text-muted);transition:opacity var(--dur-fast) linear;line-height:1.3}.sidebar-foot .foot-text strong{color:var(--text);font-weight:500;display:block}.app[data-sidebar=collapsed] .nav-label,.app[data-sidebar=collapsed] .nav-count,.app[data-sidebar=collapsed] .brand-text,.app[data-sidebar=collapsed] .foot-text{opacity:0;pointer-events:none}.app[data-sidebar=collapsed] .nav-group-label{opacity:0}.app[data-sidebar=collapsed] .nav-label,.app[data-sidebar=collapsed] .foot-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}[data-tooltip]{position:relative}.tooltip{z-index:60;pointer-events:none;background:var(--text);color:var(--bg);font-size:var(--text-sm);border-radius:var(--radius-sm);white-space:nowrap;opacity:0;transition:opacity var(--dur-fast) linear, transform var(--dur-fast) var(--ease-out);padding:7px 10px;font-weight:500;line-height:1;position:fixed;transform:translate(-4px)}.tooltip.is-visible{opacity:1;transform:none}.tooltip[data-side=bottom]{transform:translateY(-4px)}.tooltip[data-side=bottom].is-visible{transform:none}.main-col{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);align-items:center;gap:var(--space-3);padding:0 var(--space-6) 0 var(--space-4);background:var(--bg);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.breadcrumb{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);min-width:0;display:flex}.breadcrumb ol{align-items:center;gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:var(--space-2);white-space:nowrap;display:flex}.breadcrumb li+li:before{content:"/";color:var(--text-subtle)}.breadcrumb [aria-current=page]{color:var(--text);font-weight:500}.topbar-spacer{flex:1}.icon-btn{width:36px;height:36px;color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) linear, color var(--dur-fast) linear;background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn:active{background:var(--surface-2)}.toggle-icon{width:22px;height:22px;overflow:visible}.toggle-icon *{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.toggle-icon .ti-panel{fill:currentColor;stroke:none;opacity:.18;transform-box:view-box;transform-origin:3px 12px;transition:transform var(--dur-base) var(--ease-in-out), opacity var(--dur-base) linear}.toggle-icon .ti-divider{transition:transform var(--dur-base) var(--ease-in-out)}.toggle-icon .ti-chevron{transform-box:fill-box;transform-origin:50%;transition:transform var(--dur-base) var(--ease-in-out)}.sidebar-toggle:hover .ti-chevron{transform:translate(-1.5px)}.app[data-sidebar=collapsed] .ti-panel{opacity:.1;transform:scaleX(.45)}.app[data-sidebar=collapsed] .ti-divider{transform:translate(-3.3px)}.app[data-sidebar=collapsed] .ti-chevron{transform:translate(-1.5px)rotate(180deg)}.app[data-sidebar=collapsed] .sidebar-toggle:hover .ti-chevron{transform:translate(0)rotate(180deg)}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);font-weight:500;font-size:var(--text-base);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) linear, border-color var(--dur-fast) linear, color var(--dur-fast) linear, transform var(--dur-fast) var(--ease-out);border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled),.btn-primary.is-hover{background:var(--accent-hover)}.btn-primary:active:not(:disabled){background:var(--accent-press)}.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn-secondary:hover:not(:disabled),.btn-secondary.is-hover{background:var(--surface-hover)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover:not(:disabled),.btn-ghost.is-hover{background:var(--surface-hover);color:var(--text)}.btn-danger{background:var(--danger);color:var(--on-danger)}.btn-sm{height:30px;padding:0 var(--space-3);font-size:var(--text-sm)}.btn.is-focus{outline:2px solid var(--focus);outline-offset:2px}.btn.is-loading{cursor:progress}.btn.is-loading .btn-label{opacity:.8}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.content{padding:var(--space-8) var(--space-6) var(--space-12);width:100%;max-width:1240px;margin:0 auto}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-header p{color:var(--text-muted);margin-top:var(--space-1)}.page.is-entering>*{animation:enter var(--dur-enter) var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}.page.is-leaving{opacity:0;transition:opacity 90ms linear}@keyframes enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.card-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);display:flex}.card-body{padding:var(--space-5)}.grid{gap:var(--space-4);display:grid}.stats{margin-bottom:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.two-col{margin-bottom:var(--space-4);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start}.stat{padding:var(--space-5);gap:var(--space-2);flex-direction:column;display:flex}.stat-label{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;display:flex}.stat-value{font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:600;line-height:1.1}.stat-value small{font-size:var(--text-base);color:var(--text-muted);margin-left:2px;font-weight:400}.stat-meta{font-size:var(--text-sm);color:var(--text-muted)}.stat-meta.is-warning{color:var(--warning)}.stat-meta.is-danger{color:var(--danger)}.sparkline{width:100%;height:32px}.sparkline path{fill:none;stroke:var(--accent-text);stroke-width:1.75px;stroke-linejoin:round;stroke-linecap:round}a.stat{color:inherit;border-radius:var(--radius-lg);transition:border-color var(--dur-fast) linear, background-color var(--dur-fast) linear;text-decoration:none}a.stat:hover{border-color:var(--border-strong);background:var(--surface-2)}.list{margin:0;padding:0;list-style:none}.list-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);display:flex}.list-row+.list-row{border-top:1px solid var(--border)}.list-row .grow{flex:1;min-width:0}.list-row .title{font-weight:500}.list-row .sub{color:var(--text-muted);font-size:var(--text-sm)}.sev{border-radius:var(--radius-md);flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.sev.is-warning{background:var(--warning-soft);color:var(--warning)}.sev.is-danger{background:var(--danger-soft);color:var(--danger)}.sev.is-success{background:var(--success-soft);color:var(--success)}.sev.is-neutral{background:var(--surface-2);color:var(--text-muted)}.flow{align-items:stretch;gap:var(--space-2);padding:var(--space-5);display:flex;overflow-x:auto}.flow-node{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:inherit;transition:border-color var(--dur-fast) linear;flex-direction:column;flex:1 0 150px;gap:2px;text-decoration:none;display:flex}a.flow-node:hover{border-color:var(--accent)}.flow-kind{font-size:var(--text-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.flow-name{align-items:center;gap:var(--space-2);font-weight:500;display:flex}.flow-detail{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.flow-arrow{color:var(--text-subtle);flex-shrink:0;place-items:center;display:grid}.change-time{font-size:var(--text-sm);color:var(--text-subtle);font-variant-numeric:tabular-nums;flex-shrink:0;width:64px}.badge{height:22px;padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);align-items:center;gap:6px;font-weight:500;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.no-dot:before{display:none}.badge.is-success{background:var(--success-soft);color:var(--success);border-color:#0000}.badge.is-warning{background:var(--warning-soft);color:var(--warning);border-color:#0000}.badge.is-danger{background:var(--danger-soft);color:var(--danger);border-color:#0000}.badge.is-accent{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.proto{font-family:var(--font-mono);letter-spacing:.02em;font-size:11px}.toolbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.search{flex:240px;max-width:360px;position:relative}.search svg.lucide{color:var(--text-subtle);width:16px;height:16px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search .input{padding-left:34px}.input,.select{width:100%;height:36px;padding:0 var(--space-3);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-base);transition:border-color var(--dur-fast) linear, box-shadow var(--dur-fast) linear}.input::placeholder{color:var(--text-subtle)}.input:hover:not(:disabled),.select:hover:not(:disabled){border-color:var(--text-subtle)}.input:focus-visible,.select:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input:disabled,.select:disabled{opacity:.55;cursor:not-allowed}.input[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px var(--danger-soft)}.input.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239AA4B2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.field{flex-direction:column;gap:6px;display:flex}.field+.field{margin-top:var(--space-4)}.label{font-size:var(--text-sm);color:var(--text);font-weight:500}.label .optional{color:var(--text-subtle);font-weight:400}.hint{font-size:var(--text-sm);color:var(--text-muted)}.error{font-size:var(--text-sm);color:var(--danger);align-items:center;gap:6px;display:flex}.error svg.lucide{width:14px;height:14px}.field-row+.field,.field+.field-row{margin-top:var(--space-4)}.field-row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);align-self:flex-start;gap:2px;padding:3px;display:inline-flex}.segmented button{height:28px;padding:0 var(--space-3);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur-fast) linear, color var(--dur-fast) linear;background:0 0;border:0;border-radius:6px;font-weight:500}.segmented button:hover{color:var(--text)}.segmented button[aria-checked=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border-strong)}.check-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.check{align-items:center;gap:var(--space-2);height:34px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);transition:border-color var(--dur-fast) linear, background-color var(--dur-fast) linear;display:inline-flex}.check:hover{background:var(--surface-hover)}.check input{accent-color:var(--accent);width:16px;height:16px;margin:0}.check:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.check:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.check .mono{color:var(--text-muted)}.switch{align-items:center;gap:var(--space-3);cursor:pointer;display:inline-flex}.switch button{border-radius:var(--radius-full);cursor:pointer;background:var(--border-strong);width:36px;height:20px;transition:background-color var(--dur-base) linear;border:0;padding:2px}.switch button:after{content:"";width:16px;height:16px;transition:transform var(--dur-base) var(--ease-out);background:#fff;border-radius:50%;display:block}.switch button[aria-checked=true]{background:var(--accent)}.switch button[aria-checked=true]:after{transform:translate(16px)}.switch button:disabled{opacity:.5;cursor:not-allowed}.table-wrap{position:relative;overflow-x:auto}.rule-inline{display:none}table{border-collapse:collapse;width:100%;font-size:var(--text-base)}th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);padding:var(--space-3) var(--space-4);white-space:nowrap;border-bottom:1px solid var(--border);font-weight:500}td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:middle}tbody tr{transition:background-color var(--dur-fast) linear}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}td .row-link{color:var(--text);font-weight:500;text-decoration:none}td .row-link:hover{text-underline-offset:3px;text-decoration:underline}td .rule{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}td.actions{text-align:right;width:48px}.muted{color:var(--text-muted)}.table-foot{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.empty{text-align:center;padding:var(--space-12) var(--space-6);align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.empty .empty-icon{border-radius:var(--radius-lg);background:var(--surface-2);width:44px;height:44px;color:var(--text-muted);place-items:center;display:grid}.empty p{color:var(--text-muted);max-width:420px}.skeleton{background:var(--surface-2);border-radius:var(--radius-sm);height:12px;position:relative;overflow:hidden}.skeleton:after{content:"";background:var(--surface-hover);animation:1.4s ease-in-out infinite pulse;position:absolute;inset:0}@keyframes pulse{0%,to{opacity:0}50%{opacity:1}}.alert{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid;align-items:flex-start;display:flex}.alert.is-danger{background:var(--danger-soft);color:var(--text);border-color:#0000}.alert.is-danger>svg.lucide{color:var(--danger);margin-top:2px}.alert.is-warning{background:var(--warning-soft);border-color:#0000}.alert.is-warning>svg.lucide{color:var(--warning);margin-top:2px}.scrim{background:var(--scrim);z-index:40;opacity:0;transition:opacity var(--dur-base) linear;position:fixed;inset:0}.scrim.is-open{opacity:1}.modal-layer{z-index:50;padding:var(--space-4);place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-lg);width:min(620px,100%);max-height:min(760px,100vh - 32px);box-shadow:var(--shadow-overlay);opacity:0;transition:opacity var(--dur-base) linear, transform .24s var(--ease-out);flex-direction:column;display:flex;transform:translateY(8px)scale(.98)}.modal-layer.is-open .modal{opacity:1;transform:none}.modal-layer.is-closing .modal{transition-duration:.14s;transition-timing-function:var(--ease-in-out)}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-4) 0 var(--space-6);display:flex}.modal-head .hint{margin-top:2px}.modal-body{padding:var(--space-6);flex:1;overflow-y:auto}.modal-foot{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);display:flex}.tabs{gap:var(--space-1);padding:0 var(--space-5);margin-top:var(--space-4);border-bottom:1px solid var(--border);display:flex;position:relative}.tab{align-items:center;gap:var(--space-2);height:42px;padding:0 var(--space-3);cursor:pointer;color:var(--text-muted);font-weight:500;font-size:var(--text-base);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--dur-fast) linear, background-color var(--dur-fast) linear;background:0 0;border:0;display:inline-flex}.tab:hover{color:var(--text);background:var(--surface-hover)}.tab[aria-selected=true]{color:var(--text)}.tab:focus-visible{outline-offset:-2px}.tab-dot{background:var(--danger);border-radius:50%;width:6px;height:6px}.tab-indicator{background:var(--accent);transform-origin:0;width:1px;height:2px;transition:transform .26s var(--ease-out);position:absolute;bottom:-1px;left:0}.tabpanel.is-entering{animation:enter .26s var(--ease-out) both}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset.field>legend{margin-bottom:6px;padding:0}fieldset.field>.segmented{margin-bottom:var(--space-2)}.segmented button{align-items:center;gap:6px;display:inline-flex}.target-row{align-items:center;gap:var(--space-2);display:flex}.target-row .field{margin:0}.target-host{flex:1;min-width:0}.target-port{flex-shrink:0;width:104px}.target-sep{color:var(--text-subtle)}.setting-row{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.setting-row:has(button:disabled){opacity:.55}.cert-fieldset{margin:var(--space-5) 0;padding:var(--space-5) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.cert-fieldset>legend{float:left;width:100%;margin-bottom:var(--space-3)}.cert-fieldset:disabled{opacity:.55}.cert-fieldset:disabled .choice{cursor:not-allowed}.cert-list{clear:both;gap:var(--space-2);display:grid}.cert-list .choice{align-items:flex-start}.cert-list .badge{margin-left:var(--space-2);vertical-align:1px}#cert-other{margin-top:var(--space-3)}#cert-other:empty{display:none}.config-details{margin-top:var(--space-6)}.config-details .code-block{margin-top:var(--space-3)}.code-block{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);color:var(--text-muted);white-space:pre;margin:0;line-height:1.6;overflow-x:auto}.code-block .k{color:var(--accent-text)}.code-block .s{color:var(--success)}details.advanced summary{cursor:pointer;color:var(--text-muted);align-items:center;gap:var(--space-2);font-weight:500;list-style:none;display:flex}details.advanced summary::-webkit-details-marker{display:none}details.advanced summary svg.lucide{transition:transform var(--dur-base) var(--ease-out);width:16px;height:16px}details.advanced[open] summary svg.lucide{transform:rotate(90deg)}details.advanced summary:hover{color:var(--text)}.toasts{bottom:var(--space-6);right:var(--space-6);z-index:70;gap:var(--space-2);flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);min-width:300px;max-width:420px;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);background:var(--surface);box-shadow:var(--shadow-overlay);border-radius:var(--radius-md);animation:toast-in .24s var(--ease-out) both;display:flex}.toast.is-leaving{animation:toast-out .16s var(--ease-in-out) both}.toast>svg.lucide{color:var(--success)}.toast .grow{flex:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@keyframes toast-out{to{opacity:0;transform:translateY(4px)}}.onboarding{z-index:80;background:var(--bg);display:none;position:fixed;inset:0;overflow-y:auto}.onboarding.is-open{animation:fade-in var(--dur-base) linear both;display:block}@keyframes fade-in{0%{opacity:0}}.ob-shell{max-width:960px;padding:var(--space-8) var(--space-6);gap:var(--space-10);grid-template-columns:220px minmax(0,1fr);margin:0 auto;display:grid}.ob-top{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{align-items:center;gap:var(--space-3);height:40px;color:var(--text-subtle);font-size:var(--text-base);counter-increment:step;display:flex}.steps li:before{content:counter(step);width:24px;height:24px;font-size:var(--text-xs);border:1px solid var(--border-strong);transition:background-color var(--dur-base) linear, border-color var(--dur-base) linear, color var(--dur-base) linear;border-radius:50%;place-items:center;font-weight:600;display:grid}.steps li.is-done{color:var(--text-muted)}.steps li.is-done:before{content:"✓";background:var(--success-soft);color:var(--success);border-color:#0000}.steps li[aria-current=step]{color:var(--text);font-weight:500}.steps li[aria-current=step]:before{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.ob-panel{flex-direction:column;min-height:420px;display:flex}.ob-step{flex:1}.ob-step.is-entering{animation:enter var(--dur-enter) var(--ease-out) both}.ob-step h1{margin-bottom:var(--space-2)}.ob-step>p.lead{color:var(--text-muted);margin-bottom:var(--space-6);max-width:560px}.ob-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border);display:flex}.ob-actions .spacer{flex:1}.choice-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.choice{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;background:var(--surface);transition:border-color var(--dur-fast) linear, background-color var(--dur-fast) linear;display:flex}.choice:hover{background:var(--surface-hover)}.choice input{accent-color:var(--accent);width:16px;height:16px;margin:3px 0 0}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.choice .title{font-weight:500}.choice .sub{font-size:var(--text-sm);color:var(--text-muted)}.check-row{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;display:flex}.check-row+.check-row{border-top:1px solid var(--border)}.spec-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.spec-row+.spec-row{margin-top:var(--space-4)}.spec-label{width:100%;font-size:var(--text-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.swatches{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.swatch{border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);overflow:hidden}.swatch .chip{height:44px}.swatch .meta{padding:var(--space-2);color:var(--text-muted)}.swatch .meta strong{color:var(--text);font-weight:500;display:block}.type-sample+.type-sample{margin-top:var(--space-3)}.type-sample span{width:96px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);display:inline-block}@media (width<=1100px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:minmax(0,1fr)}}@media (width<=860px){.app,.app[data-sidebar=collapsed]{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:50;width:min(288px,85vw);transition:transform .26s var(--ease-out);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app[data-mobile-nav=open] .sidebar{box-shadow:var(--shadow-overlay);transform:none}.app[data-sidebar=collapsed] .nav-label,.app[data-sidebar=collapsed] .foot-text,.app[data-sidebar=collapsed] .nav-count,.app[data-sidebar=collapsed] .brand-text,.app[data-sidebar=collapsed] .nav-group-label{opacity:1;clip:auto;pointer-events:auto;width:auto;height:auto;position:static}.topbar{padding:0 var(--space-4) 0 var(--space-2)}.content{padding:var(--space-6) var(--space-4) var(--space-10)}.ob-shell{gap:var(--space-6);padding:var(--space-6) var(--space-4);grid-template-columns:minmax(0,1fr)}.steps{gap:var(--space-1);display:flex}.steps li{gap:0;font-size:0}.steps li[aria-current=step]{font-size:var(--text-sm);gap:var(--space-2)}.theme-label{display:none}}@media (width<=640px){.stats{grid-template-columns:minmax(0,1fr)}.col-optional{display:none}.choice-grid,.field-row{grid-template-columns:minmax(0,1fr)}.toasts{left:var(--space-4);right:var(--space-4);bottom:var(--space-4)}.toast{min-width:0;max-width:none}.breadcrumb li:not(:last-child),.breadcrumb li:last-child:before,.col-rule{display:none}.rule-inline{margin-top:2px;display:block}.target-port{width:88px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}.spin{animation:.8s linear infinite spin!important}}.page{gap:var(--space-4);align-content:start;display:grid}.page>*{min-width:0}.page>.page-header{margin-bottom:var(--space-2)}.page>.grid.stats,.page>.grid.two-col{margin-bottom:0}.page-actions,.card-actions,.btn-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.stack{gap:var(--space-4);display:grid}.spaced{margin-top:var(--space-4)}.center-screen{min-height:100vh;padding:var(--space-4);place-items:center;display:grid}.content:focus{outline:none}.mono-sm{font-family:var(--font-mono);font-size:var(--text-sm)}.nowrap{white-space:nowrap}.row-text{font-weight:500}.plain-list{margin:var(--space-1) 0 0;padding:0;list-style:none}.inline-icon{vertical-align:-3px;margin-right:4px}.sub{color:var(--text-muted);font-size:var(--text-sm)}button.row-link{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:500}button.row-link:hover{text-underline-offset:3px;text-decoration:underline}.login{width:min(400px,100%);padding:var(--space-8);gap:var(--space-4);display:grid}.login .field+.field{margin-top:0}.login-brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.login-submit{width:100%;margin-top:var(--space-2)}.nav-count.is-danger{background:var(--danger-soft);color:var(--danger)}.status-dot.is-neutral{background:var(--text-subtle)}.stat-value.small{font-size:var(--text-xl)}.stat-value.is-danger{color:var(--danger)}.inline-status{font-size:var(--text-sm);color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.inline-status .ok{color:var(--success)}.inline-status .bad{color:var(--danger)}.spinner{color:var(--text-muted);display:inline-flex}.skeleton-rows{padding:var(--space-2) 0;gap:12px;display:grid}.toast.is-error>svg.lucide{color:var(--danger)}.toast.is-warning>svg.lucide{color:var(--warning)}.alert .grow{flex:1;min-width:0}.alert>.btn{flex-shrink:0;align-self:center}.sidebar-foot{color:inherit;transition:background-color var(--dur-fast) linear;text-decoration:none}.sidebar-foot:hover{background:var(--surface-hover)}.change-time.wide{width:110px}.card-pad{padding:var(--space-4) var(--space-5)!important}.field-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-row>.field+.field{margin-top:0}.card-body>.field-row+.field-row,.card-body>.field-row+.setting-row,.card-body>.setting-row+.setting-row,.modal-body .setting-row+.setting-row,.modal-body .field+.setting-row,.modal-body .setting-row+.field{margin-top:var(--space-4)}.textarea{height:auto;padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.5}.file-input{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-1)}.file-btn{cursor:pointer;position:relative}.file-btn:focus-within{outline:2px solid var(--focus);outline-offset:2px}.form-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.form-actions.start{margin-top:var(--space-4);justify-content:flex-start}.form-actions .error{margin-right:auto}.narrow-form{max-width:420px}.inline-field{align-items:center;gap:var(--space-2);flex-direction:row}.inline-field .select{width:auto;min-width:220px}.select.narrow{width:auto}.foot-error{margin-right:auto}.section-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.section-head h3{margin:0}.form-section>.section-head+*{margin-top:0}.confirm-body p{color:var(--text-muted)}.tag-input{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:text;min-height:36px;transition:border-color var(--dur-fast) linear, box-shadow var(--dur-fast) linear;flex-wrap:wrap;align-items:center;gap:6px;padding:3px 6px;display:flex}.tag-input:hover{border-color:var(--text-subtle)}.tag-input:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px var(--accent-soft)}.tag-input.is-invalid{border-color:var(--danger)}.tag-input input{min-width:120px;height:28px;font-size:var(--text-base);background:0 0;border:0;outline:none;flex:1;padding:0 6px}.tag-input input.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.tag{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);height:26px;font-size:var(--text-sm);align-items:center;gap:4px;padding:0 4px 0 8px;display:inline-flex}.tag.mono{font-family:var(--font-mono)}.tag button{width:20px;height:20px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.tag button:hover{background:var(--surface-hover);color:var(--text)}.tag button svg{width:12px;height:12px}.ref-rows{gap:var(--space-2);justify-items:start;display:grid}.ref-row{gap:var(--space-2);align-items:center;width:100%;display:flex}.ref-row>.input,.ref-row>.select{flex:1;min-width:0}.ref-row>.input[inputmode=numeric]{flex:0 0 96px}.env-row>.input:first-child{flex:0 260px}.compact-check{flex-shrink:0;height:36px}.user-list li{align-items:center;gap:var(--space-2);padding:2px 0;display:flex}.more-options{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.more-options summary svg.lucide{width:16px;height:16px;transition:transform var(--dur-base) var(--ease-out)}.more-options[open]>summary svg.lucide{transform:rotate(90deg)}.more-body,.more-body .setting-row{margin-top:var(--space-4)}.more-body h3.spec-label{margin:var(--space-6) 0 var(--space-3)}.more-body h3.spec-label:first-child{margin-top:0}.more-body .field-row+.field-row{margin-top:var(--space-4)}.dns-foot{gap:var(--space-3);margin-top:var(--space-2);justify-items:start;display:grid}.dns-foot p{margin:0}.sort-btn{align-items:center;gap:var(--space-1);font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;display:inline-flex}.sort-btn:hover,.sort-btn.is-on{color:var(--text)}.sort-btn svg.lucide{opacity:.55;width:14px;height:14px}.sort-btn.is-on svg.lucide{opacity:1}.stack-row th{background:var(--surface-2);text-transform:none;letter-spacing:0;font-size:var(--text-sm);color:var(--text);padding:0}.stack-toggle{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-4);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:500;display:flex}.stack-toggle:hover{background:var(--surface-hover)}.stack-toggle svg.lucide{width:16px;height:16px;transition:transform var(--dur-base) var(--ease-out)}.stack-toggle[aria-expanded=true] svg.lucide{transform:rotate(90deg)}.stack-toggle .muted{font-weight:400}tbody.stack-group tr:last-child td{border-bottom:1px solid var(--border)}tbody.stack-group:last-child tr:last-child td{border-bottom:0}.content.is-wide{max-width:none;padding-left:var(--space-4);padding-right:var(--space-4)}.routes-table td,.routes-table th{padding-left:var(--space-3);padding-right:var(--space-3)}.routes-table td:first-child{white-space:nowrap}.routes-table td .rule{white-space:normal;overflow-wrap:anywhere}.check-title{margin:var(--space-5) 0 var(--space-3)}.check-rows{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.check-row{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.check-row-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.check-facts{gap:var(--space-1) var(--space-3);margin:var(--space-2) 0 0;font-size:var(--text-sm);grid-template-columns:auto 1fr;display:grid}.check-facts dt{color:var(--text-muted)}.check-facts dd{min-width:0;margin:0}.inline-status .muted{color:var(--text-muted)}.refresh-count{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.refresh-bar{width:100%;height:10px;accent-color:var(--accent);margin-bottom:var(--space-3);display:block}.combobox{position:relative}.combobox>.input{padding-right:36px}.combobox-toggle{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:0}.combobox-toggle:hover{color:var(--text)}.combobox-list{margin:var(--space-1) 0 0;padding:var(--space-1);z-index:20;background:var(--surface);border-radius:var(--radius-md);max-height:240px;box-shadow:var(--shadow-overlay);list-style:none;position:absolute;left:0;right:0;overflow-y:auto}.combobox-list li{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;display:flex}.combobox-list li:hover,.combobox-list li.is-active{background:var(--surface-hover)}.combobox-list li[aria-selected=true]{background:var(--accent-soft)}.combobox-list li.combobox-empty{color:var(--text-muted);font-size:var(--text-sm);cursor:default;background:0 0}.step-slider{align-items:center;gap:var(--space-3);display:flex}.step-slider input[type=range]{min-width:0;height:24px;accent-color:var(--accent);cursor:pointer;flex:1;margin:0}.step-slider input[type=range]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.step-slider-value{align-items:center;gap:var(--space-2);flex:none;display:flex}.step-slider-value .input{text-align:right;width:80px}.step-slider-output{font-size:var(--text-sm);font-weight:500}.config-details summary svg.lucide{transition:transform var(--dur-base) var(--ease-out)}.config-details[open]>summary svg.lucide{transform:rotate(90deg)}.cert-other:empty{display:none}.cert-other{margin-top:var(--space-3)}.type-picker{gap:var(--space-4);display:grid}.type-group .spec-label{margin-bottom:var(--space-2)}.type-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.choice.compact{padding:var(--space-3)}.choice.compact .sub{font-size:var(--text-xs)}.server-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.server-list li{align-items:center;gap:var(--space-2);display:flex}.table-foot .inline-icon{color:var(--text-subtle)}td.actions .switch{vertical-align:middle}.diff-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.diff-list li{padding:2px var(--space-2);border-radius:4px}.diff-list li:before{width:16px;font-family:var(--font-mono);display:inline-block}.diff-list .is-add{background:var(--success-soft)}.diff-list .is-add:before{content:"+";color:var(--success)}.diff-list .is-del{background:var(--danger-soft)}.diff-list .is-del:before{content:"-";color:var(--danger)}.summary{padding:var(--space-2) var(--space-5);margin:0}.summary>div{gap:var(--space-3);padding:var(--space-3) 0;grid-template-columns:140px 1fr;display:grid}.summary>div+div{border-top:1px solid var(--border)}.summary dt{color:var(--text-muted);font-size:var(--text-sm)}.summary dd{margin:0}.flows{display:grid}.flows>.flow+.flow{border-top:1px solid var(--border)}.flows-more{padding:0 var(--space-5) var(--space-4)}.filters{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.filters .search{flex:240px}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart{position:relative}.chart svg{touch-action:pan-y;width:100%;height:auto;display:block;overflow:visible}.chart svg:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.chart-grid line,line.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis{fill:var(--text-subtle);font-size:11px;font-family:var(--font-sans);font-variant-numeric:tabular-nums}.chart-line{fill:none;stroke:var(--accent-text);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-cross{stroke:var(--text-subtle);stroke-width:1px;stroke-dasharray:3 3}.chart-dot{fill:var(--accent-text);stroke:var(--surface);stroke-width:2px}.chart-tip{pointer-events:none;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);font-size:var(--text-xs);white-space:nowrap;gap:1px;padding:6px 10px;display:grid;position:absolute;top:0;transform:translate(-50%)}.chart-tip strong{font-size:var(--text-sm)}.log-table td{padding-top:8px;padding-bottom:8px}.log-lines{padding:var(--space-2) 0;max-height:70vh;margin:0;list-style:none;overflow-y:auto}.log-lines li{gap:var(--space-3);padding:6px var(--space-5);grid-template-columns:84px 64px 1fr;align-items:start;display:grid}.log-lines li:hover{background:var(--surface-2)}.log-msg{word-break:break-word;color:var(--text)}.card>.tabs{padding-top:var(--space-1);margin-top:0}.step-num{width:22px;height:22px;margin-right:var(--space-2);background:var(--accent-soft);color:var(--accent-text);font-size:var(--text-xs);vertical-align:1px;border-radius:50%;place-items:center;font-weight:600;display:inline-grid}.narrow-form.wide{max-width:640px}.spaced-bottom{margin-bottom:var(--space-4)}.import-table td{vertical-align:top}.import-table .mono,.import-table .mono-sm{overflow-wrap:anywhere}.import-table td:nth-child(3){min-width:220px}.check-col{width:44px}.check-col input{width:16px;height:16px;accent-color:var(--accent);margin-top:3px}tr.is-skipped td{color:var(--text-muted)}.note-list{margin:var(--space-2) 0 0;gap:4px;padding:0;list-style:none;display:grid}.note-list li{font-size:var(--text-sm);color:var(--text-muted);align-items:flex-start;gap:6px;display:flex}.note-list svg.lucide{color:var(--warning);margin-top:2px}.note-list.is-converted svg.lucide{color:var(--success)}.pw-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.pw-grid .field+.field{margin-top:0}.import-foot{gap:var(--space-4);flex-wrap:wrap}.switch-state{gap:var(--space-4);margin-top:var(--space-4);justify-items:start;display:grid}.alert.is-success-soft{background:var(--success-soft);border-color:#0000}.alert.is-success-soft>svg.lucide{color:var(--success);margin-top:2px}.brand-mark{flex-shrink:0;display:block}.brand-ez{color:var(--accent-text)}.brand-lockup{display:inline-flex}.brand-lockup img{max-width:100%;height:auto;display:block}.brand-on-light{display:none!important}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .brand-on-light{display:block!important}:root:not([data-theme=dark]) .brand-on-dark{display:none!important}}:root[data-theme=light] .brand-on-light{display:block!important}:root[data-theme=light] .brand-on-dark{display:none!important}.login-brand{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column}.login-brand .brand-lockup{margin:0 0 var(--space-3) -6px}.login-brand h1{font-size:var(--text-xl)}.ob-top .brand{align-items:center;gap:var(--space-4);display:flex}.brand-setup{color:var(--text-muted);padding-left:var(--space-4);border-left:1px solid var(--border-strong);font-weight:500}@media (width<=1100px){.chart-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.field-row.three,.type-grid{grid-template-columns:minmax(0,1fr)}.summary>div,.log-lines li{grid-template-columns:1fr;gap:2px}.env-row{flex-wrap:wrap}.inline-field .select{min-width:0}.login{padding:var(--space-6)}}h1[tabindex="-1"]:focus{outline:none}
