/* Shared composition; each palette supplies the same semantic surface roles. */
:root{
 --bg:#1b2d42;--page-haze:#34557180;--panel:#29435c;--panel2:#304d67;--surface-title:#34536f;
 --line:#45627d;--line-soft:#3a5771;--frame:#587992;--text:#f5f9ff;--muted:#c0d0e0;
 --cyan:#58e3df;--blue:#95c3ff;--purple:#c8b8ff;--green:#79e8b7;--yellow:#ffd17a;--red:#ffacb7;
 --surface-hover:#3c5a74;--selected:#245b69;--table-head:#35556f;
 --success-bg:#164f43;--warning-bg:#574226;--danger-bg:#563448;
 --control-bg:#233b51;--control-line:#68859e;--button-bg:#34526b;--button-text:#f0f6ff;--action-text:#13383d;
 --primary-hover:#8ef1ed;--summary-surface:#223c54;--zebra:#2c4962;--chart-grid:#49677f;--tip-bg:#365a74;--section-radius:12px;
 --layout-gap:14px;--panel-padding:20px;
}
body{background:radial-gradient(ellipse at 0 0,var(--page-haze),transparent 65%) fixed,var(--bg)}
.appearance-bar{display:flex;align-items:center;gap:16px;min-height:36px;margin:0 0 12px;color:var(--muted)}
.appearance-label{font-size:12px;white-space:nowrap}
.theme-choices{display:flex;gap:6px;flex-wrap:wrap}
.theme-choice{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:var(--control-height);padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);font-family:inherit;font-size:14px;font-weight:500;line-height:1.5;cursor:pointer;white-space:nowrap}
.theme-choice:hover{background:var(--panel2);color:var(--text)}
.theme-choice[aria-pressed="true"]{color:var(--text);background:var(--panel2);border-color:var(--control-line)}
.theme-choice:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.theme-swatch{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:#a7d9f0}
[data-palette-option="tech"] .theme-swatch{background:#56dcff}
[data-palette-option="business"] .theme-swatch{background:#e7c18b}
.filters{background:var(--control-bg);border-color:var(--line);border-radius:var(--section-radius);box-shadow:0 5px 18px #00000014;padding:12px;gap:10px}
.field label{white-space:nowrap}
.filter-fields{grid-template-columns:88px repeat(2,minmax(205px,1.3fr)) repeat(5,minmax(88px,1fr)) 104px;gap:10px}
.filters .select{padding-left:10px;padding-right:7px}
.field-hint{margin-left:4px;color:var(--muted);font-size:12px;cursor:help;font-weight:400}
.picker-count{display:none}
.picker-control{padding:0 10px}
.picker-control input::placeholder{color:var(--muted)}
.collection-metrics,.report-workspace,.modal-card,.ops-dialog,.collection-overview>.card{
 --panel-frame:linear-gradient(90deg,var(--cyan),var(--blue)) left top/64px 2px no-repeat,linear-gradient(var(--cyan),var(--cyan)) left top/2px 16px no-repeat,linear-gradient(90deg,var(--frame),var(--frame)) right bottom/32px 1px no-repeat;
 background:var(--panel-frame),var(--panel);border:1px solid var(--frame);border-radius:var(--section-radius);
}
.collection-overview{background:transparent;border:0;border-radius:0;gap:14px;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}
.collection-overview>#companyProjectsCard{border:1px solid var(--frame)}
.collection-overview .card-head{min-height:48px;align-items:flex-start;padding:0 0 8px;border-bottom:1px solid var(--line-soft)}
.collection-overview>.card{gap:8px;padding:16px}
#collectionTrendPlot{flex:0 0 auto;justify-content:flex-start}
#collectionTrendHint{margin-top:auto}
.collection-trend-stats,.project-preview-overview{padding:2px 0 4px}
.collection-trend-stats>div,.project-preview-overview>div{border-color:var(--line-soft);padding:0 16px;gap:4px}
.collection-trend-insight{margin-top:0}
.project-preview-group-head{min-height:32px;margin-bottom:4px}
.project-preview-row{padding:4px 0;min-height:50px;grid-template-rows:auto auto 2px;gap:2px 8px;border-color:var(--line-soft);border-radius:0}
.project-preview-track{height:2px;background:var(--line-soft);margin:0}
.project-preview-group+.project-preview-group{border-color:var(--line-soft)}
.project-preview-total{background:var(--summary-surface);border:0;border-radius:6px;padding:8px 10px}
.project-preview-total-head{margin-bottom:4px}
.project-preview-totals{gap:4px 12px}
.collection-metrics{padding:10px 14px 12px}
.collection-metrics-toolbar{margin-bottom:6px}
.collection-metrics-grid{background:var(--line-soft);border-top:0;border-radius:6px;gap:1px;overflow:hidden}
.collection-metric-group{background:var(--panel)}
.collection-metric-group header{padding:8px;min-height:54px;background:var(--surface-title)}
.collection-metric-group h3{color:var(--text)}
.collection-metric-help{color:var(--muted)}
.collection-metric-part{padding:8px 10px 6px;gap:6px}
.collection-metric-part+.collection-metric-part{border-color:var(--line-soft)}
.collection-metric-part dt{color:var(--muted)}
.collection-metric-part dt small{font-size:12px}
.collection-metric-debt{background:var(--surface-title);gap:8px;padding:12px}
.collection-metric-debt header{background:transparent;padding:0;min-height:0}
.collection-metric-preview{color:var(--button-text);border-color:var(--control-line)}
.collection-metric-preview[aria-pressed="true"]{background:var(--selected);border-color:var(--cyan);color:var(--cyan)}
.report-workspace-head{background:var(--summary-surface);border-bottom-color:var(--line);border-radius:var(--section-radius) var(--section-radius) 0 0;padding:6px 16px 0}
.workspace-tabs{gap:12px}
.workspace-tabs button{padding:0 16px}
.report-workspace .card{padding:20px}
.card-head,.ops-head{border-color:var(--line-soft)}
.finance-metrics,.budget-kpis,.ops-summary{border:0;background:var(--summary-surface);border-radius:8px;padding-top:16px;padding-bottom:16px}
.finance-metric,.budget-kpis>div,.ops-summary>div{border-color:var(--line-soft)}
.finance-caption{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px}
.finance-caption .pill{padding:2px 7px;font-size:12px;line-height:18px}
.finance-chart .column-bars i{background:linear-gradient(0deg,color-mix(in srgb,var(--cyan) 70%,var(--panel)),var(--cyan))}
.finance-chart .column-bars .expense{background:linear-gradient(0deg,color-mix(in srgb,var(--yellow) 70%,var(--panel)),var(--yellow))}
.finance-chart{background:repeating-linear-gradient(to top,transparent 0,transparent 51px,var(--chart-grid) 52px,var(--chart-grid) 53px)}
.finance-chart-legend i{background:var(--cyan)}.finance-chart-legend .expense{background:var(--yellow)}
.finance-chart-legend .plan{background:transparent;border-color:var(--muted)}
.finance-category>span{color:var(--text)}
.data-table tbody tr:nth-child(even),.finance-table tbody tr:nth-child(even),.budget-table tbody tr:nth-child(even),.ops-table tbody tr:nth-child(even),.modal-card tbody tr:nth-child(even){background:var(--zebra)}
.data-table td,.finance-table td,.budget-table td,.ops-table td,.modal-card td{border-color:var(--line-soft)}
*{scrollbar-color:var(--control-line) var(--control-bg)}
::-webkit-scrollbar-track{background:var(--control-bg)}::-webkit-scrollbar-thumb{background:var(--control-line)}
@media(min-width:761px) and (max-width:1359px){.filter-fields{grid-template-columns:repeat(6,minmax(0,1fr))}.filter-fields .date-field{grid-column:span 2}.filter-fields .field:first-child{grid-column:span 2}.filter-fields .field:nth-child(n+4){grid-column:span 1}}
@media(max-width:1200px){.collection-overview{grid-template-columns:1fr}.collection-overview>#companyProjectsCard{border:1px solid var(--frame)}}
@media(max-width:760px){
 .appearance-bar{margin-bottom:10px;gap:8px}.theme-choice{height:40px;padding:0 10px}.appearance-label{display:none}.theme-choices{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 .filters{padding:8px;gap:8px}.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .filters .select{padding-left:8px}.field label{white-space:normal}.filter-actions{gap:4px}
 .collection-overview{gap:12px}.collection-overview>.card,.report-workspace .card{padding:14px}
 .collection-overview .card-head{gap:8px;min-height:0}.collection-overview .card-head .legend{flex-basis:auto}
 .collection-trend-stats>div,.project-preview-overview>div{padding:0 10px}
 .collection-metrics{padding:10px 12px 12px}.collection-metric-group header{padding:8px 10px}
 .project-preview-group+.project-preview-group{border-left:0}.project-preview-row{min-height:58px}.project-preview-group-head{min-height:28px}
 .report-workspace-head{padding:4px 8px 0}.workspace-tabs{gap:0}.workspace-tabs button{padding:0 2px}
 .finance-card .card-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}.finance-card .card-actions .btn{padding:0 4px}
 .finance-controls .finance-range-control{flex-wrap:nowrap}.finance-range-control select{min-width:0}
 .finance-controls{gap:6px}.finance-controls>.finance-tabs{flex:1}.finance-controls>.finance-tabs button{flex:1;padding:0 6px}
 .finance-metric,.budget-kpis>div{padding:0 10px}
}
