.broker-page {max-width:1100px;margin-inline:auto;overflow-wrap:anywhere}
.broker-page h1{font-size:clamp(1.65rem,3vw,2.25rem)}.broker-page h2{font-size:1.4rem;margin-top:2rem}.broker-page h3{font-size:1.1rem}.broker-page h4{font-size:1rem}
.broker-page p{max-width:78ch}.broker-page label{display:block;font-weight:600}.broker-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.broker-field{min-width:0;margin-block:.5rem}
.broker-presets,.broker-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-block:1rem}.broker-actions .broker-field{min-width:15rem}.broker-actions button{align-self:flex-end;margin-bottom:.5rem}
.broker-page details{margin-block:1rem}.broker-page summary{cursor:pointer;font-weight:600;padding-block:.4rem}.broker-options,.broker-pending{border-block:1px solid var(--ui-line);padding-block:1rem}.broker-empty{padding:1rem;background:var(--ui-hover)}
.broker-results th,.broker-results td{vertical-align:top;min-width:12rem}.broker-results td:last-child{min-width:18rem}.broker-results strong{font-size:1.3rem;font-variant-numeric:tabular-nums}.broker-account{font-weight:400}
.broker-fees{display:grid;grid-template-columns:minmax(0,2fr) minmax(5rem,1fr);gap:.5rem}.broker-fees dd{text-align:right;font-variant-numeric:tabular-nums}.broker-version{font-size:.85rem;color:var(--ui-muted)}
.broker-coverage{padding-block:.6rem;border-bottom:1px solid var(--ui-line)}.broker-page :focus-visible{outline:3px solid var(--ui-link);outline-offset:3px}
@media(max-width:700px){.broker-inputs{grid-template-columns:minmax(0,1fr)}.broker-results thead{display:none}.broker-results,.broker-results tbody,.broker-results tr,.broker-results th,.broker-results td{display:block;width:100%;min-width:0}.broker-results tr{border-bottom:2px solid var(--ui-line);padding-block:1rem}.broker-results th,.broker-results td{border:0;padding:.5rem 0}.broker-actions .broker-field{width:100%}}

.broker-presets .btn{font-size:.875rem;padding:.4rem .45rem}.broker-presets{gap:.35rem}
@media(max-width:700px){#broker-scenario>.broker-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .8rem}#broker-scenario>.broker-inputs>.broker-field:last-child{grid-column:1 / -1}.broker-page>h1{margin-bottom:.65rem}.broker-page>p{margin-bottom:.75rem}.broker-options{padding-block:.45rem}.broker-actions{margin-block:.65rem}}

.broker-page .broker-results th,.broker-page .broker-results td{vertical-align:top}.broker-fee-note{display:block;font-size:.85rem;font-weight:400;color:var(--ui-muted)}

.holding-page form{margin-block:1rem}.holding-month{border-top:1px solid var(--ui-line);padding:.4rem 0}.holding-month .broker-inputs{gap:.6rem}.holding-page textarea{width:100%;resize:vertical}.holding-page .broker-results details{max-width:65ch}.holding-page .broker-fees dt{min-width:0}.holding-page .broker-fees dd{margin-left:0}

@media(max-width:700px){.holding-page #holding-setup>.broker-inputs,.holding-page #holding-scenario>.broker-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .8rem}.holding-page #holding-scenario>.broker-inputs>.broker-field:first-child{grid-column:1 / -1}.holding-page input[type=month]{min-width:0;max-width:100%;width:100%}}


.broker-reference-inputs{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;margin-block:1.25rem}.broker-reference-inputs .broker-field{flex:1 1 12rem;margin:0}.broker-reference-inputs button{min-height:2.4rem}.broker-reference .broker-scope{color:var(--ui-muted)}
/* Compact comparison: fixed broker columns, numeric cells, expandable tariff notes. */
.broker-reference{--broker-label-width:116px;--broker-column-width:156px}
.broker-table-scroll{max-width:100%;overflow-x:auto;margin-block:.75rem 1.25rem;isolation:isolate;border:1px solid var(--ui-line);border-radius:.35rem}
.broker-fee-matrix{width:calc(var(--broker-label-width) + var(--broker-columns,3) * var(--broker-column-width));min-width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:.875rem;line-height:1.4}
.broker-fee-matrix caption{caption-side:top;text-align:left;padding:.6rem .65rem;color:var(--ui-muted);font-size:.85rem}
.broker-fee-matrix th,.broker-fee-matrix td{padding:.55rem .65rem;vertical-align:top;text-align:left;border-top:1px solid var(--ui-line);border-right:1px solid var(--ui-line);font-variant-numeric:tabular-nums}
.broker-fee-matrix th:last-child,.broker-fee-matrix td:last-child{border-right:0}
.broker-fee-matrix tr>:first-child{position:sticky;left:0;z-index:1;width:var(--broker-label-width);background:var(--ui-surface);box-shadow:2px 0 3px #00000008}
.broker-fee-matrix thead th{font-size:.9rem;background:var(--ui-surface)}
.broker-fee-matrix small{display:block;font-size:.75rem;font-weight:400;color:var(--ui-muted);margin-top:.25rem}
.broker-fee-matrix .broker-total-row>*{background:var(--ui-selected)}
.broker-total-row strong{font-size:1.05rem}
.broker-fee-matrix details{margin:0;font-size:.8rem}
.broker-fee-matrix summary{padding:.15rem 0}
.broker-fee-matrix details p{margin:.6rem 0}
.broker-tariff-notes{margin:.6rem 0}
.broker-tariff-notes dt{margin-top:.5rem;font-weight:600}
.broker-tariff-notes dd{margin:0;color:var(--ui-muted)}
.broker-scroll-hint,.broker-comparison-note{font-size:.8rem;color:var(--ui-muted)}
@media(max-width:760px){.broker-reference{--broker-label-width:104px;--broker-column-width:148px}.broker-reference-inputs{gap:.75rem}.broker-reference-inputs button{width:100%}.broker-fee-matrix th,.broker-fee-matrix td{padding:.5rem}}
