@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&family=Outfit:wght@400;500;600;700;800&display=swap";@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--font-display:"Sora", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Geist", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", monospace;--font-wordmark:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--white:#fff;--card-fill:#efefea;--border:#e6e6e0;--border-strong:#d4d4cc;--surface-hover:#f1f1ed;--primary:#171c20;--secondary:#4a5460;--muted:#7d857c;--on-action:#fff;--action:#3b7a5c;--action-hover:#2d5a45;--action-press:#234638;--action-soft:#e4efe9;--action-soft-2:#d2e5da;--highlight:#d4962a;--highlight-hover:#b57a18;--highlight-soft:#fbf1dc;--highlight-soft-2:#f5e2b8;--brand:#5b5df0;--brand-hover:#4a4cd0;--brand-soft:#ecedfe;--brand-soft-2:#dcddfc;--error:#c0392b;--error-soft:#f8e3df;--success-bg:#e8f5ee;--success-bd:#c5e8d4;--success-fg:#2d5a45;--warning-bg:#fdf3e3;--warning-bd:#f0dfc0;--warning-fg:#a07420;--error-bg:#fdeaea;--error-bd:#f0c5c5;--error-fg:#9b2c2c;--conf-high:var(--action);--conf-medium:var(--highlight);--conf-low:var(--error);--row-hover:#f1f1ed;--row-selected:#eaeeea;--row-warn:#fbf6e8;--row-linked:#ecedfe;--activity-amort:#6b5b95;--activity-amort-soft:#ece9f3;--activity-accretion:#5a6878;--activity-accretion-soft:#e8ebee;--activity-principal:var(--brand);--activity-principal-soft:var(--brand-soft);--nav-bg:#1b2420;--nav-bg-hover:#2a3530;--nav-bg-active:#3a4742;--nav-text:#f5f6f2;--nav-text-sub:#c9cfc8;--nav-text-muted:#8a938a;--nav-hairline:#2d3531;--nav-accent:#94d0b0;--nav-accent-soft:#94d0b02e;--text-logo:16px;--text-h1:28px;--text-h2:16px;--text-body:13px;--text-sub:12px;--text-mono:13px;--text-eyebrow:11px;--text-micro:10px;--weight-bold:700;--weight-semibold:600;--weight-medium:500;--weight-regular:400;--tracking-logo:-.025em;--tracking-h1:-.02em;--tracking-h2:-.015em;--tracking-eyebrow:.13em;--tracking-mono:-.01em;--radius-xs:3px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--height-topbar:46px;--height-footer:36px;--height-spec-bar:40px;--height-row:28px;--width-left-nav:216px;--width-drawer:500px;--shadow-card:0 1px 2px #171c200a, 0 4px 12px #171c200d;--shadow-pop:0 2px 4px #171c200f, 0 8px 20px #171c2014;--shadow-modal:0 4px 8px #171c2014, 0 16px 48px #171c201f;--shadow-drawer:-2px 0px 6px #171c200a, -8px 0px 32px #171c201a, -24px 0px 72px #171c2021;--ease-out:cubic-bezier(.2, .6, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-med:.2s;--dur-slow:.32s;--bg:#f9f9f6;--surface:var(--white);--card:var(--card-fill);--hairline:var(--border);--hairline-strong:var(--border-strong);--fg1:var(--primary);--fg2:var(--secondary);--fg3:var(--muted);--text-primary:var(--primary);--text-secondary:var(--secondary);--text-muted:var(--muted);--accent:var(--action);--accent-hover:var(--action-hover);--focus-ring:var(--action);--selection:var(--row-selected);--selection-strong:var(--action-soft-2);--positive:var(--success-fg);--positive-bg:var(--success-bg);--negative:var(--error-fg);--negative-bg:var(--error-bg);--review:var(--warning-fg);--review-bg:var(--warning-bg);--info:var(--brand);--info-bg:var(--brand-soft)}.sf-logo{font-family:var(--font-wordmark);font-size:var(--text-logo);font-weight:var(--weight-bold);letter-spacing:var(--tracking-logo);color:var(--primary)}.sf-h1{font-family:var(--font-display);font-size:var(--text-h1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-h1);line-height:1.2}.sf-h2{font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-h2);line-height:1.25}.sf-body{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);line-height:1.5}.sf-sub{font-family:var(--font-body);font-size:var(--text-sub);font-weight:var(--weight-regular);color:var(--text-muted);line-height:1.45}.sf-mono{font-family:var(--font-mono);font-size:var(--text-mono);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-mono)}.sf-eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--text-muted)}.sf-micro{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--text-muted)}.sf-positive{color:var(--positive)}.sf-negative{color:var(--negative)}.sf-review{color:var(--review)}.sf-accent{color:var(--accent)}.sf-muted{color:var(--text-muted)}.sf-bg-pos{background-color:var(--positive-bg);color:var(--positive)}.sf-bg-neg{background-color:var(--negative-bg);color:var(--negative)}.sf-bg-review{background-color:var(--review-bg);color:var(--review)}.sf-bg-info{background-color:var(--info-bg);color:var(--info)}.sf-surface{background-color:var(--surface)}.sf-card{background-color:var(--card)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);font-size:var(--text-body);color:var(--text-primary);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}.app{flex-direction:column;height:100%;display:flex}.topbar{align-items:center;gap:var(--space-4);height:var(--height-topbar);padding:0 var(--space-6) 0 var(--space-5);background:var(--surface);color:var(--text-primary);border-bottom:1px solid var(--hairline);flex-shrink:0;display:flex}.topbar .brand{align-items:center;gap:var(--space-2);color:var(--primary);display:flex}.topbar .brand .name{font-family:var(--font-wordmark);font-size:var(--text-logo);font-weight:var(--weight-bold);letter-spacing:var(--tracking-logo)}.topbar .spacer{flex:1}.topbar .topbar-user{align-items:center;gap:var(--space-4);font-size:var(--text-sub);color:var(--text-secondary);display:flex}.topbar .topbar-email{color:var(--text-muted)}.footbar{height:var(--height-footer);padding:0 var(--space-5);background:var(--surface);border-top:1px solid var(--hairline);font-size:var(--text-sub);color:var(--text-muted);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.shell-body{grid-template-columns:var(--width-left-nav) 1fr;flex:1;min-height:0;display:grid}.leftnav{background:var(--nav-bg);color:var(--nav-text-sub);border-right:1px solid var(--nav-hairline);padding:var(--space-4) var(--space-3);flex-direction:column;gap:2px;display:flex}.leftnav .eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--nav-text-muted);padding:0 var(--space-2);margin-bottom:var(--space-2)}.leftnav .eyebrow:not(:first-child){margin-top:var(--space-5)}.leftnav a,.leftnav .nav-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--nav-text-sub);font-size:var(--text-body);cursor:pointer;text-decoration:none;display:flex;position:relative}.leftnav a:hover,.leftnav .nav-item:not(.disabled):hover{background:var(--nav-bg-hover);color:var(--nav-text)}.leftnav a.active{background:var(--nav-bg-active);color:var(--nav-text);font-weight:var(--weight-semibold)}.leftnav a.active:before{content:"";background:var(--nav-accent);border-radius:2px;width:3px;position:absolute;top:6px;bottom:6px;left:2px}.leftnav a.active svg{color:var(--nav-accent)}.leftnav .nav-item.disabled{color:var(--nav-text-muted);cursor:default}.leftnav .nav-user{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2) var(--space-1);border-top:1px solid var(--nav-hairline);margin-top:auto;display:flex}.leftnav .nav-avatar{background:var(--nav-bg-active);width:26px;height:26px;color:var(--nav-accent);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.leftnav .nav-user-name{color:var(--nav-text);font-size:var(--text-sub);font-weight:var(--weight-semibold);line-height:1.3}.leftnav .nav-user-role{color:var(--nav-text-muted);font-size:var(--text-micro);text-transform:capitalize}.canvas{padding:var(--space-8);min-width:0;overflow:auto}.canvas-eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--text-muted)}.canvas h1{font-family:var(--font-display);font-size:var(--text-h1);font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--primary);margin:var(--space-1) 0 var(--space-2);line-height:1.2}.canvas h2{font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-h2);margin:var(--space-5) 0 var(--space-3)}.canvas-sub{font-size:var(--text-sub);color:var(--text-secondary);max-width:62ch;margin:0 0 var(--space-6);line-height:1.5}.run-meta{align-items:center;gap:var(--space-3);font-size:var(--text-sub);color:var(--text-muted);margin:0 0 var(--space-6);display:flex}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-card)}.field-label{font-size:var(--text-sub);color:var(--text-secondary);margin-bottom:var(--space-1);display:block}input[type=text],input[type=email],input[type=file],select,textarea{font:inherit;font-size:var(--text-body);color:var(--text-primary);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);width:100%}textarea{resize:vertical}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234A5460' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:calc(var(--space-3) * 2 + 12px)}input:focus,select:focus,textarea:focus{border-color:var(--action);box-shadow:0 0 0 3px var(--action-soft);outline:none}.btn{font:inherit;font-size:var(--text-body);font-weight:var(--weight-semibold);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--action);background:var(--action);color:var(--on-action);cursor:pointer;transition:background var(--dur-fast);white-space:nowrap}.btn:hover{background:var(--action-hover);border-color:var(--action-hover)}.btn.secondary{background:var(--surface);color:var(--text-primary);border-color:var(--hairline-strong)}.btn.secondary:hover{background:var(--card);color:var(--text-primary)}.btn[disabled]{opacity:.45;cursor:not-allowed}.error{color:var(--negative);font-size:var(--text-sub);margin-top:var(--space-2)}.form-field{margin-bottom:var(--space-4)}.form-field .field-error{margin-top:var(--space-1);font-size:var(--text-sub)}.dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--card-fill);padding:var(--space-6);text-align:center;transition:border-color var(--dur-fast), background var(--dur-fast)}.dropzone:hover,.dropzone:focus-within{border-color:var(--action);background:var(--action-soft)}.dropzone input[type=file]{background:0 0;border:none;width:auto;padding:0}.dropzone .dropzone-hint{font-size:var(--text-sub);color:var(--text-muted);margin-top:var(--space-3);display:block}.auth-screen{background:var(--bg);place-items:center;height:100%;display:grid}.auth-card{width:380px}.auth-brand{align-items:center;gap:var(--space-2);color:var(--primary);margin-bottom:var(--space-5);display:flex}.auth-brand .name{font-family:var(--font-wordmark);font-size:var(--text-logo);font-weight:var(--weight-bold);letter-spacing:var(--tracking-logo)}.auth-sub{font-size:var(--text-sub);color:var(--text-secondary);margin:0 0 var(--space-5)}.drawer{top:var(--height-topbar);height:calc(100% - var(--height-topbar) - var(--height-footer));width:var(--width-drawer);background:var(--surface);max-width:92vw;box-shadow:var(--shadow-drawer);z-index:20;flex-direction:column;transition:transform .16s;display:flex;position:fixed;right:0;transform:translate(100%)}.drawer.open{transform:translate(0)}.drawer-head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--hairline);background:var(--card)}.drawer-eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--text-muted)}.drawer-body{padding:var(--space-5);flex:1;overflow:auto}.drawer-foot{padding:var(--space-4) var(--space-5);border-top:1px solid var(--hairline);gap:var(--space-2);justify-content:flex-end;display:flex}.modal-backdrop{padding:var(--space-5);z-index:30;background:#0000002e;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-lg);width:560px;max-width:100%;max-height:88vh;box-shadow:var(--shadow-modal);flex-direction:column;display:flex;overflow:hidden}.modal-head{padding:var(--space-5);border-bottom:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-close{cursor:pointer;color:var(--text-muted);padding:0 var(--space-1);background:0 0;border:none;font-size:22px;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--space-5);flex:1;overflow:auto}.modal-foot{padding:var(--space-4) var(--space-5);border-top:1px solid var(--hairline);gap:var(--space-2);flex-shrink:0;justify-content:flex-end;display:flex}.pill{font-size:var(--text-sub);padding:1px var(--space-2);border-radius:999px;display:inline-block}.pill.review{background:var(--review-bg);color:var(--review)}.pill.positive{background:var(--positive-bg);color:var(--positive)}.pill.negative{background:var(--negative-bg);color:var(--negative)}.rail{margin:0;padding:0;list-style:none}.rail li{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--hairline);font-size:var(--text-body);color:var(--text-primary);opacity:.5;display:flex}.rail li:last-child{border-bottom:none}.rail li.active,.rail li.done{opacity:1}.rail li.active{font-weight:var(--weight-semibold)}.rail li .step-mark{width:22px;height:22px;font-family:var(--font-mono);font-size:var(--text-sub);font-weight:var(--weight-semibold);background:var(--card-fill);color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.rail li.active .step-mark{background:var(--action-soft);color:var(--action);box-shadow:inset 0 0 0 2px var(--action)}.rail li.done .step-mark{background:var(--action);color:var(--on-action)}.map-table{border-collapse:collapse;width:100%;font-size:var(--text-body)}.map-table th{text-align:left;color:var(--text-muted);font-weight:var(--weight-regular);font-size:var(--text-sub);border-bottom:1px solid var(--hairline);padding:var(--space-2)}.map-table td{padding:var(--space-2);border-bottom:1px solid var(--hairline)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.impersonation-banner{color:#fff;background:#7c2d12;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;font-size:13px;display:flex}.impersonation-banner .pill{margin-left:8px}.update-banner{background:var(--info-bg);color:var(--info);font-size:var(--text-sub);border-bottom:1px solid var(--brand-soft-2);justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.update-banner .btn{padding:2px var(--space-3)}.status-pill{text-transform:capitalize}.status-pill.active{color:#14532d;background:#dcfce7}.status-pill.provisioning{color:#312e81;background:#e0e7ff}.status-pill.error{color:#7f1d1d;background:#fee2e2}.status-pill.suspended{color:#374151;background:#e5e7eb}.copy-field{margin-top:12px}.copy-field .copy-field-row{align-items:center;gap:8px;display:flex}.copy-field input{width:100%;font-family:ui-monospace,monospace;font-size:12px}.tile-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.agent-tile{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-card);flex-direction:column;min-height:236px;display:flex;position:relative}.agent-tile.active{border-left:3px solid var(--action)}.agent-tile.not-configured{background-image:repeating-linear-gradient(-45deg,#0000,#0000 9px,#171c2006 9px 10px)}.agent-tile-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.agent-tile-icon{border-radius:var(--radius-sm);background:var(--card-fill);border:1px solid var(--hairline);width:34px;height:34px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.agent-status{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--action);align-items:center;gap:6px;display:inline-flex}.agent-status .dot{background:var(--action);border-radius:50%;width:7px;height:7px}.agent-tile h3{font-family:var(--font-display);font-size:19px;font-weight:var(--weight-semibold);letter-spacing:-.01em;margin:0 0 var(--space-2);color:var(--primary)}.agent-sub{font-size:var(--text-body);color:var(--text-secondary);margin:0;line-height:1.5}.agent-stats{gap:var(--space-3);margin:var(--space-4) 0;padding-top:var(--space-4);border-top:1px solid var(--hairline);grid-template-columns:repeat(3,1fr);display:grid}.agent-stat .eye{font-family:var(--font-display);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:3px}.agent-stat .val{font-family:var(--font-mono);font-size:17px;font-weight:var(--weight-bold);color:var(--primary)}.agent-stat .val.flag{color:var(--highlight,var(--warning-fg))}.agent-stat .meta{font-size:var(--text-micro);color:var(--text-muted);margin-top:2px}.agent-tile .agent-cta{align-items:center;gap:var(--space-3);margin-top:auto;display:flex}.agent-tile .tied-chip{margin:0 0 var(--space-3)}.agent-foot-meta{font-size:var(--text-sub);color:var(--text-muted)}
