[data-diagram-palette] {
  --fe1:var(--fs-color-plum); --fe2:#47786B; --fe3:var(--fs-color-secondary-text); --fe4:#966A21; --fe5:#B26488;
  --level1:#DCC2D0; --level2:var(--fs-color-accent-soft); --level3:#A85A82; --level4:#763B5B; --level5:var(--fs-color-plum);
}
[data-diagram-palette="tol"] {
  --fe1:#CC6677; --fe2:#332288; --fe3:#DDCC77; --fe4:#117733; --fe5:#88CCEE;
  --level1:#F1EEF6; --level2:#BDC9E1; --level3:#74A9CF; --level4:#2B8CBE; --level5:#045A8D;
}
[data-diagram-palette="mono"] {
  --fe1:#555; --fe2:#555; --fe3:#555; --fe4:#555; --fe5:#555;
  --level1:#DCDCDC; --level2:#B4B4B4; --level3:#8A8A8A; --level4:#5F5F5F; --level5:#303030;
}
.mk-series-0 {--series:var(--fs-color-muted)}
.mk-series-1 {--series:var(--fe1); --mono:url(#mk-mono-1)}
.mk-series-2 {--series:var(--fe2); --mono:url(#mk-mono-2)}
.mk-series-3 {--series:var(--fe3); --mono:url(#mk-mono-3)}
.mk-series-4 {--series:var(--fe4); --mono:url(#mk-mono-4)}
.mk-series-5 {--series:var(--fe5); --mono:url(#mk-mono-5)}
.mk-ink {fill:var(--series)}
[data-diagram-palette="mono"] .mk-ink {fill:var(--mono,var(--series))}
.mk-diagrams {max-width:65rem}
.mk-diagram-head {margin-bottom:1.25rem}
.mk-diagram-head h1 {margin:.3rem 0}
.mk-diagram-head p,.mk-chart-panel>p {max-width:76ch}
.mk-diagram-controls {display:flex; align-items:end; flex-wrap:wrap; gap:.75rem; margin-bottom:1rem}
.mk-diagram-controls label {display:grid; gap:.3rem; min-width:0; max-width:100%}
.mk-diagram-controls select {max-width:100%}
.mk-budget-filters {display:grid; gap:1rem; margin-bottom:1.25rem}
.mk-budget-choices {display:flex; flex-wrap:wrap; gap:.4rem}
.mk-budget-choices a {display:flex; align-items:center; gap:.4rem; min-height:2.5rem; padding:.5rem .75rem; border:1px solid var(--tblr-border-color); border-radius:var(--tblr-border-radius); color:inherit; text-decoration:none; overflow-wrap:anywhere; background:var(--tblr-bg-surface,#fff)}
.mk-budget-choices a:hover,.mk-budget-choices a:focus-visible {border-color:var(--tblr-primary); text-decoration:underline}
.mk-budget-choices a[aria-current] {border-color:var(--tblr-primary); box-shadow:inset 0 -3px var(--tblr-primary); background:var(--fs-color-surface)}
.mk-budget-sites {display:grid; grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr))}
.mk-budget-sites a {flex-direction:column; align-items:flex-start; justify-content:center; gap:.12rem}
.mk-budget-sites span {font-size:.875rem}
.mk-chart-panel {padding:clamp(1rem,3vw,1.6rem); border:1px solid var(--tblr-border-color); background:var(--tblr-bg-surface,#fff); border-radius:var(--tblr-border-radius); margin-bottom:1rem}
.mk-chart-panel h2 {font-size:1.35rem}
.mk-big-amount {font-size:clamp(1.6rem,4vw,2.3rem); line-height:1.3; font-variant-numeric:tabular-nums}
.mk-flow-scroll {overflow-x:auto; margin:.6rem 0}
.mk-flow {display:block; min-width:33rem; width:100%}
.mk-ribbon {opacity:.58}
.mk-pattern-library {position:absolute; pointer-events:none}
.mk-plot-label {font:600 13px system-ui,sans-serif; fill:var(--fs-color-ink); stroke:white; stroke-width:3.6px; paint-order:stroke; stroke-linejoin:round}
.mk-series-details {border-top:1px solid var(--tblr-border-color); margin-block:.45rem}
.mk-series-details summary {cursor:pointer; padding:.65rem 0; overflow-wrap:anywhere}
.mk-series-details summary b {margin-inline:.5rem}
.mk-series-details .table {width:100%; table-layout:fixed; overflow-wrap:anywhere}
.mk-swatch {display:inline-block; vertical-align:middle; width:.9rem; height:.9rem; border-radius:2px; background:var(--series); margin-inline:.35rem}
.mk-series-details p,.mk-series-details ul {margin-bottom:.5rem}
.mk-track {fill:var(--fs-color-surface)}
.mk-frame {fill:none; stroke:#fff; stroke-width:3; pointer-events:none}
.mk-treemap {width:100%; display:block; margin-block:1rem; border-radius:4px}
.mk-unknown {fill:url(#mk-open)} .mk-overdrawn {fill:url(#mk-excess)}
.mk-milestones {display:grid; grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr)); gap:.5rem; margin-bottom:1.25rem}
.mk-milestones a {display:grid; gap:.3rem; padding:.6rem; border:1px solid var(--tblr-border-color); border-radius:.35rem; color:inherit; text-decoration:none; font-variant-numeric:tabular-nums}
.mk-milestones a[aria-current] {border-color:var(--tblr-primary); box-shadow:inset 0 -2px var(--tblr-primary)}
.mk-milestones time {font-size:.8rem}
.mk-milestones svg {width:100%; height:.5rem}
.mk-milestone-fill {fill:var(--level5)}
.mk-diagram-empty {background:#f7f4f6; border-radius:.35rem; padding:.8rem}
.mk-bridge-row {display:grid; gap:.6rem; grid-template-columns:minmax(3rem,1fr) 2fr minmax(6rem,1fr); align-items:center; margin:.25rem 0; font-variant-numeric:tabular-nums}
.mk-bridge-row svg {width:100%; height:1.3rem; background:#f5f3f4}
.mk-bridge-row span {text-align:right}
.mk-zero {stroke:#594e56; stroke-width:1px; vector-effect:non-scaling-stroke}
.mk-budget-card {display:grid; white-space:normal; max-width:19rem; gap:.15rem; margin-top:.5rem; padding:.55rem .7rem; border:1px solid var(--tblr-border-color); border-radius:.35rem; text-decoration:none; color:inherit; background:var(--tblr-bg-surface,#fff)}
.mk-card-eyebrow,.mk-budget-card small {font-size:.75rem; color:var(--tblr-secondary-color)}
.mk-runway,.mk-report-bar {width:100%; height:.45rem}
.mk-report-year {padding:.75rem 0; border-top:1px solid var(--tblr-border-color)}
.mk-report-year h3 {margin-bottom:.4rem}
.mk-report-year>div {display:flex; flex-wrap:wrap; justify-content:space-between; gap:.3rem}
.mk-report-bar {display:block; margin:.25rem 0 .5rem; background:var(--fs-color-surface)}
.mk-called {fill:var(--fs-color-secondary-text)}
.mk-palette-option {display:flex; align-items:center; flex-wrap:wrap; gap:.65rem; cursor:pointer; min-height:3rem}
.mk-swatches {display:inline-flex; gap:2px}
.mk-swatches>span {background:var(--series); color:white; text-shadow:0 1px 3px #222,0 0 2px #222; text-align:center; width:1.6rem; border-radius:2px}
.mk-palette-option[data-diagram-palette="mono"] .mk-swatches>span:nth-child(2),
[data-diagram-palette="mono"] .mk-swatch.mk-series-2 {background:repeating-linear-gradient(45deg,#555 0 2px,#ddd 2px 6px)}
.mk-palette-option[data-diagram-palette="mono"] .mk-swatches>span:nth-child(3),
[data-diagram-palette="mono"] .mk-swatch.mk-series-3 {background:radial-gradient(#555 1.4px,#ddd 1.6px); background-size:6px 6px}
.mk-palette-option[data-diagram-palette="mono"] .mk-swatches>span:nth-child(4),
[data-diagram-palette="mono"] .mk-swatch.mk-series-4 {background:repeating-linear-gradient(90deg,#555 0 2px,#ddd 2px 6px)}
.mk-palette-option[data-diagram-palette="mono"] .mk-swatches>span:nth-child(5),
[data-diagram-palette="mono"] .mk-swatch.mk-series-5 {background-color:#ddd; background-image:repeating-linear-gradient(45deg,transparent 0 5px,#555 5px 6px),repeating-linear-gradient(-45deg,transparent 0 5px,#555 5px 6px)}
.mk-share {display:inline-flex; align-items:center; gap:.45rem}
.mk-share::before {content:""; width:.85rem; height:.85rem; border:1px solid #706b70; background:var(--level-color)}
.mk-level-1 {--level-color:var(--level1)}
.mk-level-2 {--level-color:var(--level2)}
.mk-level-3 {--level-color:var(--level3)}
.mk-level-4 {--level-color:var(--level4)}
.mk-level-5 {--level-color:var(--level5)}
@media (max-width:600px) {
  .mk-diagram-controls label,.mk-diagram-controls select {width:100%}
  .mk-chart-panel {padding:.8rem}
  .mk-series-details .table td,.mk-series-details .table th {padding:.35rem}
}
@media print {
  .mk-chart-panel {border:none; padding:0}
  .mk-report-year {break-inside:avoid}
  .mk-fe-report {color:#141414}
  .mk-fe-report svg {print-color-adjust:exact}
  body:has(.mk-fe-report) .mk-project-tools,body:has(.mk-fe-report) aside,body:has(.mk-fe-report) .mk-skip-link {display:none}
}

.mk-plan-years {display:grid; gap:.85rem; max-width:48rem; margin:1rem 0; font-variant-numeric:tabular-nums}
.mk-plan-bar {display:block; width:100%; height:1.2rem; margin:.2rem 0; background:var(--fs-color-surface); border-radius:.15rem}
.mk-plan-bar .mk-unfocused {fill:var(--tblr-border-color)}
.mk-plan-reserve {display:block; width:100%; height:.55rem; margin:.25rem 0}
.mk-series-details .table th {white-space:normal}
.mk-chart-panel {container-type:inline-size}
.mk-flow-hint {display:none}
@container (max-width:33rem) {.mk-flow-hint {display:block}}
