.compact-hero{min-height:220px;padding:46px 0 34px;grid-template-columns:minmax(0,1fr) 350px;gap:50px}
.skip:not(:focus){top:0;transform:translateY(-150%)}
.skip:focus{top:12px;transform:none}
.compact-hero h1{font-size:clamp(2.8rem,5.4vw,5.6rem);line-height:.84}
.section-head.compact{padding-top:34px}
.kpi{position:relative;min-height:212px;overflow:hidden}
.kpi strong{margin:23px 0 10px}
.kpi-meta{display:flex;justify-content:space-between;gap:8px;min-height:18px;font:500 .58rem 'IBM Plex Mono';color:var(--muted)}
.kpi-meta b{font-weight:600;color:var(--ink);white-space:nowrap}
.kpi-meta .positive{color:var(--acid)}
.kpi-meta .negative{color:var(--bad)}
.spark{position:absolute;right:18px;bottom:17px;width:110px;height:25px;opacity:.78}
.spark polyline{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}
.kpi p{padding-right:118px}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.insight{min-height:116px;border:1px solid var(--line);border-left:4px solid var(--muted);background:var(--panel);padding:16px 18px}
.insight.good{border-left-color:var(--acid)}.insight.bad{border-left-color:var(--bad)}.insight.warn{border-left-color:var(--warn)}
.insight p{margin:0 0 11px;font:600 .57rem 'IBM Plex Mono';letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.insight strong{display:block;font:1.25rem 'Archivo Black';text-transform:uppercase;margin-bottom:7px}
.insight span{display:block;color:var(--muted);font:.72rem/1.45 'IBM Plex Mono'}
.panel>header{display:flex;justify-content:space-between;gap:18px;align-items:start}
.trend-panel{padding-bottom:15px}
.stacked-chart{height:250px;display:flex;gap:2px;align-items:flex-end;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,var(--line) 0 1px,transparent 1px 25%);padding-top:8px}
.day-bar{flex:1;min-width:2px;display:flex;flex-direction:column-reverse;transition:filter .15s}
.day-bar:hover{filter:brightness(1.45)}
.day-bar i{display:block;background:var(--chain);min-height:0}
.chart-axis,.legend,.range-note{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font:.56rem/1.4 'IBM Plex Mono'}
.chart-axis{margin-top:8px}.legend{justify-content:center;margin-top:10px}.legend span{display:flex;gap:6px;align-items:center}.legend i{width:8px;height:8px;background:var(--chain)}
.range-note{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.range-note b{color:var(--ink)}
.driver-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}
.driver-grid .panel{min-width:0}
.window-warning{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-left:4px solid var(--warn);background:var(--panel);padding:12px 15px;margin-bottom:14px;color:var(--muted);font:.63rem 'IBM Plex Mono'}
.badge.fixed-window{color:var(--warn)}
.badge.partial,.badge.fee-rate-discrepancy{color:var(--warn)}
.pool-table table{min-width:1560px}
.table-wrap th{position:static}.pool-table th{position:sticky;top:54px;z-index:2}
.sort-button{border:0;background:transparent;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;text-align:left}
.sort-button.active{color:var(--acid)}
.row-actions{display:flex;gap:9px;margin-top:6px;white-space:nowrap}
.row-actions button,.row-actions a{border:0;background:none;padding:0;color:var(--muted);font:500 .55rem 'IBM Plex Mono';text-decoration:underline;cursor:pointer}
.na{color:var(--bad)}
.pagination{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-top:0;background:var(--panel);padding:12px 14px;font:.62rem 'IBM Plex Mono';color:var(--muted)}
.pagination button{background:var(--raised);border:1px solid var(--line);padding:8px 12px;color:var(--ink);font:inherit;cursor:pointer}.pagination button:disabled{opacity:.35;cursor:not-allowed}
.matrix-panel{padding:0}.matrix-panel .table-wrap{margin:0}.comparison-matrix table{min-width:760px}.comparison-matrix th:not(:first-child){color:var(--acid)}
.compact-dossiers{margin-top:18px}.compact-dossiers .dossier{box-shadow:none}
.panel-deck{color:var(--muted);font:.75rem/1.5 'IBM Plex Mono';max-width:800px;margin:-8px 0 18px}
.panel small{color:var(--muted);font:.56rem 'IBM Plex Mono'}
.dossier-grid:empty{display:none}
.user-kpis{grid-template-columns:repeat(3,1fr)}
.filter-disabled{opacity:.45}.filters :disabled{cursor:not-allowed}
.kpi[role="button"]{cursor:pointer}.kpi[role="button"]:focus-visible,.chart-point:focus-visible,.metric-switch button:focus-visible{outline:2px solid var(--acid);outline-offset:-4px}
.metric-switch{display:flex;gap:0;margin:4px 0 12px}.metric-switch button{border:1px solid var(--line);background:var(--raised);color:var(--muted);padding:8px 12px;font:600 .58rem 'IBM Plex Mono';text-transform:uppercase;cursor:pointer}.metric-switch button.active{background:var(--ink);color:var(--bg)}
.analytical-chart{position:relative;height:260px;background:repeating-linear-gradient(to bottom,var(--line) 0 1px,transparent 1px 25%)}.analytical-chart svg{width:100%;height:100%;overflow:visible}.analytical-chart polyline{fill:none;stroke-width:2.5;vector-effect:non-scaling-stroke}.chart-point{position:absolute;width:10px;height:10px;transform:translate(-50%,-50%);border:2px solid var(--panel);border-radius:50%;background:var(--chain);padding:0;cursor:pointer}
.provenance{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.provenance summary{cursor:pointer;color:var(--muted);font:.6rem 'IBM Plex Mono';text-transform:uppercase}.provenance dl{margin:12px 0 0;grid-template-columns:repeat(4,1fr)}
.drilldown{width:min(1100px,calc(100vw - 32px));max-height:82vh;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:24px;box-shadow:var(--shadow)}.drilldown::backdrop{background:#000b}.dialog-close{float:right;border:1px solid var(--line);background:var(--raised);color:var(--ink);padding:8px 12px;cursor:pointer}.drilldown h2{font:2rem 'Archivo Black';text-transform:uppercase}.drilldown header p{font:.6rem 'IBM Plex Mono';color:var(--acid)}
.cohort-heatmap .heat-cell{background:color-mix(in srgb,var(--acid) calc(var(--heat) * 100%),var(--panel));color:var(--ink);font-weight:700}
@media(max-width:1000px){.compact-hero{grid-template-columns:1fr;gap:24px}.insight-grid,.driver-grid{grid-template-columns:1fr}.user-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.compact-hero{min-height:230px;padding-top:40px}.compact-hero h1{font-size:13vw}.kpi p{padding-right:0}.spark{display:none}.insight-grid,.user-kpis{grid-template-columns:1fr}.stacked-chart,.analytical-chart{height:190px}.stacked-chart{gap:1px}.chart-axis span:nth-child(2){display:none}.range-note,.window-warning{align-items:flex-start;flex-direction:column}.pagination{gap:10px}.pagination span{text-align:center}.pagination button{padding:7px}.panel>header{flex-wrap:wrap}.provenance dl{grid-template-columns:1fr}.metric-switch{overflow-x:auto}.drilldown{padding:14px}}
