/* Metabase-inspired aggregate analytics, sharing MYDS semantic tokens. */
body[data-workspace="executive"] .workspace{max-width:1440px}
.ex-heading{align-items:flex-start;margin-bottom:var(--space-6);gap:var(--space-5)}
.ex-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs);color:var(--fg-muted);margin-bottom:var(--space-3)}
.ex-breadcrumb>svg{color:var(--accent)}.ex-breadcrumb>span{color:var(--border)}
.ex-heading h1{font-size:clamp(1.5rem,2.2vw,1.875rem);color:var(--fg);letter-spacing:-.025em;line-height:1.35;margin:0 0 var(--space-2);font-weight:600}
.ex-heading p{font-size:var(--text-sm);color:var(--fg-muted);margin:0}
.ex-heading-actions{display:flex;gap:var(--space-2);flex-shrink:0;padding-top:var(--space-8)}
.ex-heading-actions .btn{white-space:nowrap;min-height:44px;padding-inline:var(--space-3)}
.ex-filterbar{display:grid;grid-template-columns:auto minmax(115px,.7fr) minmax(170px,1.2fr) minmax(165px,1fr) minmax(155px,1fr);align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-bottom:0}
.ex-filter-heading{display:flex;align-items:center;gap:var(--space-2);color:var(--fg-muted);font-size:var(--text-xs);font-weight:600;padding-right:var(--space-2)}
.ex-filterbar .field{gap:var(--space-1)}.ex-filterbar select{min-height:44px;font-size:var(--text-xs);padding:var(--space-2);border-color:var(--border);max-width:none;background-color:var(--surface);border-radius:var(--radius-sm)}
.ex-filterbar .mini-label{font-size:var(--text-xs);font-weight:500;color:var(--fg-muted)}
.ex-clear{grid-column:2/-1;justify-self:start;padding:0;min-height:32px;font-size:var(--text-xs)}
.ex-provenance{display:flex;justify-content:flex-start;gap:var(--space-2) var(--space-5);font-size:var(--text-xs);margin:var(--space-3) 0 var(--space-6);line-height:1.5}
.ex-provenance span{min-width:0;overflow-wrap:anywhere}.ex-provenance span:last-child{margin-left:auto}
.ex-metrics{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr))}
.ex-metric{border-radius:var(--radius-md);padding:var(--space-5);background:var(--surface);box-shadow:none;display:flex;flex-direction:column;min-height:164px}
.ex-metric .stat-label{font-size:var(--text-xs);font-weight:500;line-height:1.5;justify-content:space-between;align-items:flex-start;color:var(--fg-muted);gap:var(--space-2);margin-bottom:var(--space-4)}
.ex-metric .stat-label svg{color:var(--fg-muted);opacity:.7;margin-top:1px}
.ex-metric .stat-value{font-size:2rem;color:var(--fg);font-weight:600;line-height:1.15;letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:0 0 var(--space-3);overflow-wrap:anywhere}
.ex-metric .ex-value-protected{font-size:var(--text-sm);letter-spacing:0;line-height:1.6}
.ex-value-unit{font-size:var(--text-base);font-weight:400;color:var(--fg-muted);letter-spacing:0;margin-left:var(--space-2)}
.ex-metric .stat-note{font-size:var(--text-xs);line-height:1.5;color:var(--fg-muted);margin-top:auto}
.ex-metric-response{background:var(--accent-soft);border-color:var(--accent-soft)}
.ex-metric-response .stat-label,.ex-metric-response .stat-label svg{color:var(--accent);opacity:1}
.ex-metrics .ex-metric-response .stat-value{font-size:var(--text-4xl);color:var(--accent)}
.ex-metric-response .stat-note{color:var(--fg-muted)}
.ex-card-heading.ex-trend-heading{align-items:center;flex-wrap:wrap}
.ex-trend-heading .ex-chart-key{max-width:none;flex-shrink:0;white-space:nowrap;justify-content:flex-start;text-align:left}
.ex-card-heading.ex-trend-heading h2{font-size:var(--text-base)}
.ex-trend-heading p{margin-top:var(--space-1)}
.ex-trend-panel{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr);padding:0;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--space-5);overflow:hidden}
.ex-trend-main{padding:var(--space-5) var(--space-6);min-width:0}
.ex-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5)}
.ex-card-heading>div{min-width:0}.ex-card-heading h2{color:var(--fg);font-size:var(--text-sm);font-weight:600;line-height:1.5;letter-spacing:-.01em;margin:0}
.ex-card-heading p{font-size:var(--text-xs);color:var(--fg-muted);margin:var(--space-1) 0 0;line-height:1.5}
.ex-card-heading>svg{color:var(--fg-muted)}
.ex-chart-key{font-size:var(--text-xs);display:flex;align-items:center;gap:6px;color:var(--fg-muted);white-space:nowrap;padding-top:2px}
.ex-chart-key i{width:8px;height:8px;display:block;border-radius:2px;background:var(--accent)}
.ex-volume-chart{display:flex;gap:var(--space-3);padding-top:var(--space-4);margin:0 0 var(--space-4);min-height:210px}
.ex-y-axis{display:flex;flex-direction:column;justify-content:space-between;flex-shrink:0;align-items:flex-end;width:24px;height:160px;color:var(--fg-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;line-height:1;transform:translateY(-5px)}
.ex-plot{position:relative;flex:1;min-width:0}.ex-grid-lines{position:absolute;left:0;right:0;top:0;height:160px;display:flex;justify-content:space-between;flex-direction:column;pointer-events:none}
.ex-grid-lines i{display:block;border-top:1px solid var(--border);opacity:.65;width:100%}
.ex-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5);position:relative}
.ex-column{min-width:0;text-align:center}.ex-column-space{height:160px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;position:relative;padding:0 8px}
.ex-column-fill{display:block;width:100%;max-width:64px;background:var(--accent);opacity:.85;border-radius:4px 4px 0 0;position:relative;flex-shrink:0}
.ex-column-count{position:absolute;bottom:calc(100% + 6px);font-size:var(--text-xs);display:none}
.ex-column-fill.is-suppressed{height:4px!important;background:var(--border)}
.ex-column-caption.chart-row{display:flex;flex-direction:column;gap:var(--space-1);align-items:center;justify-content:flex-start;margin:var(--space-3) 0 0;font-size:var(--text-xs);color:var(--fg-muted);line-height:1.45}
.ex-column-caption>strong{font-size:var(--text-xs);font-weight:600;color:var(--fg);font-variant-numeric:tabular-nums;order:-1}
.ex-column-caption>span{max-width:100%;overflow-wrap:normal}
.ex-chart-footnote{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--fg-muted);font-size:var(--text-xs);line-height:1.6}
.ex-backlog{padding:var(--space-5) var(--space-6);border-left:1px solid var(--border);background:var(--surface);min-width:0}
.ex-backlog .ex-card-heading{margin-bottom:var(--space-2)}
.ex-attention-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border)}
.ex-attention-label{font-size:var(--text-xs);font-weight:500;line-height:1.6;display:block}.ex-attention-row p{font-size:var(--text-xs);line-height:1.5;margin:var(--space-1) 0 0;color:var(--fg-muted)}
.ex-attention-number{font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.4;white-space:nowrap;letter-spacing:-.02em}
.ex-danger{color:var(--danger)}.ex-small-count{font-size:var(--text-xs)!important;line-height:1.6!important;white-space:normal;letter-spacing:0!important}
.ex-attention-row .ex-small-count{max-width:95px;text-align:right}
.ex-backlog-note{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-4);color:var(--fg-muted)}
.ex-backlog-note svg{margin-top:1px}.ex-backlog-note p{font-size:var(--text-xs);line-height:1.65;margin:0}
.ex-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
.ex-chart-card{padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.ex-bars{display:flex;flex-direction:column;gap:var(--space-2)}
.ex-bar-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:var(--space-2);width:100%;background:none;border:0;border-radius:var(--radius-sm);color:var(--fg);font:inherit;text-align:left;padding:var(--space-2);margin:0 calc(-1 * var(--space-2));width:calc(100% + 16px);min-height:48px;align-items:center}
button.ex-bar-row:hover,button.ex-bar-row.is-selected{background:var(--accent-soft)}
.ex-bar-label{font-size:var(--text-xs);line-height:1.5;min-width:0}.ex-bar-value{text-align:right;font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:600;color:var(--fg-muted)}
.ex-bar-track{grid-column:1/-1;height:6px;background:var(--bg);display:block;overflow:hidden;border-radius:2px}
.ex-bar-fill{display:block;height:100%;background:var(--accent);opacity:.75;border-radius:2px}
.ex-neighbourhood-card .ex-bar-fill{opacity:.55}
.ex-data-note{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-xs);color:var(--fg-muted);padding:var(--space-4) 0;margin-top:var(--space-2)}
.ex-data-note>svg{margin-top:2px}.ex-data-note p{margin:0;line-height:1.65;flex:1}
.ex-text-button{background:none;border:0;padding:0;color:var(--accent);font-size:var(--text-xs);font-weight:500;display:flex;align-items:center;gap:var(--space-2);min-height:44px;white-space:nowrap}
.ex-text-button:hover{text-decoration:underline}.ex-context-note{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:var(--text-xs);color:var(--fg-muted)}
.ex-context-note svg{color:var(--accent);margin-top:1px}.ex-context-note p{margin:0;line-height:1.65}
.ex-pillars{gap:var(--space-5)}.ex-pillar.pillar{padding:var(--space-5);gap:var(--space-3);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:var(--surface)}
.ex-pillar-heading{display:flex;align-items:center;justify-content:space-between}.ex-pillar .pillar-icon{width:36px;height:36px;background:var(--accent-soft)!important;color:var(--accent)!important;border-radius:var(--radius-sm)}
.ex-pillar-index{font-size:var(--text-xs);color:var(--fg-muted);font-variant-numeric:tabular-nums}
.ex-pillar h2{font-size:var(--text-base);letter-spacing:-.015em;margin:0;font-weight:600}
.ex-pillar-description{font-size:var(--text-xs);line-height:1.65;color:var(--fg-muted);margin:0;min-height:44px}
.ex-pillar-metrics{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-4);margin-top:var(--space-1)}
.ex-pillar-metrics>div{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.ex-pillar-metrics span{font-size:var(--text-xs);color:var(--fg-muted)}
.ex-pillar-metrics strong{font-size:1.75rem;line-height:1.2;letter-spacing:-.035em;font-weight:600;font-variant-numeric:tabular-nums}
.ex-pillar-source{font-size:var(--text-xs);color:var(--fg-muted);margin:0;line-height:1.6}.ex-pillar .progress-bar{height:4px;background:var(--bg);border-radius:2px}.ex-pillar .progress-bar span{opacity:.7}
.ex-pmx-notice{font-size:var(--text-xs);line-height:1.7;border:1px solid var(--border);border-radius:var(--radius-md)}
body[data-workspace="executive"] .report-sheet{border-radius:var(--radius-md);background:var(--surface);background-image:none;box-shadow:var(--shadow-sm)}
body[data-workspace="executive"] .report-masthead h1{font-size:1.625rem;font-weight:600;margin-bottom:var(--space-3);color:var(--fg)}
body[data-workspace="executive"] .report-sheet .eyebrow{font-size:var(--text-xs);letter-spacing:.07em;font-weight:600}
body[data-workspace="executive"] .report-stat-grid strong{font-variant-numeric:tabular-nums;line-height:1.5;overflow-wrap:anywhere}
body[data-workspace="executive"] .report-sheet .tag{font-size:var(--text-xs)}
body[data-workspace="executive"] .report-controls{flex-wrap:wrap}
@media(max-width:1200px){.ex-filterbar{grid-template-columns:repeat(4,minmax(0,1fr))}.ex-filter-heading{grid-column:1/-1}.ex-provenance span:last-child{margin-left:0}.ex-heading{flex-direction:column;gap:var(--space-4)}.ex-heading-actions{padding-top:0}.ex-metrics{gap:var(--space-3)}.ex-metric{padding:var(--space-4)}.ex-trend-panel{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr)}.ex-trend-main,.ex-backlog,.ex-chart-card{padding:var(--space-5)}.ex-columns{gap:var(--space-3)}}
@media(max-width:760px){.ex-filterbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);padding:var(--space-3)}.ex-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-trend-panel{grid-template-columns:1fr}.ex-backlog{border-left:0;border-top:1px solid var(--border)}.ex-backlog .ex-card-heading{margin-bottom:0}.ex-attention-row{padding-block:var(--space-4)}.ex-chart-grid{gap:var(--space-4)}.ex-chart-key{white-space:normal;justify-content:flex-end;text-align:right}.ex-clear{grid-column:1/-1}}
@media(max-width:540px){.ex-heading{margin-bottom:var(--space-5)}.ex-breadcrumb{font-size:var(--text-xs);gap:6px}.ex-heading h1{font-size:1.5rem}.ex-heading p{font-size:var(--text-xs);line-height:1.7}.ex-heading-actions{width:100%}.ex-heading-actions .btn{flex:1;font-size:var(--text-xs)}.ex-filterbar select{font-size:var(--text-xs);padding:var(--space-2) 6px;min-height:44px}.ex-filterbar .mini-label{font-size:var(--text-xs)}.ex-provenance{gap:var(--space-2);font-size:var(--text-xs);margin-bottom:var(--space-5)}.ex-provenance span{width:100%}.ex-metric{padding:var(--space-4);min-height:164px}.ex-metric .stat-value{font-size:1.75rem}.ex-metric .ex-value-protected{font-size:var(--text-xs)}.ex-metric .stat-label{font-size:var(--text-xs);min-height:32px;margin-bottom:var(--space-3)}.ex-metric .stat-label svg{width:14px;height:14px}.ex-metric .stat-note{font-size:var(--text-xs)}.ex-value-unit{font-size:var(--text-sm)}.ex-chart-grid{grid-template-columns:1fr}.ex-trend-main,.ex-backlog,.ex-chart-card{padding:var(--space-4)}.ex-card-heading{gap:var(--space-2)}.ex-card-heading h2{font-size:var(--text-sm)}.ex-chart-key{font-size:var(--text-xs);max-width:72px}.ex-volume-chart{gap:var(--space-2)}.ex-y-axis{width:18px}.ex-columns{gap:var(--space-3)}.ex-column-space{padding:0 3px}.ex-column-caption.chart-row{font-size:var(--text-xs)}.ex-chart-footnote{font-size:var(--text-xs)}.ex-data-note{flex-wrap:wrap;font-size:var(--text-xs)}.ex-data-note p{flex-basis:calc(100% - 24px)}.ex-text-button{margin-left:23px;min-height:44px}.ex-pillars{grid-template-columns:1fr}.ex-pillar-description{min-height:0}.ex-context-note{font-size:var(--text-xs)}.ex-metric .stat-value{min-height:33px}.ex-filter-heading{font-size:var(--text-xs)}}
@media(max-width:640px){.ex-metrics .ex-metric-response .stat-value{font-size:var(--text-3xl)}.ex-trend-heading{gap:var(--space-2)}}
@media(prefers-reduced-motion:reduce){.ex-text-button,.ex-bar-row{transition:none;transform:none}}
@media print{.ex-heading,.ex-filterbar,.ex-provenance,.ex-pmx-notice{display:none!important}body[data-workspace="executive"] .report-sheet{border:0;box-shadow:none;padding:0}body[data-workspace="executive"] .report-sheet .report-masthead h1{font-size:24px}}
