/* Budget Matcher: builds on /tools/supplier-finder/style.css (.sf-* form pieces), scheme-finder-style
   report classes (.scf-*, copied below so this page doesn't depend on the scheme finder's CSS) and site tokens. */
.scf-radios,.scf-checks{border:0;padding:0;margin:0}
.scf-radios legend,.scf-checks legend{padding:0}
.scf-radio{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid var(--color-rule-2);border-radius:var(--radius-input);margin-bottom:8px;cursor:pointer;font-size:15px;color:var(--color-ink)}
.scf-radio input{width:18px;height:18px;accent-color:var(--color-accent-2-deep)}
.scf-radio:has(input:checked){border-color:var(--color-accent-2);background:var(--tint-blue)}
.scf-check{display:flex;align-items:flex-start;gap:10px;margin-top:var(--space-md);font-size:14px;color:var(--color-ink-2);cursor:pointer;line-height:1.45}
.scf-check input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--color-accent-2-deep)}
.scf-check:has(input:disabled){opacity:.5;cursor:default}

.bm-amts{margin-top:10px}
.bm-amts .sf-chip{padding:6px 12px}
.bm-loan{margin-top:var(--space-md)}
.bm-sectors{display:flex;flex-wrap:wrap;gap:8px}
.bm-sectors legend{width:100%;margin-top:var(--space-md)}
.bm-pill{cursor:pointer;position:relative}
.bm-pill input{position:absolute;opacity:0;pointer-events:none}
.bm-pill span{display:inline-block;font-size:14px;padding:8px 14px;border:1.5px solid var(--color-rule-2);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-ink)}
.bm-pill input:checked + span{background:var(--color-accent);border-color:var(--color-accent-deep)}
.bm-pill input:focus-visible + span{box-shadow:0 0 0 3px var(--tint-blue-2)}

.scf-report{border-top:1px dashed var(--color-rule-2);padding-top:var(--space-xl);scroll-margin-top:80px;max-width:52rem}
.scf-title{font-size:var(--text-2xl, 1.8rem);line-height:1.2}
.scf-chips{display:flex;flex-wrap:wrap;gap:6px;margin:var(--space-md) 0}
.scf-chips span{font-size:13px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--color-paper-2);border:1px solid var(--color-rule);color:var(--color-ink-2)}
.scf-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--space-lg)}
.scf-fine{font-size:13px;color:var(--color-muted);line-height:1.55;margin-bottom:var(--space-lg)}
.scf-disclaimer{margin-top:var(--space-lg)}
.scf-sec{margin-top:var(--space-xl)}
.scf-h{font-size:var(--text-xl);margin-bottom:4px;display:flex;align-items:center;gap:10px}
.scf-h span{font-family:var(--font-label);font-size:13px;background:var(--color-ink);color:var(--color-on-ink);border-radius:var(--radius-pill);padding:1px 9px}
.scf-sub{font-size:14px;color:var(--color-neutral);margin-bottom:var(--space-md)}
.scf-cards{display:grid;gap:var(--space-md)}
@media (min-width:760px){.bm-report .scf-cards{grid-template-columns:1fr 1fr}}
.scf-card{background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow-card)}
.scf-card__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.scf-badge{font-family:var(--font-label);font-size:11px;font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-pill);background:var(--tint-blue-2);color:var(--color-accent-2-deep)}
.scf-badge.is-state{background:var(--tint-sun-2);color:var(--color-ink)}
.scf-kind{font-size:13px;color:var(--color-muted)}
.scf-card__title{font-size:var(--text-lg);margin:8px 0 2px;line-height:1.3}

.bm-tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin:var(--space-md) 0}
.bm-tile{background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-md);box-shadow:var(--shadow-card)}
.bm-tile.is-blue{background:var(--tint-blue);border-color:var(--tint-blue-2)}
.bm-tile b{display:block;font-family:var(--font-label);font-size:2rem;line-height:1.1;color:var(--color-ink)}
.bm-tile span{font-size:13px;color:var(--color-neutral);line-height:1.4}
.bm-pmegp a{color:var(--color-link);text-decoration:underline;font-weight:600}

.bm-card{display:flex;flex-direction:column}
.bm-where{font-size:14px;font-weight:600;color:var(--color-neutral)}
.bm-fact{font-size:14px;color:var(--color-ink-2);line-height:1.5;margin-top:8px}
.bm-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:var(--space-md) 0 0;padding:10px 12px;background:var(--color-paper-2);border-radius:var(--radius-input)}
.bm-stats dt{font-size:11px;font-family:var(--font-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}
.bm-stats dd{margin:0;font-size:14px;font-weight:600;color:var(--color-ink)}
.bm-fund{font-size:13.5px;line-height:1.5;color:var(--color-ink-2);margin-top:10px;padding:8px 12px;border-left:3px solid var(--color-accent-2);background:var(--tint-blue)}
.bm-fund.is-own{border-left-color:var(--color-mint-deep, #2f8f5b);background:var(--color-paper-2)}
.bm-fund.is-near{border-left-color:var(--color-accent-3, #e07a5f);background:var(--color-paper-2)}
.bm-more{margin-top:10px;font-size:14px}
.bm-more summary{cursor:pointer;color:var(--color-link);font-weight:600}
.bm-more p{margin-top:6px;color:var(--color-ink-2);line-height:1.5}
.bm-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:var(--space-md)}
.bm-moreBtn{margin-top:var(--space-md)}

@media print{
  .site-nav,.site-footer,.sf-header,.sf-form,.sf-gate,.scf-actions,.sf-help,.bm-links,.bm-moreBtn{display:none!important}
  .scf-report{border:0;padding:0}
  .scf-card{box-shadow:none;break-inside:avoid}
}
