/* Province-first comparison: scoped to avoid changing calculator and bank tools. */
.ccc-province-routing { min-width: 0; }
.ccc-province-routing [hidden] { display: none !important; }
.ccc-province-routing .ccc-market-picker { margin: 0 0 20px; padding: 20px; border: 1px solid var(--line, #d8d1c6); border-radius: 8px; background: var(--cream, #f6f1e8); }
.ccc-province-routing .ccc-filter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: end; }
.ccc-province-routing .ccc-filter-grid label { display: block; margin-bottom: 7px; }
.ccc-province-routing .ccc-filter-grid select { width: 100%; max-width: none; min-width: 0; min-height: 48px; font-size: 1rem; }
.ccc-province-routing--compact .ccc-filter-grid,
.ccc-province-routing.ccc-evidence-comparison--compact .ccc-filter-grid { grid-template-columns: minmax(0, 1fr); }
.ccc-province-routing .ccc-fixed-province { display: grid; gap: 8px; }
.ccc-province-routing .ccc-fixed-province a { font-size: .9rem; }
.ccc-province-routing .ccc-province-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 14px; }
.ccc-province-routing .ccc-province-actions button { min-height: 44px; padding: 9px 16px; border: 1px solid var(--felt, #163e35); border-radius: 6px; background: var(--felt, #163e35); color: #fff; font: inherit; font-weight: 650; cursor: pointer; }
.ccc-province-routing .ccc-province-actions [data-ccc-province-reset] { background: transparent; color: var(--ink, #292923); border-color: var(--line, #d8d1c6); }
.ccc-province-routing .ccc-province-actions button:focus-visible,
.ccc-province-routing .ccc-reference-research > summary:focus-visible { outline: 3px solid var(--accent, #8d292c); outline-offset: 3px; }
.ccc-province-routing .ccc-province-shortcuts { margin: 10px 0 0; font-size: .9rem; }
/* This component also renders outside article prose on home and review pages. */
.ccc-province-routing a { color:var(--felt-deep); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.ccc-province-routing a:hover { color:var(--felt); text-decoration-thickness:2px; }
.ccc-province-routing a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; border-radius:2px; }
.ccc-province-routing .ccc-province-shortcuts a,
.ccc-province-routing .ccc-fixed-province > a { display:inline-flex; align-items:center; min-height:44px; }
.ccc-province-routing .ccc-region-note { margin: 0 0 20px; padding: 14px 18px; border-left: 3px solid var(--felt, #163e35); background: var(--paper, #fff); }
.ccc-province-routing .ccc-region-note p { margin: 6px 0 0; }
.ccc-province-routing .ccc-table-hint { margin: 0 0 14px; }
.ccc-province-routing .ccc-reference-research { margin: 24px 0; padding: 0; border: 1px solid var(--line, #d8d1c6); border-radius: 8px; background: var(--paper, #fff); }
.ccc-province-routing .ccc-reference-research > summary { min-height: 48px; padding: 13px 16px; font-weight: 650; line-height: 1.5; cursor: pointer; }
.ccc-province-routing .ccc-reference-research > p { margin: 0; padding: 0 16px 16px; font-size: .94rem; }
.ccc-province-routing .ccc-reference-research .table-scroll { margin: 0 16px 16px; width: auto; }
.ccc-province-routing .ccc-full-comparison { margin: 18px 0; font-weight: 650; }
.ccc-province-routing .ccc-full-comparison a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; text-decoration: underline; text-underline-offset: 3px; }
.ccc-province-routing .source-cite { line-height: 1.6; }
.ccc-province-routing .ccc-evidence-next small { color: var(--ink-soft, #655b51); }
@media (max-width: 720px) {
  .ccc-province-routing .ccc-filter-grid { grid-template-columns: minmax(0, 1fr); }
  .ccc-province-routing .ccc-market-picker { padding: 16px; }
  .ccc-province-routing .ccc-province-actions button { flex: 1 1 auto; }
  .ccc-province-routing .ccc-reference-research .table-scroll { margin: 0 12px 12px; }
  .ccc-province-routing .ccc-region-note { padding: 12px 14px; }
}

/* Add focus-ring space to the global 96px sticky-header scroll padding. */
.ccc-province-routing .ccc-results-heading { margin: 0 0 16px; padding: 4px 0; scroll-margin-top: 8px; font-size: clamp(1.25rem, 3vw, 1.6rem); line-height: 1.3; overflow-wrap: anywhere; }
.ccc-province-routing .ccc-results-heading:focus { outline: 3px solid #2463a2; outline-offset: 5px; border-radius: 2px; }
.ccc-province-routing .ccc-coverage-note { margin: 0 0 18px; line-height: 1.6; }
