:root{--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "Cascadia Code", "Segoe UI Mono", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.125rem;--weight-medium: 550;--weight-semibold: 650;--weight-bold: 750;--weight-extrabold: 800;--tracking-tight: -.02em;--tracking-wide: .04em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 22px;--radius-pill: 999px;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .12s;--duration-normal: .18s;--primary: #1d4ed8;--primary-hover: #1e40af;--primary-rgb: 29, 78, 216;--primary-soft: rgba(29, 78, 216, .1);--primary-soft-strong: rgba(29, 78, 216, .18);--accent: #0ea5e9;--accent-rgb: 14, 165, 233;--success: #059669;--warning: #d97706;--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .1);--shadow-sm: 0 1px 2px rgba(100, 116, 139, .1);--shadow-md: 0 8px 24px rgba(100, 116, 139, .12);--shadow-lg: 0 18px 48px rgba(100, 116, 139, .14);--shadow-focus: 0 0 0 3px rgba(var(--primary-rgb), .28);--highlight: var(--primary);--highlight-rgb: var(--primary-rgb);--highlight-border: rgba(var(--primary-rgb), .45);--highlight-ring: 0 0 0 3px rgba(var(--primary-rgb), .32);--highlight-width: 2px;--selection-bg: rgba(var(--primary-rgb), .22);--font: var(--font-sans);--radius: var(--radius-lg);--radiusSm: var(--radius-sm);--brand: var(--primary);--brandRgb: var(--primary-rgb);--text: var(--text-primary);--muted: var(--text-muted);--border: var(--border-subtle);--panel: var(--bg-elevated);--bg: var(--bg-surface);--bg2: var(--bg-surface-alt);--shadow: var(--shadow-lg);--accent1: var(--accent-rgb);--accent2: 99, 102, 241;--accent3: 5, 150, 105;--accent4: var(--primary-rgb);--panelTint: rgba(var(--primary-rgb), .05)}html.theme-white,html.theme-light{color-scheme:light;--primary: #f97316;--primary-hover: #ea580c;--primary-rgb: 249, 115, 22;--primary-soft: rgba(249, 115, 22, .12);--primary-soft-strong: rgba(249, 115, 22, .24);--highlight: #f97316;--highlight-rgb: 249, 115, 22;--highlight-border: rgba(249, 115, 22, .78);--highlight-ring: 0 0 0 3px rgba(249, 115, 22, .38);--highlight-width: 3px;--shadow-focus: 0 0 0 3px rgba(249, 115, 22, .38);--selection-bg: rgba(249, 115, 22, .22);--bg-surface: #f4f6fa;--bg-surface-alt: #e8edf4;--bg-canvas: #eef2f8;--bg-elevated: #eef1f6;--bg-inset: #e8ecf2;--chrome-surface: var(--bg-inset);--border-subtle: rgba(148, 163, 184, .32);--border-strong: rgba(100, 116, 139, .42);--text-primary: #5c6b7a;--text-secondary: #64748b;--text-muted: #94a3b8;--text-heading: #c2410c;--topbar-bg: rgba(255, 255, 255, .88);--sidebar-bg: rgba(255, 255, 255, .82);--sidebar-header-bg: rgba(255, 255, 255, .95);--input-bg: #ffffff;--glass-panel-bg: rgba(238, 241, 246, .94);--glass-panel-bg-fallback: #eef1f6;--glass-panel-border: var(--border-subtle);--glass-panel-shadow: var(--shadow-lg);--nav-text: var(--text-primary);--nav-hover-bg: rgba(100, 116, 139, .1);--nav-active-bg: rgba(249, 115, 22, .14);--nav-active-border: var(--highlight-border);--pill-bg: rgba(100, 116, 139, .1);--pill-border: rgba(100, 116, 139, .22);--pill-text: var(--text-secondary);--table-header-bg: rgba(100, 116, 139, .08);--table-row-hover-bg: var(--primary-soft);--table-row-border: var(--border-subtle);--rf-node-bg: #ffffff;--rf-node-border: var(--border-subtle);--rf-node-shadow: var(--shadow-md);--status-ok-bg: rgba(5, 150, 105, .12);--status-ok-border: rgba(5, 150, 105, .35);--status-ok-text: var(--text-primary);--status-info-bg: rgba(var(--primary-rgb), .1);--status-info-border: rgba(var(--primary-rgb), .3);--status-info-text: var(--text-primary);--status-warn-bg: rgba(217, 119, 6, .12);--status-warn-border: rgba(217, 119, 6, .35);--status-warn-text: var(--text-primary);--status-bad-bg: rgba(220, 38, 38, .1);--status-bad-border: rgba(220, 38, 38, .35);--status-bad-text: var(--text-primary);--kpi-bottom: rgba(255, 255, 255, .9);--statusOkBg: var(--status-ok-bg);--statusOkBorder: var(--status-ok-border);--statusOkText: var(--status-ok-text);--statusInfoBg: var(--status-info-bg);--statusInfoBorder: var(--status-info-border);--statusInfoText: var(--status-info-text);--statusWarnBg: var(--status-warn-bg);--statusWarnBorder: var(--status-warn-border);--statusWarnText: var(--status-warn-text);--statusBadBg: var(--status-bad-bg);--statusBadBorder: var(--status-bad-border);--statusBadText: var(--status-bad-text);--kpiBottom: var(--kpi-bottom);--topbarBg: var(--topbar-bg);--sidebarBg: var(--sidebar-bg);--sidebarHeaderBg: var(--sidebar-header-bg);--inputBg: var(--input-bg);--glassPanelBg: var(--glass-panel-bg);--glassPanelBgFallback: var(--glass-panel-bg-fallback);--glassPanelBorder: var(--glass-panel-border);--glassPanelShadow: var(--glass-panel-shadow);--navText: var(--nav-text);--navHoverBg: var(--nav-hover-bg);--navActiveBg: var(--nav-active-bg);--navActiveBorder: var(--nav-active-border)}html.theme-blue,html.theme-dark{color-scheme:dark;--bg-surface: #2a5080;--bg-surface-alt: #356192;--bg-canvas: #315f94;--bg-elevated: rgba(52, 96, 148, .92);--bg-inset: rgba(52, 96, 148, .9);--chrome-surface: var(--bg-inset);--border-subtle: rgba(147, 197, 253, .26);--border-strong: rgba(191, 219, 254, .42);--text-primary: #d4e3f2;--text-secondary: #b4c8de;--text-muted: #94abc4;--text-heading: #c8daf0;--primary: #93c5fd;--primary-hover: #bfdbfe;--primary-rgb: 147, 197, 253;--primary-soft: rgba(96, 165, 250, .14);--primary-soft-strong: rgba(96, 165, 250, .24);--highlight: #60a5fa;--highlight-rgb: 96, 165, 250;--highlight-border: rgba(147, 197, 253, .55);--highlight-ring: 0 0 0 3px rgba(96, 165, 250, .35);--highlight-width: 2px;--shadow-focus: 0 0 0 3px rgba(96, 165, 250, .35);--selection-bg: rgba(96, 165, 250, .28);--topbar-bg: linear-gradient(90deg, rgba(48, 92, 142, .94) 0%, rgba(58, 108, 162, .92) 55%, rgba(44, 84, 132, .94) 100%);--sidebar-bg: rgba(40, 78, 122, .9);--sidebar-header-bg: rgba(48, 92, 140, .94);--input-bg: rgba(52, 96, 148, .82);--login-cta: #ea580c;--login-cta-hover: #c2410c;--login-cta-rgb: 234, 88, 12;--glass-panel-bg: rgba(56, 100, 152, .9);--glass-panel-bg-fallback: var(--bg-inset);--glass-panel-border: var(--border-subtle);--glass-panel-shadow: 0 20px 56px rgba(0, 0, 0, .42);--nav-text: var(--text-primary);--nav-hover-bg: rgba(148, 163, 184, .1);--nav-active-bg: var(--primary-soft-strong);--nav-active-border: rgba(var(--primary-rgb), .45);--pill-bg: rgba(148, 163, 184, .12);--pill-border: rgba(148, 163, 184, .2);--pill-text: var(--text-secondary);--table-header-bg: rgba(148, 163, 184, .1);--table-row-hover-bg: var(--primary-soft);--table-row-border: var(--border-subtle);--rf-node-bg: rgba(56, 100, 152, .96);--rf-node-border: var(--border-strong);--rf-node-shadow: 0 10px 28px rgba(30, 58, 95, .28);--status-ok-bg: rgba(5, 150, 105, .18);--status-ok-border: rgba(52, 211, 153, .35);--status-ok-text: var(--text-primary);--status-info-bg: rgba(var(--primary-rgb), .2);--status-info-border: rgba(var(--primary-rgb), .4);--status-info-text: var(--text-primary);--status-warn-bg: rgba(217, 119, 6, .2);--status-warn-border: rgba(251, 191, 36, .35);--status-warn-text: var(--text-primary);--status-bad-bg: rgba(220, 38, 38, .18);--status-bad-border: rgba(248, 113, 113, .4);--status-bad-text: var(--text-primary);--kpi-bottom: var(--bg-inset);--statusOkBg: var(--status-ok-bg);--statusOkBorder: var(--status-ok-border);--statusOkText: var(--status-ok-text);--statusInfoBg: var(--status-info-bg);--statusInfoBorder: var(--status-info-border);--statusInfoText: var(--status-info-text);--statusWarnBg: var(--status-warn-bg);--statusWarnBorder: var(--status-warn-border);--statusWarnText: var(--status-warn-text);--statusBadBg: var(--status-bad-bg);--statusBadBorder: var(--status-bad-border);--statusBadText: var(--status-bad-text);--kpiBottom: var(--kpi-bottom);--topbarBg: var(--chrome-surface);--sidebarBg: var(--sidebar-bg);--sidebarHeaderBg: var(--sidebar-header-bg);--inputBg: var(--input-bg);--glassPanelBg: var(--glass-panel-bg);--glassPanelBgFallback: var(--glass-panel-bg-fallback);--glassPanelBorder: var(--glass-panel-border);--glassPanelShadow: var(--glass-panel-shadow);--navText: var(--nav-text);--navHoverBg: var(--nav-hover-bg);--navActiveBg: var(--nav-active-bg);--navActiveBorder: var(--nav-active-border)}body.th-app-body{margin:0;min-height:100%;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color:var(--text-primary);background:radial-gradient(1100px 620px at 8% -8%,rgba(var(--primary-rgb),.12),transparent 58%),radial-gradient(900px 520px at 92% 0%,rgba(var(--accent-rgb),.08),transparent 55%),linear-gradient(180deg,var(--bg-surface) 0%,var(--bg-surface-alt) 100%)}html.theme-blue body.th-app-body,html.theme-dark body.th-app-body{background:radial-gradient(1200px 700px at 12% -12%,rgba(var(--primary-rgb),.22),transparent 60%),radial-gradient(900px 600px at 88% 8%,rgba(var(--accent-rgb),.12),transparent 55%),linear-gradient(180deg,var(--bg-surface) 0%,var(--bg-surface-alt) 100%)}.th-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid var(--border-subtle);background:var(--primary-soft);color:var(--text-primary);border-radius:var(--radius-pill);padding:8px 14px;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);white-space:nowrap}.th-btn:hover:not(:disabled){background:var(--primary-soft-strong);border-color:rgba(var(--primary-rgb),.35);transform:translateY(-1px)}.th-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.th-btn:focus-visible,.btn:focus-visible,.navItem:focus-visible,.tab:focus-visible{outline:none;box-shadow:var(--highlight-ring);border-color:var(--highlight-border)}::selection{background:var(--selection-bg);color:var(--text-primary)}.th-btn--primary{background:linear-gradient(180deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;border-color:rgba(var(--primary-rgb),.45);box-shadow:var(--shadow-sm),0 2px 8px rgba(var(--primary-rgb),.28)}.th-btn--primary:hover:not(:disabled){filter:brightness(1.05);box-shadow:var(--shadow-md),0 4px 12px rgba(var(--primary-rgb),.32)}.th-btn--cta{padding:9px 16px;font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}html.theme-blue .th-btn,html.theme-dark .th-btn{padding:6px 12px;font-size:var(--text-sm);font-weight:var(--weight-semibold);border-width:1px}html.theme-blue .th-btn--primary,html.theme-dark .th-btn--primary{box-shadow:0 1px 4px rgba(var(--primary-rgb),.22)}html.theme-blue .th-btn--primary:hover:not(:disabled),html.theme-dark .th-btn--primary:hover:not(:disabled){box-shadow:0 2px 8px rgba(var(--primary-rgb),.28)}html.theme-blue .th-btn--cta,html.theme-dark .th-btn--cta{padding:7px 14px}html.theme-blue .th-btn,html.theme-dark .th-btn{background:#bfdbfe24;border-color:#bfdbfe52;color:var(--text-primary)}html.theme-blue .th-btn:hover:not(:disabled),html.theme-dark .th-btn:hover:not(:disabled){background:#bfdbfe38;border-color:#93c5fd73}html.theme-blue .th-btn--primary,html.theme-dark .th-btn--primary{background:linear-gradient(180deg,#7eb8ff,#60a5fa);border-color:#93c5fd80;color:#0f172a}html.theme-blue .th-btn--primary:hover:not(:disabled),html.theme-dark .th-btn--primary:hover:not(:disabled){filter:brightness(1.04)}.th-btn--ghost{background:transparent;border-color:transparent}.th-btn--ghost:hover:not(:disabled){background:var(--nav-hover-bg);border-color:var(--border-subtle)}.th-btn--danger{background:var(--danger-soft);border-color:#dc262659;color:var(--danger)}.th-field label{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.th-input,.th-select,.th-textarea{width:100%;border:1px solid var(--border-subtle);background:var(--input-bg);color:var(--text-primary);border-radius:var(--radius-sm);padding:9px 12px;font-size:var(--text-sm);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.th-input:focus,.th-select:focus,.th-textarea:focus{outline:none;border-color:rgba(var(--primary-rgb),.55);box-shadow:var(--shadow-focus)}.th-panel{background:var(--glass-panel-bg);border:1px solid var(--glass-panel-border);border-radius:var(--radius-lg);box-shadow:var(--glass-panel-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.th-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.th-page-header h1,.th-page-header h2{margin:0;font-size:var(--text-2xl);font-weight:var(--weight-extrabold);letter-spacing:var(--tracking-tight);line-height:1.15;color:var(--text-heading, var(--text-primary))}h1,h2,h3,.panelHeader h2,.drawerTitle,.canvasGuidanceTitle{color:var(--text-heading, var(--text-primary))}.th-page-header .th-page-subtitle{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);max-width:52ch}.th-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--topbar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm);min-height:56px}html.theme-blue .th-topbar,html.theme-dark .th-topbar{border-bottom-color:rgba(var(--primary-rgb),.22)}.th-theme-toggle{display:inline-flex;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:2px;background:var(--chrome-surface, var(--bg-inset));gap:2px}.th-theme-toggle button{border:none;background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:6px 10px;border-radius:var(--radius-pill);cursor:pointer}.th-theme-toggle button[aria-pressed=true]{background:var(--primary-soft-strong);color:var(--text-primary);box-shadow:var(--shadow-sm)}html.theme-blue .th-theme-toggle button[aria-pressed=true],html.theme-dark .th-theme-toggle button[aria-pressed=true]{background:rgba(var(--primary-rgb),.38);color:var(--text-primary)}.th-empty-state{text-align:center;padding:var(--space-10) var(--space-6);border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-inset)}.th-empty-state h3{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-bold)}.th-empty-state p{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid var(--border-subtle);background:var(--primary-soft);color:var(--text-primary);border-radius:var(--radius-pill);padding:8px 14px;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);white-space:nowrap}.btn:hover:not(:disabled){background:var(--primary-soft-strong);transform:translateY(-1px)}.btn.primary,.btn.primary.btnCreateWithAi{background:linear-gradient(180deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;border-color:rgba(var(--primary-rgb),.5);box-shadow:0 4px 16px rgba(var(--primary-rgb),.38);font-weight:var(--weight-bold)}.btn.primary:hover:not(:disabled){filter:brightness(1.05)}html.role-customer-success.theme-white,html.role-customer-success.theme-light{--accent1: 167, 139, 250;--accent2: 251, 113, 133;--accent3: 45, 212, 191;--accent4: 251, 191, 36;--panelTint: rgba(167, 139, 250, .055)}html.role-customer.theme-white,html.role-customer.theme-light{--accent1: 52, 211, 153;--accent2: 56, 189, 248;--accent3: 250, 204, 21;--accent4: 251, 113, 133;--panelTint: rgba(52, 211, 153, .05)}html.role-customer-success.theme-blue,html.role-customer-success.theme-dark{--accent1: 167, 139, 250;--accent2: 251, 113, 133;--accent3: 45, 212, 191;--accent4: 251, 191, 36}html.role-customer.theme-blue,html.role-customer.theme-dark{--accent1: 52, 211, 153;--accent2: 56, 189, 248;--accent3: 250, 204, 21;--accent4: 251, 113, 133}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-sans, var(--font));color:var(--text-primary)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.appShell{height:100%;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:14px;display:flex;flex-direction:column;gap:12px;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.sidebarHeader{display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--radius-lg);background:var(--sidebar-header-bg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.sidebarHeader:hover{transform:translateY(-1px);border-color:rgba(var(--primary-rgb),.28);box-shadow:var(--shadow-lg)}.brandLogo{display:block;width:220px;max-width:100%;height:auto;min-width:0;flex:0 1 auto}.logoMark{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#22c55ee6);box-shadow:0 10px 24px #3b82f633}.logoImg{display:block;border-radius:12px;background:var(--panel);box-shadow:var(--shadow)}.sidebarHeaderTitle{display:flex;flex-direction:column;min-width:0}.sidebarHeaderTitle .title{font-weight:800;letter-spacing:-.02em;line-height:1.1}.sidebarHeaderTitle .sub{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{display:flex;flex-direction:column;gap:6px}.navItem{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;border:1px solid transparent;color:var(--navText);font-size:13px;font-weight:500;line-height:1.25}.navItem:hover{background:var(--navHoverBg);border-color:var(--border)}.navItem.active{background:var(--nav-active-bg);border-color:var(--nav-active-border);color:var(--text-primary);font-weight:600;box-shadow:inset var(--highlight-width, 3px) 0 0 var(--highlight, var(--primary))}.navIcon{width:22px;height:22px;display:grid;place-items:center;border-radius:10px;background:var(--pillBg);border:1px solid var(--pillBorder)}.navText{font-size:inherit;font-weight:inherit}.sidebarFooter{margin-top:auto;padding:10px;border-radius:var(--radius);border:1px solid var(--border);background:var(--chrome-surface, var(--topbarBg));display:flex;flex-direction:column;gap:8px}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid var(--border);background:var(--pillBg);color:var(--pillText)}.main{min-width:0;padding:14px 16px 22px;display:flex;flex-direction:column;gap:14px}.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-lg);background:var(--topbar-bg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md)}.topbarLeft{display:flex;align-items:center;gap:10px;min-width:0}.topbarCenter{flex:1 1 auto;min-width:0;max-width:100%;text-align:center;font-size:clamp(9px,1.15vw,12px);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);line-height:1.25;white-space:normal;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;padding:0 6px}html.theme-blue .topbarCenter:not(.topbarCenter--spacer),html.theme-dark .topbarCenter:not(.topbarCenter--spacer){color:var(--text-secondary)}html.theme-white .topbarCenter.controlPlaneAdmin,html.theme-light .topbarCenter.controlPlaneAdmin{color:var(--text-heading, #9a3412)}.topbarRight{display:inline-flex;align-items:center;gap:10px}.workspaceSelect{display:flex;align-items:center;gap:8px}select,input,textarea{padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--inputBg);color:var(--text);min-width:0}select:focus,input:focus,textarea:focus,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:none;border-color:var(--highlight-border, rgba(var(--brandRgb), .55));box-shadow:var(--highlight-ring, 0 0 0 3px rgba(var(--brandRgb), .28))}textarea{min-height:120px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.btn{padding:8px 12px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-inset);color:var(--text-primary);cursor:pointer;font-weight:700;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease,filter .14s ease}html.theme-blue .btn:not(.primary):not(.danger):not(.logoutBtn),html.theme-dark .btn:not(.primary):not(.danger):not(.logoutBtn){background:#bfdbfe24;border-color:#bfdbfe4d}html.theme-blue .btn.primary,html.theme-dark .btn.primary{background:linear-gradient(180deg,#7eb8ff,#60a5fa);color:#0f172a;border-color:#93c5fd73;box-shadow:0 2px 10px #60a5fa38}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn.sm{padding:5px 8px;font-size:12px;font-weight:800}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.primary{background:linear-gradient(180deg,var(--primary) 0%,var(--primary-hover) 100%);border-color:rgba(var(--primary-rgb),.32);color:#fff;box-shadow:0 6px 18px rgba(var(--primary-rgb),.18)}.btn.primary:hover:not(:disabled){filter:brightness(.98)}.btn.danger{background:#ef444414;border-color:#ef444440;color:#7f1d1deb}.btn.danger:hover:not(:disabled){background:#ef444424;border-color:#ef444452}.logoutBtn{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:8px;border-color:#64748b47;background:var(--bg-inset);color:var(--text-muted);box-shadow:none}.logoutBtn:hover:not(:disabled){border-color:#ef444459;background:#ef444414;color:#b91c1c;box-shadow:0 4px 14px #ef44441f}.logoutBtnIcon{display:block}html.theme-blue .logoutBtn,html.theme-dark .logoutBtn{background:#bfdbfe1f;color:var(--text-secondary);border-color:#bfdbfe47}html.theme-blue .logoutBtn:hover:not(:disabled),html.theme-dark .logoutBtn:hover:not(:disabled){color:#fecaca;background:#ef44442e}.btn:disabled{opacity:.55;cursor:not-allowed}.tabs{display:inline-flex;gap:6px;padding:4px;border-radius:999px;border:1px solid var(--border);background:var(--chrome-surface, var(--topbarBg))}.tab{padding:8px 12px;border-radius:999px;border:1px solid transparent;background:transparent;cursor:pointer;font-weight:800;font-size:12px;color:var(--navText)}.tab:hover{background:var(--navHoverBg)}.tab.active{background:var(--navActiveBg);border-color:var(--navActiveBorder);color:var(--navText);box-shadow:inset var(--highlight-width, 2px) 0 0 var(--highlight)}.codeBlock{margin:0;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--chrome-surface, var(--topbarBg));font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:var(--text)}.contentPanel{background:var(--glass-panel-bg);border:1px solid var(--glass-panel-border);border-radius:var(--radius-lg);box-shadow:var(--glass-panel-shadow);padding:var(--space-5, 20px);min-width:0}.panelHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panelHeader h2{margin:0;font-size:15px;letter-spacing:-.01em}.muted{color:var(--muted)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.fieldLabelRow{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.field label{font-size:12px;font-weight:800;color:var(--muted)}.fieldHelp{font-size:12px;color:var(--muted);line-height:1.35}.fieldError{font-size:12px;color:#ef4444eb;line-height:1.35}.row{display:flex;align-items:center;gap:10px}.stack{display:flex;flex-direction:column;gap:10px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kpiGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.kpiTile{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.kpiTile:hover{transform:translateY(-1px);border-color:rgba(var(--brandRgb),.22);box-shadow:0 18px 52px #64748b24}.kpiLabel{font-size:12px;font-weight:800;color:var(--muted);letter-spacing:.02em;text-transform:uppercase}.kpiValue{font-size:28px;font-weight:900;letter-spacing:-.03em}.kpiTotal .kpiValue{color:rgba(var(--brandRgb),.95)}.kpiOk .kpiValue{color:#16a34af2}.kpiBad .kpiValue{color:#dc2626f2}.kpiTotal{border-color:rgba(var(--brandRgb),.22);background:linear-gradient(180deg,rgba(var(--brandRgb),.06),var(--kpiBottom))}.kpiOk{border-color:#22c55e38;background:linear-gradient(180deg,rgba(34,197,94,.05),var(--kpiBottom))}.kpiBad{border-color:#ef444438;background:linear-gradient(180deg,rgba(239,68,68,.05),var(--kpiBottom))}.donutWrap{display:flex;align-items:center;justify-content:space-between;gap:14px}.donut{width:120px;height:120px;border-radius:999px;background:conic-gradient(var(--success) 0deg,var(--success) var(--donutOk),var(--danger) var(--donutOk),var(--danger) 360deg);position:relative;flex:0 0 auto}.donut:after{content:"";position:absolute;inset:16px;border-radius:999px;background:var(--panel);border:1px solid var(--border)}.donutLegend{display:grid;gap:8px;min-width:0}.legendRow{display:flex;align-items:center;gap:8px;min-width:0}.legendSwatch{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.legendText{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card{border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(180deg,var(--panelTint),var(--panel));padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.card:hover{transform:translateY(-1px);border-color:rgba(var(--brandRgb),.22);box-shadow:0 18px 52px #64748b24}.cardTitle{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.cardTitle strong{font-size:14px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;border:1px solid var(--border);background:var(--pillBg);color:var(--pillText)}.badge.ok{border-color:#22c55e47;background:#22c55e1a}.badge.info{border-color:var(--statusInfoBorder);background:var(--statusInfoBg);color:var(--statusInfoText)}.badge.small{font-size:10px;padding:2px 7px;letter-spacing:.02em;text-transform:uppercase}.badge.bad{border-color:#ef444447;background:#ef44441a}.code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:var(--radiusSm);border:1px solid var(--border)}.tableWrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radiusSm)}.tableWrap .table{min-width:680px}html.theme-light .table{background:linear-gradient(180deg,var(--panelTint),var(--panel))}.table th,.table td{padding:10px;border-bottom:1px solid var(--tableRowBorder);text-align:left;font-size:13px;vertical-align:top}.table th{font-size:12px;color:var(--muted);background:var(--tableHeaderBg)}.table tr:hover td{background:var(--tableRowHoverBg)}.errorBox{border-radius:var(--radius);border:1px solid rgba(239,68,68,.25);background:#ef444414;padding:12px}.sidebarToggle{display:none}.loginShell{min-height:100vh;display:grid;place-items:center;padding:20px}.loginCard{width:min(520px,100%);border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);padding:22px;position:relative;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.loginCard:hover{transform:translateY(-1px);border-color:rgba(var(--brandRgb),.22);box-shadow:0 18px 50px #64748b29}.loginCardLarge{padding:48px;border-radius:24px}.loginLogoWrap{display:flex;justify-content:center;margin-bottom:28px}.loginLogoFrame{background:#ffffffeb;border-radius:18px;padding:14px 16px;border:1px solid rgba(148,163,184,.18);box-shadow:0 18px 50px #02061759}.theme-dark .loginLogoFrame{background:#0f172a73;border-color:#94a3b838;box-shadow:0 18px 50px #00000059}.loginLogoWide{display:block;width:min(460px,100%);height:auto}.loginWelcome{margin:0 0 14px;text-align:center;font-size:1.05rem;font-weight:300;color:var(--muted)}.loginPrimaryBtn{padding:10px 12px;font-weight:950;font-size:.98rem;border-radius:999px;box-shadow:0 10px 20px rgba(var(--brandRgb),.18)}.loginHint{margin-top:24px;text-align:center;font-size:12px;color:var(--muted);line-height:1.7}.theme-dark .loginShell{background:linear-gradient(135deg,#111c33,#1f2a44 55%,#111c33)}.theme-dark .loginCard{background:linear-gradient(145deg,#1e293b,#0f172a);border-color:#94a3b838}.loginCard input{background:var(--inputBg)}.theme-dark .loginCard input{background:#0b1220;border-color:#94a3b838}.loginCard .btn.primary{color:#fff;font-weight:900}html.theme-blue .loginCard .btn.primary,html.theme-dark .loginCard .btn.primary{background:linear-gradient(135deg,var(--login-cta, #ea580c) 0%,#f97316 100%);border-color:rgba(var(--login-cta-rgb, 234, 88, 12),.55);box-shadow:0 12px 28px rgba(var(--login-cta-rgb, 234, 88, 12),.35)}html.theme-blue .loginCard .btn.primary:hover,html.theme-dark .loginCard .btn.primary:hover{background:linear-gradient(135deg,var(--login-cta-hover, #c2410c) 0%,#ea580c 100%)}.loginThemeToggle{position:absolute;top:14px;right:14px}.loadingShell{min-height:100vh;display:grid;place-items:center;padding:20px}.loadingCard{width:min(460px,100%);border-radius:22px;border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);padding:26px;text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center}.loadingLogoFrame{display:block;background:#ffffffeb;border-radius:18px;padding:14px 16px;border:1px solid rgba(148,163,184,.18);box-shadow:0 18px 50px #02061740}.theme-dark .loadingLogoFrame{background:#0f172a73;border-color:#94a3b838;box-shadow:0 18px 50px #0000004d}.loadingLogoWide{display:block;width:min(460px,100%);height:auto}.iconBtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:7px 10px;border-radius:999px;border:1px solid var(--border);background:var(--chrome-surface, var(--topbarBg));color:var(--text);cursor:pointer;font-weight:800}.iconBtn:hover{filter:brightness(.98)}.modalOverlay{position:fixed;inset:0;background:#64748b6b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;place-items:center;padding:18px;z-index:1000}html.theme-blue .modalOverlay,html.theme-dark .modalOverlay{background:#2a528085}.modalCard{width:min(720px,100%);border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);padding:14px;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 36px);overflow:auto;overscroll-behavior:contain}html.theme-light .modalCard{background:linear-gradient(180deg,var(--panelTint),var(--panel))}.glass-panel{border-radius:var(--radius);border:1px solid var(--glassPanelBorder);background:var(--glassPanelBg);box-shadow:var(--glassPanelShadow);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass-panel{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--glassPanelBgFallback)}}.glass-panel--dark{--glassPanelBg: var(--glass-panel-bg, rgba(56, 100, 152, .9));--glassPanelBgFallback: var(--glass-panel-bg-fallback, rgba(52, 96, 148, .9));--glassPanelBorder: var(--glass-panel-border, rgba(148, 163, 184, .28));--glassPanelShadow: var(--glass-panel-shadow, 0 18px 60px rgba(30, 58, 95, .28))}.glass-panel--light{--glassPanelBg: rgba(255, 255, 255, .85);--glassPanelBgFallback: rgba(255, 255, 255, .95);--glassPanelBorder: rgba(148, 163, 184, .25);--glassPanelShadow: 0 18px 60px rgba(100, 116, 139, .14)}.collapsed .navText,.collapsed .sidebarHeaderTitle,.collapsed .sidebarFooter .pillText{display:none}.collapsed{grid-template-columns:76px 1fr}.collapsed .sidebar{padding:14px 10px}@media(max-width:980px){.cards,.grid2{grid-template-columns:1fr}.kpiGrid{grid-template-columns:1fr 1fr}}@media(max-width:860px){.sidebarToggle{display:inline-flex}.appShell{grid-template-columns:76px 1fr}.navText,.sidebarHeaderTitle,.sidebarFooter .pillText{display:none}.sidebar{padding:14px 10px}}
