@import "https://fonts.googleapis.com/css2?family=Sora:wght@600;700&family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-display:"Sora", "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;--font-ui:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--bg:#eef2f5;--surface:#fff;--surface-2:#f7f9fb;--navy:#112b40;--ink:#0d1720;--ink-2:#63727e;--ink-3:#8797a3;--line:#dce3e8;--line-strong:#c3cfd8;--accent:#1f5eff;--accent-hover:#1749c9;--accent-soft:#e9efff;--on-accent:#fff;--ok:#087d5c;--ok-soft:#e8f6f1;--warn:#d97706;--warn-soft:#fff6df;--danger:#e33e32;--danger-soft:#fff0ee;--page-max:1280px;--gutter:20px;--page-inset:24px;--rail:232px;--rail-bg:#0d1720;--rail-ink:#cfd8de;--rail-ink-2:#9fb0bb;--rail-ink-3:#6c7f8b;--rail-line:#263642;--rail-hover:#16232e;--canvas:var(--surface-2);--grid-line:#e6ebf0;--grid-step:28px;--shadow-1:0 1px 2px #0d17200d;--shadow-2:0 1px 2px #0d17200a, 0 8px 24px #0d172012;--r-sm:6px;--r-md:8px;--r-lg:12px;--ease:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur:.16s;--fg:var(--ink);--fg-muted:var(--ink-2);--border:var(--line);--accent-fg:var(--on-accent);--bad:var(--danger);--bad-soft:var(--danger-soft)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a1218;--surface:#0f1b24;--surface-2:#14232e;--navy:#16303f;--ink:#e8eef2;--ink-2:#9fb0bb;--ink-3:#74868f;--line:#22323d;--line-strong:#32454f;--accent:#6c95ff;--accent-hover:#89aaff;--accent-soft:#15243f;--on-accent:#05101f;--ok:#4cc79b;--ok-soft:#0d2a22;--warn:#e8a53d;--warn-soft:#2e2211;--danger:#f5776b;--danger-soft:#331715;--rail-bg:#060f15;--rail-line:#1b2a34;--rail-hover:#11202a;--canvas:var(--bg);--grid-line:#111d26;--shadow-1:0 1px 2px #0006;--shadow-2:0 1px 2px #00000059, 0 8px 24px #00000073}@media (width<=640px){:root{--gutter:12px;--page-inset:10px}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;line-height:1.15}h1{letter-spacing:-.025em;font-size:34px;font-weight:700;line-height:1.12}h2{font-size:20px;font-weight:600}h3{font-size:16px;font-weight:600}p{margin:0}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.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}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.shell{flex-direction:column;min-height:100dvh;display:flex}.brand{color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:800;display:inline-flex}.brand:hover{text-decoration:none}.brand svg{color:var(--accent)}.crumbs{color:var(--ink-3);align-items:center;gap:6px;min-width:0;font-size:13.5px;display:flex}.crumbs a{color:var(--ink-2)}.crumbs .crumb-current{color:var(--ink);font-weight:600}.crumbs svg{color:var(--line-strong);flex-shrink:0}.topbar-right{color:var(--ink-2);flex-shrink:0;align-items:center;gap:12px;min-width:0;margin-left:auto;font-size:13.5px;display:flex}.topbar-right>a,.crumbs>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=640px){.topbar{gap:12px}.topbar-right>a{max-width:30vw}}.main{width:100%;max-width:calc(var(--page-max) + 2 * var(--gutter));padding:40px calc(var(--gutter) + var(--page-inset)) 96px;flex:1;margin:0 auto}.main.full{max-width:none;padding:20px 24px 24px}.btn{border-radius:var(--r-md);min-height:44px;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease), opacity var(--dur) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14.5px;font-weight:700;display:inline-flex}.btn:disabled{opacity:.5}.btn,.btn:hover{white-space:nowrap;text-decoration:none}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-ghost{color:var(--ink-2);background:0 0;padding:0 10px}.btn-ghost:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.btn-sm{min-height:36px;padding:0 14px;font-size:13.5px}.btn-block{width:100%}.btn-danger-ghost{color:var(--danger)}.btn-ghost.btn-danger-ghost:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-2);font-size:13.5px;font-weight:600}.field-input-wrap{display:flex;position:relative}.input{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line-strong);width:100%;min-height:44px;color:var(--ink);transition:border-color var(--dur) var(--ease);padding:0 14px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input.has-error{border-color:var(--danger)}.input--adorned{padding-right:46px}.input-adornment{border-radius:var(--r-sm);width:36px;height:36px;color:var(--ink-3);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.input-adornment:hover{color:var(--ink);background:var(--surface-2)}.input-adornment[aria-pressed=true]{color:var(--accent)}.field-hint{color:var(--ink-3);font-size:12.5px}.field-error,.form-error{color:var(--danger);align-items:flex-start;gap:6px;font-size:13px;display:flex}.form-error{background:var(--danger-soft);border-radius:var(--r-sm);padding:10px 12px}.form-error svg{flex-shrink:0;margin-top:2px}.auth-page{background:var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:100%;max-width:400px;box-shadow:var(--shadow-2);flex-direction:column;gap:20px;padding:28px;display:flex}.auth-card .brand{justify-content:center;font-size:18px}.segmented{background:var(--surface-2);border-radius:var(--r-md);grid-template-columns:1fr 1fr;align-items:stretch;gap:4px;padding:4px;display:grid}.segmented button{min-height:36px;color:var(--ink-2);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;padding:0 8px;font-weight:600;display:flex}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-foot{color:var(--ink-3);text-align:center;font-size:12.5px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-head p{color:var(--ink-2);margin-top:6px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1);padding:20px}.list{flex-direction:column;gap:10px;display:flex}.row-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);transition:border-color var(--dur) var(--ease);align-items:center;gap:16px;padding:16px 18px;display:flex}.row-card:hover{border-color:var(--accent);text-decoration:none}.row-card .row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-card .row-title{font-weight:700}.row-card .row-sub{color:var(--ink-3);font-size:13px}.row-card svg.chev{color:var(--ink-3)}.empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-2);flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty svg{color:var(--ink-3)}.empty h3{color:var(--ink)}.inline-form{align-items:flex-end;gap:10px;display:flex}.inline-form .field{flex:1}.pill{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:10.5px;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-neutral{background:var(--surface-2);color:var(--ink-2)}.pill-accent{background:var(--accent-soft);color:var(--accent)}.pill-idle{background:var(--surface-2);color:var(--ink-2)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.stepper{justify-content:center;align-items:center;gap:6px;margin:0 0 36px;padding:0;list-style:none;display:flex}.stepper li{align-items:center;gap:8px;display:flex}.stepper li:not(:last-child):after{content:"";background:var(--line-strong);width:28px;height:1px;margin:0 2px}.step-dot{border:1.5px solid var(--line-strong);width:26px;height:26px;color:var(--ink-3);background:var(--surface);transition:all var(--dur) var(--ease);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.stepper li.active .step-dot{border-color:var(--accent);color:var(--accent)}.stepper li.done .step-dot{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.step-label{color:var(--ink-3);font-size:13px;display:none}.stepper li.active .step-label{color:var(--ink);font-weight:700}@media (width>=640px){.step-label{display:inline}}.step-head{flex-direction:column;gap:6px;margin-bottom:24px;display:flex}.back-link{color:var(--ink-2);border-radius:var(--r-sm);align-items:center;gap:6px;width:fit-content;min-height:32px;margin-left:-6px;padding:0 6px;font-size:13.5px;font-weight:600;display:inline-flex}.back-link:hover{color:var(--ink);background:var(--surface-2)}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}.step-head h1{text-wrap:balance}.lede{color:var(--ink-2);max-width:56ch}.dropzone{text-align:center;border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--ink-2);cursor:pointer;width:100%;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:var(--accent-soft)}.dropzone svg{color:var(--ink-3)}.dropzone strong{color:var(--ink)}.progress{width:100%;max-width:280px}.progress-bar{background:var(--surface-2);border-radius:4px;height:6px;margin-top:8px;overflow:hidden}.progress-bar>div{background:var(--accent);height:100%;transition:width .2s var(--ease)}.choice-list{gap:10px;display:grid}.choice{border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-height:64px;color:var(--ink);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.choice:hover{border-color:var(--accent);background:var(--accent-soft)}.choice .choice-title{font-weight:700}.choice .choice-sub{color:var(--ink-3);margin-top:2px;font-size:13px}.choice svg{color:var(--ink-3);flex-shrink:0}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.plan-card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:8px;padding:20px;display:flex;position:relative}.plan-card.recommended{border-color:var(--accent);box-shadow:var(--shadow-2)}.plan-card.plan-k8s{background:var(--surface-2)}.plan-badge{background:var(--accent);color:var(--on-accent);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800;position:absolute;top:-11px;left:16px}.plan-card h3{align-items:center;gap:8px;display:flex}.plan-card h3 svg{color:var(--accent)}.plan-tag{color:var(--ink-2);min-height:40px;font-size:13.5px}.plan-price{letter-spacing:-.02em;font-size:26px;font-weight:800}.plan-price small{color:var(--ink-3);letter-spacing:0;font-size:13px;font-weight:500}.plan-price.muted{color:var(--ink-2);font-size:15px;font-weight:600}.plan-features{flex-direction:column;flex:1;gap:7px;margin:0 0 12px;padding:0;list-style:none;display:flex}.plan-features li{color:var(--ink-2);align-items:flex-start;gap:8px;font-size:13.5px;display:flex}.plan-features li svg{color:var(--ok);flex-shrink:0;margin-top:3px}.plan-grid .btn{width:100%}.chat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:10px;min-height:240px;max-height:380px;padding:16px;display:flex;overflow-y:auto}.bubble{border-radius:14px;max-width:82%;padding:10px 14px;font-size:14px;line-height:1.5}.bubble.assistant{background:var(--surface-2);border-bottom-left-radius:4px;align-self:flex-start}.bubble.user{background:var(--accent);color:var(--on-accent);border-bottom-right-radius:4px;align-self:flex-end}.bubble.typing{color:var(--ink-3);font-style:italic}.chat-input{gap:8px;margin-top:12px;display:flex}.chat-input .input{flex:1}.config-list{flex-direction:column;gap:18px;padding-bottom:96px;display:flex}.category{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}.category-head{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.category-head p{color:var(--ink-2);max-width:64ch;font-size:13.5px}.option-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.option{border-radius:var(--r-md);background:var(--surface-2);border:1.5px solid var(--line);color:var(--ink);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;gap:8px;padding:14px;display:flex}.option:hover:not(:disabled){border-color:var(--accent)}.option:disabled{opacity:.7;cursor:wait}.option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.option-top{align-items:center;gap:8px;display:flex}.radio{border:1.5px solid var(--ink-3);width:16px;height:16px;transition:all var(--dur) var(--ease);border-radius:50%;flex-shrink:0}.option[aria-pressed=true] .radio{border-color:var(--accent);border-width:5px}.option-label{flex:1;font-size:14px;font-weight:700}.option-price{color:var(--ink-3);white-space:nowrap;font-size:12.5px}.option[aria-pressed=true] .option-price{color:var(--accent);font-weight:700}.option-detail{color:var(--ink-3);font-size:12px}.option-pros,.option-cons{color:var(--ink-2);font-size:13px;line-height:1.5}.option-pros b{color:var(--ok)}.option-cons b{color:var(--warn)}.sticky-bar{z-index:20;background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow-2);justify-content:center;align-items:center;gap:24px;padding:12px 24px;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-bar .total{color:var(--ink-3);flex-direction:column;font-size:12px;display:flex}.sticky-bar .total b{color:var(--ink);letter-spacing:-.01em;font-size:20px}.budget-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.budget-row .input{width:120px}.budget-row .btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.budget-result{border-radius:var(--r-md);background:var(--accent-soft);border:1px solid var(--accent);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 16px;display:flex}.budget-result .k{color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700;display:block}.budget-result .v{letter-spacing:-.02em;font-size:22px;font-weight:800}.receipt{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.receipt-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.receipt-head .k{color:var(--ink-3);font-size:12.5px}.receipt-head .v{font-weight:700}.receipt-head>div{min-width:0}.receipt-head .v.mono{overflow-wrap:anywhere}.receipt-lines{flex-direction:column;display:flex}.receipt-line{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 18px;display:grid}.receipt-line .cat{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;grid-column:1;font-size:12px;font-weight:700}.receipt-line .what{grid-column:1;font-weight:600}.receipt-line .detail{color:var(--ink-3);grid-column:1;font-size:12.5px}.receipt-line .price{text-align:right;grid-area:1/2/span 3;align-self:center;font-weight:600}.receipt-line.soft .what{color:var(--ink-2);font-weight:500}.receipt-total{background:var(--surface-2);justify-content:space-between;align-items:baseline;padding:16px 18px;display:flex}.receipt-total .label{font-weight:700}.receipt-total .amount{letter-spacing:-.02em;font-size:24px;font-weight:800}.receipt-total .amount small{color:var(--ink-3);letter-spacing:0;font-size:13px;font-weight:500}.callout{border-radius:var(--r-md);background:var(--accent-soft);border:1px solid var(--accent);gap:10px;margin-top:16px;padding:12px 14px;font-size:13.5px;display:flex}.callout svg{color:var(--accent);flex-shrink:0;margin-top:1px}.actions{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}.actions-right{align-items:center;gap:10px;display:flex}.checks{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.check{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);transition:all var(--dur) var(--ease);align-items:center;gap:12px;padding:13px 16px;display:flex}.check.passed{background:var(--ok-soft);border-color:var(--ok)}.check .check-icon{border:1.5px solid var(--line-strong);width:22px;height:22px;color:var(--ok);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.check.passed .check-icon{border-color:var(--ok)}.check.running .check-icon{border-color:var(--accent)}.check span:nth-child(2){flex:1}.check .status{color:var(--ink-3);font-size:12.5px}.check.passed .status{color:var(--ok);font-weight:700}.spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.live-hero{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.hostname{font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 14px;font-size:15px}.kv{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:20px 0;display:grid}.kv>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px}.kv .k{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.kv .v{margin-top:4px;font-size:18px;font-weight:700}.note{color:var(--ink-3);border-top:1px dashed var(--line-strong);margin-top:20px;padding-top:14px;font-size:13px}.muted{color:var(--ink-3);font-size:13.5px}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;margin:8px 0 20px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs>button{white-space:nowrap;flex-shrink:0}.tabs button{font:inherit;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px}.tabs__dot{vertical-align:middle;background:var(--warn);border-radius:50%;width:7px;height:7px;margin-left:7px;display:inline-block;position:relative;top:-1px}.tabs button.on{color:var(--fg);border-bottom-color:var(--accent)}.tabs button:hover{color:var(--fg)}.deploy-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:16px 0;padding:16px 18px}.deploy-card h3{letter-spacing:.02em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 10px;font-size:14px}.deploy-card dl{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.deploy-card dl>div{display:contents}.deploy-card dt{color:var(--fg-muted)}.deploy-card dd{word-break:break-all;margin:0}.deploy-card.phase-failed{border-color:var(--danger,#c0392b)}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dash-head h2{margin:0 0 4px}.seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{font:inherit;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;padding:6px 12px}.seg button.on{background:var(--accent);color:var(--accent-fg,#fff)}.dash-group{margin-top:18px}.dash-group h3{margin:0 0 2px;font-size:15px}.dash-group p{margin:0;font-size:13px}.dash-group .dash-grid{margin-top:10px}.seg-sm button{padding:3px 10px;font-size:12.5px}.range-custom{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.range-fields{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;font-size:13px;display:flex}.range-fields input{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:6px;padding:4px 6px}.range-note{color:var(--fg-muted);text-align:right;font-size:12px}.pages-table{background:var(--surface);border:1px solid var(--border);border-collapse:separate;border-spacing:0;border-radius:12px;width:100%;margin-top:10px;font-size:13px;overflow:hidden}.pages-table th{text-align:left;color:var(--fg-muted);background:var(--surface-2,#f4f4f4);border-bottom:1px solid var(--border);padding:8px 12px;font-weight:500}.pages-table td{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:8px 12px}.pages-table tr:last-child td{border-bottom:0}.pages-table td.mono{word-break:break-all}.pages-row{cursor:pointer}.pages-row:hover td{background:var(--surface-2,#f4f4f4)}.log-route{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:999px;max-width:260px;padding:3px 8px;font-size:12.5px}.pages-wrap{overflow-x:auto}.pages-tools{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pages-tools input,.pages-tools select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:8px;padding:5px 9px;font-size:13px}.pages-tools input{flex:1;min-width:180px;max-width:320px}.pages-sort{all:unset;cursor:pointer}.pages-sort:focus-visible{outline:2px solid var(--accent);border-radius:3px}.pages-warn{color:var(--warn,#9a6700);font-weight:500}.pages-bad{color:var(--danger,#c0392b);font-weight:500}.uptime-up{color:var(--ok,#1a7f37)}.log-around{color:var(--fg-muted);align-items:center;gap:8px;margin:10px 0 0;font-size:13px;display:flex}.chip-toggle{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--fg-muted);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:12.5px}.chip-toggle.on{color:var(--danger,#c0392b);border-color:var(--danger,#c0392b);background:var(--danger-soft,#fde2e1)}.logline--error .logtext{color:var(--danger,#c0392b)}.logline--warn .logtext{color:var(--warn,#b26a00)}.chart{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;margin:0;padding:12px 14px 10px}.chart-title{color:var(--fg-muted);margin-bottom:4px;font-size:13px}.chart-plot{position:relative}.chart-plot svg{display:block;overflow:visible}.chart-pick{cursor:crosshair}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis{fill:var(--fg-muted);font-variant-numeric:tabular-nums;font-size:10px}.chart-line{stroke-width:1.8px}.chart-area{opacity:.12}.chart-empty{fill:var(--fg-muted);font-size:12px}.chart-marker{stroke:var(--fg-muted);stroke-width:1px;stroke-dasharray:3 3}.chart-hover{stroke:var(--fg-muted);stroke-width:1px}.chart-tip{pointer-events:none;background:var(--surface);border:1px solid var(--border);white-space:nowrap;z-index:2;font-variant-numeric:tabular-nums;border-radius:8px;margin:0 8px;padding:6px 8px;font-size:12px;position:absolute;top:0;box-shadow:0 4px 12px #0000001f}.chart-tip-time{color:var(--fg-muted);margin-bottom:2px}.chart-swatch{vertical-align:0;border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.chart-stats{color:var(--fg-muted);gap:4px;margin-top:6px;font-size:12.5px;display:grid}.chart-stats>div{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.chart-stats b{color:var(--fg);font-variant-numeric:tabular-nums;font-weight:600}.chart-stat-name{min-width:130px;color:var(--fg)}.dash-grid{grid-template-columns:1fr;gap:14px;margin:18px 0;display:grid}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;margin-top:28px;display:flex}.section-head h2{margin:0;font-size:18px;line-height:34px}.range{flex-direction:column;align-items:flex-end;gap:8px;margin-left:auto;display:flex}.logpane{background:var(--surface-2,var(--surface));border:1px solid var(--border);border-radius:12px;max-height:420px;margin:8px 0 0;padding:12px;font-size:12.5px;line-height:1.5;overflow:auto}.logline{white-space:pre-wrap;word-break:break-word;grid-template-columns:78px 90px 1fr;gap:10px;display:grid}.logtime,.logsrc{color:var(--fg-muted)}.health{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:0 0 22px;padding:16px}.health-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.health-title{flex:1;gap:10px;min-width:240px;display:flex}.health-title h2{margin:0 0 2px;font-size:18px}.health-title p{margin:0;font-size:13px}.health-dot{background:var(--fg-muted);border-radius:50%;flex:none;width:10px;height:10px;margin-top:7px}.health--ok .health-dot{background:var(--ok,#2e7d32)}.health--busy .health-dot{background:var(--warn,#b26a00)}.health--errors .health-dot{background:var(--danger,#c0392b)}.health-tiles{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:14px;display:grid}.health-tile{border:1px solid var(--border);border-radius:10px;padding:10px 12px}.health-label{color:var(--fg-muted);margin-bottom:2px;font-size:13px;display:block}.health-tile strong{font-variant-numeric:tabular-nums;font-size:16px}.health-tile strong .muted{font-size:13px;font-weight:400}.health-bar{background:var(--surface-2,#eee);border-radius:999px;height:6px;margin-top:8px;overflow:hidden}.health-bar span{background:var(--accent);height:100%;display:block}.health-sub{color:var(--fg-muted);margin-top:6px;font-size:12.5px;display:block}.health--crashing .health-dot,.health--restarted .health-dot{background:var(--danger,#c0392b)}.health-sub--bad{color:var(--danger,#c0392b)}.health-outages{margin-top:14px;font-size:13px}.health-outages ul{margin:6px 0 0;padding-left:18px}.health-bar--high span{background:var(--warn,#b26a00)}.code-bar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;display:flex}.code-branch{border:1px solid var(--border);border-radius:8px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.code-branch select{font:inherit;color:inherit;background:0 0;border:0}.code-crumbs button,.code-tree button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.code-crumbs .sep{color:var(--fg-muted);margin:0 4px}.code-crumbs button:hover,.code-tree button:hover{color:var(--accent)}.code-body{grid-template-columns:260px 1fr;gap:14px;min-height:320px;display:grid}@media (width<=760px){.code-body{grid-template-columns:1fr}}.chip{border:1px solid var(--border);color:var(--fg-muted);border-radius:999px;padding:1px 9px;font-size:12px}.crumbs{font-size:15px}.crumbs button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.crumbs button:hover{text-decoration:underline}.crumbs .sep{color:var(--fg-muted);margin:0 5px}.crumbs .current{font-weight:600}.sha{background:var(--surface-2,#80808026);border-radius:6px;padding:2px 7px;font-size:12px}.sheet-backdrop{z-index:50;background:#0000008c;place-items:end center;display:grid;position:fixed;inset:0}.dialog-backdrop{background:#0d172061;place-items:center;padding:16px}.sheet{background:var(--surface);border:1px solid var(--border);border-radius:14px 14px 0 0;flex-direction:column;width:min(980px,100%);max-height:82vh;display:flex;box-shadow:0 -8px 40px #00000059}.sheet header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 18px;display:flex}.sheet header>div{flex:1;min-width:0}.lifecycle{border-top:1px solid var(--border);margin-top:28px;padding-top:20px}.lifecycle h3{margin:0 0 12px}.lifecycle-actions{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.btn-danger{background:var(--danger,#c0392b);color:var(--surface);border:1px solid #0000}.btn-danger:disabled{opacity:.45;cursor:default}.lifecycle-explain{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:14px;display:grid}.lifecycle-explain dt{font-weight:600}.lifecycle-explain dd{color:var(--fg-muted);margin:0}.lifecycle-note{margin:0 0 14px}.confirm{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:min(480px,92vw);margin:auto;padding:22px}.confirm h4{margin:0 0 8px;font-size:17px}.confirm p{color:var(--fg-muted);margin-top:0}.confirm label{color:var(--fg-muted);margin-top:18px;font-size:13px;display:block}.confirm input{border:1px solid var(--border);background:var(--bg,transparent);width:100%;color:inherit;font:inherit;border-radius:8px;margin-top:6px;padding:8px 10px}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.check.failed{background:var(--bad-soft,#dc505014);border-color:var(--bad,#d9534f)}.check.failed .check-icon{border-color:var(--bad,#d9534f);color:var(--bad,#d9534f)}.check.failed .status{color:var(--bad,#d9534f);font-weight:700}.deploy-progress{color:var(--ink-3);margin:12px 2px 0;font-size:13px}.deploy-stopped{border:1px solid var(--bad,#d9534f);background:var(--bad-soft,#dc50500f);border-radius:10px;margin-top:16px;padding:14px 16px}.deploy-stopped .why{align-items:flex-start;gap:8px;margin:0;font-size:14px;line-height:1.5;display:flex}.deploy-stopped h4{margin:14px 0 6px;font-size:13px;font-weight:600}.deploy-stopped ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.deploy-stopped li{gap:2px;font-size:13px;line-height:1.45;display:grid}.deploy-stopped li code{opacity:.85;font-size:12px}.deploy-stopped-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.deploy-stopped-actions .muted{font-size:12.5px}.found{background:var(--ok-soft);color:var(--ink);border-radius:8px;align-items:flex-start;gap:8px;margin:-6px 0 16px;padding:10px 12px;font-size:13.5px;line-height:1.5;display:flex}.found svg{color:var(--ok);flex-shrink:0;margin-top:3px}.use-detail{color:var(--ink-2);font-size:13.5px}.use-keys{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13px;display:flex}.secrets .named-secrets{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin-top:16px;padding:20px}.secrets .ns-head h4{font-size:16px}.app-tools__list{border-top:1px solid var(--line);margin:0 -20px;padding:0;list-style:none}.app-tools__row{align-items:center;gap:14px;padding:14px 20px;font-size:13.5px;display:flex}.app-tools__row+.app-tools__row{border-top:1px solid var(--line)}.app-tools__main{overflow-wrap:anywhere;flex:1;gap:4px;min-width:0;display:grid}.app-tools__main strong{font-weight:600}.app-tools__cmd{font:500 12.5px/1.4 var(--font-mono);color:var(--ink-2);justify-self:start}.app-tools__hint{color:var(--ink-2);font-size:13px}.app-tools__state{color:var(--ink-2);flex-shrink:0;font-size:13px}.app-tools__note{border-top:1px solid var(--line);border-radius:0 0 var(--r-lg) var(--r-lg);background:var(--surface-2);color:var(--ink-3);margin:0 -20px -20px;padding:10px 20px;font-size:12.5px}.app-tools .use-keys .use-key{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.app-tools .use-keys .use-key:hover{color:var(--accent-hover)}.switch{background:var(--line-strong);cursor:pointer;width:36px;height:20px;transition:background .2s var(--ease);border:0;border-radius:999px;flex-shrink:0;padding:0;position:relative}.switch:after{content:"";width:16px;height:16px;transition:transform .24s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0d172040}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(16px)}.switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.switch:disabled{cursor:default;opacity:.55}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.info-tip{vertical-align:middle;margin-left:6px;display:inline-flex;position:relative}.info-tip__btn{width:22px;height:22px;color:var(--ink-3);cursor:help;transition:color var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.info-tip__btn:hover,.info-tip__btn:focus-visible{color:var(--ink);background:var(--surface-2)}.info-tip__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.info-tip__bubble{z-index:20;background:var(--ink);width:max-content;max-width:min(320px,80vw);color:var(--surface);font-family:var(--font-ui);letter-spacing:0;text-transform:none;text-align:left;box-shadow:var(--shadow-2);pointer-events:none;--tip-x:-50%;opacity:0;visibility:hidden;transform:translate(var(--tip-x), 4px) scale(0);transform-origin:bottom;transition:opacity .16s var(--ease), visibility 0s linear .16s, transform 0s linear .16s;border-radius:10px;padding:10px 12px;font-size:12.5px;font-weight:400;line-height:1.5;position:absolute;bottom:calc(100% + 8px);left:50%}.info-tip:hover .info-tip__bubble,.info-tip:focus-within .info-tip__bubble{opacity:1;visibility:visible;transform:translate(var(--tip-x), 0) scale(1);transition:opacity .16s var(--ease), visibility 0s, transform .16s var(--ease)}@media (width<=600px){.info-tip__bubble{--tip-x:-30%;left:0}}.secrets{--title-gap:16px}.secrets .env-editor>.category-head,.secrets .build-values h4{margin-bottom:var(--title-gap)}.secrets .named-secrets{gap:var(--title-gap)}.secrets .env-editor>.category-head h3,.secrets .build-values h4,.secrets .ns-head h4{align-items:center;gap:2px;display:flex}.secrets .env-editor>.category-head h3 .info-tip,.secrets .build-values h4 .info-tip,.secrets .ns-head h4 .info-tip{margin-left:4px}.secrets-note{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1);align-items:center;gap:16px;margin-bottom:18px;padding:20px 22px;display:flex}.secrets-note--info,.secrets-note--accent{--note:var(--accent);--note-soft:var(--accent-soft)}.secrets-note--warn{--note:var(--warn);--note-soft:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 60%, var(--line))}.secrets-note--ok{--note:var(--ok);--note-soft:var(--ok-soft)}.secrets-note__icon{background:var(--note-soft);width:42px;height:42px;color:var(--note);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.secrets-note__icon svg{stroke-width:2.25px}.secrets-note__bang{font:800 21px/1 var(--font-display)}.secrets-note__body{flex:1;gap:8px;min-width:0;padding-top:1px;display:grid}.secrets-note__title{color:var(--ink);align-items:center;gap:2px;font-size:15px;font-weight:700;line-height:1.35;display:flex}.secrets-note__title .info-tip{margin-left:4px}.secrets-note__keys{font:500 12.5px/1.6 var(--font-mono);color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.secrets-note__key{overflow-wrap:anywhere}.secrets-note__key:not(:last-of-type):after{content:"·";color:var(--ink-3);margin-left:10px}.secrets-note__more{font:600 12.5px/1.6 var(--font-ui);color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0}.secrets-note__more:hover{color:var(--accent-hover)}.secrets-note__line{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.55}.secrets-note__actions{flex-shrink:0;align-self:center;align-items:center;gap:8px;display:flex}@media (width<=600px){.secrets-note{flex-wrap:wrap;padding:18px}.secrets-note__actions{flex-basis:100%;justify-content:flex-end}}.env-savebar{z-index:5;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-2);animation:page-in .24s var(--ease) both;border-radius:12px;align-items:center;gap:12px;margin-top:18px;padding:10px 12px 10px 16px;display:flex;position:sticky;bottom:16px}.env-savebar__text{color:var(--ink-2);font-size:13.5px;font-weight:600}.env-savebar__actions{gap:8px;margin-left:auto;display:flex}.disclosure{--open-ease:cubic-bezier(.32, .72, 0, 1);transition:grid-template-rows .3s var(--open-ease);grid-template-rows:0fr;display:grid}.disclosure[data-open=true]{grid-template-rows:1fr;transition-duration:.44s}.disclosure__inner{min-height:0;overflow:hidden}.disclosure__inner>*{opacity:0;transition:opacity .16s ease-out, transform .3s var(--open-ease);transform:translateY(-6px)}.disclosure[data-open=true]>.disclosure__inner>*{opacity:1;transition:opacity .32s ease-out 60ms, transform .44s var(--open-ease) 40ms;transform:none}.disclosure .fold__body{animation:none}@media (prefers-reduced-motion:reduce){.disclosure,.disclosure__inner>*,.disclosure[data-open=true]>.disclosure__inner>*{transition:none}}.use-row{overflow-wrap:anywhere;gap:3px;font-size:13.5px;line-height:1.45;display:grid}.use-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;display:flex}.use-head strong{min-width:0;font-weight:600}.use-key{font:500 12px/1.2 var(--font-mono);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:6px;padding:4px 7px}button.use-key{cursor:pointer;color:var(--accent);border-color:var(--accent)}button.use-key:hover{background:var(--accent-soft)}.use-key-item{align-items:center;gap:4px;display:inline-flex}.use-key-skipped{color:var(--ink-2);text-decoration:line-through}.use-skip{font:inherit;color:var(--ink-2);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:12px;text-decoration:underline}.use-skip:hover{color:var(--ink)}.use-skip:disabled{cursor:default;opacity:.6}.use-recipe{gap:6px;margin-top:4px;display:grid}.use-recipe-diff{gap:8px;min-width:0;margin-top:4px;display:grid}.use-recipe-diff .diff-file{margin-bottom:0;overflow-x:auto}.use-recipe-files,.use-recipe-notes ul{color:var(--ink-2);margin:0;padding-left:1.1em;font-size:13px}.use-recipe-notes{color:var(--ink-2);font-size:13px}.use-evidence{color:var(--ink-3);font-size:12.5px}.use-evidence ul{gap:2px;margin:4px 0 0;padding-left:1.1em;display:grid}.use-evidence code{overflow-wrap:anywhere;font-size:12px}.env-row-flash{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px;transition:outline-color 1.2s}.deploy-repairs{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;margin-top:14px;padding:12px 14px}.deploy-repairs.stopped{border-color:var(--line-strong,var(--line))}.deploy-repairs h4{margin:0 0 8px;font-size:13px;font-weight:600}.deploy-repairs ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.deploy-repairs li{gap:2px;font-size:13px;line-height:1.45;display:grid}.deploy-repairs li code{opacity:.85;font-size:12px}.deploy-detail{margin-top:10px;font-size:12.5px}.deploy-detail summary{cursor:pointer;color:var(--ink-3)}.deploy-detail code{background:var(--surface-2,#0000000a);white-space:pre-wrap;word-break:break-word;border-radius:6px;margin-top:6px;padding:8px 10px;font-size:12px;line-height:1.5;display:block}.log-tools{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.log-filters{margin-top:10px}.log-pause{flex:none}.chips button{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--fg-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;display:inline-flex}.chips button.on{color:var(--fg);border-color:var(--src,var(--accent));background:color-mix(in srgb, var(--src,var(--accent)) 12%, transparent)}.chips button:hover{border-color:var(--src,var(--accent))}.log-search{flex:1;min-width:160px}.log-search input{border:1px solid var(--border);width:100%;font:inherit;background:var(--surface);color:var(--fg);border-radius:8px;padding:4px 10px;font-size:12.5px}.log-search input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.logline{grid-template-columns:78px minmax(72px,auto) 1fr}.logsrc{color:var(--src,var(--fg-muted));white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.dot{background:var(--src,var(--fg-muted));border-radius:50%;flex-shrink:0;width:8px;height:8px}.logtext mark{background:var(--warn-soft);color:inherit;border-radius:3px;padding:0 2px}.src-app{--src:var(--accent)}.src-db{--src:#8b5cf6}.src-nginx{--src:#6b7280}.src-alloy{--src:#a3a3a3}.src-host{--src:#78716c}.src-x0{--src:#d97706}.src-x1{--src:#db2777}.src-x2{--src:#2563eb}.src-x3{--src:#16a34a}.src-x4{--src:#ea580c}.src-x5{--src:#0891b2}.logline.src-app .logtext{color:var(--fg)}.linkish{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.linkish:hover{color:var(--accent)}.linkish.back{color:var(--accent);align-items:center;gap:4px;margin-bottom:12px;font-size:13.5px;display:inline-flex}.grow{flex:1}.commits ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.commits .btn{margin-top:10px}.avatar{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:inline-grid}.add{color:var(--ok);font-weight:600}.del{color:var(--danger);font-weight:600}.diff-file-head .counts{margin-left:0;font-size:12px}.status{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);color:var(--fg-muted);border-radius:999px;padding:1px 7px;font-size:11px}.status.added{color:var(--ok);border-color:var(--ok)}.status.deleted{color:var(--danger);border-color:var(--danger)}.status.renamed{color:var(--warn);border-color:var(--warn)}.diff-file{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:14px;overflow:hidden}.diff-file-head{border-bottom:1px solid var(--border);background:var(--surface-2,var(--surface));align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.diff-file-head .path{background:0 0;padding:0;font-size:12.5px}.diff-file .pad{margin:0;padding:12px}table.diff{border-collapse:collapse;width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.55}table.diff td{vertical-align:top;padding:0 10px}table.diff td.no{text-align:right;width:1%;min-width:34px;color:var(--fg-muted);opacity:.6;-webkit-user-select:none;user-select:none;border-right:1px solid var(--border)}table.diff td.text{white-space:pre-wrap;word-break:break-all}table.diff .sign{-webkit-user-select:none;user-select:none;opacity:.7;width:14px;display:inline-block}table.diff tr.add td{background:color-mix(in srgb, var(--ok) 13%, transparent)}table.diff tr.del td{background:color-mix(in srgb, var(--danger) 13%, transparent)}table.diff tr.hunk td{background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--fg-muted);padding-top:4px;padding-bottom:4px}table.diff tr.meta td{color:var(--fg-muted);font-style:italic}.overflow-x{overflow-x:auto}.crm{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);height:calc(100vh - 118px);min-height:520px;box-shadow:var(--shadow-2);grid-template-columns:220px minmax(0,1fr);display:grid;overflow:hidden}.crm-error{align-items:center;margin-bottom:14px}.crm-error span{flex:1}.crm-error .crm-linkbtn{color:var(--danger);margin:0;font-weight:600}.crm-nav{border-right:1px solid var(--line);background:var(--surface-2);flex-direction:column;gap:2px;padding:14px 10px 10px;display:flex}.crm-nav-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:2px 10px 10px;font-size:10.5px}.crm-nav-item{border-radius:var(--r-sm);color:var(--ink-2);font:inherit;text-align:left;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:500;display:flex}.crm-nav-item svg{color:var(--ink-3);transition:color var(--dur) var(--ease)}.crm-nav-item:hover{background:var(--surface);color:var(--ink)}.crm-nav-item.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1), 0 0 0 1px var(--line);font-weight:650}.crm-nav-item.is-active svg{color:var(--accent)}.crm-nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.crm-nav-count{font-family:var(--font-mono);color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px}.crm-nav-alert{background:var(--warn-soft);min-width:18px;height:18px;color:var(--warn);font-family:var(--font-mono);border-radius:999px;place-items:center;margin-left:auto;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-grid}.crm-nav-alert+.crm-nav-count{margin-left:6px}.crm-nav-foot{border-top:1px solid var(--line);margin-top:auto;padding-top:10px}.crm-refresh{border-radius:var(--r-sm);width:100%;color:var(--ink-3);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);align-items:center;gap:8px;padding:7px 10px;font-size:12px;display:flex}.crm-refresh:hover:not(:disabled){background:var(--surface);color:var(--ink)}.crm-refresh.is-busy svg{animation:.9s linear infinite crm-spin}@keyframes crm-spin{to{transform:rotate(360deg)}}.crm-body{min-width:0;min-height:0;animation:crm-in .22s var(--ease) both;display:flex;overflow:hidden}@keyframes crm-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.crm-pane{flex:1;min-width:0}.crm-pane-pad{padding:26px 30px 32px;overflow-y:auto}.crm-overview{max-width:1180px}.crm-head{margin-bottom:22px}.crm-head h1{letter-spacing:-.01em;margin:0 0 4px;font-size:24px}.crm-head p{margin:0;font-size:13.5px}.crm-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.crm-metric{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px 14px;display:flex}.crm-metric:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2);transform:translateY(-1px)}.crm-metric:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.crm-metric-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px}.crm-metric-value{font-family:var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums;font-size:32px;font-weight:600;line-height:1}.crm-metric.is-ok .crm-metric-value{color:var(--ok)}.crm-metric-sub{color:var(--ink-2);align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.crm-metric-sub svg{opacity:0;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);transform:translate(-3px)}.crm-metric:hover .crm-metric-sub svg{opacity:1;transform:none}.crm-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.crm-overview-grid>div{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.crm-panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:16px 18px}.crm-panel h2{color:var(--ink);align-items:center;gap:8px;margin:0 0 12px;font-size:14px;font-weight:650;display:flex}.crm-panel-empty{color:var(--ink-3);align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.crm-panel-empty svg{color:var(--ok)}.crm-stack{background:var(--surface-2);border-radius:999px;gap:2px;height:10px;margin-bottom:12px;display:flex;overflow:hidden}.crm-stack-seg{min-width:4px;transition:flex-grow .6s var(--ease);flex-basis:0}.crm-legend{gap:2px;margin:0;padding:0;list-style:none;display:grid}.crm-legend-row{border-radius:var(--r-sm);text-align:left;grid-template-columns:10px 1fr auto 44px;align-items:center;gap:10px;width:calc(100% + 16px);margin:0 -8px;padding:6px 8px;font-size:13px;display:grid}.crm-legend-row.is-link{transition:background var(--dur) var(--ease)}.crm-legend-row.is-link:hover{background:var(--surface-2)}.crm-legend-dot{border-radius:3px;width:8px;height:8px}.crm-legend-key{color:var(--ink);text-transform:capitalize}.crm-legend-val{font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;font-size:12.5px}.crm-legend-pct{font-family:var(--font-mono);color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums;font-size:11.5px}.tone-ok{background:var(--ok)}.tone-warn{background:var(--warn)}.tone-accent{background:var(--accent)}.tone-idle{background:var(--line-strong)}.crm-mini-list{gap:1px;margin:0 -8px;padding:0;list-style:none;display:grid}.crm-mini-row{border-radius:var(--r-sm);text-align:left;align-items:center;gap:10px;width:100%;padding:8px;font-size:13px;display:flex}.crm-mini-row.is-link{transition:background var(--dur) var(--ease)}.crm-mini-row.is-link:hover{background:var(--surface-2)}.crm-mini-row.is-link>svg{color:var(--ink-3);flex-shrink:0}.crm-mini-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.crm-mini-main>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crm-mini-main .strong{color:var(--ink);font-weight:600}.crm-mini-main .muted{color:var(--ink-3);font-size:12px}.crm-mini-date{font-family:var(--font-mono);color:var(--ink-3);white-space:nowrap;font-size:11.5px}.crm-mini-list .crm-linkbtn{margin:4px 8px 0}.crm-split{flex:1;grid-template-columns:340px minmax(0,1fr);min-width:0;min-height:0;display:grid}.crm-list-col{border-right:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.crm-list-head{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:18px 16px 10px;display:flex}.crm-list-head h2{align-items:center;gap:8px;margin:0 0 2px;font-size:16px;display:flex}.crm-count{font-family:var(--font-mono);color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:500}.crm-count--warn{color:var(--warn);background:var(--warn-soft);border-color:#0000}.crm-search-wrap{align-items:center;min-width:0;display:flex;position:relative}.crm-search-wrap>svg{color:var(--ink-3);pointer-events:none;position:absolute;left:10px}.crm-search{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;height:34px;color:var(--ink);font:inherit;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:0 30px 0 31px;font-size:13px}.crm-search:hover{border-color:var(--line-strong)}.crm-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.crm-search-kbd{border:1px solid var(--line);font-family:var(--font-mono);color:var(--ink-3);pointer-events:none;border-radius:4px;padding:0 5px;font-size:10.5px;position:absolute;right:8px}.crm-search:focus~.crm-search-kbd{opacity:0}.crm-search-clear{border-radius:var(--r-sm);width:24px;height:24px;color:var(--ink-3);place-items:center;display:grid;position:absolute;right:5px}.crm-search-clear:hover{color:var(--ink);background:var(--surface-2)}.crm-input{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);height:36px;color:var(--ink);font-family:var(--font-mono);padding:0 10px;font-size:13px}.crm-input:focus{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft);outline:none}.crm-list{flex:1;align-content:start;gap:1px;margin:0;padding:8px 10px 14px;list-style:none;display:grid;overflow-y:auto}.crm-row{border-radius:var(--r-sm);width:100%;color:var(--ink);font:inherit;text-align:left;transition:background var(--dur) var(--ease);background:0 0;align-items:center;gap:10px;padding:9px 10px;display:flex}.crm-row:hover{background:var(--surface-2)}.crm-row.is-selected{background:var(--accent-soft)}.crm-row.is-selected .crm-row-title{color:var(--accent-hover)}.crm-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.crm-row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.crm-row-title{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.crm-row-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.crm-row-live{color:var(--ok)}.crm-tag{border:1px solid var(--line-strong);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:10px}.crm-tag--muted{color:var(--ink-3);border-style:dashed}.crm-tag--warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.crm-nav-org{border-top:1px solid var(--line);color:var(--ink-3);gap:6px;margin-top:14px;padding:12px 10px 0;font-size:12px;display:grid}.crm-callout{border:1px solid color-mix(in srgb, var(--warn) 45%, var(--line));border-radius:var(--r-md);background:var(--warn-soft);width:100%;color:var(--ink);text-align:left;transition:border-color var(--dur) var(--ease);align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 14px;font-size:13.5px;display:flex}.crm-callout:hover{border-color:var(--warn)}.crm-callout>svg:first-child{color:var(--warn);flex-shrink:0;margin-top:2px}.crm-callout>span{flex:1}.crm-callout>svg:last-child{color:var(--ink-3);flex-shrink:0;align-self:center}.callout--warn{background:var(--warn-soft);border-color:var(--warn)}.callout--warn svg{color:var(--warn)}.crm-org-name{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.crm-org-name>div{flex:1;min-width:0}.crm-org-name .input{flex:200px;min-width:0}.crm-org-line{color:var(--ink-2);margin:10px 0 0;font-size:13.5px}.crm-org-line strong{color:var(--ink);margin-right:4px;font-weight:600}button.crm-open{font-family:inherit}button.crm-open:disabled{opacity:.5;cursor:default}button.crm-open:hover:disabled{background:var(--surface);border-color:var(--line)}.crm-empty{color:var(--ink-3);text-align:center;padding:24px 12px;font-size:13px}.crm-detail{min-width:0;animation:crm-in .2s var(--ease) both;flex:1;padding:26px 30px 32px;overflow-y:auto}.crm-detail-empty{color:var(--ink-3);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.crm-detail-empty p{color:var(--ink-2);margin:0;font-size:13.5px}.crm-detail-empty .crm-detail-hint{color:var(--ink-3);align-items:center;gap:4px;font-size:12px;display:inline-flex}.crm-detail-hint kbd{border:1px solid var(--line-strong);font-family:var(--font-mono);color:var(--ink-2);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:11px}.crm-detail-head{margin-bottom:20px}.crm-eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 4px;font-size:10.5px}.crm-detail-head h2{letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-size:21px}.crm-detail-head p.muted{color:var(--ink-2);margin:4px 0 0;font-size:13px}.crm-detail-h3{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:26px 0 10px;font-size:10.5px;font-weight:500}.crm-kv{border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.crm-kv-item{border-left:1px solid var(--line);flex-direction:column;gap:2px;padding:12px 16px;display:flex}.crm-kv-item:first-child{border-left:none}.crm-kv-v{font-family:var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.crm-kv-item.is-ok .crm-kv-v{color:var(--ok)}.crm-kv-k{color:var(--ink-3);font-size:12px}.crm-project-card{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:12px;overflow:hidden}.crm-project-card-head{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.crm-project-card-head svg{color:var(--ink-3)}.crm-project-card-head .strong{font-weight:600}.crm-project-card-head .muted{font-family:var(--font-mono);color:var(--ink-3);margin-left:auto;font-size:11.5px}.crm-project-card .crm-linkbtn{margin:0 12px 10px}.crm-org{border:1px solid var(--line);border-radius:var(--r-md);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.crm-org-who{flex-direction:column;gap:2px;min-width:0;font-size:13px;display:flex}.crm-org-who strong{color:var(--ink);font-size:14px}.crm-org-who span{color:var(--ink-3)}.crm-org .btn{flex-shrink:0}.crm-org+.form-error{margin-top:8px}.crm-table-wrap{overflow-x:auto}.crm-table-card{border:1px solid var(--line);border-radius:var(--r-md)}.crm-table{border-collapse:collapse;width:100%;font-size:13px}.crm-table th,.crm-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px}.crm-table th{z-index:1;background:var(--surface-2);color:var(--ink-3);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;font-weight:500;position:sticky;top:0}.crm-table tbody tr{transition:background var(--dur) var(--ease)}.crm-table tbody tr:hover{background:var(--surface-2)}.crm-table tr:last-child td{border-bottom:none}.crm-table tr.is-gone td{color:var(--ink-3)}.crm-table tr.is-gone .strong{color:var(--ink-3);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.crm-table .strong{color:var(--ink);font-weight:600}.crm-table .muted{color:var(--ink-2)}.crm-table .mono{font-family:var(--font-mono);color:var(--ink-2);font-size:12px}.crm-table .crm-actions{text-align:right}.crm-table .crm-host{text-overflow:ellipsis;max-width:280px;overflow:hidden}.crm-detail .crm-table .crm-host{max-width:190px}.crm-table-empty{color:var(--ink-3);text-align:center!important;white-space:normal!important;padding:28px 12px!important}.crm-table-empty .crm-linkbtn{margin:0 0 0 8px;padding:0}.crm-orphan{margin-left:8px}.crm-chips{flex-wrap:wrap;gap:6px;margin:-4px 0 14px;display:flex}.crm-chip{border:1px solid var(--line);background:var(--surface);height:30px;color:var(--ink-2);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.crm-chip:hover{border-color:var(--line-strong);color:var(--ink)}.crm-chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--surface)}.crm-chip-n{font-family:var(--font-mono);opacity:.7;font-variant-numeric:tabular-nums;font-size:11px}.crm-chip.is-warn:not(.is-active){color:var(--warn);border-color:color-mix(in srgb, var(--warn) 40%, var(--line))}.crm-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=1100px){.crm-overview-grid{grid-template-columns:minmax(0,1fr)}.crm-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.crm{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.crm-nav{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;padding:8px;overflow-x:auto}.crm-nav-label,.crm-nav-foot,.crm-nav-org{display:none}.crm-nav-item{flex-shrink:0}.crm-body{overflow:visible}.crm-split{grid-template-columns:minmax(0,1fr)}.crm-list-col{border-right:none;border-bottom:1px solid var(--line);max-height:45vh}.crm-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-pane-pad,.crm-detail{padding:20px 16px}.crm-toolbar-controls{width:100%}.crm-toolbar-controls .crm-search-wrap{flex:1;width:auto}}.crm-select,.select{appearance:none;border:1px solid var(--line);border-radius:var(--r-sm);background-color:var(--surface);height:34px;color:var(--ink);font:inherit;cursor:pointer;transition:border-color var(--dur) var(--ease);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%238797a3' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:14px 14px;padding:0 32px 0 10px;font-size:13px}.crm-select:hover,.select:hover{border-color:var(--line-strong)}.crm-select:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.crm-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.crm-toolbar h2{align-items:center;gap:8px;margin:0;font-size:20px;display:flex}.crm-toolbar-controls{flex-wrap:wrap;gap:8px;display:flex}.crm-toolbar-controls .crm-search-wrap{width:280px}.crm-open{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--accent-hover);white-space:nowrap;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.crm-open:hover{background:var(--accent-soft);border-color:var(--accent);text-decoration:none}.crm-linkbtn{color:var(--accent-hover);font:inherit;background:0 0;margin-top:10px;padding:4px 0;font-size:13px;font-weight:600}.crm-linkbtn:hover{text-decoration:underline}.crm-note{background:var(--surface-2);border-radius:var(--r-sm);color:var(--ink-3);align-items:center;gap:6px;margin:0 0 14px;padding:9px 12px;font-size:13px;display:flex}.crm-project-card .crm-note{background:0 0;border-radius:0;margin:0}.crm-name-link{color:var(--ink);font-weight:600;text-decoration:none}.crm-name-link:hover{color:var(--accent-hover);text-decoration:underline}.crm-danger{border:1px solid color-mix(in srgb, var(--danger) 45%, var(--line));border-radius:var(--r-md);background:color-mix(in srgb, var(--danger) 5%, var(--surface));margin-top:8px;padding:14px 16px}.crm-danger p{margin:0;font-size:13px;line-height:1.55}.crm-danger-error{margin:10px 0}.crm-danger-row{gap:8px;margin-top:12px;display:flex}.crm-danger-row .crm-input{flex:1;min-width:0}.crm-app-del{border-radius:var(--r-sm);color:var(--ink-3);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);margin-left:8px;padding:3px 8px;font-size:12px;font-weight:600}.crm-app-del:hover{color:var(--danger);background:var(--danger-soft)}.crm-del-confirm{color:var(--danger);align-items:center;gap:6px;margin-left:8px;font-size:12px;display:inline-flex}.crm-del-state{color:var(--ink-3);margin-left:8px;font-size:12px}.crm-del-error{color:var(--danger);white-space:normal;margin-top:4px;font-size:12px;display:block}.btn-xs{border-radius:var(--r-sm);min-height:26px;padding:0 10px;font-size:12px}.sk{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--surface-2) 0%, var(--line) 50%, var(--surface-2) 100%);background-size:200% 100%;animation:1.3s linear infinite sk-shimmer;display:block}.sk-line{height:30px;margin-bottom:4px}.sk-title{width:180px;height:26px;margin-bottom:22px}.sk-card{border-radius:var(--r-md);height:96px}.sk-block{border-radius:var(--r-md);height:220px}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.sk,.crm-refresh.is-busy svg,.crm-body,.crm-detail{animation:none}}.env-editor,.cloud-choice{margin-bottom:20px}.env-rows{flex-direction:column;gap:8px;display:flex}.env-row{grid-template-columns:1fr 1.4fr auto;align-items:center;gap:8px;display:grid}.env-row input{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line-strong);min-height:40px;color:var(--ink);padding:0 12px;font-size:13.5px}.env-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.env-row input[readonly]{background:var(--surface-2,var(--surface));color:var(--ink-2)}.btn-icon{border-radius:var(--r-md);border:1px solid var(--line);width:36px;height:36px;color:var(--ink-3);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{color:var(--danger);border-color:var(--danger)}.env-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.env-import-note{margin:8px 0 0;font-size:13px}.env-row-wrap{flex-direction:column;gap:2px;display:flex}.env-confirm{align-items:center;gap:6px;display:flex}.env-readonly{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.env-readonly li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.env-readonly code{overflow-wrap:anywhere;font-size:13px}.env-confirm .btn{white-space:nowrap}.env-why{color:var(--ink-3);margin:0 0 4px 2px;font-size:12px}.env-badge{background:var(--line);color:var(--ink-3);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px}.env-badge.required{background:var(--accent-soft);color:var(--accent)}.auth-sent{text-align:center;flex-direction:column;align-items:stretch;gap:14px;display:flex}.auth-sent__icon{background:var(--ok-soft);width:44px;height:44px;color:var(--ok);border-radius:50%;place-items:center;margin:0 auto;display:grid}.auth-sent__icon--warn{background:var(--warn-soft);color:var(--warn)}.auth-sent__title{font-size:20px}.auth-sent__text{color:var(--ink-2);font-size:14px;line-height:1.55}.auth-sent__text strong{color:var(--ink);overflow-wrap:anywhere}.cli-asker{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:auto 1fr;gap:6px 14px;margin:0;padding:12px 16px;font-size:14px;display:grid}.cli-asker dt{color:var(--ink-3)}.cli-asker dd{color:var(--ink);margin:0}.env-badge.filled{background:var(--ok-soft);color:var(--ok)}.build-values{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.build-values h4{margin:0 0 4px;font-size:14px;font-weight:700}.add-app{background:color-mix(in srgb, var(--accent-soft) 60%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 14%, var(--line));border-radius:16px;margin-top:8px;padding:28px;scroll-margin-top:112px;position:relative}.add-app__head{align-items:center;gap:14px;display:flex}.add-app__intro{flex:1;min-width:0}.add-app__title{font-family:var(--font-display);letter-spacing:-.02em;outline:none;font-size:24px;font-weight:700}.add-app__lede{color:var(--ink-2);margin-top:6px;font-size:14.5px}.add-app__toggle{background:var(--accent);width:44px;height:44px;color:var(--on-accent);cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform .22s var(--ease-spring);border:1px solid #0000;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.add-app__toggle svg{transition:transform .36s var(--ease-spring)}.add-app__toggle:hover{background:var(--accent-hover)}.add-app__toggle:active{transform:scale(.94)}.add-app__toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.add-app__toggle[aria-expanded=true]{background:var(--surface);color:var(--ink-2);border-color:var(--line)}.add-app__toggle[aria-expanded=true]:hover{color:var(--ink);background:var(--surface-2)}.add-app__toggle[aria-expanded=true] svg{transform:rotate(135deg)}@media (prefers-reduced-motion:reduce){.add-app__toggle,.add-app__toggle svg{transition:none}}.add-app__body{--open-ease:cubic-bezier(.32, .72, 0, 1);opacity:0;transition:grid-template-rows .34s var(--open-ease), opacity .18s ease-out;grid-template-rows:0fr;display:grid}.add-app__body[data-open=true]{opacity:1;transition:grid-template-rows .52s var(--open-ease), opacity .36s ease-out 80ms;grid-template-rows:1fr}.add-app__inner{min-height:0;margin:0 -6px;padding:0 6px;overflow:hidden}.add-app__inner>*{transition:transform .34s var(--open-ease);transform:translateY(-10px)}.add-app__body[data-open=true] .add-app__inner>*{transition:transform .56s var(--open-ease) 40ms;transform:none}.add-app__inner>.add-app__ways{margin-top:24px}@media (prefers-reduced-motion:reduce){.add-app__body,.add-app__body[data-open=true],.add-app__inner>*{transition:none}}.add-app .way{box-shadow:var(--shadow-1)}.add-app .way--wide{box-shadow:var(--shadow-2)}.add-app .drop.way{box-shadow:none}.add-app__foot{color:var(--ink-2);align-items:flex-start;gap:7px;margin:18px 0 0;font-size:12.5px;line-height:1.5;display:flex}.add-app__foot svg{color:var(--ink-3);flex-shrink:0;margin-top:2px}.add-app__flash{border-radius:inherit;pointer-events:none;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent);animation:add-app-flash 1.6s var(--ease) both;position:absolute;inset:-1px}@keyframes add-app-flash{0%{opacity:0}25%{opacity:1}to{opacity:0}}.page-head__new{flex-shrink:0;gap:6px}@media (width<=600px){.add-app{padding:20px 16px}.add-app__title{font-size:21px}.page-head:has(.page-head__new){flex-wrap:wrap;align-items:flex-start}.add-app__toggle{width:40px;height:40px}}.add-app__ways{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;gap:14px;display:grid}.add-app__way{text-align:left;flex-direction:column;align-items:flex-start;gap:10px;margin:0;padding:22px;display:flex}.add-app__way h3{margin:0;font-size:16px}.add-app__way .setting__note{margin:0}.add-app__way--zip{align-items:flex-start}.add-app__icon{border-radius:var(--r-md);background:var(--accent-soft);width:40px;height:40px;color:var(--accent);place-items:center;display:grid}.add-app__small{font-size:12.5px}.add-app__more{border-top:1px solid var(--line);width:100%;margin-top:4px;padding-top:10px}.add-app__more summary{cursor:pointer;color:var(--ink-2);font-size:13px}.add-app__more[open] summary{margin-bottom:12px}.add-app__form,.add-app__repos{width:100%}.add-app__repos .repo-list{margin-top:10px}.add-app__repos .repo-row{gap:12px;padding:10px 12px}.repo-reading{gap:8px;display:grid}.repo-reading__bar{width:100%;height:8px}.add-app__bar{align-self:stretch;width:100%;height:8px;margin-top:14px}.add-app__bar[data-reading=true] span{animation:add-app-reading 1.2s var(--ease) infinite alternate}@keyframes add-app-reading{0%{opacity:1}to{opacity:.7}}@media (prefers-reduced-motion:reduce){.add-app__bar[data-reading=true] span{animation:none}}.source-tag{color:var(--ink-3);font-size:12px;font-family:var(--font-mono);align-items:center;gap:4px;margin-left:10px;display:inline-flex}.repo-list{flex-direction:column;gap:8px;margin-top:14px;display:flex}.repo-row{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);align-items:center;gap:14px;padding:12px 16px;display:flex}.repo-row .row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.repo-row .row-title{font-weight:700;font-family:var(--font-mono);font-size:14px}.repo-row .row-sub{color:var(--ink-3);font-size:12.5px}.repo-list--compact{max-height:340px;overflow-y:auto}.repo-list--compact .row-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gh-latest{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:12px;display:flex}.gh-latest__state{color:var(--ink-2);font-size:13.5px}.gh-latest__state .mono{color:var(--ink)}.approved-note{color:var(--ink-3);overflow-wrap:anywhere;margin-top:4px;font-size:12px}.approved-note__changed{color:var(--warn);font-weight:600}.security-note{margin:12px 0 4px}.security-build{width:auto;min-width:180px}.security-empty{text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;gap:8px;display:flex}.security-empty p{max-width:52ch;margin:0}.security-card__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.security-card__head h3{margin:0 0 4px}.security-card__explain{max-width:60ch;margin:0 0 12px;font-size:13.5px}.security-tool{flex-direction:column;align-items:flex-end;gap:2px;font-size:12.5px;display:flex}.security-status{align-items:center;gap:8px;margin:4px 0;font-size:14px;display:flex}.security-status--ok{color:var(--ok)}.security-status--error{color:var(--ink-2);flex-wrap:wrap;align-items:flex-start}.security-status--error svg{color:var(--warn);margin-top:2px}.security-reason{width:100%;color:var(--ink-3);overflow-wrap:anywhere;font-size:12px;display:block}.security-counts{flex-wrap:wrap;gap:6px;margin:4px 0 12px;display:flex}.security-more{margin-top:8px}.security-more summary,.security-legend summary{cursor:pointer;color:var(--accent);font-size:13.5px}.security-small{margin:8px 0 0;font-size:12.5px}.finding-list{flex-direction:column;margin:8px 0 0;padding:0;list-style:none;display:flex}.finding{border-top:1px solid var(--line);flex-direction:column;gap:4px;min-width:0;padding:10px 0;display:flex}.finding__top{flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.finding__cat{color:var(--ink-2);font-weight:600}.finding__id{color:var(--ink-3);overflow-wrap:anywhere;font-size:12px}.finding__title{overflow-wrap:anywhere;font-size:14px}.finding__what{color:var(--ink-2);overflow-wrap:anywhere;font-size:13px}.finding__what code{font-size:12px}.security-legend{margin:8px 0 0}.security-legend dl{flex-direction:column;gap:8px;margin:10px 0 0;font-size:13.5px;display:flex}.security-legend dt{font-weight:700}.security-legend dd{color:var(--ink-2);margin:0}.auth-forgot{align-self:flex-end;margin-top:-6px;font-size:13px}.topbar .brand{font-family:var(--font-display);flex-shrink:0}.crumbs{overflow:hidden}.crumbs a,.crumbs .crumb-current{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.crumbs a:hover{color:var(--ink)}.shell,.main{min-width:0}@media (width<=640px){.topbar{gap:10px}.topbar .brand__word,.topbar .theme-toggle{display:none}.main{padding-top:24px;padding-bottom:72px}.crumbs{font-size:13px}h1{font-size:28px}}.row-card{transition:border-color var(--dur) var(--ease), transform .22s var(--ease-spring), box-shadow var(--dur) var(--ease)}.row-card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.row-card .chev{transition:transform var(--dur) var(--ease), color var(--dur) var(--ease)}.row-card:hover .chev{color:var(--accent);transform:translate(3px)}.row-card .row-sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-row__when{color:var(--ink-3);white-space:nowrap;font-size:12.5px}.app-row__open{width:32px;height:32px}.app-row__open:hover{color:var(--accent);border-color:var(--accent)}@media (width<=640px){.app-row{gap:12px;padding:14px}.app-row__when,.app-row__open{display:none}}.app-row[data-top=true]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.app-search{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.app-search__field{align-items:center;display:flex;position:relative}.app-search__field>svg{color:var(--ink-3);pointer-events:none;transition:color var(--dur) var(--ease), transform .22s var(--ease-spring);position:absolute;left:15px}.app-search__field:focus-within>svg{color:var(--accent);transform:scale(1.08)}.app-search__input{min-height:48px;box-shadow:var(--shadow-1);padding-left:44px;padding-right:92px;font-size:15px}.app-search__input::placeholder{color:var(--ink-3)}.app-search__input::-webkit-search-cancel-button{display:none}.app-search__end{align-items:center;gap:8px;display:flex;position:absolute;right:8px}.app-search__count{color:var(--ink-3);animation:page-in .2s var(--ease) both;font-size:12px}.app-search__clear{border-radius:var(--r-sm);width:30px;height:30px;color:var(--ink-3);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);place-items:center;display:grid}.app-search__clear:hover{color:var(--ink);background:var(--surface-2)}.kbd{min-width:22px;height:22px;font-family:var(--font-mono);color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;place-items:center;padding:0 6px;font-size:11.5px;display:inline-grid}.app-search__field:focus-within .kbd{opacity:0}.app-search__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.app-filter{flex-wrap:wrap;gap:6px;display:flex}.app-filter button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink-2);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease), transform .22s var(--ease-spring);border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.app-filter button:hover{border-color:var(--accent);color:var(--ink)}.app-filter button:active{transform:scale(.96)}.app-filter button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.app-filter__n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;opacity:.7;font-size:11px;font-weight:500}.app-sort{color:var(--ink-3);align-items:center;gap:8px;font-size:13px;display:inline-flex}.app-sort__control{align-items:center;display:inline-flex;position:relative}.app-sort select{appearance:none;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink);cursor:pointer;transition:border-color var(--dur) var(--ease);padding:0 30px 0 12px;font-size:13px;font-weight:600}.app-sort select:hover{border-color:var(--accent)}.app-sort select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.app-sort__control svg{color:var(--ink-3);pointer-events:none;position:absolute;right:10px}.app-list{flex-direction:column;gap:10px;display:flex}.app-list__more{border:1px dashed var(--line-strong);border-radius:var(--r-md);min-height:44px;color:var(--ink-2);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease);justify-content:center;align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:flex}.app-list__more:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.app-list__more svg{transition:transform .22s var(--ease-spring)}.app-list__more[aria-expanded=true] svg{transform:rotate(180deg)}mark.hit{background:var(--accent-soft);color:var(--accent);border-radius:3px;margin:0 -1px;padding:0 1px}.app-search__empty{padding:40px 24px}.app-search__empty p{max-width:380px;font-size:14px}@media (width<=640px){.app-search .kbd{display:none}.app-search__bar{flex-flow:column;align-items:stretch}.app-filter{scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter);flex-wrap:nowrap;overflow-x:auto}.app-filter button{flex-shrink:0}.app-sort{justify-content:flex-end}}.callout-card{border-color:var(--accent);background:var(--accent-soft);margin-bottom:16px}.add-app__ways{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}@media (width>=760px){.add-app__ways{grid-template-columns:repeat(2,minmax(0,1fr))}}.way--wide{grid-column:1/-1}.way{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:14px;padding:20px;display:flex}.way__head h3{margin:6px 0 4px;font-size:16px}.way__head p{color:var(--ink-2);font-size:13.5px}.way__badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 8px;font-size:10px}.way .cprompt{box-shadow:none}.way .cprompt__text{font-size:12.5px}.drop.way{border-style:dashed;border-width:1.5px;justify-content:center;align-items:center}.drop.way h3{font-size:16px}.drop__icon{background:var(--surface-2);width:46px;height:46px;color:var(--ink-2);transition:transform .3s var(--ease-spring), background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:50%;place-items:center;display:grid}.drop:hover .drop__icon,.drop[data-over=true] .drop__icon{background:var(--accent);color:var(--on-accent);transform:translateY(-3px)}.drop[data-over=true]{transform:scale(1.01)}.drop[data-busy=true] .drop__icon{animation:1.2s ease-in-out infinite lp-pulse}.drop{transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), transform .22s var(--ease-spring)}.drop .progress{width:100%;max-width:260px}.way:not(.way--wide) .cprompt__body{grid-template-columns:minmax(0,1fr)}.way:not(.way--wide) .cprompt__caret{display:none}.way:not(.way--wide) .cprompt__copy{justify-content:center}.app-head{flex-wrap:wrap;align-items:flex-end}.app-head__main{flex-direction:column;flex:1;gap:14px;min-width:0;display:flex}.app-head__title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.address{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);max-width:100%;box-shadow:var(--shadow-1);align-items:center;gap:8px;padding:6px 6px 6px 14px;display:flex}.address__dot{background:var(--ink-3);border-radius:50%;flex-shrink:0;width:8px;height:8px}.address--live .address__dot{background:var(--ok);animation:2.2s ease-out infinite live-dot}.address__url{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink);flex:1;font-size:13.5px;overflow:hidden}.address__off{color:var(--ink-3);white-space:nowrap;padding:0 8px;font-size:12.5px}@media (width<=520px){.address{flex-wrap:wrap}.address__url{flex-basis:calc(100% - 20px)}}.kv>div{transition:border-color var(--dur) var(--ease), transform .22s var(--ease-spring)}.kv>div:hover{border-color:var(--line-strong);transform:translateY(-1px)}.deploy-card{border-radius:var(--r-lg);box-shadow:var(--shadow-1);padding:18px 20px}.deploy-card__head{align-items:flex-start;gap:12px;display:flex}.deploy-card__head h3{letter-spacing:-.01em;text-transform:none;color:var(--ink);margin:0;font-size:16px}.deploy-card__msg{color:var(--ink-2);margin-top:2px;font-size:13.5px}.deploy-card__icon{background:var(--warn-soft);width:30px;height:30px;color:var(--warn);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.tone-ok .deploy-card__icon{background:var(--ok-soft);color:var(--ok)}.tone-bad .deploy-card__icon{background:var(--danger-soft);color:var(--danger)}.tone-idle .deploy-card__icon{background:var(--surface-2);color:var(--ink-3)}.deploy-card.phase-live{border-color:color-mix(in srgb, var(--ok) 45%, var(--line))}.deploy-card .deploy-detail dl{grid-template-columns:max-content 1fr;gap:6px 16px;margin:10px 0 0;font-size:12.5px;display:grid}.deploy-card .deploy-detail dl>div{display:contents}.deploy-card .deploy-detail dt{color:var(--ink-3)}.deploy-card .deploy-detail dd{word-break:break-all;margin:0}.deploy-detail summary{transition:color var(--dur) var(--ease);align-items:center;gap:6px;padding:4px 0;font-weight:600;list-style:none;display:inline-flex}.deploy-detail summary::-webkit-details-marker{display:none}.deploy-detail summary:before{content:"›";transition:transform var(--dur) var(--ease);font-size:14px;display:inline-block}.deploy-detail[open] summary:before{transform:rotate(90deg)}.deploy-detail summary:hover{color:var(--ink)}.deploy-detail[open]>:not(summary){animation:page-in .26s var(--ease) both}.fold{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease);margin:16px 0}.fold:hover{border-color:var(--line-strong)}.fold summary{cursor:pointer;align-items:center;gap:12px;padding:14px 18px;font-weight:700;list-style:none;display:flex}.fold summary::-webkit-details-marker{display:none}.fold__head{border-radius:inherit;width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:14px 18px;font-weight:700;display:flex}.fold__head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fold[data-open=true]>.fold__head .fold__chev{transform:rotate(180deg)}.fold__meta{color:var(--ink-2);margin-left:auto;font-weight:600}.fold__chev{color:var(--ink-3);transition:transform .26s var(--ease)}.fold[open] .fold__chev{transform:rotate(180deg)}.fold__body{animation:page-in .3s var(--ease) both;padding:0 14px 14px}.lifecycle{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);margin-top:24px;padding:18px 20px}.lifecycle h3{font-size:16px}.btn-danger{transition:background var(--dur) var(--ease), transform .18s var(--ease-spring), box-shadow var(--dur) var(--ease)}.btn-danger:hover:not(:disabled){box-shadow:0 6px 16px -6px color-mix(in srgb, var(--danger) 70%, transparent)}.confirm input:focus{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft);outline:none}.choice{transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), transform .2s var(--ease-spring), box-shadow var(--dur) var(--ease);justify-content:flex-start}.choice:hover:not(:disabled){box-shadow:var(--shadow-1);transform:translate(3px)}.choice:hover:not(:disabled)>svg{color:var(--accent)}.choice.is-picked{border-color:var(--accent);background:var(--accent-soft)}.choice:disabled:not(.is-picked){opacity:.5}.choice__text{text-align:left;flex:1}.choice__bars{background:var(--surface-2);width:34px;height:34px;color:var(--ink-3);font-weight:700;font-family:var(--font-display);border-radius:9px;flex-shrink:0;justify-content:center;align-items:flex-end;gap:3px;padding-bottom:9px;display:flex}.choice__bars[data-bars="0"]{align-items:center;padding:0}.choice__bars i{background:var(--line-strong);width:4px;transition:background var(--dur) var(--ease);border-radius:2px}.choice__bars i:first-child{height:6px}.choice__bars i:nth-child(2){height:10px}.choice__bars i:nth-child(3){height:14px}.choice__bars[data-bars="1"] i:nth-child(-n+1),.choice__bars[data-bars="2"] i:nth-child(-n+2),.choice__bars[data-bars="3"] i:nth-child(-n+3){background:var(--accent)}.choice__key{font-family:var(--font-mono);color:var(--ink-3);border:1px solid var(--line);background:var(--surface);border-bottom-width:2px;border-radius:5px;padding:0 6px;font-size:11px;line-height:18px}@media (hover:none){.choice__key{display:none}}.plan-card{transition:border-color var(--dur) var(--ease), transform .24s var(--ease-spring), box-shadow var(--dur) var(--ease)}.plan-card:hover{box-shadow:var(--shadow-2);border-color:var(--accent);transform:translateY(-3px)}.plan-card.recommended{box-shadow:0 0 0 3px var(--accent-soft), var(--shadow-2)}.deploy-meter{margin-bottom:18px}.deploy-meter .progress span{position:relative;overflow:hidden}.deploy-meter:not(.is-failed) .progress span:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:1.6s ease-in-out infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.deploy-meter.is-failed .progress span{background:var(--danger)}.check{transition:background .3s var(--ease), border-color .3s var(--ease)}.check.passed .check-icon{background:var(--ok);color:var(--surface);animation:pop-in .36s var(--ease-spring) both}.check.running{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.live-done{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.live-done h1{margin-top:2px}.live-done .lede{margin-bottom:4px}.live-done .address{width:100%}.live-done__mark{width:64px;height:64px;margin-bottom:6px}.live-done__tick{background:var(--ok);color:var(--surface);box-shadow:0 0 0 8px var(--ok-soft);animation:pop-in .52s var(--ease-spring) both;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.live-done__checks{gap:8px;width:100%;margin:8px 0 0;padding:0;list-style:none;display:grid}.live-done__checks li{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.live-done__checks li>svg{color:var(--ok);flex-shrink:0}.live-done__checks code{font-family:var(--font-mono);background:var(--surface-2);border-radius:4px;padding:1px 6px;font-size:12px}.live-done .kv,.live-done .actions{width:100%}.dropzone{transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), transform .22s var(--ease-spring)}.dropzone.drag{transform:scale(1.01)}.dropzone:hover .drop__icon,.dropzone.drag .drop__icon{background:var(--accent);color:var(--on-accent);transform:translateY(-3px)}.dropzone .drop__icon svg{color:inherit}.or-rule{color:var(--ink-3);font-size:12px;font-family:var(--font-mono);letter-spacing:.04em;align-items:center;gap:12px;margin:28px 0 14px;display:flex}.or-rule:before,.or-rule:after{content:"";background:var(--line-strong);flex:1;height:1px}.deploy-meter .progress{width:100%;max-width:none}.greeting{color:var(--accent);animation:page-in .5s var(--ease) both;margin-bottom:4px;font-size:13.5px;font-weight:600}.topbar-right{gap:10px}.add-app__way--zip.drop.way{text-align:left;justify-content:flex-start;align-items:flex-start}.add-app__way--zip .setting__note,.add-app__way--zip .drop__hint{text-align:left}.app-status{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-1);border-radius:24px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;padding:22px 24px;display:flex}.app-status>div:not(.app-status__actions){flex:1;min-width:220px}.app-status h2{letter-spacing:-.02em;margin:0;font-size:20px}.app-status p{color:var(--ink-2);margin:4px 0 0;font-size:14.5px;line-height:1.5}.app-status__actions{flex-wrap:wrap;gap:8px;display:flex}.app-status__icon{background:var(--surface-2);width:46px;height:46px;color:var(--ink-3);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.app-status.tone-ok .app-status__icon{background:var(--ok-soft);color:var(--ok)}.app-status.tone-warn .app-status__icon{background:var(--warn-soft);color:var(--warn);animation:1.6s ease-in-out infinite lp-pulse}.app-status.tone-bad .app-status__icon{background:var(--danger-soft);color:var(--danger)}.app-status.tone-accent .app-status__icon{background:var(--accent-soft);color:var(--accent)}.app-status__steps{gap:4px;max-width:320px;margin-top:10px;display:flex}.app-status__steps span{background:var(--line);border-radius:2px;flex:1;height:4px}.app-status__steps span.is-done{background:var(--ok)}.app-status__steps span.is-running{background:var(--warn)}.app-status p.app-status__now{color:var(--ink-3);margin-top:6px;font-size:13px}.update-done{justify-items:start;gap:12px;padding:40px 0;display:grid}.update-done h1{margin:0}.update-done .lede{max-width:560px;margin:0}.update-done__mark{background:var(--ok-soft);width:52px;height:52px;color:var(--ok);border-radius:50%;place-items:center;display:grid}.update-done .actions{margin-top:8px}.ai-logos{vertical-align:middle;align-items:center;gap:6px;display:inline-flex}.ai-logos__item{align-items:center;gap:6px;display:inline-flex}.ai-logos__item img{transition:transform .22s var(--ease-spring);border-radius:5px;display:block}.ai-logos__item:hover img{transform:translateY(-2px)scale(1.08)}.ai-logos--named{flex-wrap:wrap;gap:14px}.ai-logos--named .ai-logos__item span{color:var(--ink-2);font-size:13px;font-weight:600}.ai-works{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 0;font-size:13px;display:flex}.ai-works--center{justify-content:center;margin:0 0 14px}.address-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=720px){.address-grid{grid-template-columns:1fr}}.option--soon:disabled{cursor:not-allowed;opacity:.6}.address-panel{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;gap:16px;margin-top:12px;padding:16px;animation:.2s ease-out address-panel-in;display:flex}@keyframes address-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.address-panel{animation:none}}.address-panel__row{gap:8px;display:flex}.address-panel__row .input{flex:1;min-width:0}.address-panel__title{margin:0;font-size:14px;font-weight:600}.address-panel__foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.domain-offers{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.domain-offer{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;display:grid}.domain-offer__name{color:var(--ink);overflow-wrap:anywhere;font-size:14px;font-weight:600}.domain-offer__price{color:var(--ink-2);font-size:13px}@media (width<=720px){.domain-offer{grid-template-columns:1fr auto}.domain-offer__price{grid-area:2/1}}.bought-domain{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.bought-domain__name{color:var(--ink);overflow-wrap:anywhere;font-size:16px;font-weight:600}.bought-domain .form-error{margin:0}.domain-records{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.domain-record{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:56px minmax(0,1fr) minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.domain-record__type{color:var(--ink-2);padding-top:18px;font-size:13px;font-weight:600}.domain-record__cell{flex-direction:column;gap:4px;min-width:0;display:flex}.domain-record__label{color:var(--ink-3);font-size:12px}.domain-record__value{justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;display:flex}.domain-record__value code{font-family:var(--font-mono);color:var(--ink);overflow-wrap:anywhere;font-size:13px;line-height:1.5}.domain-record__copy{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:2px 0;font-size:12px;font-weight:600;line-height:1.5}.domain-record__copy:hover{text-decoration:underline}.domain-record__status{flex-direction:column;align-items:flex-end;gap:4px;padding-top:14px;display:flex}.domain-record__seen{color:var(--ink-3);text-align:right;overflow-wrap:anywhere;max-width:18ch;font-size:12px}@media (width<=720px){.domain-record{grid-template-columns:1fr auto;row-gap:12px}.domain-record__type{grid-area:1/1;align-self:center;padding-top:0}.domain-record__status{grid-area:1/2;padding-top:0}.domain-record__cell{grid-column:1/-1}}.review-facts{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.review-facts dl{flex-direction:column;gap:12px;min-width:0;margin:0;display:flex}.review-fact{grid-template-columns:96px minmax(0,1fr);gap:12px;display:grid}.review-fact dt{color:var(--ink-3);font-size:13px}.review-fact dd{overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;margin:0;display:flex}@media (width<=640px){.review-facts{flex-direction:column}.review-fact{grid-template-columns:1fr;gap:2px}}.setup-sections{flex-direction:column;gap:16px;display:flex}.setup-sections>*{margin:0}.env-row-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.env-service{color:var(--ink-3);font-size:12.5px}.env-group{flex-direction:column;gap:8px;margin-top:16px;display:flex}.env-group h4{align-items:center;gap:8px;margin:0;font-size:13.5px;font-weight:700;display:flex}.env-group-hint{color:var(--ink-2);margin:0;font-size:13px}.env-more{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.env-more>summary,.review-uses>summary{cursor:pointer;color:var(--accent);align-items:center;gap:8px;font-size:14px;font-weight:600;list-style:none;display:flex}.env-more>summary::-webkit-details-marker{display:none}.review-uses>summary::-webkit-details-marker{display:none}.env-more>summary:before,.review-uses>summary:before{content:"▸";transition:transform .15s ease-out}.env-more[open]>summary:before,.review-uses[open]>summary:before{transform:rotate(90deg)}.env-more:not(.handled-list)>summary{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:var(--r-md);background:var(--accent-soft);padding:12px 16px;font-size:15px}.env-more:not(.handled-list)>summary:hover{border-color:var(--accent)}.env-more:not(.handled-list)[open]>summary{margin-bottom:12px}.code-changes{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.review-uses{margin-top:16px}.review-uses>summary{color:var(--ink);flex-wrap:wrap}.review-uses>summary .option-detail{flex-basis:100%;padding-left:20px;font-weight:400}.review-uses[open]>summary{margin-bottom:12px}.review-uses .uses{margin:0}.key-cards{flex-direction:column;gap:12px;display:flex}.key-card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;gap:12px;padding:16px;display:flex}.key-card__head{flex-direction:column;gap:2px;display:flex}.key-card__head strong{font-size:14px}.key-field{flex-direction:column;gap:6px;display:flex}.key-field label{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.key-field label code{font-family:var(--font-mono);color:var(--ink);font-size:12.5px}.key-field__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.key-field__row .env-value{flex:240px;min-width:0}.key-field__row .env-value .input{width:100%}.key-skip{white-space:nowrap}.key-skipped{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.key-skipped li{border:1px dashed var(--line-strong);border-radius:var(--r-md);color:var(--ink-3);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.key-skipped s{color:var(--ink-3);font-size:13px}.key-card--warn{background:var(--danger-soft);border-color:var(--danger);border-left-width:4px}.key-card__warn{color:var(--danger);font-size:13px}.key-card .use-evidence{color:var(--ink-3);font-size:12.5px}.key-skipped li{background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 40%, transparent)}.handled-list ul{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.handled-list li{background:var(--ok-soft);color:var(--ok);border-radius:999px;padding:4px 10px;font-size:12.5px}.handled-list li.not-run{background:var(--danger-soft);color:var(--danger)}.review-uses{flex-direction:column;gap:12px;display:flex}.review-uses h3{margin:0;font-size:14px}.actions+.form-error{margin-top:16px}.versions__running{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.versions__running a{white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}.section+.uses{margin-top:28px}.fix-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.fix-pick{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 8px;padding:8px 10px;font-size:13.5px;display:flex}.fix-pick__all{cursor:pointer;align-items:center;gap:8px;display:flex}.fix-row{align-items:center;gap:10px;display:flex}.finding-group{margin-top:12px}.fix-steps{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 8px 8px 0;gap:10px;margin:12px 0 4px;padding:12px 14px;display:grid}.fix-steps__key .finding__title{margin-bottom:4px}.fix-steps__list{gap:4px;margin:0;padding-left:20px;font-size:13.5px;display:grid}.finding-group__title{color:var(--ink-2);align-items:center;gap:8px;margin:0;font-size:13.5px;font-weight:500;display:flex}.fix-token{gap:6px;max-width:520px;margin-top:8px;display:grid}.fix-token label{font-size:13px;font-weight:500}.db-note{max-width:760px;margin:0 0 14px}.db-layout{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:16px;display:grid}.db-layout--sql{grid-template-columns:minmax(320px,430px) minmax(0,1fr)}@media (width<=860px){.db-layout,.db-layout--sql{grid-template-columns:1fr}}.db-tables{max-height:calc(100vh - 32px);padding:12px;position:sticky;top:16px;overflow:auto}.db-tables__head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13.5px;font-weight:700;display:flex}.db-tables__error{margin:6px 0}.db-tables__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.db-table{text-align:left;border-radius:var(--r-sm);width:100%;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 8px;display:flex}.db-table:hover:not(:disabled){background:var(--surface-2)}.db-table.is-active{background:var(--accent-soft);border-color:var(--accent)}.db-table:disabled{cursor:progress}.db-table__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.db-table__schema{color:var(--ink-3)}.db-table__meta{color:var(--ink-3);white-space:nowrap;flex-shrink:0;font-size:11.5px}.db-main{flex-direction:column;gap:14px;min-width:0;display:flex}.db-editor{flex-direction:column;gap:10px;padding:14px;display:flex}.db-editor__label{font-size:13.5px;font-weight:700}.db-editor__sql{resize:vertical;width:100%;min-height:120px;padding:10px 12px;font-size:13px;line-height:1.5}.db-editor__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.db-editor__write{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:flex}.db-editor__write--off{cursor:default;color:var(--ink-3)}.db-editor__hint{color:var(--ink-3);margin:0;font-size:12px}.db-result{min-width:0;padding:14px}.db-result--busy{color:var(--ink-2);align-items:center;gap:8px;font-size:13.5px;display:flex}.db-result__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.db-result__title{font-size:14px;font-weight:700}.db-result__foot{color:var(--ink-3);margin:0;font-size:12.5px}.db-result__error{background:var(--danger-soft);color:var(--danger);border-radius:var(--r-sm);white-space:pre-wrap;margin:0;padding:10px 12px;font-size:12.5px;overflow-x:auto}.db-result__command{margin:0 0 6px;font-size:14px}.db-grid-wrap{border:1px solid var(--line);border-radius:var(--r-sm);max-height:560px;overflow:auto}.db-grid{border-collapse:collapse;width:max-content;min-width:100%;font-size:12.5px}.db-grid th{background:var(--surface-2);text-align:left;border-bottom:1px solid var(--line-strong);white-space:nowrap;z-index:1;padding:8px 12px;font-weight:700;position:sticky;top:0}.db-grid td{border-bottom:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;vertical-align:top;max-width:360px;padding:6px 12px;overflow:hidden}.db-grid tbody tr:hover td{background:var(--surface-2)}.db-grid__n{color:var(--ink-3);text-align:right;width:1%}.db-grid__null{color:var(--ink-3);font-style:italic}.db-grid__empty{color:var(--ink-3);text-align:center;padding:18px}.db-head{flex-wrap:wrap}.db-head__right{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.db-find{width:100%;margin-bottom:8px;padding:6px 10px;font-size:13px}.db-empty{color:var(--ink-2);align-items:flex-start;gap:12px;padding:28px 22px;display:flex}.db-empty__title{color:var(--ink);margin-bottom:4px;font-weight:700}.db-browse{flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.db-browse__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.db-browse__title{font-size:15px;font-weight:700}.db-browse__meta{color:var(--ink-3);margin-top:2px;font-size:12.5px}.db-browse__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.db-rel{flex-wrap:wrap;gap:6px;display:flex}.db-rel__chip{font:inherit;font-size:12px;font-family:var(--font-mono,ui-monospace, monospace);border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:2px 10px}.db-rel__chip:hover{border-color:var(--accent);color:var(--accent)}.db-rel__chip--in{background:0 0;border-style:dashed}.db-grid-wrap.is-busy{opacity:.55;transition:opacity .15s}.db-grid th .db-col{all:unset;cursor:pointer;flex-direction:column;gap:1px;display:flex}.db-col__name{align-items:center;gap:5px;font-weight:700;display:inline-flex}.db-col__type{color:var(--ink-3);font-size:11px;font-weight:400}.db-col__sort{color:var(--accent);font-size:10px}.db-grid thead .db-filter th{background:var(--surface-2);padding:4px 6px 6px;top:45px}.db-filter__input{width:100%;min-width:90px;height:28px;min-height:0;padding:2px 8px;font-size:12px}.db-filter__hint{color:var(--ink-3);margin:0;font-size:12px}.db-filter__hint code{font-size:11.5px}.db-key{letter-spacing:.02em;white-space:nowrap;border-radius:4px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px;display:inline-block}.db-key--pk{background:var(--warn-soft);color:var(--warn)}.db-key--fk{background:var(--accent-soft);color:var(--accent)}.db-key--link{font-family:var(--font-mono,ui-monospace, monospace);cursor:pointer;border:0}.db-key--link:hover{text-decoration:underline}.db-link{all:unset;cursor:pointer;color:var(--accent)}.db-link:hover{text-decoration:underline}.db-pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.db-pager__buttons{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.db-pager__n{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-width:30px;height:30px;color:var(--ink-2);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;padding:0 8px;font-size:13px}.db-pager__n:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.db-pager__n.is-current{background:var(--accent);border-color:var(--accent);color:var(--on-accent,#fff);cursor:default}.db-pager__n:disabled:not(.is-current){cursor:progress}.db-pager__gap{color:var(--ink-3);padding:0 4px}.db-order{width:auto;height:32px;min-height:0;padding:0 28px 0 10px;font-size:13px}.db-schema{max-height:calc(100vh - 32px);padding:12px;position:sticky;top:16px;overflow:auto}.db-schema__head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13.5px;font-weight:700;display:flex}.db-schema__actions{gap:2px;display:flex}.db-schema__list{flex-direction:column;gap:6px;display:flex}.db-card{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.db-card.is-open{border-color:var(--line-strong)}.db-card__head{align-items:center;gap:4px;padding:2px 4px 2px 2px;display:flex}.db-card__toggle{all:unset;cursor:pointer;flex:1;align-items:center;gap:6px;min-width:0;padding:6px;display:flex}.db-card__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.db-card__use{padding:2px 8px;font-size:12px}.db-cols{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.db-cols col.db-cols__c-name{width:36%}.db-cols col.db-cols__c-type{width:30%}.db-cols th{text-align:left;color:var(--ink-3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-2);padding:4px 8px;font-size:11px;font-weight:600}.db-cols td{border-bottom:1px solid var(--line);vertical-align:top;text-overflow:ellipsis;white-space:nowrap;padding:4px 8px;overflow:hidden}.db-cols tr:last-child td{border-bottom:0}.db-cols__type{color:var(--ink-2)}.db-cols__key .db-key{text-overflow:ellipsis;vertical-align:middle;max-width:100%;overflow:hidden}.db-cols__key .db-key+.db-key{margin-left:4px}.db-cols__req{color:var(--danger);margin-left:2px}.db-card__refs{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;display:flex}.db-card__refs-label{color:var(--ink-3);margin-right:2px;font-size:11px}.db-card__foot{border-top:1px solid var(--line);padding:6px 8px;font-size:12.5px}.check-note{color:var(--ink-2);margin-top:2px;font-size:12.5px;display:block}.fix-newkey{gap:4px;max-width:420px;margin:6px 0;display:grid}.backups__actions{margin-top:2px}.backups__list li.backups__row{flex-wrap:wrap;align-items:center}.backups__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.backups__meta{color:var(--ink-3);font-size:12.5px}.backups__error{color:var(--danger);white-space:pre-wrap;overflow-wrap:anywhere;font-size:12.5px}.backups__right{align-items:center;gap:10px;display:flex}.backups__confirm{flex-basis:100%;padding:8px 0 4px}.import-sources{gap:10px;display:grid}.import-source{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);gap:10px;padding:14px 16px;display:grid}.import-source.is-set{border-color:color-mix(in srgb, var(--ok) 45%, var(--line))}.import-source__head{align-items:flex-start;gap:12px;display:flex}.import-source__icon{border-radius:var(--r-sm);background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);flex:none;place-items:center;display:grid}.import-source__title{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.import-source__name{color:var(--ink);font-weight:700}.import-source__head .pill{flex:none}.import-source__row{flex-wrap:wrap;align-items:center;gap:8px 12px;padding-left:44px;display:flex}.import-source__where{font-family:var(--font-mono);color:var(--ink-2);word-break:break-all;font-size:12.5px}.import-source__actions{gap:4px;margin-left:auto;display:flex}.import-form{grid-template-columns:1fr 1fr;gap:12px 14px;padding-left:44px;display:grid}.import-form .wide{grid-column:1/-1}.import-form__actions{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.import-lede{max-width:70ch;margin:0 0 12px}.import-again{flex-wrap:wrap;align-items:center;gap:14px 20px;margin:18px 0;display:flex}.import-again__text{flex-direction:column;flex:320px;gap:4px;display:flex}.import-again.is-confirming{border-color:color-mix(in srgb, var(--danger) 45%, var(--line))}.import-again__confirm{color:var(--ink);flex-direction:column;flex:320px;gap:10px;font-size:13.5px;display:flex}.import-again__buttons{gap:8px;display:flex}.import-runs{gap:12px;margin:0;padding:0;list-style:none;display:grid}.import-run{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);gap:8px;padding:14px 16px;display:grid}.import-run.is-failed{border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.import-run__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.import-run__title{color:var(--ink);font-weight:700}.import-run__message{color:var(--ink-2);margin:0;font-size:13.5px}.import-run__message.is-failed{color:var(--danger)}.import-stores{gap:8px;margin:0;padding:0;list-style:none;display:grid}.import-store{align-items:flex-start;gap:10px;font-size:13.5px;display:flex}.import-store__icon{background:var(--surface-2);width:20px;height:20px;color:var(--ink-3);border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.import-store.is-done .import-store__icon{background:var(--ok-soft);color:var(--ok)}.import-store.is-failed .import-store__icon{background:var(--danger-soft);color:var(--danger)}.import-store__body{flex:1;gap:6px;min-width:0;display:grid}.import-store__message{color:var(--ink-2)}.import-store.is-failed .import-store__message{color:var(--danger)}.import-detail summary{cursor:pointer;color:var(--ink-3);font-size:12.5px}.import-detail[open] summary{margin-bottom:6px}table.import-counts{border-collapse:collapse;width:100%;font-size:12.5px}table.import-counts th{text-align:left;color:var(--ink-3);border-bottom:1px solid var(--line);padding:4px 8px;font-weight:600}table.import-counts td{border-bottom:1px solid var(--line);color:var(--ink-2);padding:4px 8px}table.import-counts .num{text-align:right;font-variant-numeric:tabular-nums}table.import-counts td:last-child{width:1%;color:var(--ok)}table.import-counts tr.is-short td{color:var(--danger)}.import-warnings{color:var(--ink-2);gap:4px;margin:0;padding-left:18px;font-size:12px;display:grid}.import-form__mode{gap:6px;display:flex}.import-file{gap:6px;display:grid}.import-file input[type=file]{color:var(--ink-2);font-size:13.5px}.import-file__progress{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.import-file__progress span{background:var(--accent);height:100%;transition:width .2s;display:block}.deploy-import{margin-top:18px}.deploy-import h4{color:var(--ink-2);margin:0 0 8px;font-size:13.5px}@media (width<=640px){.import-form{grid-template-columns:1fr;padding-left:0}.import-source__row{padding-left:0}.import-source__actions{margin-left:0}}body:has(.journey-dock){--dock-clear:calc(96px + env(safe-area-inset-bottom,0px))}.journey-page{width:100%;padding:40px 24px var(--dock-clear);flex:1}.journey-page__main{min-width:0;max-width:760px;margin:0 auto}.journey-page--wide .journey-page__main{max-width:980px}.journey-dock{--dock-shadow:0 1px 2px #0d17200f, 0 12px 32px -10px #0d172038;z-index:25;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.6);max-width:calc(100vw - 32px);box-shadow:var(--dock-shadow);animation:dock-in .56s var(--ease) both;border-radius:999px;align-items:center;padding:6px;display:flex;position:fixed;translate:-50%}:root[data-theme=dark] .journey-dock{--dock-shadow:0 1px 2px #0006, 0 14px 36px -10px #000000b3}.journey-dock:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(to bottom, var(--line-strong), var(--line));-webkit-mask-composite:xor;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes dock-in{0%{opacity:0;transform:translateY(18px)scale(.97)}}.journey-dock__steps{--step:36px;--dot:28px;--gap:4px;--extra:18px;--label-gap:8px;--flow:cubic-bezier(.3, .7, .2, 1);gap:var(--gap);margin:0;padding:0;list-style:none;display:flex;position:relative}.journey-dock__bead{width:var(--step);background:color-mix(in srgb, var(--accent) 11%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent), 0 1px 2px color-mix(in srgb, var(--accent) 18%, transparent);will-change:left, width, transform;border-radius:999px;position:absolute;top:0;bottom:0;left:0}.journey-dock__item{position:relative}.journey-dock__step{align-items:center;gap:var(--label-gap);width:var(--step);height:var(--step);padding:0 0 0 calc((var(--step) - var(--dot)) / 2);font:inherit;white-space:nowrap;color:var(--ink-2);cursor:pointer;transition:width .6s var(--flow);background:0 0;border:0;border-radius:999px;display:flex;position:relative;overflow:hidden}.journey-dock__step[data-here]{width:calc(var(--step) + var(--extra) + var(--label-w,0px))}.journey-dock__step:disabled{cursor:default}.journey-dock__step[data-state=locked]{cursor:not-allowed}.journey-dock__step:focus-visible{outline:none}.journey-dock__step:focus-visible .journey-dock__dot{outline:2px solid var(--accent);outline-offset:2px}.journey-dock__dot{width:var(--dot);height:var(--dot);font:600 11.5px/1 var(--font-mono);color:var(--ink-2);box-shadow:inset 0 0 0 1.5px var(--line-strong);transition:transform .26s var(--ease-spring), background .24s var(--ease), color .24s var(--ease), box-shadow .24s var(--ease);border-radius:50%;flex-shrink:0;place-items:center;display:grid}[data-state=done]>.journey-dock__dot{background:var(--accent-soft);color:var(--accent);box-shadow:none}[data-state=locked]>.journey-dock__dot{color:var(--ink-3);box-shadow:none;outline:1.5px dashed var(--line-strong);outline-offset:-1.5px}[data-here]>.journey-dock__dot{background:var(--accent);color:var(--on-accent);box-shadow:0 2px 6px -1px color-mix(in srgb, var(--accent) 55%, transparent);animation:dock-arrive .52s var(--ease-spring) .14s both;outline:0}@keyframes dock-arrive{0%{transform:scale(.55)}}.journey-dock__step:not(:disabled):hover .journey-dock__dot{transform:scale(1.08)}.journey-dock__step[data-state=available]:hover .journey-dock__dot{background:var(--surface-2);color:var(--ink)}.journey-dock__step:not(:disabled):active .journey-dock__dot{transform:scale(.94)}.journey-dock__label{letter-spacing:-.005em;color:var(--ink);opacity:0;filter:blur(2px);transition:opacity .16s var(--ease), transform .3s var(--ease), filter .2s var(--ease);padding-right:2px;font-size:13.5px;font-weight:600;transform:translate(-6px)}[data-here]>.journey-dock__label{opacity:1;filter:none;transition:opacity .32s var(--ease) .18s, transform .48s var(--flow) .16s, filter .32s var(--ease) .18s;transform:none}.journey-dock__tip{bottom:calc(100% + 14px);left:calc(var(--step) / 2);z-index:1;white-space:nowrap;pointer-events:none;background:var(--ink);color:var(--surface);opacity:0;transform-origin:50% 100%;transition:opacity .14s var(--ease), translate .22s var(--ease), scale .22s var(--ease);border-radius:10px;gap:2px;padding:8px 11px;font-size:12px;line-height:1.35;display:grid;position:absolute;translate:-50% 4px;scale:.96;box-shadow:0 10px 24px -8px #0d172066}.journey-dock__tip strong{font-weight:600}.journey-dock__tip span{opacity:.72}.journey-dock__item:hover .journey-dock__tip{opacity:1;transition-delay:.12s;translate:-50%;scale:1}.journey-dock__item:has(:focus-visible) .journey-dock__tip{opacity:1;transition-delay:.12s;translate:-50%;scale:1}.journey-dock__item:first-child .journey-dock__tip{transform-origin:0 100%;left:0;translate:0 4px}.journey-dock__item:first-child:hover .journey-dock__tip{translate:0}.journey-dock__item:first-child:has(:focus-visible) .journey-dock__tip{translate:0}.journey-dock__item:last-child .journey-dock__tip{transform-origin:100% 100%;left:auto;right:0;translate:0 4px}.journey-dock__item:last-child:hover .journey-dock__tip{translate:0}.journey-dock__item:last-child:has(:focus-visible) .journey-dock__tip{translate:0}.journey-dock__chosen{width:0;transition:width .64s var(--flow,cubic-bezier(.3, .7, .2, 1));flex-shrink:0;display:none;overflow:hidden}.journey-dock__chosen-inner{width:max-content;height:24px;color:var(--ink-2);white-space:nowrap;align-items:center;gap:10px;padding:0 18px 0 31px;font-size:12.5px;display:flex;position:relative}.journey-dock__chosen-inner:before{content:"";background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:14px}.journey-dock__chosen-inner>span{animation:dock-chosen-in .42s var(--ease) .26s both}.journey-dock__chosen-inner>span+span:before{content:"·";color:var(--ink-3);margin-right:10px}.journey-dock__chosen-inner>span:first-child{color:var(--ink);font-weight:600}@keyframes dock-chosen-in{0%{opacity:0;filter:blur(3px);transform:translate(-4px)}}@media (width>=1100px){.journey-dock__chosen{display:block}}body:has(.journey-dock) .toaster{bottom:var(--dock-clear)}body:has(.journey-dock) .env-savebar{bottom:var(--dock-clear)}body:has(.journey-dock) .sticky-bar{left:50%;right:auto;bottom:var(--dock-clear);border:1px solid var(--line);border-radius:14px;justify-content:space-between;width:min(760px,100vw - 32px);translate:-50%}@media (width<=880px){.journey-page{padding:24px 16px var(--dock-clear)}}@media (width<=480px){.journey-dock{bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:5px}.journey-dock__steps{--step:32px;--dot:24px;--gap:2px;--extra:14px;--label-gap:6px}.journey-dock__label{font-size:13px}.journey-dock__tip{display:none}}@media (prefers-reduced-motion:reduce){.journey-dock,[data-here]>.journey-dock__dot{animation:none}.journey-dock__step,.journey-dock__label,.journey-dock__dot,.journey-dock__chosen{transition:none}.journey-dock__chosen-inner>span{animation:none}}body:has(.shell){background:repeating-linear-gradient(0deg, var(--grid-line) 0 1px, transparent 1px var(--grid-step)), repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px var(--grid-step)), var(--canvas)}body:has(.lp){background:var(--bg)}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;margin-bottom:14px;font-size:10px;display:inline-flex}.eyebrow:after{content:"";background:var(--line-strong);width:26px;height:1px}.lede{color:var(--ink-2);max-width:62ch;margin:0 0 24px}h1 .accent{color:var(--accent)}.section{margin-top:26px}.section__head{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.section__title{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:600}.section__count{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.item{border-top:1px solid var(--line);grid-template-columns:22px 1fr auto;align-items:start;gap:12px;padding:13px 0;display:grid}.item:first-child{border-top:0}.item__mark{border-radius:var(--r-sm);place-items:center;width:20px;height:20px;margin-top:1px;font-size:11px;display:grid}.item__mark--attention{background:var(--danger-soft);color:var(--danger)}.item__mark--handled{background:var(--accent-soft);color:var(--accent)}.item__mark--ok{background:var(--ok-soft);color:var(--ok)}.item__mark--watch{background:var(--warn-soft);color:var(--warn)}.item__mark--na{background:var(--surface-2);color:var(--ink-2)}.item__text{color:var(--ink);font-size:14.5px}.item__verdict{white-space:nowrap;margin-left:8px;font-size:11.5px;font-weight:600}.item__verdict--attention{color:var(--danger)}.item__verdict--handled{color:var(--accent)}.item__verdict--ok{color:var(--ok)}.item__verdict--watch{color:var(--warn)}.item__verdict--na{color:var(--ink-2)}.item__engineer{font-family:var(--font-mono);color:var(--ink-2);margin-top:3px;font-size:11px}.item__where{font-family:var(--font-mono);color:var(--ink-2);margin-top:4px;font-size:11px}.drop__bar{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;height:6px;overflow:hidden}.drop__bar span{background:var(--accent);height:100%;transition:width .4s var(--ease);display:block}.progress__meta{color:var(--ink-2);justify-content:space-between;align-items:baseline;margin-top:8px;font-size:12px;display:flex}.progress__meta strong{font-family:var(--font-mono);color:var(--ink);font-size:13px}.stages{flex-direction:column;gap:9px;margin-top:18px;display:flex}.stage{color:var(--ink-2);grid-template-columns:18px 1fr;align-items:center;gap:10px;font-size:14px;display:grid}.stage__dot{border:1.5px solid var(--line);border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid}.stage--now{color:var(--ink);font-weight:600}.stage--now .stage__dot{border-color:var(--accent);color:var(--accent)}.stage--done{color:var(--ink)}.stage--done .stage__dot{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.settings-grid{grid-template-columns:1fr 1fr;gap:0 18px;padding:4px 0;display:grid}.setting{border-top:1px solid var(--line)}.setting--open{background:var(--surface-2);border-radius:var(--r-md);grid-column:1/-1}.setting--dirty{background:var(--warn-soft)}.setting--pending{background:var(--accent-soft)}.setting--pending .setting__name,.setting--dirty .setting__name{font-weight:500}.setting__note--pending{color:var(--accent)}.setting__head{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:22px minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:11px 8px;display:grid}.setting__head:hover{background:var(--surface-2)}.setting__name{color:var(--ink);overflow-wrap:anywhere;font-size:13.5px}.setting__preview{font-family:var(--font-mono);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:11.5px;overflow:hidden}.setting__chev{color:var(--ink-2);font-size:14px}.setting__body{gap:10px;padding:4px 12px 14px 44px;display:grid}.setting__who{color:var(--ink-2);font-size:12.5px}.setting__value{align-items:center;gap:10px;display:flex}.setting__value code{font-family:var(--font-mono);background:var(--surface-2);border-radius:var(--r-sm);overflow-wrap:anywhere;padding:5px 8px;font-size:12px}.setting__edit{gap:8px;display:flex}.setting__edit input{border-radius:var(--r-md);border:1px solid var(--line);font:inherit;background:var(--surface);flex:1;padding:7px 10px;font-size:13px}.setting__diff{color:var(--ink-2);gap:4px;font-size:12px;display:grid}.setting__diff code{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:11.5px}.setting__note{color:var(--ink-2);margin:0;font-size:12px}.setting__error{color:var(--danger);margin:0;font-size:12px}@media (width<=880px){.settings-grid{grid-template-columns:1fr}}.history{border-top:1px solid var(--line)}.history:first-child{border-top:0}.history--open{background:var(--surface-2);border-radius:var(--r-md)}.history__head{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:34px 22px minmax(0,1fr) auto auto 16px;align-items:center;gap:10px;padding:12px 8px;display:grid}.history__head:hover{background:var(--surface-2)}.history__num{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.history__what{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:10px;font-size:13.5px;display:flex}.history__when{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.history__body{gap:10px;padding:2px 12px 14px 66px;display:grid}.history__meta{font-family:var(--font-mono);color:var(--ink-2);flex-wrap:wrap;gap:6px;font-size:11px;display:flex}.history__files{gap:3px;display:grid}.history__files code{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.history__row{align-items:center;gap:10px;display:flex}.history__row .history__head{flex:1;grid-template-columns:34px 22px minmax(16ch,1fr) minmax(0,max-content) 16px;min-width:0}.history__row .history__head>.history__when{text-align:right;overflow-wrap:anywhere}.history__row>.btn{flex-shrink:0;margin-right:8px}.history__confirm{gap:10px;padding:4px 12px 14px 66px;display:grid}.change .sign{font-weight:700}.change--add .sign{color:var(--ok)}.change--remove .sign{color:var(--danger)}.change--change .sign{color:var(--warn)}.change__why{color:var(--ink);font-family:inherit}.versions__live{color:var(--ink);background:var(--ok-soft);border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:4px 10px;font-size:13px;display:inline-flex}@media (width<=640px){.history__row{flex-wrap:wrap}.history__row .history__head{flex-basis:100%;grid-template-columns:30px 18px minmax(0,1fr) 16px;row-gap:2px}.history__head>.history__when{grid-area:2/3}.history__row .history__head>.history__when{text-align:left}.history__head>.setting__chev{grid-area:1/4}.history__row>.btn{margin:0 12px 10px 58px}.history__confirm{padding-left:12px}}.history__checks{color:var(--ink-2);font-size:12.5px}.history__group{margin-top:10px}.history__grouphead{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin-bottom:5px;font-size:11px}.history__grouphead span{font-family:var(--font-mono)}.history__check{color:var(--ink);grid-template-columns:22px 1fr;align-items:start;gap:9px;padding:3px 0;font-size:13px;display:grid}.drop{border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface);text-align:center;cursor:pointer;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);padding:34px 20px}.drop:hover,.drop[data-over=true]{border-color:var(--accent);background:var(--accent-soft)}.drop__icon{font-size:22px}.drop__hint{font-family:var(--font-mono);color:var(--ink-2);margin-top:6px;font-size:11px}.card--stop{border-color:var(--danger);background:var(--danger-soft)}.card--stop .lede{margin-bottom:0}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips--stack{flex-direction:column;align-items:flex-start}.chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px}.chip:hover{border-color:var(--accent)}.chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.banner{border-radius:9px;margin-bottom:14px;padding:11px 14px;font-size:13px}.banner--error{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger);align-items:flex-start;gap:12px;display:flex}.banner--error>div:first-child{flex:1}.banner--info{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.banner--warn{background:var(--warn-soft);color:var(--ink);border:1px solid var(--warn)}.banner__title{font-weight:600}.banner__owner{margin-top:2px}.banner--error .item__engineer{opacity:.8;margin-top:6px}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:22px 0 8px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px}.stat__value{font-family:var(--font-display);letter-spacing:-.02em;font-size:30px;font-weight:600;line-height:1.1}.stat__label{color:var(--ink-2);margin-top:2px;font-size:12px}.stat--good .stat__value{color:var(--ok)}.stat--bad .stat__value{color:var(--danger)}.plan-total{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.plan-total__amount{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;font-size:34px;font-weight:700}.plan-total__amount span{color:var(--ink-2);margin-left:2px;font-size:15px;font-weight:500}.env-value{display:block;position:relative}.env-value input{width:100%;padding-right:34px}.env-reveal{width:26px;height:26px;color:var(--ink-3);border-radius:var(--r-sm);place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.env-reveal:hover{color:var(--ink);background:var(--surface-2)}.env-reveal[aria-pressed=true]{color:var(--accent)}.app-name{align-items:center;gap:10px;display:inline-flex}.app-name__edit{opacity:.5;color:var(--ink-3);transition:opacity var(--dur) var(--ease)}.app-name:hover .app-name__edit,.app-name__edit:focus-visible{opacity:1}.app-name__edit:hover{color:var(--accent)}.app-name__edit-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-name__edit-row .input{max-width:340px;font-family:var(--font-display);font-size:20px;font-weight:600}.secrets__status{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.secrets__status>div:first-child{flex:1;min-width:240px}.secrets__actions{flex-wrap:wrap;gap:8px;display:flex}.secrets__managed{align-items:flex-start;gap:6px;margin-top:12px;display:flex}.secrets__managed svg{flex-shrink:0;margin-top:2px}.secrets .banner code{font-size:12px}.named-secrets{border-top:1px solid var(--line);gap:14px;margin-top:28px;padding-top:22px;display:grid}.ns-head h4{align-items:baseline;gap:8px;margin:0;font-size:14px;font-weight:700;display:flex}.ns-head p{color:var(--ink-2);max-width:62ch;margin:4px 0 0;font-size:13px;line-height:1.55}.ns-off{color:var(--ink-2);background:var(--surface-2);border-radius:var(--r-md);align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:13px;display:flex}.ns-off svg{color:var(--ink-3);flex-shrink:0;margin-top:2px}.ns-list{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.ns-row{border-top:1px solid var(--line);transition:background var(--dur) var(--ease);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px 14px;display:grid}.ns-row:first-child{border-top:none}.ns-row:hover{background:var(--surface-2)}.ns-row.is-confirming{background:var(--danger-soft)}.ns-row__main{flex-direction:column;gap:3px;min-width:0;display:flex}.ns-row__name{font-family:var(--font-mono);color:var(--ink);overflow-wrap:anywhere;font-size:13.5px;font-weight:500}.ns-row__id{color:var(--ink-3);align-items:center;gap:6px;min-width:0;font-size:12px;display:flex}.ns-row__id code{font-family:var(--font-mono);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.ns-copy{border-radius:var(--r-sm);width:22px;height:22px;color:var(--ink-3);opacity:0;transition:opacity var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease);flex-shrink:0;place-items:center;display:inline-grid}.ns-row:hover .ns-copy,.ns-copy:focus-visible{opacity:1}.ns-copy:hover{color:var(--accent);background:var(--accent-soft)}.ns-row__meta{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.ns-row__ago{color:var(--ink-3);white-space:nowrap;font-size:11.5px}.ns-empty{border:1px dashed var(--line-strong);border-radius:var(--r-md);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:13px;display:flex}.ns-add-more{justify-self:start}.ns-form{animation:ns-in .22s var(--ease) both}.ns-form__grid{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;gap:16px;display:grid}.ns-form .input{font-size:13px}.ns-value{resize:vertical;min-height:96px;padding:10px 14px;line-height:1.5}.ns-warn{color:var(--warn)}.ns-form__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ns-form__kbd{color:var(--ink-3);align-items:center;gap:4px;margin-left:auto;font-size:12px;display:inline-flex}.ns-form__kbd kbd{font-family:var(--font-mono);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);border-bottom-width:2px;border-radius:4px;padding:1px 6px;font-size:11px}@keyframes ns-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ns-form{animation:none}}.ns-where{color:var(--ink-3);grid-template-columns:auto minmax(0,1fr);gap:4px 14px;margin:0;font-size:12px;display:grid}.ns-where dd{min-width:0;margin:0}.ns-where code{font-family:var(--font-mono);color:var(--ink-2);overflow-wrap:anywhere;font-size:11.5px}@media (width<=640px){.ns-form__grid{grid-template-columns:1fr}.ns-row{grid-template-columns:minmax(0,1fr) auto}.ns-row__meta{flex-direction:row;grid-area:2/1;align-items:center;gap:8px}.ns-form__kbd{display:none}}.previews__switch{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.previews__switch>div{gap:6px;min-width:0;display:grid}.previews__lead{color:var(--ink);font-size:14.5px;font-weight:500}.preview{border-top:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:12px;margin-top:12px;padding:13px 0;display:grid}.preview+.preview{margin-top:0}.preview__main{gap:4px;min-width:0;display:grid}.preview__title{color:var(--ink);overflow-wrap:anywhere;font-size:14px}.preview__meta{font-family:var(--font-mono);color:var(--ink-2);flex-wrap:wrap;gap:10px;font-size:11px;display:flex}.preview__actions{gap:6px;display:flex}@media (width<=640px){.previews__switch{flex-direction:column}.preview{grid-template-columns:22px minmax(0,1fr)}.preview__actions{grid-column:2}}.person{border-top:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:12px;padding:12px 0;display:grid}.person+.person{margin-top:0}.person__avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-hover);border-radius:999px;place-items:center;font-size:13px;font-weight:600;display:grid}.person__main{gap:2px;min-width:0;display:grid}.person__email{color:var(--ink);overflow-wrap:anywhere;font-size:14px}.person__you{color:var(--ink-3)}.person__role{color:var(--ink-3);font-size:12.5px}.person__role strong{color:var(--ink-2);font-weight:600}.person__actions{align-items:center;gap:6px;display:flex}.person-add{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;padding-top:14px;display:flex}.person-add__who{flex:1;min-width:200px}.people-changes{color:var(--ink-2);gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.people-changes li{justify-content:space-between;gap:12px;display:flex}.people-changes__when{color:var(--ink-3);white-space:nowrap}.activity__who{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.activity__more{margin-top:10px}.member-org{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.member-org .input{flex:220px;min-width:0;max-width:420px;padding:6px 10px;font-size:20px}.member-note{color:var(--ink-2);margin:0 0 12px 44px;font-size:13px}.person__avatar--gone{background:var(--surface-2);color:var(--ink-3)}.member-editor{border:1px solid var(--line);border-radius:var(--r-md);gap:8px;margin:0 0 14px 44px;padding:12px;display:grid}.member-editor__row{color:var(--ink);justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;display:flex}.member-editor__row span{overflow-wrap:anywhere;min-width:0}.member-editor__actions{gap:8px;padding-top:6px;display:flex}.member-invite{gap:10px;padding-bottom:14px;display:grid}.member-invite .setting__note{margin:0}.member-invite__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.member-invite__row .input{flex:220px;min-width:0}.member-editor--flat,.member-note--flat{margin-bottom:0;margin-left:0}.member-apps{color:var(--ink);flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.member-apps li{align-items:center;gap:6px;display:inline-flex}@media (width<=640px){.member-note,.member-editor{margin-left:0}.person{grid-template-columns:32px minmax(0,1fr)}.person__actions{grid-column:2}}.penv{gap:8px;display:grid}.penv__row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:center;gap:10px;padding:9px 8px;display:grid}.penv__row--here{background:var(--accent-soft);border-radius:var(--r-sm)}.penv__key{gap:3px;min-width:0;display:grid}.penv__key .mono{color:var(--ink);overflow-wrap:anywhere;font-size:12.5px}.penv__from{font-family:var(--font-mono);color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.penv__from--previews,.penv__from--preview,.penv__from--staging{color:var(--accent)}.penv__value{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.penv__value code{font-family:var(--font-mono);background:var(--surface-2);border-radius:var(--r-sm);overflow-wrap:anywhere;min-width:0;padding:4px 7px;font-size:12px}.penv__actions{flex-wrap:wrap;gap:4px;display:flex}.penv__actions .btn{padding:4px 8px;font-size:12.5px}.penv__add{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}.penv__add input{border-radius:var(--r-md);border:1px solid var(--line);min-width:0;font:inherit;background:var(--surface);flex:160px;padding:7px 10px;font-size:13px}@media (width<=640px){.penv__row{grid-template-columns:1fr}}.previews__settings{gap:10px;margin-top:12px;display:grid}.env{gap:10px;display:grid}.env .previews__settings{margin-top:0}.env__head{grid-template-columns:22px minmax(0,1fr);align-items:start;gap:12px;display:grid}.env__head--split{grid-template-columns:22px minmax(0,1fr) auto}.env__head .hostname{overflow-wrap:anywhere;justify-self:start;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.env__actions{margin-bottom:0}.env__main{margin:0}.env__versions{border-top:1px solid var(--line);padding-top:12px;display:grid}.env__versions>.previews__lead{margin-bottom:6px}.promote+.promote{border-top:1px solid var(--line)}.promote__row{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;display:grid}.promote__what{min-width:0;color:var(--ink);gap:3px;font-size:13.5px;display:grid}.promote__confirm{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);gap:8px;margin:0 0 12px 56px;padding:12px 14px;display:grid}.promote__ask{color:var(--ink);margin:0;font-size:14px;font-weight:600}.promote__confirm .lifecycle-actions{margin-bottom:0}@media (width<=640px){.env__head--split{grid-template-columns:22px minmax(0,1fr)}.env__head--split .preview__actions{grid-column:2}.promote__row{grid-template-columns:36px minmax(0,1fr)}.promote__row .btn{grid-column:2;justify-self:start}.promote__confirm{margin-left:0}}.lp{--lp-max:1100px;overflow-x:clip}.has-js .reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);will-change:opacity, transform;transform:translateY(18px)}.has-js .reveal.is-revealed{opacity:1;transform:none}.lp-nav{--page-inset:14px}.lp-header,.bar-float{z-index:30;padding:16px var(--gutter) 0;position:sticky;top:0}.lp-nav,.topbar{max-width:var(--lp-max,var(--page-max));height:56px;padding:0 var(--page-inset,16px);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;align-items:center;gap:16px;margin:0 auto;display:flex;position:relative;box-shadow:0 10px 15px -3px #0000000a,0 4px 6px -4px #0000000a}.lp-nav:before,.topbar:before{content:"";border-radius:inherit;background:linear-gradient(to bottom, var(--line-strong), var(--line));-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.lp-nav-links{gap:22px;margin-left:8px;font-size:14px;display:none}.lp-nav-links a{color:var(--ink-2)}.lp-nav-links a:hover{color:var(--ink);text-decoration:none}.lp-nav-actions{align-items:center;gap:8px;margin-left:auto;display:flex}@media (width>=760px){.lp-nav-links{display:flex}}.btn-ink{background:var(--ink);color:var(--bg)}.btn-ink:hover{background:var(--ink-2);text-decoration:none}.btn-quiet{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong)}.btn-quiet:hover{background:var(--surface-2);text-decoration:none}.btn-gradient{color:var(--on-accent);background-image:linear-gradient(to top, var(--accent-hover), var(--accent));transition:background-size .25s var(--ease), transform var(--dur) var(--ease);background-position:bottom;background-size:100% 100%}.btn-gradient:hover{background-size:100% 180%;text-decoration:none}.btn-arrow{transition:transform var(--dur) var(--ease);display:inline-block}.btn-gradient:hover .btn-arrow{transform:translate(2px)}.lp-hero{padding:72px 20px 40px;position:relative}.lp-hero-inner{text-align:center;max-width:760px;margin:0 auto;position:relative}.lp-rules{z-index:-1;pointer-events:none;max-width:var(--lp-max);justify-content:space-between;margin:0 auto;padding:0 8%;display:flex;position:absolute;inset:0}.lp-rules i{background:linear-gradient(to bottom, transparent, var(--line), transparent);width:1px}.lp-glow{z-index:-2;pointer-events:none;filter:blur(160px);opacity:.5;background:linear-gradient(to top right, var(--accent), transparent);border-radius:50%;width:320px;height:320px;animation:8s cubic-bezier(.4,0,.6,1) infinite lp-pulse;position:absolute}.lp-glow-a{margin-left:-420px;top:-80px;left:50%}.lp-glow-b{margin-left:300px;animation-delay:2s;top:380px;left:50%}.lp-glow-c{opacity:.35;margin-left:-160px;top:0;left:50%}.lp-badge{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2);box-shadow:var(--shadow-1);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.lp-badge-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:3s ease-in-out infinite lp-pulse}.lp-h1{letter-spacing:-.037em;text-wrap:balance;border-block:1px solid #0000;border-image:linear-gradient(to right, transparent, var(--line-strong), transparent) 1;margin:22px 0;padding:20px 0;font-size:clamp(38px,7vw,62px);font-weight:800;line-height:1.02}.lp-hero-lede{color:var(--ink-2);max-width:56ch;margin:0 auto;font-size:clamp(16px,2vw,18.5px);line-height:1.6}.lp-hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.lp-terminal-wrap{max-width:760px;margin:56px auto 0}.terminal-frame{position:relative}.terminal-frame:before{content:"";pointer-events:none;border-block:1px solid #0000;border-image:linear-gradient(to right, transparent, var(--line-strong), transparent) 1;position:absolute;inset:-20px}.terminal{background:#12171a;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 24px 48px -12px #00000059}.terminal-bar{border-bottom:1px solid #ffffff12;align-items:center;gap:6px;padding:11px 14px;display:flex}.terminal-bar>span{background:#ffffff29;border-radius:50%;width:10px;height:10px}.terminal-title{color:#fff6;margin-left:auto;font-size:11.5px}.terminal-body{min-height:250px;padding:18px 20px 24px;font-size:13px;line-height:1.9}.term-line{opacity:0;color:#ffffff8c;animation-duration:10s;animation-iteration-count:infinite;animation-fill-mode:both}.term-prompt{color:#ffffffeb}.term-caret{color:var(--accent);margin-right:8px}.term-ok{color:#ffffffdb}.term-tick{color:#5cd08a;margin-right:9px}.term-dot{color:#ffffff59;margin-right:9px}@keyframes term-1{0%{opacity:0}2%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-2{0%,8%{opacity:0}10%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-3{0%,17%{opacity:0}19%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-4{0%,25%{opacity:0}27%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-5{0%,35%{opacity:0}37%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-6{0%,45%{opacity:0}47%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-7{0%,55%{opacity:0}57%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-8{0%,65%{opacity:0}67%{opacity:1}96%{opacity:1}to{opacity:0}}@keyframes term-9{0%,75%{opacity:0}77%{opacity:1}96%{opacity:1}to{opacity:0}}.orbit{height:300px;max-width:var(--lp-max);margin:40px auto 0;position:relative}.orbit-glow{background:var(--accent);opacity:.18;filter:blur(70px);border-radius:50%;width:260px;height:260px;animation:4s cubic-bezier(.4,0,.6,1) infinite lp-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-mark{z-index:1;background:var(--surface);border:1px solid var(--line-strong);width:66px;height:66px;color:var(--accent);box-shadow:var(--shadow-2);border-radius:50%;place-items:center;display:grid;position:relative}.orbit-ring{background:conic-gradient(from 0deg, transparent 0 65%, var(--accent) 85%, transparent 100%);opacity:.6;border-radius:50%;animation:3s linear infinite lp-spin;position:absolute;inset:-7px}.orbit-node{--tx:0px;--ty:0px;white-space:nowrap;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-1);color:var(--ink-2);border-radius:999px;padding:9px 15px;font-size:12.5px;font-weight:600;animation-name:lp-breath;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-fill-mode:both;position:absolute;top:50%;left:50%}.orbit-node.dim{opacity:.7}.orbit-line{background:linear-gradient(to right, transparent, var(--line-strong), transparent);width:560px;height:1px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.orbit-line-a{margin-top:-82px}.orbit-line-b{margin-top:82px}.orbit-line>span{background:linear-gradient(to right, transparent, var(--accent), transparent);width:60px;height:1px;animation:10s ease-in-out infinite both lp-run;position:absolute;top:0}.orbit-line-b>span{animation-delay:5s}@media (width<=860px){.orbit{height:240px}.orbit-node.dim{display:none}.orbit-line{width:360px}}@media (width<=560px){.orbit{display:none}}@keyframes lp-breath{0%,to{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(.96)}50%{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(1.06)}}@keyframes lp-spin{to{transform:rotate(360deg)}}@keyframes lp-pulse{50%{opacity:.35}}@keyframes lp-run{0%,to{opacity:0;left:0}10%,40%,60%,90%{opacity:0}25%,75%{opacity:1}50%{left:100%;transform:translate(-100%)}}.lp-section{max-width:var(--lp-max);margin:0 auto;padding:88px 20px;position:relative}.lp-h2{letter-spacing:-.028em;text-wrap:balance;margin-bottom:12px;font-size:clamp(24px,3.6vw,36px);font-weight:800;line-height:1.15}.lp-center{text-align:center}.lp-section-lede{color:var(--ink-2);max-width:62ch;font-size:16px}.lp-center.lp-section-lede{margin-left:auto;margin-right:auto}.lp-dark{--band-bg:var(--ink);background:var(--band-bg);color:var(--bg);margin-top:40px;padding:92px 20px}:root[data-theme=dark] .lp-dark{--band-bg:var(--surface-2);color:var(--ink)}.lp-dark-inner{max-width:var(--lp-max);text-align:center;margin:0 auto}.lp-dark .lp-section-lede{color:color-mix(in srgb, currentColor 72%, transparent);margin:0 auto 44px}.lp-grid{text-align:left;background:color-mix(in srgb, currentColor 14%, transparent);border-block:1px solid color-mix(in srgb, currentColor 14%, transparent);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1px;display:grid}.lp-grid-cell{background:var(--band-bg);padding:24px 26px 26px}.lp-grid-cell h3{align-items:center;gap:8px;margin-bottom:8px;font-size:15px;display:flex}.lp-grid-cell h3 svg{color:var(--accent);flex-shrink:0}.lp-grid-cell p{color:color-mix(in srgb, currentColor 70%, transparent);font-size:13.5px;line-height:1.65}.lp-steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:36px;display:grid}.lp-step{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);height:100%;padding:22px}.lp-step-n{color:var(--accent);letter-spacing:.04em;margin-bottom:12px;font-size:12px;font-weight:700;display:block}.lp-step h3{margin-bottom:6px;font-size:15px}.lp-step p{color:var(--ink-2);font-size:13.5px;line-height:1.6}.lp-quote-section{text-align:center;max-width:860px}.lp-quote{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(20px,3vw,30px);font-weight:700;line-height:1.35}.lp-quote em{color:var(--accent);font-style:italic}.lp-quote-by{color:var(--ink-3);margin-top:18px;font-size:13px}.lp-prices{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px;margin-top:38px;display:grid}.lp-price{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);height:100%;transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;gap:7px;padding:22px 20px;display:flex;position:relative}.lp-price:hover{border-color:var(--accent);transform:translateY(-2px)}.lp-price.featured{border-color:var(--accent);box-shadow:var(--shadow-2)}.lp-price-flag{background:var(--accent);color:var(--on-accent);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:800;position:absolute;top:-10px;left:20px}.lp-price h3{font-size:15px}.lp-price-amount{letter-spacing:-.03em;font-size:30px;font-weight:800}.lp-price-amount small{color:var(--ink-3);letter-spacing:0;font-size:12.5px;font-weight:500}.lp-price-tag{color:var(--ink-2);min-height:36px;font-size:13px}.lp-price ul{gap:7px;margin:4px 0 0;padding:0;list-style:none;display:grid}.lp-price li{color:var(--ink-2);align-items:flex-start;gap:8px;font-size:13px;display:flex}.lp-price li svg{color:var(--ok);flex-shrink:0;margin-top:3px}.lp-fineprint{color:var(--ink-3);text-align:center;max-width:62ch;margin-top:22px;margin-left:auto;margin-right:auto;font-size:13px}.lp-cta{text-align:center;padding-bottom:100px}.lp-cta .btn{margin-top:26px}.lp-footer{border-top:1px solid var(--line);padding:40px 20px 0;position:relative;overflow:hidden}.lp-footer-inner{max-width:var(--lp-max);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin:0 auto;display:flex}.lp-footer-inner .muted{max-width:40ch;margin-top:8px;font-size:13px}.lp-footer-links{flex-wrap:wrap;gap:18px;font-size:13.5px;display:flex}.lp-footer-links a{color:var(--ink-2)}.lp-footer-links a:hover{color:var(--ink);text-decoration:none}.lp-wordmark{text-align:center;letter-spacing:-.045em;background:linear-gradient(to bottom, var(--line-strong), transparent 78%);color:#0000;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-background-clip:text;background-clip:text;margin:10px 0 -3%;font-size:clamp(44px,12.5vw,165px);font-weight:800;line-height:.82}.lp-hero .cprompt{text-align:left;max-width:680px;margin:30px auto 0}.lp-hero-links{color:var(--ink-3);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:14px;display:flex}.lp-hero-links a{color:var(--ink-2);font-weight:600}.lp-hero-links a:hover{color:var(--ink);text-decoration:none}.lp-hero-links a:hover .btn-arrow{transform:translate(2px)}.lp-cta .cprompt{margin-top:24px}.lp-cta .btn-quiet:hover .btn-arrow{transform:translate(2px)}.lp-word{white-space:pre;animation:word-up .7s var(--ease) both;display:inline-block}@keyframes word-up{0%{opacity:0;filter:blur(4px);transform:translateY(.35em)}}.lp-spot{z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--hx,50%) var(--hy,30%), color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%);transition:opacity .4s var(--ease);position:absolute;inset:0}.lp-hero:hover .lp-spot{opacity:1}.lp-nav-links a{position:relative}.lp-nav-links a:after{content:"";background:var(--accent);transform-origin:0;height:1.5px;transition:transform .26s var(--ease);border-radius:2px;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.lp-nav-links a:hover:after{transform:scaleX(1)}.btn-gradient{position:relative;overflow:hidden}.btn-gradient:after{content:"";width:40%;transition:left .6s var(--ease);background:linear-gradient(100deg,#0000,#ffffff59,#0000);position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.btn-gradient:hover:after{left:130%}.lp-grid-cell{position:relative;overflow:hidden}.lp-grid-cell article{height:100%;position:relative}.lp-grid-cell article:before{content:"";pointer-events:none;opacity:0;background:radial-gradient(260px circle at calc(var(--cx,50%) + 26px) calc(var(--cy,50%) + 24px), color-mix(in srgb, var(--accent) 18%, transparent), transparent 70%);transition:opacity .3s var(--ease);position:absolute;inset:-24px -26px -26px}.lp-grid-cell:hover article:before{opacity:1}.lp-grid-cell h3 svg{transition:transform .3s var(--ease-spring)}.lp-grid-cell:hover h3 svg{transform:scale(1.25)rotate(-8deg)}.lp-prices{perspective:900px}.lp-price{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(0);transition:border-color var(--dur) var(--ease), transform .2s var(--ease), box-shadow var(--dur) var(--ease);font-variant-numeric:tabular-nums}.lp-price:hover{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-3px);box-shadow:var(--shadow-2)}.term-cursor{vertical-align:-2px;background:#ffffffbf;width:7px;height:14px;margin-left:4px;animation:1s step-end infinite term-blink;display:inline-block}@keyframes term-blink{50%{opacity:0}}.lp-step{transition:border-color var(--dur) var(--ease), transform .24s var(--ease-spring), box-shadow var(--dur) var(--ease)}.lp-step:hover{border-color:var(--accent);box-shadow:var(--shadow-2);transform:translateY(-3px)}.is-revealed .lp-step-n{animation:pop-in .48s var(--ease-spring) both;animation-delay:.2s;display:inline-block}:root[data-theme=dark] .lp-glow{opacity:.28}:root[data-theme=dark] .lp-nav,:root[data-theme=dark] .topbar{background:color-mix(in srgb, var(--surface) 82%, transparent)}:root[data-theme=dark] .terminal{box-shadow:0 24px 48px -12px #0009, 0 0 0 1px var(--line)}:root[data-theme=dark] .lp-wordmark{background:linear-gradient(to bottom, var(--line-strong), transparent 78%);-webkit-background-clip:text;background-clip:text}@media (width<=420px){.lp-signin{display:none}}@media (width<=640px){.lp-header,.bar-float{padding:10px var(--gutter) 0}.topbar{padding:0 var(--page-inset)}}.doc-main{max-width:1120px;margin:0 auto;padding:32px 20px 80px}.doc-hero{max-width:760px;animation:page-in .42s var(--ease) both;padding:24px 0 28px}.doc-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:11px}.doc-hero h1{letter-spacing:-.035em;margin:0 0 12px;font-size:clamp(34px,5vw,52px)}.doc-lede{color:var(--ink-2);max-width:60ch;margin:0;font-size:17px}.doc-updated{color:var(--ink-3);margin:12px 0 0;font-size:13px}.doc-draft{border:1px solid color-mix(in srgb, var(--warn) 45%, var(--line));background:var(--warn-soft);color:var(--ink);border-radius:14px;align-items:flex-start;gap:10px;margin-top:18px;padding:12px 16px;font-size:13.5px;line-height:1.5;display:flex}.doc-draft svg{color:var(--warn);flex-shrink:0;margin-top:2px}mark.ph{background:var(--warn-soft);color:var(--warn);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:0 4px;font-weight:600}.doc-body{grid-template-columns:minmax(0,1fr);align-items:start;gap:32px;display:grid}@media (width>=900px){.doc-body{grid-template-columns:240px minmax(0,1fr)}}.doc-side{gap:22px;display:grid}@media (width>=900px){.doc-side,.faq>.doc-toc{position:sticky;top:96px}}.doc-docs,.doc-toc{flex-direction:column;gap:2px;display:flex}.doc-docs a,.doc-toc a{color:var(--ink-2);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:10px;padding:7px 12px;font-size:14px;text-decoration:none}.doc-docs a:hover,.doc-toc a:hover{background:var(--surface-2);color:var(--ink)}.doc-docs a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.doc-toc__label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:0 12px 4px;font-size:11px}.doc-toc a{font-size:13px}.doc-print{justify-self:start}.doc-article{gap:34px;max-width:72ch;display:grid}.doc-article section{scroll-margin-top:96px}.doc-article h2{letter-spacing:-.02em;align-items:baseline;gap:12px;margin:0 0 12px;font-size:21px;display:flex}.doc-num{color:var(--accent);font-size:12px}.doc-article p,.doc-article li{color:var(--ink-2);font-size:15.5px;line-height:1.7}.doc-article p{margin:0 0 12px}.doc-article ul{gap:6px;margin:0 0 12px;padding-left:20px;display:grid}.doc-article a{color:var(--accent)}.doc-table{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin:4px 0 12px;overflow-x:auto}.doc-table table{border-collapse:collapse;width:100%;font-size:14px}.doc-table th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2);border-bottom:1px solid var(--line);padding:10px 14px;font-size:12px}.doc-table td{border-top:1px solid var(--line);color:var(--ink-2);vertical-align:top;padding:11px 14px;line-height:1.55}.doc-table tr:first-child td{border-top:0}.doc-table td:first-child{color:var(--ink);min-width:140px;font-weight:600}.doc-foot{color:var(--ink-3);border-top:1px solid var(--line);padding-top:18px;font-size:14px}.faq-search{border:1px solid var(--line-strong);background:var(--surface);max-width:560px;height:50px;box-shadow:var(--shadow-1);color:var(--ink-3);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:0 16px;display:flex}.faq-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.faq-search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:15px}.faq-found{color:var(--ink-3);margin:10px 0 0 16px;font-size:13px}.faq-groups{gap:34px;max-width:760px;display:grid}.faq-group{scroll-margin-top:96px}.faq-group h2{letter-spacing:-.02em;margin:0 0 12px;font-size:20px}.faq-item{border:1px solid var(--line);background:var(--surface);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:16px;margin-bottom:10px}.faq-item:hover{border-color:var(--line-strong)}.faq-item[open]{box-shadow:var(--shadow-1)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;font-size:15.5px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item__chev{color:var(--ink-3);transition:transform .26s var(--ease);flex-shrink:0}.faq-item[open] .faq-item__chev{color:var(--accent);transform:rotate(180deg)}.faq-item__a{animation:page-in .26s var(--ease) both;padding:0 18px 16px}.faq-item__a p{color:var(--ink-2);margin:0 0 10px;font-size:15px;line-height:1.65}.faq-item__link{color:var(--accent);align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.faq-more{border:1px solid var(--line);background:var(--surface-2);border-radius:20px;padding:22px}.faq-more h2{margin:0 0 6px;font-size:18px}.faq-more p{color:var(--ink-2);margin:0;line-height:1.6}.legal-line{color:var(--ink-3);justify-content:center;gap:8px;margin:0;font-size:12.5px;display:flex}.legal-line a{color:var(--ink-3)}.legal-line a:hover{color:var(--ink)}@media print{.lp-header,.lp-footer,.doc-side,.doc-draft,.theme-toggle{display:none!important}.doc-body{grid-template-columns:1fr}.doc-main{padding:0}mark.ph{color:inherit;background:0 0;border:1px dashed}}.page-in{animation:page-in .42s var(--ease) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}.step-in{animation:step-in .38s var(--ease) both}@keyframes step-in{0%{opacity:0;transform:translate(14px)}}.step-in--back{animation-name:step-in-back}@keyframes step-in-back{0%{opacity:0;transform:translate(-14px)}}.step-in>section>:not(.sticky-bar,.env-savebar),.plan-grid>*,.config-list>*{animation:page-in .46s var(--ease) both}.step-in>section>:nth-child(2),.plan-grid>:first-child,.config-list>:first-child{animation-delay:70ms}.step-in>section>:nth-child(3),.plan-grid>:nth-child(2),.config-list>:nth-child(2){animation-delay:.14s}.step-in>section>:nth-child(4),.plan-grid>:nth-child(3),.config-list>:nth-child(3){animation-delay:.21s}.step-in>section>:nth-child(5),.plan-grid>:nth-child(4),.config-list>:nth-child(4){animation-delay:.28s}.step-in>section>:nth-child(n+6),.plan-grid>:nth-child(n+5),.config-list>:nth-child(n+5){animation-delay:.35s}.setup-sections>*,.review-fact{animation:page-in .46s var(--ease) both}.setup-sections>:nth-child(2){animation-delay:80ms}.setup-sections>:nth-child(n+3){animation-delay:.16s}.step-in>section>.actions,.step-in>section>.actions~*{animation-delay:.42s}.setup-sections .category>:not(.category-head){animation:page-in .42s var(--ease) 60ms both}.stagger>*{animation:page-in .42s var(--ease) both;animation-delay:calc(var(--i,0) * 50ms)}.toaster{z-index:100;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:var(--surface);animation:toast-in .38s var(--ease-spring) both;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:13.5px;font-weight:600;display:inline-flex;box-shadow:0 12px 30px -8px #0d172073}.toast svg{color:var(--ok)}:root[data-theme=dark] .toast svg{color:#087d5c}.toast--leaving{animation:toast-out .26s var(--ease) both}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}@keyframes toast-out{to{opacity:0;transform:translateY(8px)scale(.98)}}.skeleton{position:relative;overflow:hidden;background:var(--surface)!important;border-color:var(--line)!important;color:#0000!important}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--line) 70%, transparent), transparent);animation:1.3s ease-in-out infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.skeleton-line{background:var(--surface-2);border-radius:6px;height:12px}.btn{transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform .18s var(--ease-spring), box-shadow var(--dur) var(--ease), opacity var(--dur) var(--ease)}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary:hover:not(:disabled){box-shadow:0 6px 16px -6px color-mix(in srgb, var(--accent) 70%, transparent)}.btn svg{transition:transform var(--dur) var(--ease)}.btn:hover:not(:disabled) .icon-nudge{transform:translate(2px)}.tabs{position:relative}.tabs__ink{background:var(--accent);height:2px;transition:left .32s var(--ease), width .32s var(--ease);border-radius:2px;position:absolute;bottom:-1px}.tabs button.on{border-bottom-color:#0000}.tabs button{transition:color var(--dur) var(--ease);font-weight:600}.pill-ok:before{animation:2.2s ease-out infinite live-dot}@keyframes live-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--ok) 55%, transparent)}70%,to{box-shadow:0 0 0 5px #0000}}.pill-warn:before{animation:1.4s ease-in-out infinite lp-pulse}.sheet-backdrop{animation:fade-in .2s var(--ease) both;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-backdrop{-webkit-backdrop-filter:blur(6px)saturate(.9)}.confirm{animation:pop-in .32s var(--ease-spring) both;box-shadow:0 30px 60px -20px #0d172073}.sheet{animation:sheet-in .36s var(--ease) both}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(10px)scale(.97)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}}.usermenu{position:relative}.usermenu__btn{border:1px solid var(--line);background:var(--surface);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:999px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:inline-flex}.usermenu__btn:hover,.usermenu__btn[aria-expanded=true]{border-color:var(--line-strong);box-shadow:var(--shadow-1)}.usermenu__btn svg{color:var(--ink-3);transition:transform var(--dur) var(--ease)}.usermenu__btn[aria-expanded=true] svg{transform:rotate(180deg)}.usermenu__avatar{background:var(--accent);width:26px;height:26px;color:var(--on-accent);text-transform:uppercase;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.usermenu__panel{z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:240px;box-shadow:var(--shadow-2);transform-origin:100% 0;animation:menu-in .22s var(--ease-spring) both;padding:6px;position:absolute;top:calc(100% + 8px);right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}.usermenu__who{border-bottom:1px solid var(--line);margin-bottom:4px;padding:8px 10px 10px}.usermenu__who small{color:var(--ink-3);font-size:11.5px;display:block}.usermenu__who span{color:var(--ink);overflow-wrap:anywhere;font-size:13.5px;font-weight:600}.usermenu__item{border-radius:var(--r-sm);width:100%;color:var(--ink-2);align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.usermenu__item:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.copy-btn{position:relative}.copy-btn .copy-btn__icons{width:15px;height:15px;display:inline-block;position:relative;overflow:hidden}.copy-btn .copy-btn__icons svg{transition:transform .3s var(--ease-spring), opacity .18s var(--ease);position:absolute;inset:0}.copy-btn .copy-btn__icons svg:last-child{opacity:0;transform:translateY(120%)}.copy-btn.is-copied .copy-btn__icons svg:first-child{opacity:0;transform:translateY(-120%)}.copy-btn.is-copied .copy-btn__icons svg:last-child{opacity:1;color:var(--ok);transform:none}.burst{position:relative}.burst i{pointer-events:none;background:var(--c,var(--accent));opacity:0;width:6px;height:6px;animation:burst .9s var(--ease) both;animation-delay:var(--d,0s);border-radius:2px;position:absolute;top:50%;left:50%}@keyframes burst{0%{opacity:1;transform:translate(-50%,-50%)rotate(0)}to{opacity:0;transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) rotate(220deg)}}.brand__mark{background:var(--accent);width:24px;height:24px;transition:transform .4s var(--ease-spring);border-radius:7px;place-items:center;display:grid}.brand:hover .brand__mark{transform:rotate(-12deg)scale(1.06)}.brand .brand__mark svg{color:var(--on-accent)}.cprompt{--mx:50%;--my:50%;background:var(--surface);box-shadow:var(--shadow-2);isolation:isolate;border-radius:14px;position:relative}.cprompt:before{content:"";border-radius:inherit;z-index:-1;background:radial-gradient(220px circle at var(--mx) var(--my), var(--accent), transparent 70%), var(--line-strong);-webkit-mask-composite:xor;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cprompt__head{border-bottom:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.cprompt__label{color:var(--ink);align-items:center;gap:7px;font-size:12.5px;font-weight:700;display:inline-flex}.cprompt__label svg{color:var(--accent)}.cprompt__hint{color:var(--ink-3);font-size:12px}.cprompt__body{cursor:copy;width:100%;transition:background var(--dur) var(--ease);border-radius:0 0 14px 14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 14px 16px 16px;display:grid}.cprompt__body:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent)}.cprompt__body:active .cprompt__copy{transform:scale(.94)}.cprompt__caret{font-family:var(--font-mono);color:var(--accent);font-size:16px;font-weight:600}.cprompt__text{font-family:var(--font-mono);color:var(--ink);text-align:left;overflow-wrap:anywhere;font-size:13.5px;line-height:1.55}.cprompt__copy{background:var(--ink);color:var(--surface);transition:transform .18s var(--ease-spring), background var(--dur) var(--ease);border-radius:9px;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.cprompt.is-copied .cprompt__copy{background:var(--ok)}.cprompt__copy-icon{width:15px;height:15px;position:relative;overflow:hidden}.cprompt__copy-icon svg{transition:transform .32s var(--ease-spring), opacity .2s var(--ease);position:absolute;inset:0}.cprompt__copy-icon svg:last-child{opacity:0;transform:translateY(120%)}.cprompt.is-copied .cprompt__copy-icon svg:first-child{opacity:0;transform:translateY(-120%)}.cprompt.is-copied .cprompt__copy-icon svg:last-child{opacity:1;transform:none}.cprompt__copy-word{min-width:46px}.cprompt--sm{text-align:left;max-width:720px;margin:0 auto}.cprompt--sm .cprompt__hint{display:none}@media (width<=520px){.cprompt__body{grid-template-columns:minmax(0,1fr)}.cprompt__caret{display:none}.cprompt__copy{justify-content:center}}.theme-toggle{width:36px;height:36px;color:var(--ink-2);border:1px solid var(--line);background:var(--surface);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform .2s var(--ease-spring);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.theme-toggle:hover{color:var(--ink);border-color:var(--line-strong);transform:rotate(-8deg)}.theme-toggle:active{transform:scale(.92)}.theme-toggle svg{overflow:visible}.theme-toggle__core{transition:r .42s var(--ease-spring)}.theme-toggle__bite{transition:cx .42s var(--ease), cy .42s var(--ease)}.theme-toggle__rays{transform-origin:12px 12px;transition:transform .5s var(--ease-spring), opacity .3s var(--ease)}.theme-toggle.is-dark .theme-toggle__core{r:8px}.theme-toggle.is-dark .theme-toggle__bite{cx:17px;cy:7px}.theme-toggle.is-dark .theme-toggle__rays{opacity:0;transform:rotate(90deg)scale(.4)}.theme-choice{background:var(--surface-2);border:1px solid var(--line);border-radius:9px;grid-template-columns:repeat(3,1fr);gap:2px;margin:4px 4px 6px;padding:3px;display:grid;position:relative}.theme-choice button{z-index:1;color:var(--ink-3);text-align:center;transition:color var(--dur) var(--ease);border-radius:7px;padding:5px 0;font-size:12.5px;font-weight:600;position:relative}.theme-choice button[aria-checked=true]{color:var(--ink)}.theme-choice__pill{background:var(--surface);width:calc(33.3333% - 3.33333px);box-shadow:var(--shadow-1);transition:transform .32s var(--ease-spring);border-radius:7px;position:absolute;top:3px;bottom:3px;left:3px}.theme-choice[data-pref=dark] .theme-choice__pill{transform:translate(calc(100% + 2px))}.theme-choice[data-pref=system] .theme-choice__pill{transform:translate(calc(200% + 4px))}.usermenu__label{color:var(--ink-3);padding:8px 10px 2px;font-size:11.5px}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}.cprompt__hint{align-items:center;gap:8px;display:inline-flex}
