:root{color-scheme:light;font-family:SF Pro Text,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-synthesis:none;--bg: #f4f6fa;--paper: #ffffff;--ink: #162238;--muted: #718097;--quiet: #98a4b7;--line: #e5eaf2;--line-strong: #d8e0ec;--nav: #0e1a2e;--nav-hover: #182945;--blue: #3567e8;--blue-strong: #2856ce;--blue-soft: #edf2ff;--purple: #7557d7;--purple-soft: #f2efff;--green: #138970;--green-soft: #eaf7f2;--red: #c95160;--red-soft: #fff0f2;--amber: #ad751d;--amber-soft: #fff6e6;--radius: 12px;--shadow: 0 8px 26px rgba(28, 48, 82, .05)}*{box-sizing:border-box;scrollbar-width:none}*::-webkit-scrollbar{display:none}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100dvh;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,select,textarea{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8eacff;outline-offset:2px}svg{flex:0 0 auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-shell{display:flex;min-height:100dvh}.app-main{width:calc(100% - 216px);margin-left:216px;min-width:0}.sidebar{position:fixed;inset:0 auto 0 0;width:216px;display:flex;flex-direction:column;padding:22px 14px 16px;background:var(--nav);color:#aab7cd;z-index:20}.brand{display:flex;align-items:center;gap:10px;border:0;padding:0 8px 22px;background:transparent;color:#fff;text-align:left}.brand-mark{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(145deg,#789aff,#3e65df);box-shadow:0 6px 16px #4066e040}.brand-copy{display:block;min-width:0}.brand-copy strong{display:block;white-space:nowrap;font-size:14px;font-weight:650}.brand-copy small{display:block;color:#7789a8;font-size:8px;letter-spacing:1.3px;margin-top:2px}.nav-scroll{flex:1;overflow-y:auto}.nav-caption{margin:17px 11px 7px;color:#637492;font-size:10px;letter-spacing:1.2px}.nav-button{width:100%;display:flex;align-items:center;gap:11px;margin:3px 0;padding:10px 11px;border:0;border-radius:9px;color:#aab7cc;background:transparent;font-size:12px;text-align:left;transition:.14s ease}.nav-button:hover{color:#eef3ff;background:var(--nav-hover)}.nav-button.active{color:#fff;background:var(--blue);box-shadow:0 5px 15px #020a1a2e}.nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-badge{margin-left:auto;padding:1px 5px;border-radius:5px;background:#ffffff1f;font-size:9px}.sidebar-bottom{border-top:1px solid rgba(255,255,255,.08);padding:15px 8px 0;color:#70829f;font-size:10px}.sidebar-bottom strong{display:block;color:#bdc9dc;font-weight:550;margin-bottom:3px}.semantic-dot{display:inline-block;width:6px;height:6px;margin:0 5px;border-radius:50%;background:#5eb79b;vertical-align:middle}.topbar{position:sticky;top:0;z-index:15;height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 30px;background:#fffffff5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.breadcrumb{display:flex;align-items:center;gap:8px;color:var(--quiet);font-size:11px;white-space:nowrap}.breadcrumb strong{color:#506078;font-weight:600}.top-actions{display:flex;align-items:center;gap:8px;min-width:0}.top-actions select{max-width:132px;border:0;padding:6px 2px;background:transparent;color:#526078;font-size:11px}.scope-switch{display:flex;align-items:center;gap:6px;min-width:0;padding:3px 7px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:#f8faff;font-size:10px;white-space:nowrap}.scope-switch select{min-width:0;max-width:230px;padding:3px 2px;background:transparent;color:var(--ink);text-overflow:ellipsis}.scope-switch>span{max-width:160px;overflow:hidden;text-overflow:ellipsis}.account-name{white-space:nowrap}.top-divider{width:1px;height:24px;margin:0 4px;background:var(--line)}.avatar{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;color:#5068c7;background:#e9edfc;font-size:10px;font-weight:700}.icon-button{display:inline-flex;align-items:center;justify-content:center;padding:7px;border:0;border-radius:8px;background:transparent;color:#74829a}.icon-button:hover{color:var(--blue);background:var(--blue-soft)}.content{width:100%;padding:26px 30px 48px}.scope-back-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:14px}.scope-back-row>span{min-width:0;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.table-wrap:focus-visible{outline:3px solid #8eacff;outline-offset:-3px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.page-heading h1{margin:0;font-size:26px;line-height:1.25;letter-spacing:-.35px;font-weight:680}.page-heading p{margin:7px 0 0;color:var(--muted);font-size:12px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:8px 13px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#4d5e77;font-size:12px;white-space:nowrap;transition:.14s ease}.button:hover:not(:disabled){border-color:#a9bdf2;color:var(--blue);transform:translateY(-1px);box-shadow:0 4px 12px #2d539d14}.button:active:not(:disabled){transform:translateY(0) scale(.98)}.button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.button.primary:hover:not(:disabled){border-color:var(--blue-strong);background:var(--blue-strong);color:#fff}.button.ai{border-color:#ded6fb;background:var(--purple-soft);color:var(--purple)}.button.danger{border-color:#f1cbd1;color:var(--red)}.button.text{border:0;background:transparent;box-shadow:none;color:var(--blue)}.button.small{min-height:30px;padding:5px 9px;font-size:11px}.tag{display:inline-flex;width:fit-content;align-items:center;padding:3px 7px;border-radius:5px;color:#5675be;background:var(--blue-soft);font-size:10px;line-height:1.4;white-space:nowrap}.tag.green{color:var(--green);background:var(--green-soft)}.tag.amber{color:var(--amber);background:var(--amber-soft)}.tag.gray{color:#7f8b9d;background:#f0f2f6}.tag.purple{color:var(--purple);background:var(--purple-soft)}.tag.red{color:var(--red);background:var(--red-soft)}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.panel{min-width:0;margin-bottom:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);overflow:hidden}.scope-loading-panel{min-height:220px;display:flex;align-items:center}.scope-loading-panel .panel-body{width:100%;padding-top:19px}.panel:has(.scope-picker[open]){position:relative;z-index:2;overflow:visible}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 19px 12px}.panel-head h2{margin:0;font-size:14px;font-weight:650}.panel-head p{margin:4px 0 0;color:var(--quiet);font-size:10px}.panel-body{padding:4px 19px 19px}.body-copy{color:#718099;font-size:12px;line-height:1.8}.footnote{color:var(--quiet);font-size:10px;line-height:1.65}.grid-main-side{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr);gap:18px}.grid-equal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.department-context{align-items:flex-end}.department-filters{display:grid;flex:1;min-width:0;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.department-filters .field{margin:0;min-width:0}.department-context-meta{display:flex;align-items:center;gap:8px;min-height:34px;color:#64738b;font-size:11px;white-space:nowrap}.department-page-control{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-3px 0 16px;color:#64738b;font-size:11px}.department-matrix{min-width:640px}.department-matrix th:first-child,.department-matrix td:first-child{position:sticky;left:0;z-index:1;min-width:210px;max-width:260px;white-space:normal;background:#fff}.department-matrix th:first-child{z-index:3;background:#f8fafc}.department-matrix td:first-child code{overflow-wrap:anywhere}.department-matrix th:not(:first-child),.department-matrix td:not(:first-child){min-width:160px;max-width:260px;vertical-align:top;white-space:normal}.department-column-head{display:flex;align-items:flex-start;flex-direction:column;gap:4px}.department-column-head>strong,.department-identity>strong{color:#32435e;font-size:12px;font-weight:600}.department-column-head>small,.department-identity>small,.department-records td.name>small{display:block;color:#64738b;font-size:10px;font-weight:400;white-space:normal;overflow-wrap:anywhere}.department-column-head .button{margin-top:4px;font-weight:400}.department-result-button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:42px;padding:0;border:0;background:transparent;color:#32435e;text-align:left;white-space:normal}.department-result-button>strong{font-size:14px;font-weight:600}.department-result-button>span,.department-result-note{color:#64738b;font-size:10px;font-weight:400;overflow-wrap:anywhere}.department-result-button:hover>strong{color:var(--blue-strong)}.department-result-button:hover>span{color:var(--blue-strong)}.department-result-note.error{color:var(--red)}.department-loading{display:block;width:80px;height:12px;margin:7px 0;border-radius:4px;background:#e7ecf5}.department-result-loading{display:flex;align-items:center;min-height:42px}.department-empty{padding:24px 0;color:#64738b;text-align:center}.department-dashboard{min-width:1000px}.department-dashboard .department-identity{min-width:170px}.department-dashboard td{vertical-align:top}.department-records{min-width:940px}.department-records td.name{max-width:260px;white-space:normal;overflow-wrap:anywhere}.department-drawer-context{padding:10px 12px;border-radius:7px;background:var(--blue-soft);color:#47649e;font-size:12px;overflow-wrap:anywhere}.department-scroll-hint{display:none}.dashboard-group,.dashboard-metric-picker,.dashboard-layout-editor{margin-bottom:18px}.dashboard-settings-fields{min-width:0;margin:0;border:0}.dashboard-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;margin-bottom:18px}.dashboard-widget{min-width:0}.dashboard-widget>.panel,.dashboard-chart-groups>.panel{margin-bottom:0;height:100%}.dashboard-chart-groups{display:grid;gap:18px;height:100%}.dashboard-widget .dashboard-group{margin-bottom:0}.dashboard-widget .dashboard-group+.dashboard-group{margin-top:18px}.kpi-grid.dashboard-kpis{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;margin-bottom:0}.dashboard-widget.width-4,.dashboard-metric-card.width-4{grid-column:span 4}.dashboard-widget.width-6,.dashboard-metric-card.width-6{grid-column:span 6}.dashboard-widget.width-8{grid-column:span 8}.dashboard-widget.width-12,.dashboard-metric-card.width-12{grid-column:span 12}.dashboard-metric-card.width-2{grid-column:span 2}.dashboard-layout-editor h3{margin:0 0 12px;font-size:13px}.dashboard-layout-rows{display:grid;gap:12px}.dashboard-metric-layout-rows{max-height:410px;overflow:auto}.dashboard-layout-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1.6fr) 116px auto;align-items:end;gap:14px;padding:0 0 12px;border-bottom:1px solid var(--line)}.dashboard-layout-row .field{min-width:0;margin:0}.dashboard-visual-edit-row{grid-template-columns:minmax(150px,1fr) minmax(160px,1.4fr) 140px 112px auto}.dashboard-editor-extra{grid-column:2 / 4}.dashboard-add-module{display:flex;align-items:center;gap:8px}.dashboard-add-module .field{margin:0}.dashboard-layout-editor .footnote,.dashboard-layout-editor .field>span{color:#64738b}.dashboard-series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metric-card>.panel{height:100%;margin:0}.dashboard-module-toggle{display:flex;align-items:center;gap:8px;min-height:34px;color:var(--ink);font-size:12px}.dashboard-module-toggle input{margin:0;accent-color:var(--blue)}.dashboard-order-buttons,.dashboard-metric-row-actions{display:flex;flex-wrap:wrap;gap:6px}.dashboard-editor-section-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}.dashboard-editor-section-title h3{margin:0}.dashboard-picker-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:14px}.dashboard-picker-filters .field{flex:1;min-width:160px;margin:0}.dashboard-metric-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 16px;max-height:300px;overflow:auto;padding:3px}.dashboard-metric-option{display:flex;align-items:flex-start;gap:9px;padding:9px 6px;border-radius:6px;cursor:pointer}.dashboard-metric-option:hover{background:var(--blue-soft)}.dashboard-metric-option input{flex:none;margin:3px 0 0;accent-color:var(--blue)}.dashboard-metric-option>span{min-width:0}.dashboard-metric-option strong{display:block;color:var(--ink);font-size:12px;font-weight:500;overflow-wrap:anywhere}.dashboard-metric-option small{display:block;margin-top:3px;color:#64738b;font-size:11px}.dashboard-picker-selection{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.dashboard-picker-selection>strong{font-size:12px}.dashboard-metric-chips{display:flex;flex-wrap:wrap;gap:7px;max-height:110px;overflow:auto;margin-top:10px}.dashboard-metric-chips button{display:flex;align-items:center;gap:6px;max-width:100%;padding:5px 8px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:#47649e;font-size:11px;text-align:left;overflow-wrap:anywhere}.dashboard-metric-chips button:hover{background:var(--blue-soft)}.dashboard-metric-chips svg{flex:none;width:12px;height:12px}.dashboard-picker-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.dashboard-picker-actions>div{display:flex;flex-wrap:wrap;gap:8px}.dashboard-kpis .kpi-card>strong{white-space:normal;overflow-wrap:anywhere}.dashboard-kpis .kpi-label svg{flex:none}.dashboard-context-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.dashboard-context-label strong{font-size:13px;font-weight:600}.dashboard-context-label>span{color:#64738b;font-size:11px}.dashboard-trend{min-height:240px}.dashboard-trend text{fill:#64738b;font-size:11px}.dashboard-legend{display:flex;gap:12px;color:#64738b;font-size:10px}.dashboard-legend span{display:flex;align-items:center;gap:5px}.dashboard-legend i{width:7px;height:7px;border-radius:50%;background:#5c84eb}.dashboard-legend span:last-child i{background:#73b1b3}.dashboard-chart-groups .empty-state{min-height:240px}.dashboard-chart-groups .bar-row>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-layout .panel-head h2,.dashboard-kpis .kpi-label{overflow-wrap:anywhere}.global-formula-context{align-items:center}.global-formula-context>div{display:grid;gap:4px}.global-formula-context strong{color:var(--ink);font-size:13px}.global-formula-context>div>span{color:#64738b;font-size:11px}.global-formula-context .field{min-width:240px;margin:0}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:19px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}.filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter-label{color:var(--muted);font-size:11px}.filter-divider{width:1px;height:22px;background:var(--line)}.filter-bar select,.field select,.field input{min-height:34px;width:100%;border:1px solid var(--line-strong);border-radius:7px;padding:7px 28px 7px 10px;background:#fff;color:#4e5d74;font-size:12px}.filter-meta{color:#8592a6;font-size:10px;white-space:nowrap}.analysis-filters{justify-content:flex-start;flex-wrap:wrap;gap:12px 20px}.analysis-filters .field{display:flex;align-items:center;gap:9px;min-width:0;margin:0}.analysis-filters .field>span{margin:0;color:#64738b;font-size:12px;white-space:nowrap}.analysis-filters .field select{width:150px;min-height:36px}.analysis-filters .field:first-child select{width:165px}.analysis-filters .field:last-child select{width:205px}.analysis-custom-dates{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:-8px 0 14px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:10px}.analysis-custom-dates .field{width:175px}.analysis-custom-dates>span{align-self:center;font-size:12px;color:var(--muted)}.analysis-result-status{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:32px;margin-bottom:12px;color:#64738b;font-size:12px}.analysis-result-status>span:last-child{display:flex;align-items:center;gap:6px;white-space:nowrap}.analysis-page-tabs{padding:0;margin-bottom:18px}.analysis-group+.analysis-group{margin-top:28px}.analysis-group .panel-head p{color:#64738b;font-size:11px}.heading-actions{display:flex;flex-wrap:wrap;gap:8px}.analysis-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.analysis-kpis .kpi-card>strong{font-size:22px;white-space:normal;overflow-wrap:anywhere}.analysis-kpis .kpi-label{align-items:flex-start;min-height:30px;font-size:12px}.analysis-kpis .kpi-label svg{flex-shrink:0;margin-top:2px}.analysis-kpis .kpi-note{color:#64738b;font-size:11px;line-height:1.65}.analysis-kpis .kpi-label{color:#64738b}.analysis-numeric{font-variant-numeric:tabular-nums;white-space:nowrap}.analysis-chart-legend{display:flex;justify-content:flex-end;gap:16px;font-size:11px;color:var(--muted);margin-bottom:6px}.analysis-chart-legend span{display:flex;align-items:center;gap:6px}.analysis-chart-legend i{width:7px;height:7px;border-radius:50%}.analysis-chart-scroll{max-width:100%;overflow-x:auto}.analysis-chart svg{min-height:240px}.analysis-chart svg text{fill:#64738b;font-size:11px}.analysis-conversion{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.analysis-conversion button{display:flex;flex-direction:column;gap:10px;padding:12px 0;border:0;background:transparent;text-align:left;color:var(--ink)}.analysis-conversion button+button{padding-left:20px;border-left:1px solid var(--line)}.analysis-conversion span,.analysis-conversion small{color:#64738b;font-size:12px}.analysis-conversion strong{font-size:28px;font-weight:650}.horizontal-bars.analysis-age-bars>div{grid-template-columns:88px 1fr 45px 48px}.analysis-age-bars i b{display:block;height:100%;background:#6d8fe6;border-radius:inherit}.analysis-detail-panel>summary{cursor:pointer;padding:16px 18px;color:var(--ink);font-size:13px;font-weight:600}.analysis-detail-panel>summary span{margin-left:10px;color:#64738b;font-size:11px;font-weight:400}.analysis-detail-panel[open]>summary{border-bottom:1px solid var(--line)}.analysis-version-list{overflow-wrap:anywhere}.analysis-metrics-tag{display:inline-flex;align-items:center;gap:7px;min-height:36px;border:1px solid #cddaff;border-radius:6px;padding:6px 10px;background:var(--blue-soft);color:#2856ce;font-size:12px}.analysis-metrics-tag:hover{border-color:var(--blue);background:#e4ecff}.analysis-metrics-tag>span{padding:0 5px;border-radius:4px;background:#fff;font-size:11px}.analysis-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:18px}.analysis-widget{min-width:0;grid-column:span var(--widget-span, 12)}.analysis-widget>.panel{margin:0;height:100%}.analysis-metric-section-title{margin-bottom:12px;font-size:12px;font-weight:600}.kpi-grid.analysis-kpis.customized-analysis-kpis{grid-template-columns:repeat(12,minmax(0,1fr));margin:0}.analysis-metric-widget{min-width:0;grid-column:span var(--metric-span, 2)}.analysis-metric-widget>.panel{height:100%;margin:0}.analysis-layout-editor .panel-head p{color:#64738b}.analysis-layout-editor .footnote,.analysis-chart .footnote{color:#64738b;font-size:11px}.analysis-layout-editor .field>span{color:#64738b}.analysis-module-edit-row,.analysis-metric-edit-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(140px,1.2fr) 110px 100px auto;align-items:end;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.analysis-module-edit-row .field,.analysis-metric-edit-row .field{min-width:0;margin:0}.analysis-editor-data-field{grid-column:2 / 4}.analysis-plain-cell{display:block;width:100%;padding:7px;border:0;border-radius:4px;background:transparent;color:inherit;font:inherit;font-variant-numeric:tabular-nums}.analysis-plain-cell:hover{background:var(--blue-soft)}.analysis-modal-group>h3{margin:0;padding:14px 18px;font-size:12px;border-bottom:1px solid var(--line)}.analysis-modal-group+.analysis-modal-group{border-top:1px solid var(--line)}.cohort-evidence{padding:20px;font-size:13px;line-height:1.6}.cohort-evidence .metric-demo-value>span,.cohort-evidence .footnote{color:#64738b}.cohort-evidence h3{margin:20px 0 8px;font-size:13px}.cohort-evidence-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.cohort-evidence-facts dt{color:#64738b;font-size:12px}.cohort-evidence-facts dd{margin:4px 0 0;font-variant-numeric:tabular-nums}.analysis-modal{width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:0;overflow:hidden;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 50px #0e1a2e2e}.analysis-modal::backdrop{background:#0e1a2e66}.analysis-modal-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 50px)}.analysis-modal .panel-head{flex-shrink:0;flex-direction:row;align-items:flex-start;gap:12px}.analysis-modal .panel-head>div{min-width:0;flex:1}.analysis-modal .panel-head>button{flex-shrink:0}.analysis-modal .panel-head p{color:#64738b;font-size:11px}.analysis-modal-body{overflow:auto;overscroll-behavior:contain;min-height:0}.analysis-modal .data-table th{position:sticky;top:0;z-index:1;background:#f7f9fd}@media(max-width:1100px){.analysis-module-edit-row,.analysis-metric-edit-row{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-editor-data-field{grid-column:auto}}@media(max-width:800px){.analysis-widget{grid-column:span 12}.analysis-metric-widget{grid-column:span 6}.analysis-metric-widget:has(.panel){grid-column:span 12}.analysis-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.analysis-modal-inner{max-height:calc(100dvh - 22px)}.analysis-module-edit-row,.analysis-metric-edit-row{grid-template-columns:1fr}.analysis-modal .data-table{min-width:700px}}.analysis-loading>.panel{min-height:320px}@media(max-width:800px){.analysis-filters .field{flex:1 1 240px}.analysis-filters .field>span{width:48px;flex-shrink:0}.analysis-filters .field select,.analysis-filters .field:first-child select,.analysis-filters .field:last-child select{width:100%;min-width:0}.analysis-kpis,.kpi-grid.analysis-kpis.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-result-status{align-items:flex-start}.analysis-result-status>span:first-child{max-width:75%;overflow-wrap:anywhere}.analysis-chart svg{min-height:190px}.analysis-conversion{grid-template-columns:1fr;gap:0}.analysis-conversion button+button{border-left:0;border-top:1px solid var(--line);padding-left:0}.horizontal-bars.analysis-age-bars>div{grid-template-columns:76px 1fr 40px 40px;gap:8px}}.filter-bar.dashboard-scope-toolbar{align-items:center;padding:12px 16px}.dashboard-scope-toolbar .department-filters{display:flex;flex:0 1 auto;flex-wrap:wrap;gap:12px 20px}.dashboard-scope-toolbar .field{display:flex;align-items:center;gap:10px}.dashboard-scope-toolbar .field>span{margin:0;color:#64738b;font-size:12px;font-weight:500;white-space:nowrap}.dashboard-scope-toolbar .field select{width:180px;min-height:36px}.dashboard-scope-toolbar .field:last-child select{width:220px}.dashboard-scope-toolbar .department-context-meta{flex:none;min-height:36px;padding-left:16px;border-left:1px solid var(--line)}.dashboard-scope-toolbar .department-context-meta>span{font-size:12px;font-variant-numeric:tabular-nums}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.kpi-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card{min-width:0;min-height:126px;display:flex;flex-direction:column;align-items:stretch;padding:15px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);text-align:left;box-shadow:0 4px 16px #1d335606;transition:.15s ease}.kpi-card:not(.static):hover{border-color:#b6c5ef;transform:translateY(-2px);box-shadow:0 8px 20px #2b4a8412}.kpi-card.static{cursor:default}.kpi-label{display:flex;align-items:center;justify-content:space-between;gap:6px;color:#748198;font-size:11px}.kpi-label svg{width:15px;color:#8ca5df}.kpi-card>strong{margin-top:10px;font-size:25px;line-height:1.45;font-weight:680;letter-spacing:-.5px;white-space:nowrap}.kpi-card>strong small{margin-right:5px;color:var(--quiet);font-size:9px;font-weight:500;letter-spacing:0}.kpi-delta,.kpi-note{margin-top:3px;color:#7d8aa0;font-size:9px}.kpi-delta.up{color:var(--green)}.kpi-delta.down{color:var(--red)}.big-number{color:#536b92;font-size:32px;font-weight:650}.big-number small{color:var(--quiet);font-size:11px;font-weight:500}.line-chart{display:block;width:100%;min-height:212px;overflow:visible}.line-chart line{stroke:#edf0f5;stroke-width:1}.line-chart text{fill:#98a4b6;font-size:9px}.line-chart path{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.line-chart .deposit-path{stroke:#5c84eb}.line-chart .withdraw-path{stroke:#73b1b3}.line-chart circle{fill:#5c84eb}.line-chart circle.secondary{fill:#73b1b3}.bars{padding-top:8px}.bar-row{display:grid;grid-template-columns:68px 1fr 50px;align-items:center;gap:10px;margin:17px 0;color:#718097;font-size:10px}.bar-row i,.horizontal-bars i{height:7px;border-radius:5px;background:#eff2f8;overflow:hidden}.bar-row i b,.horizontal-bars i b{display:block;height:100%;border-radius:inherit;background:#6d8fe6}.bar-row strong{text-align:right;color:#53657f;font-weight:600}.horizontal-bars>div{display:grid;grid-template-columns:90px 1fr 45px;gap:12px;align-items:center;margin:18px 0;color:var(--muted);font-size:11px}.horizontal-bars strong{text-align:right;color:#53657f}.ai-insight{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px;padding:14px 16px;border:1px solid #e6dff9;border-radius:var(--radius);background:linear-gradient(115deg,#faf8ff,#f7f8ff);color:#6f61a1}.ai-insight>div{flex:1;min-width:0}.ai-insight strong{display:block;color:#574b7e;font-size:12px}.ai-insight p{margin:3px 0 0;color:#82799d;font-size:11px;line-height:1.75}.notice{display:flex;gap:10px;align-items:flex-start;margin:10px 0;padding:11px 13px;border:1px solid #e4eaf5;border-radius:8px;color:#71819a;background:#f7f9fd;font-size:10px;line-height:1.65}.notice.warning{border-color:#f0dfc1;color:#95713a;background:#fff9ee}.notice-icon{display:inline-flex;margin-top:1px;color:#7894d0}.notice-icon svg{width:17px;height:17px}.notice.warning .notice-icon{color:#b58437}.notice strong{display:block;margin-bottom:2px;color:#576b8b;font-size:11px;font-weight:600}.notice.warning strong{color:#8f692e}.stack-list .notice{margin:0;padding-block:13px;border-width:0 0 1px;border-radius:0;background:transparent}.stack-list .notice:last-child{border-bottom:0}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:11px}.data-table th{position:sticky;top:0;padding:10px 14px;border-block:1px solid #edf1f6;background:#f8fafc;color:#8693a7;font-size:10px;font-weight:550}.data-table td{padding:12px 14px;border-bottom:1px solid #eef2f6;color:#53637a;font-variant-numeric:tabular-nums}.data-table tbody tr:last-child td{border-bottom:0}.data-table td.name{color:#32435e;font-weight:600}.data-table tr.clickable{cursor:pointer}.data-table tr.clickable:hover{background:#f7f9fe}.data-table code{display:block;margin-top:2px;color:#8b99ad;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;font-weight:400}.data-table .metric-index{display:inline-block;min-width:34px;color:#9aa6b6;font-weight:500}.data-table .error-row{background:#fff6f7}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 16px;border-top:1px solid var(--line);color:var(--quiet);font-size:10px}.table-footer>div{display:flex;align-items:center;gap:10px}.metric-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:17px}.metric-counters>div{display:flex;align-items:baseline;gap:8px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#7b899e;font-size:11px}.metric-counters strong{color:#4e6380;font-size:23px;font-weight:650}.catalog-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:17px}.category-panel{height:fit-content}.category-list{padding:10px}.category-list button{width:100%;display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:#7c899e;font-size:10px;text-align:left}.category-list button:hover,.category-list button.active{background:var(--blue-soft);color:#5272c4}.category-list b{font-weight:550}.search-box{display:flex;align-items:center;gap:8px;min-width:230px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:8px;color:#9ba7b8;background:#fff}.search-box input{min-width:0;width:100%;border:0;background:transparent;color:#53627a;font-size:11px}.metadata{display:grid;grid-template-columns:128px minmax(0,1fr);gap:10px 14px;margin:0;font-size:11px}.metadata dt{color:#96a2b2}.metadata dd{margin:0;color:#667892;overflow-wrap:anywhere}.formula-box{padding:15px;border:1px solid #dce5f8;border-radius:9px;background:#f4f7ff;color:#5e77a5;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.metric-demo-value{margin:18px 0;padding:14px;border-radius:9px;background:#f7f9fd}.metric-demo-value span{display:block;color:var(--quiet);font-size:10px}.metric-demo-value strong{display:block;margin-top:4px;color:#526a91;font-size:24px}.tabs{display:flex;gap:22px;padding:0 18px;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{padding:12px 0;border:0;border-bottom:2px solid transparent;color:#8591a4;background:transparent;font-size:11px;white-space:nowrap}.tabs button.active{border-bottom-color:var(--blue);color:var(--blue)}.heatmap td{padding:7px}.heat-cell{min-width:74px;width:100%;padding:10px 7px;border:0;border-radius:6px;color:#4d6394;background:color-mix(in srgb,#d8e5ff calc(var(--heat) * 240%),#f4f7fd);font-size:10px}.heat-cell:hover:not(:disabled){box-shadow:0 0 0 2px #84a1e6}.heat-cell.pending{color:#9ea9b9;background:repeating-linear-gradient(135deg,#fafbfd,#fafbfd 5px,#f1f4f8 5px 6px)}.funnel{padding:12px 20px 22px}.funnel-row{display:flex;align-items:center;gap:12px;margin:14px 0}.funnel-row>span{width:95px;color:#7d899b;font-size:11px}.funnel-row>div{min-width:100px;height:36px;display:flex;align-items:center;justify-content:flex-end;padding:0 12px;border-radius:6px;background:#6d8fe7;color:#fff;font-size:11px}.empty-state{display:flex;min-height:270px;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#98a4b5;text-align:center}.empty-state strong{color:#63738c;font-size:13px}.empty-state span{max-width:420px;font-size:11px}.stepper{display:flex;align-items:center;max-width:720px;margin:5px auto 26px}.stepper>div{display:flex;align-items:center;gap:8px;color:#9aa5b5;font-size:11px;white-space:nowrap}.stepper>div i{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:#e9edf3;font-style:normal}.stepper>div.active{color:var(--blue)}.stepper>div.active i{color:#fff;background:var(--blue)}.stepper>b{height:1px;flex:1;margin:0 18px;background:#dfe5ee}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:block;margin:12px 0}.field>span{display:block;margin-bottom:6px;color:#77869b;font-size:10px}.auth-shell{min-height:100dvh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(100%,420px);padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:10px;font-size:13px}.auth-panel h1{margin:26px 0 4px;font-size:23px;line-height:1.3}.auth-panel>p{color:var(--muted);font-size:12px}.auth-panel>.button{width:100%;margin:10px 0 12px}.auth-panel .footnote{margin-bottom:0;overflow-wrap:anywhere}.admin-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));align-items:end;gap:12px}.admin-form .field,.admin-filter .field{min-width:0;margin:0}.admin-form .button{width:fit-content}.user-form{width:min(100%,1360px);margin-inline:0;display:grid;align-items:start;gap:16px}.user-form-create{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.7fr) minmax(0,1.65fr) auto}.user-form-edit{width:min(100%,920px);margin-inline:0;grid-template-columns:minmax(0,220px) minmax(0,540px) auto}.user-form>.button{min-height:40px;align-self:start;margin-top:24px}.user-form .field>span{color:#64738b;font-size:11px}.user-form .field input,.user-form .field select{min-height:40px}.scope-editor{display:grid;align-content:start;gap:4px;min-width:0}.scope-editor-heading{display:flex;min-height:20px;align-items:center;gap:8px}.scope-editor-heading strong{color:#64738b;font-size:11px;font-weight:400}.scope-picker{position:relative;min-width:0}.scope-picker>summary{display:flex;min-height:40px;align-items:center;gap:8px;padding:5px 10px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:#4e5d74;cursor:pointer;list-style:none}.scope-picker>summary::-webkit-details-marker{display:none}.scope-picker>summary:focus-visible{outline:3px solid #8eacff;outline-offset:2px}.scope-picker>summary>svg{flex:0 0 auto;margin-left:auto;color:#7184a1}.scope-picker[open]>summary{border-color:var(--blue)}.scope-picker[open]>summary>svg{transform:rotate(180deg)}.scope-selected{display:flex;min-width:0;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none}.scope-selected::-webkit-scrollbar{display:none}.scope-chip{flex:0 0 auto;max-width:250px;padding:3px 7px;overflow:hidden;border-radius:5px;background:#edf2fd;color:#47649e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.scope-placeholder{color:#8693a7;font-size:11px}.scope-options{position:absolute;z-index:3;top:calc(100% + 5px);right:0;left:0;display:grid;max-height:230px;padding:4px;overflow-y:auto;border:1px solid var(--line-strong);border-radius:7px;background:#fff;box-shadow:0 8px 22px #20365b1a}.scope-picker:not([open])>.scope-options{display:none}.scope-option-project>strong{display:block;padding:8px 9px 2px;color:#32435e;font-size:12px}.scope-option-line>span{display:block;padding:4px 9px;color:#64738b;font-size:10px}.scope-option-line .scope-option{margin-left:10px}.scope-option{display:flex;align-items:flex-start;gap:9px;padding:9px;border-radius:5px;color:#53637a;cursor:pointer;font-size:11px;line-height:1.4;overflow-wrap:anywhere}.scope-option:hover,.scope-option.selected{background:#f2f6ff}.scope-option input{flex:0 0 auto;width:15px;height:15px;margin:0;accent-color:var(--blue)}.scope-option:has(input:focus-visible){outline:2px solid #8eacff;outline-offset:-2px}.scope-option:has(input:disabled){cursor:not-allowed;opacity:.55}.user-scope-list{display:grid;gap:3px;min-width:180px;max-width:340px;white-space:normal}.user-scope-count,.user-scope-number{color:#8693a7;font-size:10px}.user-scope-item{display:flex;gap:5px;overflow-wrap:anywhere;line-height:1.4}.user-scope-number{flex:0 0 auto}.user-scope-more summary{width:fit-content;color:var(--blue);cursor:pointer;font-size:10px}.user-scope-more>div{display:grid;gap:3px;padding-top:4px}.scope-catalog-form{margin-bottom:15px}.scope-catalog-form .field input+input,.scope-catalog-form .field select+input{margin-top:8px}.scope-catalog-table .scope-group-cell{vertical-align:top;background:#fbfcfe;border-right:1px solid var(--line)}.scope-catalog-table tbody+tbody{border-top:1px solid var(--line-strong)}.upload-scope-picker{width:min(100%,440px);margin:0 0 8px}.admin-form-secondary{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.admin-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.admin-filter .field{min-width:160px}.audit-detail{min-width:260px;max-width:460px;white-space:normal}.audit-detail span{display:block;line-height:1.5}.audit-detail small{display:block;max-width:100%;overflow:hidden;color:var(--muted, #6b7280);text-overflow:ellipsis;white-space:nowrap}.report-create-controls{align-items:flex-end}.report-create-controls .field{width:min(210px,100%);margin:0}.report-create-controls select{min-height:36px}.category-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 22px}.category-upload-option{display:flex;min-height:64px;flex-direction:column;align-items:flex-start;justify-content:center;padding:11px 14px;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink);background:#fff;text-align:left}.category-upload-option:hover{border-color:#a9bdf2}.category-upload-option.active{border-color:var(--blue);background:var(--blue-soft)}.category-upload-option strong{font-size:12px}.category-upload-option span{margin-top:3px;color:var(--muted);font-size:10px}.upload-section-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.upload-section-heading strong{font-size:13px}.upload-section-heading span{color:var(--muted);font-size:10px}.source-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.source-requirement{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.source-requirement>span{min-width:0}.source-requirement strong,.source-requirement small{display:block}.source-requirement strong{font-size:11px}.source-requirement small{color:var(--muted);font-size:10px}.source-requirement .tag{flex:0 0 auto}.source-requirements{margin-bottom:18px}.source-requirement.selectable{width:100%;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer}.source-requirement.selectable:hover{border-color:#a9bdf2}.source-requirement.selectable.active{border-color:var(--blue);background:var(--blue-soft)}.source-requirement.selectable:disabled{cursor:default;opacity:.6}.source-requirement .used-by{margin-top:3px}.source-requirement .coverage-line{margin-top:3px;color:var(--ink)}.source-requirement .coverage-line.has-gap{color:#b45309}.category-upload-grid.quick-pick{margin:10px 0 20px}.template-fields{margin-top:13px;color:var(--muted);font-size:10px}.template-fields summary{width:fit-content;cursor:pointer;color:var(--blue)}.template-fields p{margin:5px 0 0}.workbook-sheet-list{display:grid;gap:10px}.workbook-sheet-review{border:1px solid var(--line-strong);border-radius:9px;background:#fff}.workbook-sheet-review>summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;list-style-position:inside}.workbook-sheet-review>summary strong{font-size:12px}.workbook-sheet-review>summary span{color:var(--muted);font-size:10px}.workbook-sheet-review>summary .tag{margin-left:auto}.workbook-sheet-review .table-wrap{max-height:300px;overflow:auto}.workbook-sheet-review .import-issues{margin:10px 14px 14px}.dropzone{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:20px;padding:38px 20px;border:1.5px dashed #bdcae6;border-radius:11px;color:#7187af;background:#fafcff;text-align:center}.dropzone>span{color:#98a4b5;font-size:10px}.dropzone .actions{margin-top:9px}.upload-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.upload-stat{padding:11px 14px;border:1px solid var(--line);border-radius:8px;color:#8794a8;background:#fff;font-size:10px}.upload-stat strong{display:block;color:#576a88;font-size:22px;font-weight:650}.upload-stat.red strong{color:var(--red)}.upload-stat.green strong{color:var(--green)}.capability{margin-top:17px;padding:13px 15px;border:1px solid #e0e6f3;border-radius:8px;color:#7b8da9;background:#fafcff;font-size:10px}.capability strong{display:block;margin-bottom:6px;color:#5f7394}.capability .tag{margin:0 5px 6px 0}.capability>span{display:block;margin-top:5px}.import-issues{max-height:220px;margin-top:14px;padding:12px 15px;overflow:auto;border:1px solid #f1d5d9;border-radius:8px;background:#fff8f9;color:#8d5360;font-size:11px}.import-issues p{margin:6px 0 0}.import-issues .button{margin-top:10px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.result-state{min-height:390px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center}.result-state h2{margin:15px 0 5px;font-size:18px}.result-state p{max-width:550px;color:var(--muted);font-size:11px}.result-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:50%;color:var(--green);background:var(--green-soft)}.result-icon svg{width:28px;height:28px}.loading-bar{position:relative;width:min(420px,80%);height:6px;border-radius:5px;background:#edf1f7;overflow:hidden}.loading-bar:after{content:"";position:absolute;inset:0;background:var(--blue);transform-origin:left;animation:loading .85s ease-in-out infinite alternate}@keyframes loading{0%{transform:scaleX(.22)}to{transform:scaleX(.82)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.chat-layout{min-height:max(650px,calc(100dvh - 220px));display:grid;grid-template-columns:188px minmax(0,1fr) 220px;gap:15px}.chat-layout>.panel{margin-bottom:0}.chat-history .panel-body{display:flex;flex-direction:column;gap:7px;padding-top:16px}.chat-history .panel-body>strong{margin-bottom:3px;color:#64738b;font-size:10px}.chat-history button{border:0;border-radius:7px;padding:9px;color:#7d8da6;background:transparent;font-size:10px;line-height:1.5;text-align:left}.chat-history button.active{color:#5871ad;background:#f0f3fb}.chat-main{min-height:0;display:flex;flex-direction:column}.chat-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);color:#7788a3;font-size:10px}.chat-body{flex:1;padding:24px 21px}.message.user{width:fit-content;max-width:80%;margin:0 0 22px auto;padding:9px 13px;border-radius:10px 10px 2px;color:#5d7194;background:#eef3fd;font-size:11px}.message.assistant{display:flex;gap:10px;color:#6f809b;font-size:11px;line-height:1.8}.message.assistant>span{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;color:var(--purple);background:var(--purple-soft)}.message.assistant>div{flex:1}.message.assistant h3{margin:0 0 5px;color:#4f668b;font-size:12px}.message.assistant p{margin:0 0 13px}.chat-input{padding:13px 16px;border-top:1px solid var(--line)}.quick-prompts{display:flex;gap:6px;margin-bottom:9px;flex-wrap:wrap}.quick-prompts button{padding:4px 7px;border:1px solid #e2e8f4;border-radius:6px;color:#7588b0;background:#f8faff;font-size:9px}.chat-composer{display:flex;align-items:flex-end;gap:8px;padding:9px;border:1px solid #d9e2f2;border-radius:9px}.chat-composer textarea{min-width:0;height:40px;flex:1;resize:none;border:0;color:#5c6e89;font-size:11px}.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-card{overflow:hidden}.report-visual{height:136px;display:flex;flex-direction:column;gap:8px;padding:25px;color:#718ed4;background:linear-gradient(145deg,#edf3fc,#f9fbff)}.report-visual span{display:block;width:74%;height:5px;border-radius:3px;background:#d8e1f1}.report-visual span:nth-of-type(2){width:58%}.report-visual span:nth-of-type(3){width:66%}.report-info{padding:15px 17px 18px}.report-info h3{margin:8px 0 3px;font-size:12px}.report-info p{margin:0 0 12px;color:var(--quiet);font-size:10px}.formula-builder{display:flex;min-height:94px;align-items:center;gap:9px;margin-top:18px;padding:18px;border:1px dashed #bdcae7;border-radius:10px;background:#f8faff;flex-wrap:wrap}.formula-builder span,.formula-builder b{padding:8px 11px;border:1px solid #d9e3f5;border-radius:7px;color:#5d78b1;background:#fff;font-size:11px;font-weight:500}.formula-builder b{background:#eaf0ff}.formula-result{margin-top:16px;padding:14px;border:1px solid #deede7;border-radius:9px;color:#769187;background:#f5faf8}.formula-result span,.formula-result small{display:block;font-size:10px}.formula-result strong{display:block;color:#4f8d78;font-size:24px;font-weight:650}.settings-list{padding:3px 19px 15px}.setting{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.setting:last-child{border-bottom:0}.setting strong{display:block;color:#586b88;font-size:11px;font-weight:600}.setting p{margin:3px 0 0;color:var(--quiet);font-size:9px}.switch{width:34px;height:19px;display:flex;align-items:center;padding:2px;border:0;border-radius:10px;background:#ccd5e3}.switch span{width:15px;height:15px;border-radius:50%;background:#fff;transition:transform .14s ease}.switch.on{background:#6d8fe2}.switch.on span{transform:translate(15px)}.login-preview{max-width:780px;min-height:400px;display:grid;grid-template-columns:1fr 1fr;margin:40px auto;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.login-brand{display:flex;flex-direction:column;justify-content:center;padding:50px 38px;color:#dce6ff;background:linear-gradient(145deg,#183a7a,#4b73df)}.login-brand .brand-mark{width:48px;height:48px}.login-brand h2{margin:20px 0 5px;color:#fff;font-size:25px}.login-brand p{margin:0;font-size:11px}.login-brand small{margin-top:30px;color:#b9c9ef;font-size:10px}.login-form{display:flex;flex-direction:column;justify-content:center;padding:42px 32px}.login-form h3{margin:0 0 12px;font-size:19px}.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;z-index:100;background:#0c1a3157;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.drawer{position:absolute;inset:0 0 0 auto;width:min(500px,96vw);height:100%;background:#fff;box-shadow:-20px 0 70px #0f22422b;overflow-y:auto;animation:drawer-in .18s ease-out}@keyframes drawer-in{0%{transform:translate(30px);opacity:0}}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--line)}.drawer-head span{color:#8a98ad;font-size:9px;letter-spacing:1px}.drawer-head h2{margin:4px 0 1px;font-size:17px}.drawer-head code{color:#8190a6;font-size:10px}.drawer-body{padding:20px 22px 32px;color:#6d7c93;font-size:11px}.drawer-body h3{margin:22px 0 8px;color:#526783;font-size:11px}.drawer-body p{line-height:1.75}.modal-backdrop{display:grid;place-items:center;padding:20px}.modal{width:min(620px,96vw);max-height:88dvh;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 24px 90px #0c1f4040;overflow:hidden}.modal.wide{width:min(980px,96vw)}.ai-model-checks ul{display:grid;gap:6px;margin:6px 0 0;padding:0;list-style:none}.ai-model-checks li{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:12px}.ai-model-checks li.ok{border-color:#b7e0c9;background:#f3fbf6}.ai-model-checks li.failed{border-color:#f1c6c6;background:#fff6f6}.ai-model-checks li span{color:#475569}.analysis-report-hint{margin:-6px 0 10px;color:var(--muted);font-size:11px}.data-table td.name>small{display:block;color:#64738b;font-size:10px;font-weight:400;white-space:normal}.restore-preview{margin:12px 0 0;padding-left:18px;color:#334155}.restore-preview li+li{margin-top:4px}.row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.row-actions span{color:var(--muted)}.version-compare{display:grid;gap:12px;color:#334155}.version-compare-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.version-compare-controls .field{min-width:220px;margin:0}.version-compare-note{margin:0;color:var(--muted)}.version-compare-sides{display:grid;grid-template-columns:1fr 1fr;gap:10px}.version-compare-sides>div,.version-compare-counts>div{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8faff}.version-compare-sides small{color:var(--muted)}.version-compare-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.version-compare-counts strong{font-size:18px}.version-compare-tabs{display:flex;gap:6px}.version-compare-tabs button{padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.version-compare-tabs button.active{border-color:#2f5597;color:#2f5597;font-weight:600}.version-compare-tabs button:disabled{opacity:.5;cursor:default}.version-compare .table-wrap{max-height:320px;overflow:auto}@media(max-width:640px){.version-compare-sides,.version-compare-counts{grid-template-columns:1fr 1fr}}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:15px}.modal-body{max-height:65dvh;padding:20px;color:#6d7c92;font-size:11px;line-height:1.75;overflow-y:auto}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--line);background:#fafbfc}.password-form{display:grid;gap:12px}.password-form .footnote{margin:0}.metric-config-body{padding-top:16px}.metric-config-body>.actions{margin:16px 0}.metric-config-preview{margin-top:18px}.metric-config-preview h3{font-size:12px;color:var(--ink)}.metric-admin-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,45%);border-top:1px solid var(--line)}.metric-admin-list{min-width:0}.metric-admin-filters{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px;padding:8px 16px 12px}.metric-admin-filters .field{margin:0}.metric-admin-editor{min-width:0;padding:17px 18px 20px;border-left:1px solid var(--line)}.metric-admin-editor h3{margin:0 0 7px;color:var(--ink);font-size:13px}.metric-admin-editor .field{margin:12px 0}.metric-admin-editor .field textarea{width:100%;padding:9px 10px;border:1px solid var(--line-strong);border-radius:7px;color:var(--ink);background:#fff;font-size:12px;resize:vertical}.metric-admin-editor>.actions{margin:16px 0}.metric-admin-formula{padding:11px 12px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#f8faff;font-size:11px;line-height:1.65}.metric-admin-formula strong{color:var(--ink)}.metric-admin-formula p{margin:4px 0 11px;overflow-wrap:anywhere}.metric-admin-formula p:last-child{margin-bottom:0}.formula-original-note{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8faff;color:var(--muted);font-size:11px;line-height:1.65}.formula-original-note strong{display:block;color:var(--ink);font-size:11px}.formula-original-note p{margin:4px 0;color:var(--ink)}.metric-admin-history{margin-top:16px;color:var(--muted);font-size:10px}.metric-admin-history li{margin-top:7px;line-height:1.8}.metric-admin-history li .button{margin-left:8px}.formula-node{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#f8faff}.formula-node .field{min-width:0;margin:5px 0 10px}.formula-node .field:last-child{margin-bottom:0}.formula-node-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}.formula-node-children{display:grid;gap:9px;margin-top:9px}.formula-node-children>.formula-node{background:#fff}.formula-node .footnote{margin:6px 0}.formula-quick{margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:8px;background:#f8faff}.formula-quick-heading{display:grid;gap:3px;color:var(--ink);font-size:12px}.formula-quick-heading span,.formula-quick-note{color:var(--muted);font-size:11px;line-height:1.6}.formula-quick-note{margin:10px 0 0}.formula-quick-grid{display:grid;grid-template-columns:minmax(0,1fr)}.formula-quick-grid .field{min-width:0;margin:10px 0 0}.formula-quick-operand{min-width:0}.formula-quick-operand.has-day{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px}.formula-quick-preview{margin:12px 0 0;padding:9px 10px;border-radius:6px;color:var(--ink);background:#edf2ff;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.formula-quick .footnote{margin:10px 0 0}.formula-advanced{margin:12px 0;color:var(--muted);font-size:11px}.formula-advanced summary{cursor:pointer;color:var(--blue)}.formula-advanced>.metric-admin-formula{margin:10px 0}.formula-cohort{display:grid;gap:10px}.formula-segment{min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.formula-segment>strong,.formula-condition-head>strong{color:var(--ink);font-size:11px}.formula-segment .field{margin:9px 0 0}.formula-condition{padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.formula-condition-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.formula-window{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.formula-check{display:flex;align-items:center;gap:7px;margin-top:10px;color:var(--muted);font-size:11px}.formula-check input{width:auto}.prose p{margin:0 0 12px}.toast{position:fixed;left:calc(50% + 108px);bottom:28px;z-index:200;max-width:min(460px,84vw);padding:10px 16px;border-radius:8px;background:#21334f;color:#fff;box-shadow:0 8px 28px #11274933;font-size:11px;opacity:0;pointer-events:none;transform:translate(-50%,15px);transition:.18s ease}.toast.visible{opacity:1;transform:translate(-50%)}@media(max-width:1260px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-grid.dashboard-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-metric-card.width-12{grid-column:span 6}.chat-layout{grid-template-columns:170px minmax(0,1fr)}.chat-context{display:none}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1180px){.top-actions>.tag,.top-actions>.account-name{display:none}.scope-switch select{max-width:180px}}@media(max-width:980px){.dashboard-layout>.dashboard-widget{grid-column:1 / -1}.dashboard-layout-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-editor-extra{grid-column:auto}.dashboard-series-grid,.metric-admin-layout{grid-template-columns:1fr}.metric-admin-editor{border-top:1px solid var(--line);border-left:0}.sidebar{width:72px;padding-inline:9px}.brand-copy,.nav-caption,.nav-text,.nav-badge,.sidebar-bottom{display:none}.brand{padding-inline:10px}.nav-button{justify-content:center;padding:12px 10px}.app-main{width:calc(100% - 72px);margin-left:72px}.content{padding:22px}.topbar{padding-inline:22px}.grid-main-side,.grid-equal{grid-template-columns:1fr}.report-grid,.category-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toast{left:50%}}@media(max-width:1180px){.user-form-create{grid-template-columns:repeat(3,minmax(0,1fr))}.user-form-create>.scope-editor{grid-column:1 / 3}.user-form-create>.button{grid-column:3;justify-self:end}.user-form-edit{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto}}@media(max-width:680px){.dashboard-scope-toolbar .department-filters{display:grid;grid-template-columns:1fr;gap:10px}.dashboard-scope-toolbar .field{display:grid;grid-template-columns:44px minmax(0,1fr)}.dashboard-scope-toolbar .field select,.dashboard-scope-toolbar .field:last-child select{width:100%;min-width:0}.dashboard-scope-toolbar .department-context-meta{justify-content:space-between;padding:10px 0 0;border-left:0;border-top:1px solid var(--line)}.dashboard-layout-row{gap:10px}.dashboard-module-toggle,.dashboard-metric-row-actions,.dashboard-layout-row .dashboard-order-buttons{grid-column:1 / -1}.metric-layout-row>.field:first-child{grid-column:1 / -1}.dashboard-metric-layout-rows{max-height:480px}.filter-bar.department-context{flex-direction:column;align-items:stretch;gap:10px}.department-filters{width:100%;grid-template-columns:1fr}.department-context-meta{justify-content:space-between}.department-page-control{flex-wrap:wrap}.department-matrix th:first-child,.department-matrix td:first-child{min-width:140px;max-width:180px}.department-scroll-hint{display:block;margin:0 0 12px;color:#64738b;font-size:11px}.dashboard-context-label{align-items:flex-start;flex-direction:column;gap:4px}.filter-bar.global-formula-context{flex-direction:column;align-items:stretch}.global-formula-context .field{min-width:0}.top-actions>.icon-button{display:none}.formula-quick-grid,.metric-admin-filters,.formula-node-fields,.admin-form,.user-form-create,.user-form-edit{grid-template-columns:1fr}.user-form-create>.scope-editor,.user-form-create>.button{grid-column:1}.admin-form .button{width:100%}.user-form>.button{margin-top:0}.sidebar{width:58px;padding-inline:5px}.app-main{width:calc(100% - 58px);margin-left:58px}.topbar{height:60px;padding-inline:12px}.breadcrumb>span,.top-actions>.tag,.top-actions .top-divider,.top-actions .avatar{display:none}.top-actions select{width:105px}.scope-switch{gap:3px;padding-inline:4px}.scope-switch>span{display:none}.top-actions .scope-switch select{width:100px}.content{padding:18px 11px 35px}.page-heading{flex-direction:column;gap:12px}.page-heading h1{font-size:22px}.filter-bar{align-items:flex-start}.filter-meta{display:none}.filter-group{gap:7px}.filter-divider{display:none}.kpi-grid,.kpi-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi-grid.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpis .dashboard-metric-card{grid-column:span 2}.dashboard-kpis .dashboard-metric-card.width-2{grid-column:span 1}.kpi-card{min-height:112px;padding:12px 10px}.kpi-card>strong{font-size:20px}.catalog-layout{grid-template-columns:1fr}.category-list{display:flex;gap:5px;overflow-x:auto}.category-list button{width:auto;flex:0 0 auto;gap:7px;white-space:nowrap}.search-box{min-width:0;width:100%}.panel-head{flex-wrap:wrap}.metric-counters{gap:6px}.metric-counters>div{flex-direction:column;gap:0;padding:10px}.metric-counters strong{font-size:20px}.form-grid,.upload-stats,.report-grid,.category-upload-grid,.source-requirements{grid-template-columns:1fr}.upload-section-heading,.upload-section-heading span{display:block}.chat-layout{grid-template-columns:1fr}.chat-history{display:none}.stepper{margin-bottom:18px}.stepper>div{gap:4px;font-size:9px}.stepper>div i{width:23px;height:23px}.stepper>b{margin-inline:7px}.login-preview{grid-template-columns:1fr;margin:10px auto}.login-brand,.login-form{padding:28px}.table-footer{align-items:flex-start;flex-direction:column}}@media(max-width:480px){.topbar .breadcrumb{display:none}.topbar .top-actions{width:100%;justify-content:flex-end}}.upload-file-review{margin-top:16px}.upload-file-review .upload-section-heading .button{margin-left:auto}.onboarding{margin-bottom:16px;padding:16px 18px;border-color:#c9d8f5;background:#f7faff}.onboarding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.onboarding-head h2{margin:0 0 4px;font-size:15px}.onboarding-head p{margin:0;color:var(--muted);font-size:11px}.onboarding-steps{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.onboarding-steps li{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.onboarding-steps li div{display:grid;gap:2px}.onboarding-steps li span:not(.onboarding-mark){color:var(--muted);font-size:11px}.onboarding-steps li.done strong{color:var(--muted);text-decoration:line-through}.onboarding-mark{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid #9fb4d8;border-radius:50%;color:#fff;font-size:12px}.onboarding-steps li.done .onboarding-mark{border-color:#2f9e6b;background:#2f9e6b}.help-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:start}.help-toc{position:sticky;top:12px;display:grid;gap:2px;padding:8px}.help-toc button{padding:7px 10px;border:0;border-radius:6px;background:none;color:#334155;text-align:left;cursor:pointer}.help-toc button:hover{background:#eef3fc}.help-sections{display:grid;gap:12px}.help-section{padding:16px 20px;scroll-margin-top:12px}.help-section h2{margin:0 0 8px;font-size:15px}.help-section .prose p{margin:0 0 8px;line-height:1.75}.help-section code,.auth-help code{padding:1px 5px;border-radius:4px;background:#eef2f8;font-size:11px;overflow-wrap:anywhere}.auth-link{display:block;margin:0 auto 10px;border:0;background:none;color:#2f5597;font-size:12px;cursor:pointer}.auth-help{padding:10px 12px;border-radius:8px;background:#f4f7fc;color:#475569;font-size:12px;line-height:1.7}.auth-help p{margin:0 0 6px}@media(max-width:760px){.help-layout{grid-template-columns:1fr}.help-toc{position:static;grid-auto-flow:column;overflow-x:auto}.onboarding-steps li{grid-template-columns:22px minmax(0,1fr)}.onboarding-steps li .button{grid-column:2;justify-self:start}}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.dashboard-toolbar-context{display:grid;gap:2px;min-width:0}.dashboard-toolbar-context strong{font-size:14px}.dashboard-toolbar-context span{color:var(--muted);font-size:11px}.dashboard-toolbar-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.segmented{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:9px;background:#f4f7fc}.segmented button{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:0;border-radius:7px;background:none;color:#475569;font-size:12px;white-space:nowrap;cursor:pointer}.segmented button.active{background:#fff;color:#1f4fa8;font-weight:600;box-shadow:0 1px 2px #0f234b1f}.segmented button small{color:var(--muted);font-size:10px;font-weight:400}.scope-picker select{min-width:210px;height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px}.dashboard-currencies{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 14px}.dashboard-data-warning{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;color:#9a5b0a;font-size:12px}.dashboard-data-warning .auth-link{white-space:nowrap}.dashboard-section-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:4px 0 10px}.dashboard-section-head h2{margin:0;font-size:15px}.dashboard-section-head span{color:var(--muted);font-size:11px}.kpi-tiles{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.kpi-tiles>.span-3{grid-column:span 3}.kpi-tiles>.span-4{grid-column:span 4}.kpi-tiles>.span-6{grid-column:span 6}.kpi-tiles>.span-12{grid-column:span 12}.kpi-tiles>.kpi-chart>.panel{height:100%;margin:0}@media(max-width:900px){.kpi-tiles>.kpi-tile{grid-column:span 6}.kpi-tiles>.kpi-chart{grid-column:span 12}}.kpi-tile{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;padding:14px 16px 10px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow);text-align:left;cursor:pointer}.kpi-tile:hover{border-color:#b9c9e8}.kpi-tile-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi-tile-name{flex:1;min-width:0;overflow:hidden;color:#5b6b82;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.kpi-tile-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:9px}.kpi-tile-value{font-size:26px;font-weight:650;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.kpi-tile-value small{margin-left:4px;color:var(--muted);font-size:12px;font-weight:500;letter-spacing:0}.kpi-tile-foot{min-height:16px;font-size:12px}.kpi-tile-reason{color:var(--muted);font-size:11px}.change{font-style:normal;font-weight:600;white-space:nowrap}.change em{color:var(--muted);font-style:normal;font-weight:400}.change.good{color:#1f8a5b}.change.bad{color:#c2412d}.change.neutral{color:#5b6b82}.sparkline{width:100%;height:26px}.sparkline polyline{fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.tone-blue{color:#2f6fdd;background:#e8f0fd}.tone-green{color:#1d8a64;background:#e3f5ee}.tone-coral{color:#c4532a;background:#fbece6}.tone-amber{color:#a86a12;background:#fbf0dc}.tone-purple{color:#5b4fc7;background:#eeedfd}.sparkline.tone-blue,.sparkline.tone-green,.sparkline.tone-coral,.sparkline.tone-amber,.sparkline.tone-purple{background:none}.sparkline.tone-blue polyline{stroke:#2f6fdd}.sparkline.tone-green polyline{stroke:#1d8a64}.sparkline.tone-coral polyline{stroke:#c4532a}.sparkline.tone-amber polyline{stroke:#a86a12}.sparkline.tone-purple polyline{stroke:#5b4fc7}.dashboard-categories{margin-bottom:4px}.category-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.category-card{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:7px;min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow);text-align:left;cursor:pointer}.category-card:hover{border-color:#b9c9e8}.category-card.active{border-color:#2f6fdd;box-shadow:0 0 0 2px #2f6fdd26}.category-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.category-card-head strong{font-size:14px}.category-card-head span{color:var(--muted);font-size:11px}.category-progress{height:4px;border-radius:2px;background:#edf1f7;overflow:hidden}.category-progress i{display:block;height:100%;border-radius:2px;background:#2f6fdd}.category-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px}.category-line>span{overflow:hidden;color:#5b6b82;text-overflow:ellipsis;white-space:nowrap}.category-line b{display:inline-flex;align-items:baseline;gap:6px;font-size:13px;font-weight:600;white-space:nowrap}.category-line b em{font-size:11px}.category-line small{color:var(--muted);font-size:11px;white-space:nowrap}.category-empty{color:var(--muted);font-size:12px}.category-detail{margin-top:12px}.category-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 6px}.category-detail-head h3{margin:0;font-size:14px}.category-detail-head p{margin:2px 0 0;color:var(--muted);font-size:11px}.category-table td small{display:block;color:var(--muted);font-size:10px;white-space:normal}.status-dot{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#b8c2d3;vertical-align:1px}.status-dot.ok{background:#1f8a5b}.auth-link.inline{display:inline;margin:0 0 0 4px;padding:0}@media(max-width:640px){.dashboard-toolbar{padding:10px 12px}.scope-picker,.scope-picker select{min-width:0;width:100%}.kpi-tiles{gap:8px}.kpi-tile{padding:12px 12px 8px}.kpi-tile-icon{width:26px;height:26px}.kpi-tile-value{font-size:20px}.category-cards{grid-template-columns:minmax(0,1fr)}}.stale-note{color:var(--amber);font-style:normal}.stale-note:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:currentColor;animation:stale-pulse 1.4s ease-in-out infinite;vertical-align:1px}@keyframes stale-pulse{50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.stale-note:before{animation:none}}.attention-strip{margin:0 0 14px;padding:12px 14px;border:1px solid #f3d3d8;border-radius:10px;background:var(--red-soft)}.attention-strip.calm{display:flex;align-items:center;gap:8px;border-color:var(--line);background:#fff;color:var(--muted);font-size:12px;padding:9px 14px}.attention-strip.calm svg{color:var(--green);flex:none}.attention-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font-size:12px;color:var(--muted)}.attention-head svg{color:var(--red)}.attention-head strong{color:var(--ink);font-size:13px}.attention-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px;margin-top:10px}.attention-item{display:grid;gap:3px;min-width:0;padding:9px 11px;border:1px solid #f3d3d8;border-radius:8px;background:#fff;text-align:left;cursor:pointer;font:inherit}.attention-item:hover,.attention-item:focus-visible{border-color:var(--red)}.attention-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted)}.attention-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-weight:600;font-size:15px}.attention-value em{font-style:normal;font-size:12px}.attention-item small{color:var(--muted);font-size:11px}@media(max-width:640px){.attention-items{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.compare-note{margin:-4px 0 12px}.alert-bell{position:relative}.alert-badge{position:absolute;top:1px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--red);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center}.alert-banner{margin:0 0 12px;padding:11px 14px;border:1px solid var(--red);border-radius:10px;background:var(--red-soft)}.alert-banner .attention-head svg{color:var(--red)}.alert-banner-items{display:grid;gap:4px;margin:8px 0 0;padding:0;list-style:none;font-size:12px}.alert-banner-items li,.alert-list li{display:flex;flex-wrap:wrap;gap:4px 10px}.alert-banner-items strong{color:var(--ink)}.alert-list ul{display:grid;gap:10px;margin:0 0 12px;padding:0;list-style:none}.alert-list li{flex-direction:column;gap:2px}.alert-list small{color:var(--muted)}.alert-settings .subhead{margin:4px 0 10px;font-size:13px}.alert-rules select{max-width:220px}.alert-threshold{display:inline-flex;align-items:center;gap:4px}.alert-threshold input{width:96px}.alert-currency{width:56px;text-transform:uppercase}.form-error{margin:8px 0 0;color:var(--red);font-size:12px}.schedule-run{display:grid;gap:2px;font-size:12px}.schedule-run small{color:var(--muted)}.schedule-run.done{color:var(--green)}.schedule-run.waiting{color:var(--amber)}.schedule-run.failed{color:var(--red)}.report-schedules td.actions{display:flex;gap:6px}.custom-range{position:relative;display:inline-flex}.custom-range-form{position:absolute;z-index:20;top:calc(100% + 6px);right:0;display:grid;gap:8px;width:230px;padding:12px;border:1px solid var(--line-strong);border-radius:10px;background:#fff;box-shadow:0 8px 24px #1622381f}.custom-range-form label{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.custom-range-form input{min-width:0}.custom-range-form small{color:var(--muted);font-size:11px}.custom-range-actions{display:flex;justify-content:flex-end;gap:6px}.category-headline-editor{display:grid;gap:8px;margin-bottom:14px}.category-headline-row{display:grid;grid-template-columns:130px repeat(3,minmax(0,1fr)) auto;align-items:center;gap:8px;font-size:12px}.category-headline-row select{min-width:0}@media(max-width:760px){.category-headline-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.category-headline-row strong{grid-column:1 / -1}}.new-data-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin:0 0 12px;padding:9px 12px;border:1px solid var(--line-strong);border-left:3px solid var(--amber);border-radius:8px;background:var(--amber-soft);font-size:12px;color:var(--ink)}.new-data-notice .button{display:inline-flex;align-items:center;gap:4px}.page-loading{padding:40px 0;color:var(--muted);font-size:13px;text-align:center}.ai-workspace{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(0,3fr) minmax(230px,1fr);gap:16px;align-items:start}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 19px 12px}.panel-header h2{margin:0;font-size:14px;font-weight:650}.panel-header p{margin:4px 0 0;color:var(--quiet);font-size:10px;line-height:1.65}.ai-workspace .panel{margin-bottom:0}.ai-history,.ai-context{position:sticky;top:16px}.ai-history-status{flex-shrink:0;color:#596a83;font-size:11px}.ai-history nav{display:grid;gap:4px;padding:0 12px 16px;max-height:58vh;overflow:auto}.ai-history nav button{border:0;background:transparent;text-align:left;padding:10px;border-radius:6px;color:var(--text-secondary, #526481);overflow-wrap:anywhere;line-height:1.5;cursor:pointer}.ai-history nav button.active{color:#315fe6;background:#edf2ff}.ai-conversation{height:calc(100dvh - 196px);min-height:620px;display:flex;flex-direction:column;overflow:hidden}.ai-conversation>.panel-header>div{min-width:0}.ai-conversation>.panel-header h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-messages{min-width:0;min-height:0;padding:20px;flex:1;overflow:auto}.ai-start{padding:24px 0 36px}.ai-start h3{font-size:20px;margin:0 0 12px}.ai-templates,.ai-report-actions,.ai-export-links,.ai-citations,.ai-chart-types{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ai-templates{margin-top:24px}.ai-turn+.ai-turn{border-top:1px solid #e3e9f3;margin-top:24px;padding-top:24px}.ai-user-message{background:#edf2ff;color:#344e83;padding:12px 16px;border-radius:8px;width:fit-content;max-width:88%;margin-left:auto;white-space:pre-wrap;overflow-wrap:anywhere}.ai-response-meta{font-size:11px;color:#7384a0;margin:20px 0 8px;overflow-wrap:anywhere}.ai-timing{margin-top:16px;color:#596a83;font-size:11px}.ai-timing summary{cursor:pointer;overflow-wrap:anywhere}.ai-timing .table-wrap{margin-top:12px}.ai-timing .data-table{table-layout:fixed;white-space:normal}.ai-timing .data-table th{color:#596a83}.ai-timing .data-table th:not(:first-child){width:28%}.ai-timing .data-table th,.ai-timing .data-table td{padding:10px 8px}.ai-timing p{overflow-wrap:anywhere}.ai-answer-section{margin:16px 0}.ai-answer-section h4{font-size:13px;margin:0 0 6px}.ai-answer-section p{margin:0 0 10px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.ai-composer{padding:16px 20px;border-top:1px solid #e3e9f3;background:#fbfcff}.ai-composer textarea{width:100%;resize:vertical;min-height:78px;padding:12px;font:inherit;border:1px solid #d8e2f3;border-radius:6px}.ai-composer-actions{display:flex;gap:12px;align-items:end;justify-content:space-between;margin-top:12px}.ai-composer-actions .field{flex:1;min-width:0;margin:0}.ai-composer-actions select{max-width:100%;min-height:36px}.ai-composer-actions>.button{height:36px;flex-shrink:0}.ai-context .panel-body{max-height:calc(100dvh - 260px);overflow:auto}.ai-settings-fields{border:0;padding:0;margin:0;display:grid;gap:14px;min-width:0}.ai-settings-fields legend{margin:0 0 10px;font-size:12px;font-weight:600}.ai-check{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.ai-check input,.ai-model-option input{margin-top:4px;flex-shrink:0}.ai-scope-options{display:grid;gap:8px;max-height:240px;overflow:auto}.ai-query-meta{font-size:12px;line-height:1.7}.ai-query-meta dt{color:#7384a0;margin-top:10px}.ai-query-meta dd{margin:0;overflow-wrap:anywhere}.ai-basis-item{display:grid;gap:6px;border:0;border-bottom:1px solid #e3e9f3;padding:12px 0;width:100%;background:transparent;text-align:left;cursor:pointer;color:#365cac}.ai-basis-item span{font-size:11px;color:#7384a0}.ai-evidence-link{color:#315fe6;text-align:left;background:transparent;padding:0;border:0;font:inherit;cursor:pointer}.ai-scope-note{display:block;margin-top:5px;font-size:10px;color:#7384a0}.ai-anomalies{padding:12px;background:#fff8ec;border:1px solid #f4dfbc;border-radius:8px;margin:16px 0}.ai-anomalies h4{margin:0 0 8px}.ai-anomaly{display:block;text-align:left;width:100%;padding:7px 0;border:0;background:transparent;color:#855514;font:inherit;cursor:pointer;line-height:1.7}.ai-error{color:#ad3649;background:#fff6f7;padding:10px 12px;border-radius:6px;font-size:12px;overflow-wrap:anywhere}.ai-processing{color:#526481;font-size:12px}.ai-chart-panel{margin-top:16px}.ai-chart-panel .panel-header h3{margin:0;font-size:13px}.ai-chart-panel .panel-header p{font-size:11px;max-width:52ch}.ai-chart-types{padding:12px 16px 0}.ai-chart-interactive.is-brushing{cursor:crosshair;outline:2px solid #8baaf6;outline-offset:-2px;background:#f5f8ff}.ai-chart-interactive{position:relative}.ai-brush-band{position:absolute;background:#557ee82b;border:1px solid #557ee8;pointer-events:none;z-index:1}.ai-brush-band span{position:absolute;top:-28px;left:0;font-size:11px;padding:3px 6px;background:#315fe6;color:#fff;border-radius:4px;white-space:nowrap}.ai-brush-note{padding:0 16px 12px}.ai-pie{display:grid;grid-template-columns:minmax(130px,220px) minmax(0,1fr);gap:20px;padding:20px;align-items:center}.ai-pie svg{width:100%}.ai-pie ul{padding:0;margin:0;list-style:none}.ai-pie li{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:8px 0}.ai-funnel{padding:20px;display:grid;gap:16px}.ai-funnel>div{display:grid;gap:8px;font-size:12px}.ai-funnel-track{height:38px;position:relative;background:#f1f4fa}.ai-funnel-track>div{height:100%;background:#8baaf0}.ai-funnel-track strong{position:absolute;left:12px;top:10px;color:#17263e}.ai-report-actions{margin-top:16px}.ai-model-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.ai-model-options{max-height:280px;overflow:auto;border:1px solid #e3e9f3;border-radius:6px}.ai-model-options:empty{display:none}.ai-model-option{padding:12px;display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid #edf1f7}.ai-model-option small{display:block;font-size:11px;margin-top:6px;color:#7384a0}.ai-model-option span{overflow-wrap:anywhere}.ai-dialog{width:min(1050px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #dce4f1;border-radius:12px;padding:0;color:#17263e;box-shadow:0 16px 60px #17263e33}.ai-dialog::backdrop{background:#17263e66}.ai-dialog .panel-header{position:sticky;top:0;background:#fff;z-index:1}.ai-dialog .table-wrap{margin-top:16px}.ai-report-list>div{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid #e3e9f3;align-items:center}.ai-report-list>div>div:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.ai-report-list p,.ai-report-list small{font-size:11px;color:#7384a0}.ai-workspace button:focus-visible,.ai-dialog button:focus-visible,.openrouter-settings button:focus-visible{outline:2px solid #557ee8;outline-offset:3px}.ai-workspace .footnote,.ai-workspace .panel-header p,.ai-workspace .ai-response-meta,.ai-workspace .ai-scope-note,.ai-workspace .ai-query-meta dt,.ai-workspace .ai-basis-item span,.openrouter-settings .footnote,.openrouter-settings .panel-header p,.openrouter-settings .ai-model-option small,.ai-dialog .footnote,.ai-report-list p,.ai-report-list small{color:#596a83}.ai-workspace .field>span,.openrouter-settings .field>span{color:#596a83}.ai-reports-panel .panel-header p,.ai-reports-panel .footnote{color:#596a83}.ai-workspace .analysis-chart .footnote,.ai-workspace .line-chart text{color:#596a83;fill:#596a83}.ai-workspace textarea::placeholder,.openrouter-settings input::placeholder{color:#596a83;opacity:1}@media(max-width:1200px){.ai-workspace{grid-template-columns:175px minmax(0,1fr)}.ai-context{grid-column:1 / -1;position:static}.ai-context .panel-body{max-height:none}.ai-context .ai-settings-fields{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);align-items:start}.ai-context .ai-settings-fields legend{grid-column:1 / -1}}@media(max-width:760px){.ai-workspace{grid-template-columns:minmax(0,1fr)}.ai-history{position:static}.ai-history nav{max-height:150px}.ai-conversation{min-height:0}.ai-context{grid-column:auto}.ai-context .ai-settings-fields{grid-template-columns:minmax(0,1fr)}.ai-messages,.ai-composer{padding:16px}.ai-pie{grid-template-columns:minmax(0,1fr)}.ai-pie svg{max-width:220px;margin:auto}.ai-report-list>div{flex-wrap:wrap}.ai-report-list>div>div:first-child{flex-basis:100%}.ai-dialog{width:calc(100vw - 24px)}}.ai-fallback{display:flex;align-items:center;gap:12px;margin:8px 0 12px;padding:10px 12px;border:1px solid #f3d38b;border-radius:8px;background:#fffaf0;color:#7a5200;font-size:12px}.ai-fallback p{margin:0;flex:1}@media(max-width:760px){.ai-fallback{flex-direction:column;align-items:flex-start}}
