@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,300;0,6..12,400;0,6..12,500;0,6..12,600;0,6..12,700;0,6..12,800;1,6..12,400&family=JetBrains+Mono:wght@400;500&display=swap");:root{color-scheme:light;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-sans:"Nunito Sans","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:11px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:30px;--text-5xl:36px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--leading-tight:1.2;--leading-normal:1.5;--leading-relaxed:1.7;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 12px rgba(0,0,0,0.08);--shadow-lg:0 8px 24px rgba(0,0,0,0.12);--shadow-card:0 1px 3px rgba(0,0,0,0.06),0 0 0 1px rgba(0,0,0,0.04);--transition-fast:120ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--bg-page:#f5f7fa;--bg-sidebar:#1b1e2e;--bg-surface:#ffffff;--bg-card:#ffffff;--bg-card-hover:#f8fafc;--bg-elevated:#f1f5f9;--bg-input:#ffffff;--bg-overlay:rgba(0,0,0,0.5);--bg-tooltip:#1e293b;--border-default:#e2e8f0;--border-subtle:#f1f5f9;--border-strong:#cbd5e1;--border-focus:#06b6d4;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-disabled:#cbd5e1;--text-inverse:#ffffff;--text-link:#0284c7;--primary:#632ca6;--primary-light:#7c3aed;--primary-dark:#5521a0;--primary-faded:rgba(99,44,166,0.08);--primary-text:#632ca6;--accent:#6366f1;--accent-light:#818cf8;--accent-dark:#4f46e5;--accent-faded:rgba(99,102,241,0.08);--success:#16a34a;--success-light:#22c55e;--success-dark:#15803d;--success-faded:rgba(22,163,74,0.08);--success-bg:#f0fdf4;--success-text:#15803d;--warning:#d97706;--warning-light:#f59e0b;--warning-dark:#b45309;--warning-faded:rgba(217,119,6,0.08);--warning-bg:#fffbeb;--warning-text:#92400e;--error:#dc2626;--error-light:#ef4444;--error-dark:#b91c1c;--error-faded:rgba(220,38,38,0.06);--error-bg:#fef2f2;--error-text:#991b1b;--severity-critical-bg:#fef2f2;--severity-critical-border:#fca5a5;--severity-critical-text:#dc2626;--severity-critical-dot:#ef4444;--severity-high-bg:#fff7ed;--severity-high-border:#fdba74;--severity-high-text:#c2410c;--severity-high-dot:#f97316;--severity-medium-bg:#fefce8;--severity-medium-border:#fde047;--severity-medium-text:#a16207;--severity-medium-dot:#eab308;--severity-low-bg:#eff6ff;--severity-low-border:#93c5fd;--severity-low-text:#1d4ed8;--severity-low-dot:#3b82f6;--severity-info-bg:#f8fafc;--severity-info-border:#e2e8f0;--severity-info-text:#64748b;--severity-info-dot:#94a3b8;--status-running-bg:rgba(217,119,6,0.08);--status-running-text:#b45309;--status-running-dot:#f59e0b;--status-completed-bg:rgba(22,163,74,0.08);--status-completed-text:#15803d;--status-completed-dot:#22c55e;--status-failed-bg:rgba(220,38,38,0.06);--status-failed-text:#991b1b;--status-failed-dot:#ef4444;--status-partial-bg:rgba(249,115,22,0.08);--status-partial-text:#c2410c;--status-partial-dot:#f97316;--status-pending-bg:rgba(99,102,241,0.08);--status-pending-text:#4338ca;--status-pending-dot:#6366f1;--sidebar-width:260px;--sidebar-collapsed-width:68px;--header-height:56px;--content-max-width:1440px;--card-bg:var(--bg-card);--border-color:var(--border-default);--fg:var(--text-primary);--muted:var(--text-muted);--mono:var(--font-mono)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--text-primary);background:var(--bg-page)}.platform-root{display:flex;min-height:100vh}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--bg-sidebar);border-right:none;display:flex;flex-direction:column;z-index:40;overflow:hidden;transition:width var(--transition-slow);color:#e2e8f0}.sidebar-header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar-brand{gap:var(--space-3);text-decoration:none;color:#f1f5f9}.sidebar-brand,.sidebar-logo{display:flex;align-items:center}.sidebar-logo{width:32px;height:32px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--primary),var(--accent));justify-content:center;font-weight:var(--weight-bold);font-size:var(--text-sm);color:#fff;flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column;overflow:hidden}.sidebar-brand-name{font-size:var(--text-md);font-weight:var(--weight-bold);color:#f1f5f9;line-height:var(--leading-tight);white-space:nowrap}.sidebar-brand-sub{font-size:var(--text-xs);color:#94a3b8;white-space:nowrap}.sidebar-nav{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:var(--space-3) var(--space-3);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:var(--radius-full)}.sidebar-section{margin-bottom:var(--space-2)}.sidebar-section-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:#64748b;text-transform:uppercase;letter-spacing:.06em;padding:var(--space-3) var(--space-3) var(--space-1)}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:#94a3b8;text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-medium);transition:all var(--transition-fast);position:relative;white-space:nowrap}.sidebar-link:hover{color:#f1f5f9;background:rgba(255,255,255,.06)}.sidebar-link.active{color:#c4b5fd;background:rgba(124,58,237,.15)}.sidebar-link.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--primary)}.sidebar-link-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;opacity:.7}.sidebar-link.active .sidebar-link-icon{opacity:1}.sidebar-module-toggle{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:#94a3b8;font-size:var(--text-sm);font-weight:var(--weight-medium);background:none;border:none;cursor:pointer;width:100%;text-align:left;transition:all var(--transition-fast);font-family:var(--font-sans)}.sidebar-module-toggle:hover{color:#f1f5f9;background:rgba(255,255,255,.06)}.sidebar-module-toggle .toggle-chevron{margin-left:auto;font-size:10px;opacity:.5;transition:transform var(--transition-base)}.sidebar-module-toggle[aria-expanded=true] .toggle-chevron{transform:rotate(90deg)}.sidebar-submenu{padding-left:var(--space-6);overflow:hidden}.sidebar-submenu .sidebar-link{font-size:var(--text-sm);padding:6px var(--space-3)}.sidebar-footer{padding:var(--space-3) var(--space-4);border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar-env-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:#94a3b8;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:rgba(255,255,255,.05)}.sidebar-env-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--success)}.main-wrapper{margin-left:var(--sidebar-width);flex:1 1;min-height:100vh;display:flex;flex-direction:column;transition:margin-left var(--transition-slow)}.page-header-bar{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);padding:0 var(--space-6)}.page-header-inner{max-width:var(--content-max-width);margin:0 auto;justify-content:space-between;height:var(--header-height)}.breadcrumb,.page-header-inner{display:flex;align-items:center}.breadcrumb{gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.breadcrumb a{color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--text-primary)}.breadcrumb-separator{font-size:var(--text-xs);opacity:.4}.breadcrumb-current{color:var(--text-secondary);font-weight:var(--weight-medium)}.page-header-actions{display:flex;align-items:center;gap:var(--space-3)}.page-content{flex:1 1;padding:var(--space-6)}.page-container{max-width:var(--content-max-width);margin:0 auto}.page-title-block{margin-bottom:var(--space-6)}.page-title{font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--text-primary);line-height:var(--leading-tight);margin:0 0 var(--space-1)}.page-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:var(--leading-relaxed)}.scc-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.scc-card:hover{border-color:var(--border-strong)}.scc-card-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.scc-card-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0;line-height:var(--leading-tight)}.scc-card-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin:var(--space-1) 0 0}.scc-card-body{padding:var(--space-5)}.scc-card-body.compact{padding:var(--space-4)}.scc-card-body.flush{padding:0}.scc-card-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.stat-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);transition:border-color var(--transition-fast)}.stat-card:hover{border-color:var(--border-strong)}.stat-card-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.stat-card-value{font-size:var(--text-4xl);font-weight:var(--weight-extrabold);color:var(--text-primary);line-height:1}.stat-card-footer{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.stat-card.stat-critical{border-left:3px solid var(--severity-critical-dot)}.stat-card.stat-high{border-left:3px solid var(--severity-high-dot)}.stat-card.stat-medium{border-left:3px solid var(--severity-medium-dot)}.stat-card.stat-low{border-left:3px solid var(--severity-low-dot)}.stat-card.stat-info{border-left:3px solid var(--severity-info-dot)}.stat-card.stat-primary{border-left:3px solid var(--primary)}.stat-card.stat-success{border-left:3px solid var(--success)}.stat-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.stat-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.scc-table-wrapper{overflow-x:auto;border-radius:var(--radius-lg)}.scc-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.scc-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:2}.scc-table th{background:var(--bg-elevated);padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--weight-semibold);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border-default);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.scc-table th.sortable{cursor:pointer}.scc-table th.sortable:hover{color:var(--text-primary)}.scc-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);vertical-align:middle}.scc-table tbody tr{transition:background-color var(--transition-fast)}.scc-table tbody tr:hover{background:rgba(0,0,0,.02)}.scc-table tbody tr:last-child td{border-bottom:none}.scc-table td.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.scc-table td.text-primary{color:var(--text-primary);font-weight:var(--weight-medium)}.scc-table-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-default);display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);color:var(--text-muted)}.scc-table-empty{padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-muted)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.02em;line-height:1.6;white-space:nowrap}.severity-critical{background:var(--severity-critical-bg);color:var(--severity-critical-text)}.severity-high{background:var(--severity-high-bg);color:var(--severity-high-text)}.severity-medium{background:var(--severity-medium-bg);color:var(--severity-medium-text)}.severity-low{background:var(--severity-low-bg);color:var(--severity-low-text)}.severity-info{background:var(--severity-info-bg);color:var(--severity-info-text)}.status-running{background:var(--status-running-bg);color:var(--status-running-text)}.status-completed,.status-pass{background:var(--status-completed-bg);color:var(--status-completed-text)}.status-fail,.status-failed{background:var(--status-failed-bg);color:var(--status-failed-text)}.status-partial{background:var(--status-partial-bg);color:var(--status-partial-text)}.status-idle,.status-not-run,.status-not_run,.status-pending,.status-pending-validation,.status-queued{background:var(--status-pending-bg);color:var(--status-pending-text)}.type-posture{background:#f1f5f9;color:#475569}.type-exposure{background:#eff6ff;color:#1d4ed8}.type-signal{background:var(--severity-low-bg);color:var(--severity-low-text)}.type-likely-vulnerability{background:var(--severity-high-bg);color:var(--severity-high-text)}.type-confirmed-vulnerability{background:var(--severity-critical-bg);color:var(--severity-critical-text)}.type-informational{background:var(--severity-info-bg);color:var(--severity-info-text)}.verification-confirmed{background:var(--success-bg);color:var(--success-text)}.verification-likely{background:var(--severity-high-bg);color:var(--severity-high-text)}.verification-suspected{background:var(--severity-medium-bg);color:var(--severity-medium-text)}.verification-signal{background:var(--severity-low-bg);color:var(--severity-low-text)}.status-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.status-dot-critical{background:var(--severity-critical-dot)}.status-dot-high{background:var(--severity-high-dot)}.status-dot-medium{background:var(--severity-medium-dot)}.status-dot-low{background:var(--severity-low-dot)}.status-dot-info{background:var(--severity-info-dot)}.status-dot-running{background:var(--status-running-dot);animation:pulse 2s infinite}.status-dot-completed{background:var(--status-completed-dot)}.status-dot-failed{background:var(--status-failed-dot)}.status-dot-pending{background:var(--status-pending-dot)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);border:1px solid var(--border-strong);color:var(--text-secondary)}.chip-accent{border-color:var(--accent);color:var(--accent-light)}.chip-soft{border-color:var(--border-default);color:var(--text-muted)}.chip-primary{border-color:var(--primary-dark);color:var(--primary-light);background:var(--primary-faded)}.chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.scc-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border-default);padding:0}.scc-tab{padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-muted);background:none;border:none;cursor:pointer;position:relative;transition:color var(--transition-fast);white-space:nowrap}.scc-tab:hover{color:var(--text-primary)}.scc-tab.active{color:var(--primary-light)}.scc-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1.5;cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){background:var(--primary-light)}.btn-success{background:var(--success);color:var(--text-inverse)}.btn-success:hover:not(:disabled){background:var(--success-light)}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--border-default)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border-default)}.btn-ghost:hover:not(:disabled){background:rgba(0,0,0,.04);color:var(--text-primary)}.btn-danger{background:var(--error-faded);color:var(--error-text);border-color:var(--error-dark)}.btn-danger:hover:not(:disabled){background:var(--error);color:#fff}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-md)}.primary-btn{composes:btn btn-success;background:var(--success);color:var(--text-inverse);font-weight:var(--weight-bold);border-radius:var(--radius-md);padding:10px 16px;border:1px solid transparent;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm)}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:10px 16px;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm)}.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.ghost-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:10px 16px;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm)}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--primary-faded)}input::placeholder,textarea::placeholder{color:var(--text-disabled)}label{display:grid;grid-gap:var(--space-1);gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);margin-bottom:var(--space-3)}.muted,small{color:var(--text-muted)}.form-group{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-4)}.form-group h3{margin-top:0;margin-bottom:var(--space-3);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.scan-form-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{grid-column:1/-1;display:flex;gap:var(--space-3)}.progress-bar{height:8px;border-radius:var(--radius-full);background:var(--bg-elevated);overflow:hidden;border:1px solid var(--border-default)}.progress-bar-fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--primary),var(--primary-light));transition:width var(--transition-slow)}.progress-bar-fill.success{background:linear-gradient(90deg,var(--success),var(--success-light))}.progress-bar-fill.warning{background:linear-gradient(90deg,var(--warning),var(--warning-light))}.progress-bar-fill.error{background:linear-gradient(90deg,var(--error),var(--error-light))}.progress-track{height:10px;border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-default);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--success),var(--success-dark));transition:width .35s ease}.progress-wrap{grid-column:1/-1;display:grid;grid-gap:6px;gap:6px}.progress-meta{display:flex;justify-content:space-between;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-xs)}.trend{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.trend-up{color:var(--error-light)}.trend-down{color:var(--success-light)}.trend-flat{color:var(--text-muted)}.state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);text-align:center;gap:var(--space-4)}.state-icon{font-size:48px;opacity:.3}.state-title{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary)}.state-message{font-size:var(--text-sm);color:var(--text-muted);max-width:400px}.empty-state{border:1px dashed var(--border-strong);background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--text-muted);text-align:center}.loading-spinner{width:24px;height:24px;border:3px solid var(--border-default);border-top-color:var(--primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.filter-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-wrap:wrap}.filter-bar input,.filter-bar select{max-width:200px;padding:6px var(--space-3);font-size:var(--text-sm)}.filter-bar .filter-count{margin-left:auto;font-size:var(--text-sm);color:var(--text-muted)}.checkbox-label{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer}.modal-overlay{position:fixed;inset:0;background:var(--bg-overlay);z-index:100;display:flex;align-items:center;justify-content:center;animation:fadeIn var(--transition-base) ease}.modal-content{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 0 24px rgba(0,0,0,.4);width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp var(--transition-base) ease}.modal-header{padding:var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--text-2xl);font-weight:var(--weight-semibold)}.modal-close{background:none;border:none;color:var(--text-muted);font-size:var(--text-2xl);cursor:pointer;padding:var(--space-1);line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1 1}.modal-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.drawer-overlay{position:fixed;inset:0;background:var(--bg-overlay);z-index:100;animation:fadeIn var(--transition-base) ease}.drawer-content{position:fixed;top:0;right:0;bottom:0;width:560px;max-width:90vw;background:var(--bg-card);border-left:1px solid var(--border-default);box-shadow:-8px 0 24px rgba(0,0,0,.3);display:flex;flex-direction:column;z-index:101;animation:slideLeft var(--transition-base) ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{transform:translateX(100%)}to{transform:translateX(0)}}.content-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.content-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.section-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-card)}.section-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.section-header h2{font-size:var(--text-xl);font-weight:var(--weight-semibold)}.section-header p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.section-content{padding:var(--space-5)}.section-actions{display:flex;align-items:center;gap:var(--space-2)}.app-shell{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.page-header h1{font-size:var(--text-3xl);font-weight:var(--weight-bold);margin:0}.page-header p{color:var(--text-secondary);margin-top:var(--space-2);font-size:var(--text-base)}.summary-row{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr))}.summary-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--bg-surface)}.summary-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.03em}.summary-value{font-size:var(--text-4xl);font-weight:var(--weight-extrabold);color:var(--text-primary)}.tone-critical{border-color:var(--severity-critical-border)}.tone-high{border-color:var(--severity-high-border)}.tone-medium{border-color:var(--severity-medium-border)}.tone-low{border-color:var(--severity-low-border)}.executive-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.executive-dashboard{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.executive-card,.executive-stacked,.risk-hero{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:var(--space-4)}.risk-title{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--weight-semibold)}.risk-score{font-size:var(--text-5xl);font-weight:var(--weight-extrabold);margin:var(--space-2) 0}.risk-band-label{font-weight:var(--weight-bold);margin-bottom:var(--space-2)}.risk-band-low .risk-band-label,.risk-band-low .risk-score{color:#34d399}.risk-band-moderate .risk-band-label,.risk-band-moderate .risk-score{color:#facc15}.risk-band-elevated .risk-band-label,.risk-band-elevated .risk-score{color:#fb923c}.risk-band-critical .risk-band-label,.risk-band-critical .risk-score{color:#f87171}.risk-meter{width:100%;height:8px;border-radius:var(--radius-full);background:var(--bg-elevated);overflow:hidden;border:1px solid var(--border-default);margin-bottom:var(--space-2)}.risk-meter-fill{height:100%;background:linear-gradient(90deg,#34d399,#facc15 40%,#fb923c 70%,#ef4444)}.risk-meta{display:flex;flex-wrap:wrap;gap:6px}.overview-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.overview-widget{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:var(--space-3)}.segmented-bar{display:flex;border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--border-strong);margin:var(--space-2) 0;height:8px}.segmented-slice{background:var(--accent);border-right:1px solid var(--bg-page)}.segmented-slice:nth-child(2n){background:#2563eb}.segmented-slice:nth-child(3n){background:var(--primary)}.segmented-slice:nth-child(4n){background:#7c3aed}.asset-risk-list,.narrative-list,.top-risks-list{margin:0;padding-left:18px}.top-risk-link{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:var(--space-2);gap:var(--space-2);align-items:center;text-decoration:none;color:var(--text-primary)}.top-risk-link:hover{text-decoration:underline}.asset-risk-list li{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:6px}.executive-text-block{margin-top:var(--space-3);border-top:1px solid var(--border-default);padding-top:var(--space-2)}.subtle-card{border-color:var(--border-strong);background:var(--bg-page)}.inline-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.grid-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.grid-table td,.grid-table th{border-bottom:1px solid var(--border-default);text-align:left;padding:var(--space-2) var(--space-3);vertical-align:top}.grid-table th{font-weight:var(--weight-semibold);color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.finding-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:var(--space-4);margin-bottom:var(--space-3);transition:border-color var(--transition-fast)}.finding-card:hover{border-color:var(--border-strong)}.finding-card header{display:flex;justify-content:space-between;gap:var(--space-3)}.finding-card h4{margin:0 0 6px}.finding-details{margin-top:var(--space-3);border-top:1px solid var(--border-default);padding-top:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.detail-block{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-page);padding:var(--space-3)}.detail-block h5{margin:0 0 var(--space-2)}.detail-block h6{margin:0 0 var(--space-1);font-size:var(--text-xs);color:var(--text-secondary)}.meta-grid{margin-top:var(--space-2);display:grid;grid-gap:var(--space-2);gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.findings-count{margin-bottom:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.run-status{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.status-label{color:var(--text-muted);font-size:var(--text-xs);margin-bottom:var(--space-1);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.03em}.error-text{color:var(--error-text)}.report-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.report-tab{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);text-align:left;padding:var(--space-3);display:grid;grid-gap:var(--space-1);gap:var(--space-1);cursor:pointer;transition:border-color var(--transition-fast);font-family:var(--font-sans)}.report-tab small{color:var(--text-muted)}.report-tab.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary) inset}.anchor-nav{display:flex;flex-wrap:wrap;gap:var(--space-2)}.anchor-link{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-full);padding:5px 12px;color:var(--text-secondary);text-decoration:none;font-size:var(--text-xs);font-weight:var(--weight-medium);transition:all var(--transition-fast)}.anchor-link:hover{border-color:var(--primary);color:var(--primary-light)}.remediation-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.manual-card,.remediation-column{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:var(--space-3)}.manual-validation-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.manual-finding-list li{margin-bottom:var(--space-3)}.asset-group h3{margin:6px 0}.json-panel{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:var(--space-3)}.json-header{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.json-content{margin:0;max-height:420px;overflow:auto;background:var(--bg-page);border-radius:var(--radius-md);border:1px solid var(--border-default);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm)}.attack-surface-panel{display:flex;flex-direction:column;gap:var(--space-5)}.as-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}.as-section-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.04em}.as-empty{color:var(--text-muted);font-size:var(--text-sm);font-style:italic;margin:0}.as-chip-row{display:flex;flex-wrap:wrap;gap:6px}.as-table-wrap{overflow-x:auto}.as-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.as-table th{text-align:left;padding:6px 10px;border-bottom:2px solid var(--border-default);color:var(--text-muted);font-weight:var(--weight-semibold);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.03em;white-space:nowrap}.as-table td{padding:5px 10px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.as-table td.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.as-table tbody tr:hover{background:rgba(0,0,0,.02)}.as-dns-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:var(--space-4);gap:var(--space-4)}@media (max-width:1100px){.sidebar{width:var(--sidebar-collapsed-width)}.sidebar .sidebar-brand-text,.sidebar .sidebar-env-badge span,.sidebar .sidebar-link span,.sidebar .sidebar-module-toggle span,.sidebar .sidebar-section-label,.sidebar .toggle-chevron{display:none}.sidebar .sidebar-link{justify-content:center;padding:var(--space-2)}.sidebar .sidebar-submenu{padding-left:0}.sidebar .sidebar-submenu .sidebar-link{justify-content:center}.main-wrapper{margin-left:var(--sidebar-collapsed-width)}.manual-validation-grid,.remediation-grid,.report-tabs,.run-status,.summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid-2,.executive-grid,.overview-grid,.scan-form-grid{grid-template-columns:1fr}.stat-grid-4,.stat-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.sidebar{position:fixed;transform:translateX(-100%);width:var(--sidebar-width);z-index:50}.sidebar.mobile-open{transform:translateX(0)}.main-wrapper{margin-left:0}.mobile-menu-btn{display:flex}.content-grid-2,.content-grid-3,.content-grid-4,.manual-validation-grid,.remediation-grid,.report-tabs,.run-status,.stat-grid-3,.stat-grid-4,.stat-grid-5,.summary-row{grid-template-columns:1fr}.page-title{font-size:var(--text-2xl)}.as-dns-row{grid-template-columns:1fr}}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:18px}@media (max-width:768px){.mobile-menu-btn{display:flex}}.mobile-overlay{position:fixed;inset:0;background:var(--bg-overlay);z-index:49}.chart-bar{display:flex;flex-direction:column}.chart-bar-container{display:flex;align-items:flex-end;gap:3px;flex:1 1}.chart-bar-col{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.chart-bar-value{font-size:9px;font-weight:var(--weight-semibold);color:var(--text-muted);line-height:1}.chart-bar-bar{width:100%;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:height var(--transition-slow);min-height:2px;opacity:.85}.chart-bar-bar:hover{opacity:1}.chart-bar-label{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center;line-height:1}.chart-stacked-bar{width:100%;display:flex;flex-direction:column-reverse;border-radius:var(--radius-sm) var(--radius-sm) 0 0;overflow:hidden}.chart-distribution{display:flex;border-radius:var(--radius-full);overflow:hidden;gap:1px}.chart-distribution-segment{height:100%;transition:width var(--transition-slow);min-width:3px}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-muted)}.chart-legend-item{display:inline-flex;align-items:center;gap:var(--space-1)}.chart-legend-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.chart-tooltip{position:absolute;z-index:50;background:#1e293b;color:#f1f5f9;border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);box-shadow:0 4px 16px rgba(0,0,0,.25);pointer-events:none;white-space:nowrap;min-width:120px}.chart-tooltip-title{font-weight:var(--weight-semibold);margin-bottom:var(--space-1);color:#e2e8f0;font-size:var(--text-xs)}.chart-tooltip-row{display:flex;align-items:center;gap:var(--space-2);padding:1px 0}.chart-tooltip-label{flex:1 1;color:#94a3b8}.chart-tooltip-value{font-weight:var(--weight-bold);color:#f1f5f9}.activity-feed{display:flex;flex-direction:column}.activity-feed-item{display:flex;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}.activity-feed-item:last-child{border-bottom:none}.activity-feed-icon{width:28px;height:28px;border-radius:var(--radius-full);border:1.5px solid;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;background:var(--bg-surface)}.activity-feed-content{flex:1 1;min-width:0}.activity-feed-message{font-size:var(--text-sm);color:var(--text-primary);line-height:var(--leading-normal)}.activity-feed-meta{display:flex;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.activity-feed-repo{font-family:var(--font-mono);color:var(--primary-light)}.ranking-list{display:flex;flex-direction:column;gap:var(--space-1)}.ranking-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast)}.ranking-item:hover{background:rgba(0,0,0,.02)}.ranking-position{width:24px;height:24px;border-radius:var(--radius-full);background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-muted);flex-shrink:0}.ranking-item:first-child .ranking-position{background:var(--error-faded);color:var(--error-light)}.ranking-item:nth-child(2) .ranking-position{background:var(--warning-faded);color:var(--warning-light)}.ranking-item:nth-child(3) .ranking-position{background:var(--primary-faded);color:var(--primary-light)}.ranking-name{flex:1 1;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-value{font-size:var(--text-sm);font-weight:var(--weight-bold);min-width:40px;text-align:right}.ranking-bar-wrap{width:80px;flex-shrink:0}.exec-summary{background:linear-gradient(135deg,var(--bg-card) 0,var(--bg-surface) 100%);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6)}.exec-summary-title{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-3);line-height:var(--leading-tight)}.exec-summary-body{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}.exec-summary-highlights{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border-subtle)}.exec-highlight{text-align:center}.exec-highlight-value{font-size:var(--text-3xl);font-weight:var(--weight-extrabold);line-height:1}.exec-highlight-label{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--weight-semibold)}.repo-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.repo-table-group-row .repo-th-group{text-align:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-default);background:var(--bg-elevated)}.repo-table-sub-row .repo-th-sub{font-size:10px;padding:var(--space-1) var(--space-3) var(--space-2)}.repo-table-sub-row .repo-th-sub,.repo-th{text-align:center;font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border-default);background:var(--bg-elevated)}.repo-th{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.repo-th-name{text-align:left;min-width:240px}.repo-th-actions{width:48px}.repo-row{cursor:pointer;transition:background-color var(--transition-fast)}.repo-row:hover{background:rgba(0,0,0,.02)}.repo-cell{padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--border-subtle);text-align:center;vertical-align:middle}.repo-cell-name{text-align:left;padding:var(--space-3) var(--space-4)}.repo-cell-zero{color:var(--text-muted);font-weight:var(--weight-regular)}.repo-cell-value{color:var(--text-primary);font-weight:var(--weight-bold)}.repo-cell-danger{color:var(--error-light);font-weight:var(--weight-bold)}.repo-cell-date{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.repo-cell-actions{width:48px}.repo-name-block{display:flex;align-items:center;gap:var(--space-3)}.repo-provider-icon{width:28px;height:28px;border-radius:var(--radius-md);background:var(--primary-faded);display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--primary-light);flex-shrink:0}.repo-provider-icon[data-provider=bitbucket]{background:rgba(38,132,255,.12);color:#2684ff}.repo-provider-icon[data-provider=github]{background:rgba(0,0,0,.06);color:#e6edf3}.repo-provider-icon[data-provider=gitlab]{background:rgba(252,109,38,.12);color:#fc6d26}.repo-name-text{font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--leading-tight)}.repo-meta-text{display:flex;align-items:center;gap:var(--space-2);margin-top:2px}.repo-branch-badge{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-elevated);padding:1px 6px;border-radius:var(--radius-sm)}.dashboard-grid{position:relative}.dashboard-grid--editing .widget-card{border:1px dashed var(--border-default)}.widget-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition-base) ease,border-color var(--transition-base) ease}.widget-card:hover{box-shadow:0 2px 12px rgba(0,0,0,.15)}.widget-card--editing{cursor:default}.widget-card--editing:hover{border-color:var(--primary)}.widget-toolbar{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);height:32px}.widget-drag-handle{cursor:-webkit-grab;cursor:grab;font-size:14px;color:var(--text-muted);padding:0 var(--space-1);-webkit-user-select:none;-moz-user-select:none;user-select:none}.widget-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.widget-toolbar-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;font-size:13px;border-radius:var(--radius-sm);transition:color var(--transition-fast) ease,background var(--transition-fast) ease}.widget-toolbar-btn:hover{color:var(--text-primary);background:rgba(255,255,255,.08)}.widget-toolbar-btn--danger:hover{color:var(--error-light);background:rgba(239,68,68,.12)}.widget-content{height:100%;overflow:hidden}.react-grid-layout{transition:none}.react-grid-item.react-grid-placeholder{background:var(--primary)!important;opacity:.15!important;border-radius:var(--radius-lg)}.react-resizable-handle:after{border-color:var(--text-muted)!important}.dashboard-list-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:border-color var(--transition-base) ease,box-shadow var(--transition-base) ease,transform var(--transition-base) ease}.dashboard-list-card:hover{border-color:var(--primary);box-shadow:0 4px 16px rgba(0,0,0,.15);transform:translateY(-1px)}.dashboard-list-card-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--primary-faded);color:var(--primary-light);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.modal-container{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 0 24px rgba(0,0,0,.4);width:100%;max-height:85vh;display:flex;flex-direction:column;animation:slideUp var(--transition-base) ease}.modal-lg{max-width:720px}.modal-sm{max-width:480px}.modal-tabs{display:flex;gap:var(--space-1);padding:0 var(--space-4);border-bottom:1px solid var(--border-subtle)}.modal-tab{padding:var(--space-2) var(--space-3);background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:color var(--transition-fast) ease,border-color var(--transition-fast) ease}.modal-tab:hover{color:var(--text-primary)}.modal-tab--active{color:var(--primary-light);border-bottom-color:var(--primary)}.widget-picker-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:border-color var(--transition-fast) ease,background var(--transition-fast) ease;width:100%}.widget-picker-card:hover{border-color:var(--primary);background:var(--primary-faded)}.widget-picker-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--primary-faded);color:var(--primary-light);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.widget-picker-info{flex:1 1;min-width:0}.widget-picker-label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);margin-bottom:2px}.widget-picker-desc{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--leading-relaxed)}.form-field{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.form-input{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);outline:none;transition:border-color var(--transition-fast) ease;font-family:inherit}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-faded)}select.form-input{cursor:pointer}textarea.form-input{resize:vertical;min-height:60px}.badge-info{background:rgba(59,130,246,.15);color:#60a5fa}.badge-accent{background:rgba(168,85,247,.15);color:#c084fc}.btn-xs{padding:2px 8px;font-size:11px;line-height:1.4}@media print{body{background:white;color:black}.mobile-menu-btn,.page-header-bar,.sidebar{display:none!important}.main-wrapper{margin-left:0!important}.page-content{padding:0}.section-card{box-shadow:none;page-break-inside:avoid;border-color:#cbd5e1}.anchor-nav,.btn,.filter-bar,.ghost-btn,.json-panel,.primary-btn,.report-tabs,.secondary-btn{display:none!important}}