/**
 * State circuit breaker spending map styles (prefix: cbmap).
 * Relies on Bootstrap 5.3 utilities and variables supplied by the theme.
 */
.cbmap-wrapper .cbmap-title { color: #122b4e; font-size: clamp(1.4rem, 2.5vw, 2.25rem); }
.cbmap-wrapper .cbmap-legend { max-width: 52rem; }
.cbmap-wrapper .cbmap-swatch { width: 1.6rem; height: 1.6rem; }
.cbmap-wrapper .cbmap-legend-label { font-size: 1.05rem; }
.cbmap-wrapper .cbmap-state-label { font-weight: 700; letter-spacing: .02em; }
.cbmap-wrapper .cbmap-tooltip { pointer-events: none; z-index: 10; min-width: 12rem; max-width: 18rem; }
.cbmap-wrapper .cbmap-dot { width: .7rem; height: .7rem; }
.cbmap-wrapper svg [tabindex]:focus-visible { stroke: #14294b; stroke-width: 2; }
.cbmap-wrapper .cbmap-footer { color: #122b4e; border-color: #122b4e !important; }
.cbmap-wrapper .cbmap-accent { color: #9b2f2b; }
.cbmap-wrapper .cbmap-legend-btn { background: transparent; color: inherit; transition: opacity .2s ease, background-color .2s ease; }
.cbmap-wrapper .cbmap-legend-btn:hover { background-color: rgba(18, 43, 78, .08); }
.cbmap-wrapper .cbmap-legend-btn:focus-visible { outline: 2px solid #122b4e; outline-offset: 2px; box-shadow: none; }
.cbmap-wrapper .cbmap-legend-btn.is-active { background-color: #fff; box-shadow: inset 0 0 0 2px #122b4e; }
.cbmap-wrapper .cbmap-legend-btn.is-dimmed { opacity: .45; }
.cbmap-wrapper svg path, .cbmap-wrapper svg circle, .cbmap-wrapper svg text, .cbmap-wrapper svg g { transition: opacity .25s ease; }
