/* ============================================================
   STAMP DUTY — shared tool styles
   Loaded by stamp-duty-calculator.html and every /stamp-duty-<state>
   landing page. Relies on the theme variables defined in styles.css.
   ============================================================ */

/* --- calculator result + breakdown --- */
.calc-result .big.zero{color:var(--up)}
.sd-saved{color:var(--up);font-variant-numeric:tabular-nums}
.sd-surcharge{color:var(--down)}
.calc-breakdown tr.sd-total td{font-weight:700;border-top:2px solid var(--rule-strong);border-bottom:0}
.calc-breakdown tr.sd-sub td{color:var(--ink-soft)}
.sd-flag{display:inline-block;font-family:var(--sans);font-size:.72rem;font-weight:700;
  background:var(--amber-soft);color:var(--terracotta-deep);border-radius:999px;padding:2px 9px;margin-left:.4em;vertical-align:middle}
.sd-slider-val{font-family:var(--sans);font-weight:700;color:var(--terracotta-deep);font-size:.95rem}
.sd-note{font-family:var(--sans);font-size:.78rem;color:var(--ink-faint);margin:.6em 0 0}
.calc-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.calc-actions .calc-btn{min-height:44px}
.sd-copied{font-family:var(--sans);font-size:.82rem;color:var(--up);align-self:center}

/* --- charts --- */
.sd-charts{margin-top:1.4rem}
.sd-chart{margin-top:1.2rem}
.sd-chart h3{font-family:var(--sans);font-size:.92rem;font-weight:700;color:var(--ink);margin:0 0 .2em}
.sd-chart .sd-chart-sub{font-family:var(--sans);font-size:.76rem;color:var(--ink-faint);margin:0 0 .5em}
.sd-chart svg{display:block;width:100%;height:auto}
.sd-bar-rect{cursor:pointer;transition:opacity .12s}
.sd-bar-rect:hover{opacity:.82}
.sd-bar-row{cursor:pointer}
.sd-bar-label{font-family:var(--sans);font-size:12px;fill:var(--ink-soft)}
.sd-bar-label.sel{fill:var(--terracotta-deep);font-weight:700}
.sd-bar-val{font-family:var(--sans);font-size:11px;fill:var(--ink);font-variant-numeric:tabular-nums}
.sd-curve-axis{font-family:var(--sans);font-size:10px;fill:var(--ink-faint)}
.sd-curve-line{fill:none;stroke:var(--amber);stroke-width:2}
.sd-curve-fill{fill:var(--amber-soft);opacity:.45}
.sd-curve-marker{fill:var(--terracotta)}
.sd-curve-mlabel{font-family:var(--sans);font-size:11px;font-weight:700;fill:var(--terracotta-deep);font-variant-numeric:tabular-nums}
.sd-grid{stroke:var(--hairline-2);stroke-width:1}

/* --- state-page extras --- */
/* breadcrumb */
.crumbs{font-family:var(--sans);font-size:.8rem;color:var(--ink-faint);margin:.2rem 0 .6rem}
.crumbs a{color:var(--ink-soft);text-decoration:none}
.crumbs a:hover{color:var(--terracotta-deep);text-decoration:underline}

/* "switch state" chip nav at the top of each state page */
.sd-statenav{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 1.4rem}
.sd-statenav a{font-family:var(--sans);font-size:.82rem;font-weight:600;text-decoration:none;
  color:var(--ink-soft);background:var(--surface);border:1px solid var(--hairline-2);
  border-radius:999px;padding:5px 12px;min-height:32px;display:inline-flex;align-items:center;transition:background .12s,color .12s}
.sd-statenav a:hover{background:var(--amber-soft);color:var(--terracotta-deep)}
.sd-statenav a[aria-current="page"]{background:var(--terracotta);color:#fff;border-color:var(--terracotta)}

/* human-readable duty scale table on state pages */
.sd-rate-table{width:100%;border-collapse:collapse;margin:.6rem 0 1rem;font-family:var(--sans);font-size:.9rem}
.sd-rate-table th,.sd-rate-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--hairline-2);vertical-align:top}
.sd-rate-table th{font-weight:700;color:var(--ink);background:var(--surface)}
.sd-rate-table td:first-child{white-space:nowrap;color:var(--ink-soft);font-variant-numeric:tabular-nums}

/* quick "at a glance" fact strip */
.sd-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;margin:1.2rem 0}
.sd-fact{background:var(--surface);border:1px solid var(--hairline-2);border-radius:10px;padding:.8rem .9rem}
.sd-fact .sd-fact-k{font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .25em}
.sd-fact .sd-fact-v{font-family:var(--sans);font-size:1.02rem;font-weight:700;color:var(--ink);line-height:1.25}

@media (max-width:560px){
  .sd-rate-table{font-size:.84rem}
  .sd-rate-table th,.sd-rate-table td{padding:7px 7px}
}
