/* Isolated cash-flow view; do not change treemap or table styling. */
.a-main>.a-view-title{height:auto;min-height:52px;display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}
.a-main>.a-view-title>div:first-child{flex:1 1 220px;display:block;min-width:0}
.a-main>.a-view-title p{display:block;margin:4px 0 0}
.a-main>.a-view-title>.view-switch{position:static;transform:none;flex:0 0 auto;margin-left:auto;max-width:100%}
.a-main>.a-view-title .view-switch button{width:auto;min-height:44px;padding:0 12px;gap:4px}
.a-main>.a-view-title .view-switch button span{position:static;width:auto;height:auto;overflow:visible;clip-path:none}
.a-flow{padding:12px;min-width:0}
.a-flow[hidden]{display:none}
.flow-toolbar{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px 16px}
.flow-toolbar label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}
.flow-toolbar select{max-width:180px;min-height:44px;padding:4px 8px;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);font:inherit}
.flow-status,.flow-footnote{color:var(--muted);font-size:12px;line-height:1.6;margin:8px 0}
.flow-status.flow-warning{color:var(--warn)}
.flow-coverage{margin:8px 0;color:var(--text);font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.flow-legend{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px 0;font-size:13px;color:var(--muted)}
.flow-legend span:first-child{color:var(--fall)}.flow-legend span:last-child{text-align:right;color:var(--rise)}
.flow-chart{position:relative;max-height:540px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;background:linear-gradient(var(--line),var(--line)) center/1px 100% no-repeat}
.flow-side{min-width:0}.flow-out{padding-top:16px}
.flow-out .flow-amount{color:var(--fall)}.flow-in .flow-amount{color:var(--rise)}
.flow-rows{min-width:0}.flow-row{--amount-space:88px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;width:100%;min-height:44px;padding:8px 0;background:transparent;border:0;color:var(--text);text-align:left;cursor:pointer;border-radius:3px}
.flow-row:hover{background:var(--surface-3)}.flow-row:active{background:var(--surface-2)}
.flow-row:focus-visible,.flow-chart:focus-visible,.flow-toolbar select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.flow-name{min-width:0;overflow-wrap:anywhere;font-weight:600;font-size:14px;line-height:1.5;padding:0 12px}
.flow-in .flow-name{text-align:right}.flow-out .flow-name{grid-column:2;grid-row:1;text-align:left}
.flow-amount{position:absolute;top:50%;transform:translateY(-50%);left:calc(var(--flow-ratio) * (100% - var(--amount-space)) + 8px);white-space:nowrap;font-size:14px;font-variant-numeric:tabular-nums;transition:left 240ms ease-out,right 240ms ease-out}
.flow-track{position:relative;display:block;height:24px;min-width:0}
.flow-track i{display:block;width:calc(100% - var(--amount-space));height:100%;transition:transform 240ms ease-out;transform-origin:left;background:linear-gradient(90deg,#8c251f,var(--rise))}
.flow-out .flow-track{grid-column:1;grid-row:1}.flow-out .flow-track i{margin-left:auto;transform-origin:right;background:linear-gradient(90deg,var(--fall),#105c43)}
.flow-out .flow-amount{left:auto;right:calc(var(--flow-ratio) * (100% - var(--amount-space)) + 8px)}
.flow-empty{padding:24px 8px;color:var(--muted);font-size:13px;line-height:1.6}
@media(max-width:767px){
 .a-main>.a-view-title{padding:8px;gap:8px}.a-main>.a-view-title>div:first-child{flex-basis:100%}
 .a-main>.a-view-title .view-switch button{min-height:44px;padding:0 8px}.a-main>.a-view-title .view-switch svg{display:block;width:16px;height:16px}
 .a-flow{padding:8px}.flow-toolbar{justify-content:space-between;gap:8px}.flow-toolbar label{gap:4px}.flow-toolbar select{max-width:150px;min-height:44px}
 /* Use the page's scroll on phones. A second clipped scroll area hid the outflow half. */
 .flow-chart{max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}
 .flow-row{--amount-space:8px;min-height:58px}.flow-name{font-size:13px;padding:0 8px}
 .flow-track{height:40px;display:flex;align-items:flex-end}
 .flow-track i{height:14px}
 .flow-amount{top:0;transform:none;left:8px;right:0;font-size:13px;line-height:20px;transition:none}
 .flow-out .flow-amount{left:0;right:8px;text-align:right}
 .flow-status,.flow-footnote{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.flow-track i,.flow-amount{transition:none}}
