.tax-tool{min-height:100vh;max-width:100vw;overflow-x:hidden}.tax-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);gap:var(--space-8);align-items:end;border-bottom:2px solid var(--color-border);background:var(--color-surface);background-image:var(--hatch-pattern);padding:var(--space-12) max(var(--space-6),calc((100vw - 72rem)/2)) var(--space-10)}.tax-hero h1{margin-top:var(--space-4);font-size:clamp(2rem,6vw,4rem);line-height:.95;overflow-wrap:anywhere}.tax-hero p{margin:0;max-width:36rem;color:var(--color-text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.tax-controls{position:sticky;top:46px;z-index:20;display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;border-bottom:2px solid var(--color-border);background:var(--color-surface);padding:var(--space-3) max(var(--space-6),calc((100vw - 72rem)/2))}.tax-controls label{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.tax-controls select,.tax-segments button{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0;min-height:2.25rem}.tax-controls select{padding:0 var(--space-8) 0 var(--space-3)}.tax-segments{display:grid;grid-auto-flow:column;border:1px solid var(--color-border)}.tax-segments button{border:0;border-right:1px solid var(--color-border);padding:0 var(--space-4)}.tax-segments button:last-child{border-right:0}.tax-segments button.is-active{background:var(--color-border);color:var(--color-surface)}.tax-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:2px solid var(--color-border)}.tax-metrics>div{padding:var(--space-5) var(--space-6);border-right:1px solid var(--color-border-light);background:var(--color-bg)}.tax-metrics>div:last-child{border-right:0}.tax-metrics span{display:block;margin-bottom:var(--space-2);color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em}.tax-metrics strong{font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}.tax-canvas-shell{background:var(--color-surface);border-bottom:2px solid var(--color-border);overflow:hidden}.tax-stage-labels{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--space-4);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-border-light);color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em}.tax-canvas-scroll{overflow-x:auto;max-width:100vw;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:32px 32px}.tax-sankey-svg{display:block;min-width:72rem;width:100%;height:min(72vh,46rem)}.tax-node-label{fill:var(--color-text);font-family:var(--font-mono);font-size:11px;font-weight:600;pointer-events:none}.tax-node-value{fill:var(--color-text-tertiary);font-size:10px;font-weight:400}.tax-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-bottom:2px solid var(--color-border)}.tax-detail-grid article{padding:var(--space-6);border-right:1px solid var(--color-border-light);background:var(--color-surface)}.tax-detail-grid article:last-child{border-right:0}.tax-detail-grid h2{margin-bottom:var(--space-4);font-size:var(--font-size-lg)}.tax-number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.tax-year-bars{border-bottom:2px solid var(--color-border);background:var(--color-bg);padding:var(--space-6)}.tax-year-bars header{display:flex;justify-content:space-between;gap:var(--space-4);align-items:start;margin-bottom:var(--space-6)}.tax-year-bars h2{font-size:var(--font-size-lg)}.tax-chart-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-4);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em}.tax-chart-legend span{display:inline-flex;align-items:center;gap:var(--space-2)}.tax-chart-legend i{display:inline-block;width:.75rem;height:.75rem;border:1px solid var(--color-border)}.tax-chart-scroll{overflow-x:auto;max-width:100%}.tax-bar-chart{display:grid;grid-template-columns:repeat(11,minmax(4.5rem,1fr));align-items:end;gap:var(--space-4);min-width:58rem;height:22rem;padding-top:3.5rem;border-bottom:1px solid var(--color-border)}.tax-year-group{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-2);height:100%}.tax-year-group>strong{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center;font-variant-numeric:tabular-nums}.tax-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:.35rem;min-height:0}.tax-bar{position:relative;min-height:.25rem;border:1px solid var(--color-border)}.tax-bar.is-revenue,.tax-chart-legend .is-revenue{background:#2d75a9}.tax-bar.is-spending,.tax-chart-legend .is-spending{background:#b93631}.tax-bar span{position:absolute;bottom:calc(100% + .35rem);left:50%;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:.62rem;line-height:1;text-align:center;transform:translate(-50%) rotate(-45deg);transform-origin:center bottom;white-space:nowrap}.tax-notes{max-width:72rem;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-12);color:var(--color-text-secondary)}.tax-notes p{max-width:54rem}.tax-sources{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.tax-sources a{border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;background:var(--color-surface)}.tax-loading{padding:var(--space-12);font-family:var(--font-mono)}@media(max-width:760px){.tax-hero,.tax-detail-grid{grid-template-columns:1fr}.tax-hero{padding:var(--space-8) var(--space-4)}.tax-hero h1{font-size:clamp(1.6rem,8vw,1.85rem)}.tax-controls{top:41px;flex-direction:column;align-items:stretch;padding:var(--space-3) var(--space-4)}.tax-segments{grid-auto-flow:row}.tax-segments button{border-right:0;border-bottom:1px solid var(--color-border)}.tax-metrics{grid-template-columns:1fr}.tax-metrics>div,.tax-detail-grid article{border-right:0;border-bottom:1px solid var(--color-border-light);padding:var(--space-4)}.tax-year-bars{padding:var(--space-4)}.tax-year-bars header{display:grid}.tax-chart-legend{justify-content:flex-start}.tax-bar-chart{min-width:46rem;height:18rem;gap:var(--space-3)}.tax-stage-labels{gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:.5rem;letter-spacing:.04em}}
