/* Executive dashboard · page-level layout on top of DS chart-dash */
.dash-kpi-link { text-decoration: none; color: inherit; display: block; }
.dash-kpi-link:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.dash-filters { flex-wrap: wrap; }
.dash-filters .segmented { height: var(--control-sm); }
.dash-filters .input { min-inline-size: 130px; }

.dash-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.dash-two-wide { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
@container page (max-width: 900px) { .dash-two, .dash-two-wide { grid-template-columns: minmax(0, 1fr); } }

.dash-item { color: var(--text-primary); text-decoration: none; display: block; }
a.dash-item:hover { color: var(--accent-text); }
.dash-today { color: var(--warning-text); font-weight: var(--weight-semibold); }
.dash-late { color: var(--danger-text); font-weight: var(--weight-semibold); white-space: nowrap; }
.dash-danger-ico { color: var(--danger-text); }
.table-title .ico { width: 16px; height: 16px; color: var(--text-muted); }

/* stage funnel: bars shrink with value, labels stay readable */
.funnel { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; gap: 8px; }
.funnel li { position: relative; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); block-size: 34px; padding-inline: 12px; font-size: var(--text-base-sm); }
.funnel-bar { position: absolute; inset-block: 0; inset-inline-start: 0; inline-size: var(--w); border-radius: var(--radius-sm); background: color-mix(in srgb, var(--chart-1) 22%, transparent); border: 1px solid color-mix(in srgb, var(--chart-1) 40%, transparent); }
.funnel li:last-child .funnel-bar { background: color-mix(in srgb, var(--chart-2) 22%, transparent); border-color: color-mix(in srgb, var(--chart-2) 40%, transparent); }
.funnel-l, .funnel b { position: relative; }
.funnel b { font-variant-numeric: tabular-nums; }
.dash-two td.tabular, .dash-two td.td-muted { white-space: nowrap; }
