:root{--bg-primary: #f4f6fb;--bg-card: #ffffff;--bg-card-hover: #f0f3f9;--border: rgba(15, 23, 42, .08);--accent: #2f8fe0;--accent-green: #16a34a;--accent-red: #e0383d;--accent-amber: #d97706;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--env-color: #16a34a;--social-color: #6366f1;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04)}*{box-sizing:border-box}body{margin:0;background:var(--bg-primary);color:var(--text-primary);font-family:Inter,system-ui,-apple-system,sans-serif}button,select,input{font-family:inherit}.dashboard{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary)}.dashboard-shell{flex:1;display:flex;overflow:hidden}.main-content{flex:3;overflow-y:auto;padding:10px 20px}.topbar{height:56px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--bg-card);border-bottom:1px solid var(--border)}.topbar-title{display:flex;align-items:center;gap:8px;width:180px;flex-shrink:0;overflow:hidden;color:var(--text-primary)}.topbar-brand-text{font-size:12.5px;font-weight:700;line-height:1.2;flex:1;min-width:0}.topbar-logout-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.topbar-logout-btn:hover{background:var(--bg-card-hover);color:var(--accent-red);border-color:var(--accent-red)}.filter-ribbon{display:flex;align-items:center;gap:6px;height:44px;flex-shrink:0;padding:0 20px;background:var(--bg-card);border-bottom:1px solid var(--border);border-top:1px solid var(--border)}.filter-ribbon-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;padding-right:4px}.filter-ribbon-separator{width:1px;height:20px;background:var(--border);margin:0 6px}.filter-ribbon-group{display:flex;align-items:center;gap:5px}.filter-ribbon-icon{color:var(--text-muted);flex-shrink:0}.filter-ribbon-field-label{font-size:11px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.filter-ribbon-select{font-size:12px;font-weight:500;padding:4px 26px 4px 9px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;min-width:110px;max-width:170px;transition:border-color .15s}.filter-ribbon-select:focus,.filter-ribbon-select:hover:not(:disabled){border-color:var(--accent)}.filter-ribbon-select:disabled{opacity:.4;cursor:not-allowed}.filter-ribbon-badges{display:flex;align-items:center;gap:4px;margin-left:4px}.filter-ribbon-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;background:#16a34a1a;color:#16a34a;border:1px solid rgba(22,163,74,.25);white-space:nowrap}.filter-ribbon-reset{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;border:1px solid var(--accent-red);background:#dc26260f;color:var(--accent-red);cursor:pointer;transition:background .15s;white-space:nowrap;margin-left:4px}.filter-ribbon-reset:hover{background:#dc262624}.filter-ribbon-select--conflict{border-color:#dc2626!important;color:#dc2626!important}.filter-ribbon-conflict{display:flex;align-items:center;gap:6px;padding:3px 10px;border-radius:6px;background:#dc26261a;border:1px solid rgba(220,38,38,.35);color:#dc2626;font-size:11px;white-space:nowrap}.filter-ribbon-conflict strong{font-weight:700}.filter-ribbon-conflict-reset{background:#dc262626;border:1px solid rgba(220,38,38,.4);border-radius:5px;color:#dc2626;font-size:10.5px;font-weight:600;padding:1px 7px;cursor:pointer;margin-left:4px}.filter-ribbon-conflict-reset:hover{background:#dc262640}.filter-ribbon-fy-badge{margin-left:auto;font-size:10.5px;font-weight:600;color:var(--text-muted);background:var(--bg-primary);border:1px solid var(--border);padding:2px 9px;border-radius:5px;white-space:nowrap}.topbar-compact-filters{display:flex;align-items:center;gap:4px}.topbar-compact-select{font-size:12px;font-weight:500;padding:5px 22px 5px 9px;height:30px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;min-width:90px;transition:border-color .15s}.topbar-compact-select:focus,.topbar-compact-select:hover:not(:disabled){border-color:var(--accent);background-color:var(--bg-card)}.topbar-compact-select:disabled{opacity:.4;cursor:not-allowed}.topbar-compact-divider{width:1px;height:16px;background:var(--border);margin:0 2px}.topbar-compact-clear{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--accent-red);background:#dc262612;color:var(--accent-red);cursor:pointer;transition:background .15s;margin-left:2px;flex-shrink:0}.topbar-compact-clear:hover{background:#dc26262e}.topbar-global-filters{display:flex;align-items:center;gap:6px;flex:1;justify-content:center;padding:0 16px}.topbar-filter-group{display:flex;align-items:center;gap:5px}.topbar-filter-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);white-space:nowrap}.topbar-filter-select{font-size:12px;font-weight:500;padding:5px 24px 5px 9px;border-radius:7px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2394a3b8' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;min-width:100px;transition:border-color .15s,background .15s}.topbar-filter-select:focus{border-color:var(--accent);background:var(--bg-card)}.topbar-filter-select:hover:not(:disabled){border-color:var(--accent)}.topbar-filter-select:disabled{opacity:.4;cursor:not-allowed}.topbar-filter-divider{width:1px;height:20px;background:var(--border);margin:0 2px}.topbar-filter-clear{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 9px;border-radius:7px;border:1px solid var(--accent-red);background:#dc26260f;color:var(--accent-red);cursor:pointer;transition:background .15s;white-space:nowrap}.topbar-filter-clear:hover{background:#dc262624}.system-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;cursor:default;margin-left:2px}.system-status-dot.status-ready{background:#22c55e;box-shadow:0 0 0 2px #22c55e33}.system-status-dot.status-loading{background:#ef4444;animation:status-pulse 1.6s ease-in-out infinite}@keyframes status-pulse{0%,to{box-shadow:0 0 #ef444473}50%{box-shadow:0 0 0 5px #ef444400}}.app-sidebar{flex:0 0 200px;width:200px;display:flex;flex-direction:column;background:var(--bg-card);border-right:1px solid var(--border);overflow-y:auto;transition:flex .15s ease,width .15s ease}.app-sidebar.collapsed{flex:0 0 56px;width:56px}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;margin:10px;padding:6px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;align-self:flex-end}.app-sidebar.collapsed .sidebar-collapse-btn{align-self:center}.sidebar-collapse-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:4px 8px 12px}.sidebar-section-header,.sidebar-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:8px;border:none;background:none;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;text-align:left}.sidebar-section-header:hover,.sidebar-nav-item:hover{background:var(--bg-card-hover)}.sidebar-section-header.active-section,.sidebar-nav-item.active-section{color:var(--accent);background:#2f8fe014}.sidebar-label{flex:1}.sidebar-chevron{transition:transform .15s ease;color:var(--text-muted)}.sidebar-chevron.expanded{transform:rotate(90deg)}.sidebar-subtab-list{display:flex;flex-direction:column;gap:1px;padding-left:16px;margin:2px 0 4px}.sidebar-subtab-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;border:none;background:none;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;text-align:left}.sidebar-subtab-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.sidebar-subtab-item.active{background:#2f8fe01a;color:var(--accent);font-weight:600}.sidebar-subtab-group{margin-top:4px}.sidebar-subtab-group-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 10px 2px}.sidebar-divider{height:1px;background:var(--border);margin:8px 10px}.sidebar-framework-toggle{display:flex;gap:4px;margin:0 10px 8px;padding:3px;background:var(--bg-card-hover);border-radius:8px}.sidebar-framework-toggle.collapsed{flex-direction:column;margin:0 8px 8px}.framework-option{flex:1;padding:6px 8px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.framework-option:hover{color:var(--text-primary)}.framework-option.active{background:var(--bg-card);color:var(--accent);box-shadow:var(--shadow-sm)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:80vh;color:var(--text-muted)}.report-page-wrapper{max-width:640px;margin:0 auto}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:16px 0}.kpi-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:22px 16px 18px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;container-type:inline-size;min-height:170px}.kpi-standard-badge{position:absolute;top:10px;left:10px;font-size:9px;font-weight:700;letter-spacing:.02em;color:var(--text-muted);background:var(--bg-card-hover);border-radius:5px;padding:2px 6px}.kpi-card.placeholder{opacity:.55}.kpi-icon-wrap{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:14px;background:color-mix(in srgb,var(--kpi-icon-color, var(--accent)) 12%,transparent);margin-bottom:2px;flex-shrink:0}.kpi-label{font-size:13px;font-weight:500;color:var(--text-secondary);line-height:1.3}.kpi-value-row{display:flex;align-items:baseline;justify-content:center;gap:4px;min-width:0}.kpi-value{font-size:clamp(22px,6cqw,30px);font-weight:700;color:var(--text-primary);line-height:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kpi-unit{font-size:13px;color:var(--text-secondary);white-space:nowrap}.kpi-awaiting{font-size:11px;color:var(--text-muted)}.trend-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;white-space:nowrap}.trend-chip-label{font-weight:400;opacity:.85}.trend-chip.positive{background:#16a34a1f;color:var(--accent-green)}.trend-chip.negative{background:#e0383d1f;color:var(--accent-red)}.trend-chip.neutral{background:#94a3b826;color:var(--text-muted)}.content-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:16px}.content-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary)}.filter-bar{display:flex;gap:8px}.filter-select{font-size:12px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer}.view-toggle{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.view-option{padding:5px 10px;font-size:12px;background:var(--bg-card);color:var(--text-secondary);border:none;cursor:pointer;transition:background .15s,color .15s}.view-option:not(:last-child){border-right:1px solid var(--border)}.view-option.active{background:#2f8fe01a;color:var(--accent);font-weight:600}.filter-select:disabled{opacity:.45;cursor:not-allowed}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chart-grid.has-expanded{grid-template-rows:auto}.chart-grid.has-expanded .chart-card:not(.expanded){display:none}@media (max-width: 768px){.chart-grid{grid-template-columns:1fr}}.chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.chart-card.expanded{grid-column:1 / -1;min-height:420px}.chart-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.chart-card-title-group{display:flex;align-items:center;gap:8px;min-width:0}.chart-card-title{font-size:14px;color:var(--text-secondary);font-weight:500}.chart-card-title-info{display:inline-flex;align-items:center;color:var(--text-muted);cursor:default;position:relative;vertical-align:middle;line-height:1}.chart-card-title-info:hover{color:var(--text-secondary)}.chart-agg-badge{flex-shrink:0;font-size:10px;padding:2px 8px;border-radius:20px;border:1px solid var(--border);color:var(--text-muted);background:var(--bg-card-hover);white-space:nowrap}.chart-card-expand-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:2px;border-radius:4px}.chart-card-expand-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.chart-card-body{flex:1;height:220px;position:relative}.chart-card.expanded .chart-card-body{height:380px}.placeholder-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:160px;gap:8px;color:var(--text-muted);text-align:center}.placeholder-icon{opacity:.45}.placeholder-title{font-size:13px;color:var(--text-secondary);margin:0}.placeholder-source{font-size:11px;margin:0}.gri-badge{font-size:10px;padding:2px 8px;border-radius:20px;border:1px solid var(--border);color:var(--text-muted);background:var(--bg-card-hover)}.insights-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:8px 12px;box-shadow:var(--shadow-card);margin-bottom:8px}.insights-header{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.insights-header svg{color:var(--accent-amber)}.insights-list{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:3px}.insights-list li{font-size:12px;color:var(--text-secondary);line-height:1.4}.insights-list li strong{color:var(--text-primary)}.loading-skeleton{width:100%;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--bg-card-hover) 25%,#e6eaf2 37%,var(--bg-card-hover) 63%);background-size:400% 100%;animation:skeleton-pulse 1.4s ease infinite}@keyframes skeleton-pulse{0%{background-position:100% 50%}to{background-position:0 50%}}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;color:var(--accent-red);font-size:12px}.retry-btn{font-size:12px;padding:4px 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer}.retry-btn:hover{background:var(--bg-card-hover)}.ai-fab{position:fixed;right:24px;bottom:24px;width:52px;height:52px;border-radius:50%;border:none;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #2f8fe066;z-index:40;transition:transform .15s ease}.ai-fab:hover{transform:scale(1.06)}.ai-floating-panel{position:fixed;right:24px;bottom:24px;width:380px;height:min(640px,calc(100vh - 100px));border-radius:14px;border:1px solid var(--border);background:var(--bg-card);box-shadow:0 12px 32px #0f172a2e;display:flex;flex-direction:column;overflow:hidden;z-index:40}.ai-collapse-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:2px;border-radius:4px}.ai-collapse-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.ai-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.ai-header{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border)}.ai-header-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.ai-context-badge{font-size:11px;padding:3px 10px;border-radius:20px;background:var(--bg-card-hover);color:var(--text-secondary);margin-left:auto}.ai-messages{flex:1;display:flex;flex-direction:column;gap:10px;padding:16px;overflow-y:auto}.msg-bubble{max-width:85%;padding:10px 14px;border-radius:10px;font-size:13px;line-height:1.5;white-space:pre-wrap}.msg-bot{align-self:flex-start;max-width:94%;background:var(--bg-card-hover);border-left:3px solid var(--accent);color:var(--text-primary)}.msg-user{align-self:flex-end;background:var(--accent);color:#fff}.msg-cursor{display:inline-block;animation:blink 1s step-start infinite}.ai-thinking-bubble{display:inline-flex}.ai-thinking-dots{display:inline-flex;align-items:center;gap:4px;padding:2px 0}.ai-thinking-dots span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:ai-thinking-bounce 1.2s ease-in-out infinite}.ai-thinking-dots span:nth-child(2){animation-delay:.15s}.ai-thinking-dots span:nth-child(3){animation-delay:.3s}@keyframes ai-thinking-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}.markdown-content{white-space:normal}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.markdown-content p{margin:0 0 8px}.markdown-content ul,.markdown-content ol{margin:0 0 8px;padding-left:20px}.markdown-content li{margin-bottom:4px}.markdown-content li>ul,.markdown-content li>ol{margin-top:4px}.markdown-content strong{color:var(--accent);font-weight:700}.markdown-content h1,.markdown-content h2,.markdown-content h3{font-size:13px;font-weight:700;color:var(--text-primary);margin:10px 0 6px}.markdown-content code{background:#0f172a0f;border-radius:4px;padding:1px 5px;font-size:12px}@keyframes blink{50%{opacity:0}}.ai-quick-prompts{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}.quick-prompt-chip{font-size:11px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card-hover);color:var(--text-secondary);cursor:pointer}.quick-prompt-chip:hover{border-color:var(--accent);color:var(--accent)}.ai-input-row{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.ai-input{flex:1;padding:9px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:13px}.ai-input:focus{outline:none;border-color:var(--accent)}.ai-send-btn{display:flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px;border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}.report-panel{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-card);padding:16px;gap:14px;overflow-y:auto}.report-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.report-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:6px}.report-section-label-row{display:flex;align-items:baseline;justify-content:space-between}.report-section-label-row .report-section-label{margin-bottom:0}.report-select-all-btn{font-size:11px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;margin-bottom:6px}.report-select-all-btn:hover{text-decoration:underline}.report-template-list{display:flex;flex-direction:column;gap:6px}.report-template-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);font-size:12px;color:var(--text-primary);cursor:pointer}.report-template-item.no-data{color:var(--text-muted)}.report-template-item .no-data-tag{margin-left:auto;font-size:10px;color:var(--text-muted)}.report-select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:12px}.format-toggle{display:flex;gap:8px}.format-option{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;cursor:pointer}.format-option.active{border-color:var(--accent);color:var(--accent);background:#2f8fe014}.generate-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:8px;border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.report-error{font-size:12px;color:var(--accent-red)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.summary-page{padding:24px 28px;max-width:1100px}.summary-hero{margin-bottom:28px}.summary-hero-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.summary-hero-text{flex:1;min-width:0}.summary-hero-controls{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.summary-framework-toggle{display:flex;gap:4px;padding:3px;background:var(--bg-card-hover);border-radius:8px}.summary-framework-toggle .framework-option{padding:5px 14px}.summary-filter-bar{display:flex;align-items:center;gap:8px;flex-shrink:0}.summary-filter-icon{color:var(--text-muted);display:flex;align-items:center}.summary-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 6px}.summary-subtitle{font-size:13px;color:var(--text-secondary);margin:0}.summary-loading{font-size:13px;color:var(--text-muted);margin-bottom:16px}.summary-domain-section{margin-bottom:28px}.summary-domain-heading{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--domain-color, var(--accent));margin:0 0 12px}.summary-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.summary-domain-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:22px 16px 18px;box-shadow:var(--shadow-card);cursor:pointer;transition:box-shadow .15s,border-color .15s;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;min-height:170px}.summary-domain-card:hover{box-shadow:0 4px 12px #0f172a1a;border-color:var(--accent)}.summary-card-arrow{position:absolute;top:12px;right:12px;color:var(--text-muted);transition:color .15s}.summary-domain-card:hover .summary-card-arrow{color:var(--accent)}.summary-card-icon-wrap{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;background:color-mix(in srgb,var(--kpi-icon-color, var(--accent)) 12%,transparent);margin-bottom:2px;flex-shrink:0}.summary-card-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.summary-card-value{display:flex;align-items:baseline;justify-content:center;gap:4px}.summary-kpi-value{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1}.summary-kpi-unit{font-size:12px;color:var(--text-secondary)}.summary-kpi-na{font-size:22px;color:var(--text-muted);font-weight:500}.summary-kpi-unavailable{font-size:12px;color:var(--text-muted);font-style:italic;line-height:1.3}.summary-kpi-label{font-size:11px;color:var(--text-muted)}.outlier-panel{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent-amber);border-radius:8px;margin:0 0 16px;overflow:hidden;box-shadow:var(--shadow-sm)}.outlier-panel-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fefce8;border:none;cursor:pointer;width:100%;text-align:left;font-size:13px;font-weight:600;color:#92400e;transition:background .15s}.outlier-panel-header:hover{background:#fef9c3}.outlier-header-icon{color:var(--accent-amber);flex-shrink:0}.outlier-panel-title{flex:1;display:flex;align-items:center;gap:6px}.outlier-count-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-amber);color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%}.outlier-panel-body{padding:8px 4px}.outlier-loading{padding:8px 14px;font-size:12px;color:var(--text-muted)}.outlier-row{display:flex;align-items:center;gap:8px;padding:7px 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-secondary);transition:background .12s}.outlier-row:last-child{border-bottom:none}.outlier-row:hover{background:var(--bg-card-hover)}.outlier-severity-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.outlier-severity-dot.high{background:var(--accent-red)}.outlier-severity-dot.medium{background:var(--accent-amber)}.outlier-severity-dot.low{background:var(--accent)}.outlier-trend-icon.up{color:var(--accent-red);flex-shrink:0}.outlier-trend-icon.down{color:var(--accent-green);flex-shrink:0}.outlier-desc{flex:1;line-height:1.4}.outlier-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:20px;white-space:nowrap;flex-shrink:0}.outlier-badge.high{background:#fef2f2;color:var(--accent-red)}.outlier-badge.medium{background:#fffbeb;color:var(--accent-amber)}.outlier-badge.low{background:#eff6ff;color:var(--accent)}[data-tooltip]{position:relative}[data-tooltip]:after,[data-tooltip]:before{position:absolute;left:50%;transform:translate(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease;z-index:60}[data-tooltip]:after{content:attr(data-tooltip);bottom:calc(100% + 9px);background:var(--text-primary);color:#fff;font-size:11px;font-weight:500;line-height:1.6;padding:8px 11px;border-radius:6px;white-space:pre-line;width:max-content;max-width:250px;text-align:left;box-shadow:var(--shadow-card)}[data-tooltip]:before{content:"";bottom:calc(100% + 4px);border:5px solid transparent;border-top-color:var(--text-primary)}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;visibility:visible;transition-delay:.05s}[data-tooltip].tooltip-align-right:after,[data-tooltip].tooltip-align-right:before{left:auto;right:0;transform:none}[data-tooltip].tooltip-align-left:after,[data-tooltip].tooltip-align-left:before{left:0;transform:none}[data-tooltip].tooltip-below:after{top:calc(100% + 8px);bottom:auto;left:0;transform:none}[data-tooltip].tooltip-below:before{top:calc(100% + 2px);bottom:auto;left:14px;transform:none;border-top-color:transparent;border-bottom-color:var(--text-primary)}[data-tooltip].tooltip-below.tooltip-align-right:after{left:auto;right:0}[data-tooltip].tooltip-below.tooltip-align-right:before{left:auto;right:14px}[data-tooltip].tooltip-wide:after{max-width:300px}.trend-summary{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg-card-hover)}.trend-summary-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:4px 10px}.trend-summary-item .outlier-trend-icon.up{color:var(--accent-red)}.trend-summary-item .outlier-trend-icon.down{color:var(--accent-green)}.cross-filter-chip{display:inline-flex;align-items:center;gap:5px;background:#eff6ff;border:1px solid var(--accent);color:var(--accent);font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;white-space:nowrap;animation:fadeIn .15s ease}.cross-filter-chip-label{line-height:1}.cross-filter-chip-dismiss{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0;cursor:pointer;color:var(--accent);opacity:.7;transition:opacity .12s;line-height:1}.cross-filter-chip-dismiss:hover{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.login-page{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg-primary);padding:20px}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-card);padding:32px 28px;width:100%;max-width:380px}.login-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.login-header-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#16a34a1a;flex-shrink:0}.login-title{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1.3}.login-subtitle{font-size:13px;color:var(--text-secondary);margin:0 0 24px}.login-field{margin-bottom:16px}.login-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:6px}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input-icon{position:absolute;left:11px;color:var(--text-muted);pointer-events:none}.login-input{width:100%;padding:9px 12px 9px 34px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:13px}.login-input:focus{outline:none;border-color:var(--accent)}.login-error{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--accent-red);background:#e0383d14;border:1px solid rgba(224,56,61,.25);border-radius:8px;padding:8px 10px;margin-bottom:16px}.login-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;border-radius:8px;border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.login-submit-btn:hover{background:#2780cc}@media (max-width: 480px){.login-card{padding:24px 20px}}.login-step{animation:loginStepIn .18s ease}@keyframes loginStepIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.login-role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:4px}.login-role-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 14px 16px;border-radius:12px;border:1px solid var(--border);background:none;cursor:pointer;text-align:center;transition:transform .15s ease,box-shadow .15s ease}.login-role-card:hover{transform:translateY(-3px);box-shadow:0 6px 18px #0000001a}.login-role-card-icon{display:flex;align-items:center;justify-content:center;margin-bottom:2px}.login-role-card-label{font-size:15px;font-weight:700;line-height:1}.login-role-card-desc{font-size:11.5px;color:var(--text-secondary);line-height:1.4}.login-back-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 0;margin-bottom:16px;background:none;border:none;color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:color .12s}.login-back-btn:hover{color:var(--text-primary)}.login-role-badge{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:10px;border:1px solid;margin-bottom:20px}.login-role-badge-label{font-size:15px;font-weight:700;line-height:1}.login-role-badge-title{font-size:11.5px;color:var(--text-secondary);margin-top:2px}.login-access-hint{margin-top:12px;text-align:center;font-size:11.5px;color:var(--text-muted)}@media (max-width: 700px){.login-role-grid{grid-template-columns:1fr 1fr}}@media (max-width: 400px){.login-role-grid{grid-template-columns:1fr 1fr}}:root{--brsr-primary: #f59e0b;--brsr-secondary: #d97706;--brsr-accent-bg: #fef3c7;--brsr-badge-text: #92400e}.framework-option.brsr.active{border-color:var(--brsr-primary);color:var(--brsr-primary);background:#f59e0b1a}.fy-selector{font-variant-numeric:tabular-nums;letter-spacing:.01em}.brsr-principle-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:10px;font-size:10px;font-weight:600;background:var(--brsr-accent-bg);color:var(--brsr-badge-text);white-space:nowrap}.report-brsr-note{font-size:12px;color:var(--text-secondary);background:var(--brsr-accent-bg);border:1px solid rgba(245,158,11,.3);border-radius:8px;padding:10px 12px;line-height:1.5}.brsr-pending-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:40px 24px;background:var(--bg-card);border:1px dashed rgba(245,158,11,.4);border-radius:12px;text-align:center}.brsr-pending-card .brsr-pending-icon{color:var(--brsr-primary)}.brsr-pending-card .brsr-pending-title{font-size:14px;font-weight:600;color:var(--text-primary)}.brsr-pending-card .brsr-pending-desc{font-size:12px;color:var(--text-secondary);max-width:360px;line-height:1.5}.brsr-pending-card .brsr-pending-items{font-size:11px;color:var(--text-muted);text-align:left;list-style:disc;padding-left:16px}.brsr-principle-heading{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.framework-toggle{display:flex;gap:4px;padding:3px;background:var(--bg-card-hover);border-radius:8px;flex-shrink:0}.framework-toggle .framework-option{padding:5px 14px}.content-subheading{font-size:13px;font-weight:600;color:var(--text-secondary);margin:24px 0 12px;padding-top:16px;border-top:1px solid var(--border)}.alerts-severity-tabs{display:flex;gap:6px;margin-bottom:16px}.alerts-severity-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer}.alerts-severity-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.alerts-severity-count{font-size:10px;padding:1px 6px;border-radius:10px;background:#ffffff40}.alerts-severity-tab:not(.active) .alerts-severity-count{background:var(--bg-card-hover)}.alerts-context-note{display:flex;align-items:flex-start;gap:8px;background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:8px;padding:10px 14px;font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:8px}.alerts-context-note-icon{font-style:normal;font-weight:700;font-size:13px;color:var(--accent);flex-shrink:0;margin-top:1px}.alert-card-list{display:flex;flex-direction:column;gap:8px}.alert-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--border);border-left:3px solid var(--text-muted);background:var(--bg-card);text-align:left;transition:background .15s,border-color .15s}.alert-card.high{border-left-color:var(--accent-red)}.alert-card.medium{border-left-color:var(--accent-amber)}.alert-card.low{border-left-color:var(--text-muted)}.alert-card-body{flex:1;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text-primary)}.alert-card-domain{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.reports-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border)}.reports-tab{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;background:none;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent}.reports-tab:hover{color:var(--text-primary)}.reports-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.report-library-list{display:flex;flex-direction:column;gap:8px}.report-library-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card)}.report-library-icon{color:var(--accent);flex-shrink:0}.report-library-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.report-library-filename{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-library-meta{font-size:11px;color:var(--text-muted)}.report-library-action{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.report-library-action:hover{background:var(--bg-card-hover);color:var(--accent)}.chats-page{display:flex;height:100%;margin:-20px}.chats-thread-list{width:260px;flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding:16px 10px;border-right:1px solid var(--border);overflow-y:auto}.chats-list-actions{display:flex;gap:6px;margin-bottom:8px}.chats-new-btn{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;padding:9px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--accent);font-size:13px;font-weight:600;cursor:pointer}.chats-new-btn:hover{background:var(--bg-card-hover)}.chats-clear-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chats-clear-btn:hover{background:var(--bg-card-hover);color:var(--text-secondary)}.chats-clear-btn.confirming{border-color:var(--accent-red);color:var(--accent-red);background:#dc26260f}.chats-loading,.chats-empty{padding:12px;font-size:12px;color:var(--text-muted);text-align:center}.chats-thread-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.chats-thread-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border-radius:8px;border:none;background:none;color:var(--text-secondary);font-size:12px;cursor:pointer;text-align:left;position:relative}.chats-thread-item:hover{background:var(--bg-card-hover)}.chats-thread-item.active{background:#2f8fe014;color:var(--accent);font-weight:600}.chats-thread-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chats-thread-date{font-size:10px;color:var(--text-muted);flex-shrink:0}.chats-thread-delete{display:none;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.chats-thread-item:hover .chats-thread-delete{display:flex}.chats-thread-delete:hover{color:var(--accent-red)}.chats-active-panel{flex:1;min-width:0}.chats-active-panel .ai-panel{height:100%}.outlier-severity-bar{display:flex;gap:3px;align-items:center;margin-right:4px}.outlier-sbar-seg{font-size:10px;font-weight:700;padding:1px 5px;border-radius:20px;line-height:1.5}.outlier-sbar-seg.high{background:#fef2f2;color:var(--accent-red)}.outlier-sbar-seg.medium{background:#fffbeb;color:var(--accent-amber)}.outlier-sbar-seg.low{background:#eff6ff;color:var(--accent)}.trend-summary{display:flex;flex-wrap:wrap;gap:6px 14px;padding:7px 14px;border-top:1px solid var(--border);background:#fffbeb80}.trend-summary-item{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary)}.trend-summary-metric{color:var(--text-muted)}.trend-summary-change{font-weight:600;color:var(--text-primary)}.outlier-view-all-btn{display:inline-flex;align-items:center;gap:5px;margin:4px 14px 8px;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.outlier-view-all-btn:hover{background:var(--bg-card-hover);border-color:var(--accent)}.kpi-limit-chip{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:3px 8px;border-radius:20px;border:1px solid var(--border);font-size:10px;font-weight:600;text-decoration:none;width:fit-content}.kpi-limit-chip:hover{text-decoration:underline}.kpi-limit-chip--ok{border-color:#22c55e59;background:#22c55e1a;color:#16a34a}.kpi-limit-chip--breach{border-color:#ef444459;background:#ef44441a;color:var(--accent-red)}.ai-stream-error{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:4px 0;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;font-size:12px;color:var(--accent-red)}.ai-retry-btn{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:4px 10px;border-radius:6px;border:1px solid currentColor;background:transparent;color:var(--accent-red);font-size:11px;font-weight:600;cursor:pointer}.ai-retry-btn:hover{background:#fef2f2}.alerts-page{padding:0 2px;max-width:100%}.alerts-header-actions{display:flex;align-items:center;gap:10px}.alerts-threshold-btn{display:flex;align-items:center;gap:5px;padding:7px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.alerts-threshold-btn:hover{background:var(--bg-card-hover);color:var(--accent);border-color:var(--accent)}.alerts-severity-tabs{display:flex;gap:2px;margin-bottom:4px;padding-bottom:4px}.alerts-severity-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid transparent;border-radius:8px;background:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.alerts-severity-tab:hover{background:var(--bg-card-hover);color:var(--text-primary)}.alerts-severity-tab.active{background:var(--bg-card);border-color:var(--border);color:var(--text-primary);font-weight:600;box-shadow:var(--shadow-sm)}.alerts-severity-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:20px;background:var(--bg-primary);border:1px solid var(--border);font-size:10px;font-weight:700;color:var(--text-muted)}.alert-card-desc{font-size:13px;line-height:1.45;color:var(--text-primary)}.threshold-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:200;display:flex;align-items:flex-start;justify-content:flex-end;padding:72px 20px 20px}.threshold-panel{width:380px;max-width:90vw;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px #0f172a24;padding:20px;display:flex;flex-direction:column;gap:14px}.threshold-panel-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text-primary)}.threshold-close-btn{margin-left:auto;display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:none;color:var(--text-muted);cursor:pointer;border-radius:6px}.threshold-close-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.threshold-hint{font-size:12px;color:var(--text-muted);margin:0;line-height:1.5}.threshold-domain-tabs{display:flex;flex-wrap:wrap;gap:4px}.threshold-domain-tab{padding:5px 11px;border-radius:8px;border:1px solid var(--border);background:none;color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.threshold-domain-tab:hover{background:var(--bg-card-hover)}.threshold-domain-tab.active{background:var(--bg-primary);border-color:var(--accent);color:var(--accent)}.threshold-domain-tab.custom:after{content:" *";color:var(--accent-amber)}.threshold-fields{display:flex;flex-direction:column;gap:8px}.threshold-fields label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text-secondary)}.threshold-fields label span:first-child{flex:1}.threshold-input{width:130px;padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-primary);font-size:13px;font-weight:600;color:var(--text-primary);text-align:right}.threshold-input:focus{outline:none;border-color:var(--accent)}.threshold-input-group{display:flex;align-items:center;gap:6px}.threshold-unit-label{font-size:11px;font-weight:700;color:var(--text-secondary);white-space:nowrap;letter-spacing:.02em}.threshold-error{font-size:11px;color:var(--accent-red);margin:0}.threshold-actions{display:flex;gap:8px;justify-content:flex-end}.threshold-btn{padding:7px 16px;border-radius:8px;border:1px solid var(--border);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.threshold-btn:disabled{opacity:.5;cursor:default}.threshold-btn.save{background:var(--accent);border-color:var(--accent);color:#fff}.threshold-btn.save:hover:not(:disabled){background:#1a78cc}.threshold-btn.reset{background:var(--bg-primary);color:var(--text-secondary)}.threshold-btn.reset:hover:not(:disabled){background:var(--bg-card-hover);color:var(--accent-amber);border-color:var(--accent-amber)}.threshold-save-msg{font-size:11px;color:var(--accent-green);margin:0;text-align:right}.limits-page{padding:0 2px;max-width:100%}.limits-disclaimer{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);margin:0 0 16px}.limits-domain-section{margin-bottom:20px}.limits-domain-heading{font-size:13px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.limits-row{display:grid;grid-template-columns:1fr 120px auto 80px;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border);font-size:12px}.limits-row-label{font-weight:600;color:var(--text-primary)}.limits-baseline-hint{color:var(--text-muted);font-size:11px}.limits-reset-btn{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;text-align:left}.limits-reset-btn:hover{text-decoration:underline}.impact-section{margin-bottom:22px}.impact-section-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.impact-takeaway{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;background:var(--bg-card);box-shadow:var(--shadow-sm);padding:14px 16px;font-size:13px;color:var(--text-primary);line-height:1.55;margin-bottom:16px}.impact-note{font-size:12px;color:var(--text-secondary);border:1px solid var(--border);background:var(--bg-card-hover);border-radius:8px;padding:10px 14px;margin-bottom:16px;line-height:1.5}.impact-table-wrap{border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-card);overflow-x:auto;margin-bottom:18px}.impact-table{width:100%;border-collapse:collapse;font-size:12.5px}.impact-table th{text-align:left;background:var(--bg-card-hover);color:var(--text-secondary);font-weight:600;padding:9px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.impact-table td{padding:9px 12px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:top}.impact-table tr:last-child td{border-bottom:none}.impact-badge{display:inline-block;padding:2px 9px;border-radius:12px;font-size:11px;font-weight:600}.impact-cards-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:18px}.yoy-period-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:10px}.yoy-metric-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.yoy-metric-row{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;background:var(--bg-card-hover);font-size:13px}.yoy-metric-row--indent{margin-left:20px;background:transparent;padding:3px 10px;font-size:12px;color:var(--text-secondary)}.yoy-metric-label{flex:1;color:var(--text-secondary);font-size:12.5px}.yoy-metric-spacer{flex:1}.yoy-metric-value{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap}.yoy-metric-value--curr{color:var(--accent)}.yoy-change-chip{display:inline-block;font-size:11px;font-weight:700;white-space:nowrap;min-width:72px;text-align:right}.yoy-trend-selector{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 6px}.yoy-trend-btn{padding:4px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.yoy-trend-btn:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--accent, #2563eb);color:var(--text-primary)}.yoy-trend-btn.active{background:var(--accent, #2563eb);border-color:var(--accent, #2563eb);color:#fff}.yoy-trend-container{height:200px;margin:8px 0 12px}.yoy-insight{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-secondary);line-height:1.6;font-style:italic}.impact-pillar-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0;border-bottom:1px solid var(--border);padding-bottom:0}.impact-pillar-tab{background:none;border:none;border-bottom:2px solid transparent;padding:7px 16px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:color .12s,border-color .12s;margin-bottom:-1px;border-radius:0}.impact-pillar-tab:hover{color:var(--text-primary)}.impact-pillar-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.equiv-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:4px}@media (max-width: 600px){.equiv-cards{grid-template-columns:1fr}}.equiv-card{border-radius:10px;padding:14px 16px;border:1px solid var(--border)}.equiv-card--achievement{background:#16a34a0f;border-color:#16a34a33}.equiv-card--scale{background:var(--bg-card-hover)}.equiv-card-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.equiv-card-value{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:4px;line-height:1.2}.equiv-card-equiv{font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:6px}.equiv-card-basis{color:var(--text-muted);font-style:italic}.equiv-yoy-chip{display:inline-block;font-size:11px;font-weight:600}.equiv-takeaway{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-secondary);line-height:1.6}.impact-stat-card{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);box-shadow:var(--shadow-card);padding:14px 16px}.impact-stat-card-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.impact-stat-card-value{font-size:18px;font-weight:700;color:var(--text-primary)}.impact-filter-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.impact-granularity-toggle{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden;margin-left:auto}.granularity-btn{padding:5px 14px;font-size:12.5px;font-weight:500;background:var(--bg-surface);color:var(--text-secondary);border:none;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap;border-right:1px solid var(--border)}.granularity-btn:last-child{border-right:none}.granularity-btn:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary)}.granularity-btn.active{background:var(--accent, #2563eb);color:#fff}:root{--status-ahead: #059669;--status-ahead-bg: rgba(5,150,105,.1);--status-ontrack: #2563eb;--status-ontrack-bg: rgba(37,99,235,.1);--status-watch: #d97706;--status-watch-bg: rgba(217,119,6,.1);--status-atrisk: #dc2626;--status-atrisk-bg: rgba(220,38,38,.1);--status-critical: #7f1d1d;--status-critical-bg: rgba(127,29,29,.12);--priority-high: #dc2626;--priority-high-bg: rgba(220,38,38,.1);--priority-medium: #d97706;--priority-medium-bg: rgba(217,119,6,.1);--priority-low: #059669;--priority-low-bg: rgba(5,150,105,.1);--conf-high: #059669;--conf-medium: #d97706;--conf-low: #dc2626;--sidebar-new-bg: #0f172a;--sidebar-new-hover: rgba(255,255,255,.07);--sidebar-new-active: rgba(47,143,224,.25)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.status-badge.ahead{color:var(--status-ahead);background:var(--status-ahead-bg)}.status-badge.on_track{color:var(--status-ontrack);background:var(--status-ontrack-bg)}.status-badge.watch{color:var(--status-watch);background:var(--status-watch-bg)}.status-badge.at_risk{color:var(--status-atrisk);background:var(--status-atrisk-bg)}.status-badge.critical{color:var(--status-critical);background:var(--status-critical-bg)}.status-badge.achieved,.status-badge.improved{color:var(--status-ahead);background:var(--status-ahead-bg)}.status-badge.neutral{color:var(--text-muted);background:#94a3b81f}.status-badge.not_available{color:var(--text-muted);background:#94a3b81a}.priority-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.priority-badge.high{color:var(--priority-high);background:var(--priority-high-bg)}.priority-badge.medium{color:var(--priority-medium);background:var(--priority-medium-bg)}.priority-badge.low{color:var(--priority-low);background:var(--priority-low-bg)}.priority-badge.compact,.status-badge.compact{font-size:10px;padding:1px 7px;border-radius:12px}.confidence-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:20px;font-size:11px;font-weight:600}.confidence-badge.high{color:var(--conf-high);background:#0596691a}.confidence-badge.medium{color:var(--conf-medium);background:#d977061a}.confidence-badge.low{color:var(--conf-low);background:#dc26261a}.variant-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.variant-badge.board-ready{color:#059669;background:#0596691f}.variant-badge.contradiction{color:#d97706;background:#d977061f}.variant-badge.governance{color:#7c3aed;background:#7c3aed1f}.variant-badge.cfo{color:#0891b2;background:#0891b21f}.summary-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px}.summary-kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:6px}.summary-kpi-card .s-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.summary-kpi-card .s-label{font-size:11px;color:var(--text-secondary);font-weight:500}.summary-kpi-card .s-value{font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.1}.summary-kpi-card .s-unit{font-size:11px;color:var(--text-secondary)}.summary-kpi-card .s-sub{font-size:10.5px;color:var(--text-muted)}.ai-narrative-panel{background:#ffffffb3;border:1px solid rgba(255,255,255,.55);border-radius:12px;padding:10px 14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.ai-narrative-panel .panel-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.ai-narrative-panel .panel-title{font-size:13px;font-weight:700;color:var(--text-primary)}.ai-narrative-section{display:flex;gap:10px;padding:10px 12px;border-radius:8px;background:var(--bg-primary);border-left:3px solid}.ai-narrative-section.positive{border-color:#059669}.ai-narrative-section.concern{border-color:#d97706}.ai-narrative-section.action{border-color:#2563eb}.ai-narrative-section .section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;margin-bottom:4px}.ai-narrative-section.positive .section-label{color:#059669}.ai-narrative-section.concern .section-label{color:#d97706}.ai-narrative-section.action .section-label{color:#2563eb}.ai-narrative-section .section-text{font-size:12.5px;color:var(--text-secondary);line-height:1.5}.ai-narrative-section .section-text .ai-prose{margin:0 0 6px}.ai-narrative-section .section-text .ai-prose:last-child{margin-bottom:0}.ai-bullet-list{margin:4px 0 0;padding-left:14px;display:flex;flex-direction:column;gap:7px;list-style:disc}.ai-bullet-list li{font-size:12.5px;color:var(--text-secondary);line-height:1.55;padding-left:2px}.ai-bullet-list li::marker{font-size:9px}.ai-highlight{font-weight:700;color:var(--text-primary);padding:0 2px;border-radius:2px}.ai-narrative-section.positive .ai-highlight{background:#0596691a}.ai-narrative-section.concern .ai-highlight{background:#d977061a}.ai-narrative-section.action .ai-highlight{background:#2563eb1a}.ai-generated-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:var(--text-muted);border:1px solid var(--border);border-radius:5px;padding:2px 7px;cursor:default;white-space:nowrap}.ai-panel-loading{color:var(--text-muted);font-size:13px;padding:16px 0;text-align:center}.evidence-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.evidence-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:10.5px;font-weight:500;background:#2f8fe01a;color:var(--accent);border:1px solid rgba(47,143,224,.2)}.segmented-bar{display:flex;border-radius:6px;overflow:hidden;height:14px;gap:2px}.segmented-bar-segment{transition:flex .3s ease;border-radius:3px}.donut-score-wrap{position:relative;display:inline-block}.donut-score-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-score-value{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1}.donut-score-max{font-size:11px;color:var(--text-muted)}.hz-score-row{display:flex;align-items:center;gap:10px;margin:4px 0}.hz-score-label{font-size:12px;color:var(--text-secondary);width:160px;flex-shrink:0}.hz-score-track{flex:1;height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.hz-score-fill{height:100%;border-radius:4px;transition:width .4s ease;background:var(--accent)}.hz-score-val{font-size:12px;font-weight:600;color:var(--text-primary);width:30px;text-align:right}.page-layout-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.page-layout-two-col.left-wide{grid-template-columns:1.6fr 1fr}.page-layout-two-col.right-wide{grid-template-columns:1fr 1.6fr}@media (max-width: 900px){.page-layout-two-col,.page-layout-two-col.left-wide,.page-layout-two-col.right-wide{grid-template-columns:1fr}}.page-header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.page-title{font-size:17px;font-weight:700;color:var(--text-primary)}.page-subtitle{font-size:13px;color:var(--text-muted);margin-top:2px}.section-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:var(--shadow-card)}.section-card-title{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:14px;display:flex;align-items:center;gap:7px}.pathway-chart-wrap{position:relative;height:160px}.portfolio-table{width:100%;border-collapse:collapse}.portfolio-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.portfolio-table td{font-size:12.5px;padding:9px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.portfolio-table tr:last-child td{border-bottom:none}.portfolio-table tr:hover td{background:var(--bg-primary)}.portfolio-progress-bar{height:6px;background:var(--bg-primary);border-radius:3px;min-width:80px;overflow:hidden}.portfolio-progress-fill{height:100%;border-radius:3px;background:var(--accent);transition:width .3s}.equiv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.equiv-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;padding:14px 12px;display:flex;flex-direction:column;gap:6px}.equiv-card-icon{font-size:20px}.equiv-card-value{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1}.equiv-card-label{font-size:11.5px;color:var(--text-secondary)}.equiv-card-sub{font-size:10.5px;color:var(--text-muted)}.hotspot-table{width:100%;border-collapse:collapse}.hotspot-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:7px 10px;text-align:left;border-bottom:1px solid var(--border)}.hotspot-table td{font-size:12px;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.hotspot-table tr:last-child td{border-bottom:none}.risk-badge{padding:2px 8px;border-radius:20px;font-size:10.5px;font-weight:600;display:inline-block;white-space:nowrap}.risk-badge.High{color:var(--priority-high);background:var(--priority-high-bg)}.risk-badge.Medium{color:var(--priority-medium);background:var(--priority-medium-bg)}.risk-badge.Watch{color:var(--status-watch);background:var(--status-watch-bg)}.command-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.command-stack{display:flex;flex-direction:column;gap:16px;margin-top:16px}.command-score-row{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}.command-subscore-bars{display:flex;flex-direction:column;gap:8px;flex:1;min-width:200px}@media (max-width: 900px){.command-grid{grid-template-columns:1fr}}.section-info-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--text-muted);color:var(--text-muted);cursor:default;flex-shrink:0;background:none;outline:none}.section-info-btn:hover,.section-info-btn:focus{border-color:var(--accent);color:var(--accent)}.section-info-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:200;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;width:300px;box-shadow:0 4px 16px #0000001f;text-align:left}.section-info-popover-title{font-size:12px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.section-info-popover-body{font-size:11.5px;color:var(--text-secondary);line-height:1.6}.ai-summary-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}@media (max-width: 1000px){.ai-summary-columns{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.ai-summary-columns{grid-template-columns:1fr}}.domain-section{margin-top:6px}.domain-section-header{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--text-primary);padding-bottom:10px;border-bottom:2px solid var(--border);margin-bottom:16px}.domain-section-accent{display:inline-block;width:4px;height:20px;border-radius:2px;flex-shrink:0}.dashboards-label{display:flex;align-items:center;gap:10px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:16px 0 10px;cursor:pointer;-webkit-user-select:none;user-select:none}.dashboards-label:hover{color:var(--text-secondary)}.dashboards-label:before,.dashboards-label:after{content:"";flex:1;height:1px;background:var(--border)}.dashboards-label .dashboards-chevron{transition:transform .2s ease;flex-shrink:0}.dashboards-label .dashboards-chevron.open{transform:rotate(180deg)}.page-nav-layout{display:flex;flex-direction:column;height:calc(100vh - 96px);overflow:hidden}.page-nav-header{flex-shrink:0;padding:20px 24px 0}.page-nav-content{flex:1;min-height:0;overflow-y:auto;padding:6px 24px 10px}.section-jump-nav{flex-shrink:0;background:var(--bg-primary);border-bottom:1px solid var(--border);padding:6px 24px;display:flex;gap:6px;align-items:center;overflow-x:auto;scrollbar-width:none}.section-jump-nav::-webkit-scrollbar{display:none}.section-jump-pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:5px 14px;border-radius:20px;border:1.5px solid var(--border);background:none;color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s,background .15s;white-space:nowrap}.section-jump-pill:hover{border-color:var(--accent);color:var(--accent);background:#2f8fe00d}.section-jump-pill.active{color:#fff}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 900px){.settings-layout{grid-template-columns:1fr}}.settings-form-group{display:flex;flex-direction:column;gap:4px}.settings-form-group label{font-size:12px;font-weight:600;color:var(--text-secondary)}.settings-form-group input,.settings-form-group select,.settings-form-group textarea{padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);font-size:13px}.settings-form-group input:focus,.settings-form-group select:focus{outline:none;border-color:var(--accent)}.settings-btn{padding:8px 16px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-weight:600;transition:background .15s}.settings-btn.primary{background:var(--accent);color:#fff}.settings-btn.primary:hover{background:#1a7ecb}.settings-btn.secondary{background:var(--bg-card-hover);color:var(--text-primary);border:1px solid var(--border)}.admin-section{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:8px}.admin-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;background:var(--bg-card);font-size:13px;font-weight:600}.admin-section-header:hover{background:var(--bg-card-hover)}.admin-section-body{padding:16px;border-top:1px solid var(--border);background:var(--bg-primary)}.chats-page-with-context{display:flex;height:100%}.chats-page-with-context .chats-page{flex:1;min-width:0}.company-header-chip{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text-secondary);padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);white-space:nowrap}.tt-panel-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}.tt-subheading{font-size:11.5px;color:var(--text-muted);margin-top:3px;font-weight:400}.tt-expand-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:4px 7px;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;transition:background .15s}.tt-expand-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.tt-edit-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .15s}.tt-edit-btn:hover{background:var(--bg-card-hover)}.tt-empty{font-size:13px;color:var(--text-muted);padding:18px 0 8px;text-align:center}.tt-retry-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:0;text-decoration:underline}.tt-rows{display:flex;flex-direction:column;margin-top:6px}.tt-row{display:grid;grid-template-columns:170px 1fr 160px;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid var(--border)}.tt-row:last-child{border-bottom:none}.tt-label-col{min-width:0}.tt-kpi-name{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4}.tt-unit{font-weight:400;color:var(--text-muted);font-size:12px}.tt-bar-col{position:relative;min-width:0;overflow:visible}.tt-bar-track{position:relative;height:9px;background:var(--bg-primary);border:1px solid var(--border);border-radius:4px;overflow:visible}.tt-bar-base-fill{position:absolute;left:0;top:-1px;height:calc(100% + 2px);border-radius:4px 0 0 4px;transition:width .5s ease}.tt-bar-over-fill{position:absolute;top:-1px;height:calc(100% + 2px);border:1.5px dashed;border-radius:0 3px 3px 0}.tt-line-target{position:absolute;top:-10px;height:calc(100% + 20px);transform:translate(-50%);width:0;border-left:2px dashed #2563eb;z-index:3}.tt-triangle-current{position:absolute;top:-9px;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:8px solid #f97316;z-index:4}.tt-status-col{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.tt-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:4px;white-space:nowrap}.tt-badge-ok{background:#16a34a1a;color:#16a34a}.tt-badge-over{background:#dc26261a;color:#dc2626}.tt-badge-below{background:#d977061f;color:#b45309}.tt-tooltip{z-index:9999;background:var(--bg-card);border:1px solid var(--border);border-radius:9px;padding:12px 14px;min-width:280px;max-width:310px;box-shadow:0 6px 24px #00000021;pointer-events:none}.tt-tooltip-title{display:flex;align-items:center;font-size:12.5px;font-weight:700;color:var(--text-primary);margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid var(--border)}.tt-tooltip-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;flex-shrink:0}.tt-tooltip-row{display:flex;justify-content:space-between;gap:14px;font-size:11.5px;line-height:1.85}.tt-tooltip-key{color:var(--text-muted);flex-shrink:0}.tt-tooltip-val{color:var(--text-primary);font-weight:500;text-align:right}.tt-tooltip-note{margin-top:7px;padding-top:7px;border-top:1px solid var(--border);font-size:11px;color:#059669;font-style:italic}.tt-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:11px;color:var(--text-secondary)}.tt-legend-item{display:flex;align-items:center;gap:5px}.tt-legend-swatch{width:11px;height:11px;border-radius:2px;flex-shrink:0}.tt-legend-dashed{width:18px;border-top:2px dashed;flex-shrink:0}.tt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px}.tt-panel-expanded{width:min(92vw,1080px);max-height:82vh;overflow-y:auto}@media (max-width: 900px){.tt-row{grid-template-columns:150px 1fr 140px;gap:12px}}@media (max-width: 680px){.tt-row{grid-template-columns:1fr;gap:8px}.tt-status-col{justify-content:flex-start}.tt-tooltip{left:0;transform:none}}
