/* One complete shared-scale plot. Geometry lives in the SVG; typography follows preferences. */
.income-benchmark-chart{position:relative;min-width:0;margin:18px 0 0;outline-offset:6px;--benchmark-reference:var(--gold-dark);--benchmark-dot:var(--chart-before);--benchmark-selected:var(--accent)}
.income-benchmark-chart:focus-visible{outline:2px solid var(--focus);border-radius:5px}
.income-benchmark-legend{display:flex;flex-wrap:wrap;gap:9px 20px;margin-bottom:14px;font-size:0.875rem;line-height:1.6;color:var(--muted)}
.income-benchmark-legend>span{display:flex;flex-wrap:wrap;align-items:center;gap:5px 7px;min-width:0}
.income-benchmark-legend strong{font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}
.income-benchmark-swatch{display:inline-block;flex:none;width:22px;position:relative;height:0}
.income-benchmark-swatch-you{border-top:2px dashed var(--benchmark-reference)}
.income-benchmark-swatch-median{border-top:2px solid var(--line)}
.income-benchmark-swatch-median:after{content:'';position:absolute;width:7px;height:7px;background:var(--benchmark-dot);border-radius:50%;left:8px;top:-4.5px}
.income-benchmark-chart>svg{display:block;width:100%;height:auto;overflow:visible;touch-action:pan-y;font-family:inherit}
.income-benchmark-tooltip{position:absolute;z-index:4;pointer-events:none;max-width:min(20rem,calc(100% - 16px));box-sizing:border-box;padding:10px 12px;border:1px solid var(--control-line);border-left:3px solid var(--benchmark-reference);border-radius:7px;background:var(--surface);box-shadow:0 4px 16px #17202c20;color:var(--text);line-height:1.6}
.income-benchmark-tooltip[hidden]{display:none}
.income-benchmark-tooltip strong,.income-benchmark-tooltip span{display:block;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.income-benchmark-tooltip strong{font-size:0.875rem;font-weight:650}.income-benchmark-tooltip span{font-size:0.875rem;margin-top:4px}
.income-benchmark-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:2 4;opacity:.7;pointer-events:none}
.income-benchmark-axis-label,.income-benchmark-tick{fill:var(--muted);font-size:0.875rem;font-variant-numeric:tabular-nums}
.income-benchmark-axis-label{font-weight:500}
.income-benchmark-reference{stroke:var(--benchmark-reference);stroke-width:1.75;stroke-dasharray:5 4;pointer-events:none}
.income-benchmark-reference-cap{fill:var(--benchmark-reference);pointer-events:none}
.income-benchmark-axis-baseline{stroke:var(--line);stroke-width:1;pointer-events:none}
.income-benchmark-group-backdrop,.income-benchmark-label-backdrop{fill:var(--surface);pointer-events:none}
.income-benchmark-group-label{fill:var(--text);font-size:0.875rem;font-weight:650}
.income-benchmark-group-note{fill:var(--muted);font-size:0.875rem;font-weight:400}
.income-benchmark-row-backdrop{fill:transparent;pointer-events:all}
.income-benchmark-selected-backdrop{fill:var(--soft);fill-opacity:.9;pointer-events:none}
[data-benchmark-row][data-selected=true] .income-benchmark-label-backdrop{fill:var(--soft)}
[data-benchmark-row][data-inspected=true] .income-benchmark-row-backdrop{stroke:var(--control-line);stroke-width:1;stroke-opacity:.6}
.income-benchmark-stem{stroke:var(--line);stroke-width:2;pointer-events:none}
.income-benchmark-dot{fill:var(--benchmark-dot);stroke:var(--surface);stroke-width:1.5;pointer-events:none}
.income-benchmark-row-label{fill:var(--muted);font-size:0.875rem;font-weight:450}
.income-benchmark-row-value{fill:var(--muted);font-size:0.875rem;font-weight:500;font-variant-numeric:tabular-nums}
[data-benchmark-row][data-selected=true] .income-benchmark-row-label,[data-benchmark-row][data-selected=true] .income-benchmark-row-value{fill:var(--text);font-weight:650}
[data-benchmark-row][data-selected=true] .income-benchmark-dot{fill:var(--benchmark-selected);stroke-width:2}
[data-benchmark-row][data-cohort=national] .income-benchmark-row-label,[data-benchmark-row][data-cohort=national] .income-benchmark-row-value{fill:var(--text);font-weight:600}
.income-benchmark-inspection{border:1px solid var(--line);border-left:3px solid var(--benchmark-reference);border-radius:7px;background:var(--soft);padding:12px 14px;margin-top:12px;line-height:1.6;min-width:0}
.income-benchmark-inspection>div{display:grid;gap:3px}
.income-benchmark-inspection strong{font-size:0.875rem;font-weight:600;color:var(--text);overflow-wrap:anywhere}
.income-benchmark-inspection span{font-size:0.875rem;color:var(--muted);overflow-wrap:anywhere}
.income-benchmark-inspection p{font-size:0.875rem;color:var(--text);font-variant-numeric:tabular-nums;margin:8px 0 0;overflow-wrap:anywhere}
.income-benchmark-help{font-size:0.875rem;line-height:1.7;color:var(--muted);margin:10px 0 0}
.income-benchmark-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
@media print{.income-benchmark-help,.income-benchmark-tooltip{display:none}.income-benchmark-chart:focus{outline:none}}
