/* UIDI 0.67.0 — accessibility / theme-override guard.
   For each supported control, foreground AND background are paired as one
   contrast contract. Do not force only color, or only background. This is
   deliberately scoped to UIDI; the host WordPress theme remains untouched. */
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="primary"],
.uidi-atlas.uidi-atlas .uidi-ux-goals > button.uidi-ux-goal-results,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-result-finance,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-more,
.uidi-atlas.uidi-atlas .uidi-election-leaders button:not(:disabled),
.uidi-atlas.uidi-atlas .uidi-pac-discovery button:not(:disabled),
.uidi-atlas.uidi-atlas .uidi-atlas-search-line button:not(:disabled) {
  -webkit-appearance:none!important;appearance:none!important;
  background:#153f62!important;background-color:#153f62!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:2px solid #153f62!important;border-radius:9px!important;
  text-shadow:none!important;box-shadow:none!important;
  font-weight:750!important;line-height:1.45!important;
  white-space:normal!important;opacity:1!important;
  cursor:pointer!important;
}
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="primary"]:hover,
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="primary"]:focus-visible,
.uidi-atlas.uidi-atlas .uidi-ux-goals > button.uidi-ux-goal-results:hover,
.uidi-atlas.uidi-atlas .uidi-ux-goals > button.uidi-ux-goal-results:focus-visible,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-result-finance:hover,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-result-finance:focus-visible,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-more:hover,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-more:focus-visible,
.uidi-atlas.uidi-atlas .uidi-election-leaders button:not(:disabled):hover,
.uidi-atlas.uidi-atlas .uidi-election-leaders button:not(:disabled):focus-visible,
.uidi-atlas.uidi-atlas .uidi-pac-discovery button:not(:disabled):hover,
.uidi-atlas.uidi-atlas .uidi-pac-discovery button:not(:disabled):focus-visible,
.uidi-atlas.uidi-atlas .uidi-atlas-search-line button:not(:disabled):hover,
.uidi-atlas.uidi-atlas .uidi-atlas-search-line button:not(:disabled):focus-visible {
  background:#092c47!important;background-color:#092c47!important;
  border-color:#092c47!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="secondary"],
.uidi-atlas.uidi-atlas .uidi-ux-mode > button,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-clear,
.uidi-atlas.uidi-atlas .uidi-atlas-questions button:not(:disabled) {
  -webkit-appearance:none!important;appearance:none!important;
  background:#fff!important;background-color:#fff!important;
  color:#153f62!important;-webkit-text-fill-color:#153f62!important;
  border:2px solid #56748b!important;border-radius:9px!important;
  text-shadow:none!important;box-shadow:none!important;
  font-weight:750!important;line-height:1.45!important;
  white-space:normal!important;opacity:1!important;
  cursor:pointer!important;
}
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="secondary"]:hover,
.uidi-atlas.uidi-atlas .uidi-2026-election-actions > button[data-uidi-tone="secondary"]:focus-visible,
.uidi-atlas.uidi-atlas .uidi-ux-mode > button:hover,
.uidi-atlas.uidi-atlas .uidi-ux-mode > button:focus-visible,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-clear:hover,
.uidi-atlas.uidi-atlas .uidi-official-results button.uidi-results-clear:focus-visible,
.uidi-atlas.uidi-atlas .uidi-atlas-questions button:not(:disabled):hover,
.uidi-atlas.uidi-atlas .uidi-atlas-questions button:not(:disabled):focus-visible {
  background:#e1eef8!important;background-color:#e1eef8!important;
  border-color:#153f62!important;color:#123451!important;-webkit-text-fill-color:#123451!important;
}
.uidi-atlas.uidi-atlas .uidi-ux-goals > button:not(.uidi-ux-goal-results){
  background:#fff!important;background-color:#fff!important;
  color:#183454!important;-webkit-text-fill-color:#183454!important;
  border:2px solid #829fb6!important;
  text-shadow:none!important;box-shadow:none!important;
}
.uidi-atlas.uidi-atlas .uidi-ux-goals > button:not(.uidi-ux-goal-results):hover,
.uidi-atlas.uidi-atlas .uidi-ux-goals > button:not(.uidi-ux-goal-results):focus-visible{
  background:#e7f1fa!important;background-color:#e7f1fa!important;
  color:#153f62!important;-webkit-text-fill-color:#153f62!important;
  border-color:#235a83!important;
}
.uidi-atlas.uidi-atlas .uidi-ux-goals > button.uidi-ux-goal-results strong,
.uidi-atlas.uidi-atlas .uidi-ux-goals > button.uidi-ux-goal-results span{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.uidi-atlas.uidi-atlas .uidi-ux-goals > button:not(.uidi-ux-goal-results) strong,
.uidi-atlas.uidi-atlas .uidi-ux-goals > button:not(.uidi-ux-goal-results) span{
  color:#163e5b!important;-webkit-text-fill-color:#163e5b!important;
}
.uidi-atlas.uidi-atlas .uidi-atlas-tabs button[data-atlas-tab]{
  background:#fff!important;background-color:#fff!important;color:#214658!important;
  -webkit-text-fill-color:#214658!important;border:0!important;text-shadow:none!important;
}
.uidi-atlas.uidi-atlas .uidi-atlas-tabs button[data-atlas-tab][aria-current="page"],
.uidi-atlas.uidi-atlas .uidi-atlas-tabs button[data-atlas-tab]:hover,
.uidi-atlas.uidi-atlas .uidi-atlas-tabs button[data-atlas-tab]:focus-visible{
  background:#dff0ea!important;background-color:#dff0ea!important;
  color:#075b53!important;-webkit-text-fill-color:#075b53!important;
}
.uidi-atlas.uidi-atlas button:focus-visible,
.uidi-atlas.uidi-atlas summary:focus-visible,
.uidi-atlas.uidi-atlas input:focus-visible,
.uidi-atlas.uidi-atlas select:focus-visible{
  outline:3px solid #c37e11!important;outline-offset:3px!important;
}
.uidi-atlas.uidi-atlas button:disabled{
  background:#e1e7ed!important;background-color:#e1e7ed!important;
  color:#35475a!important;-webkit-text-fill-color:#35475a!important;
  border-color:#8595a5!important;cursor:not-allowed!important;
}
.uidi-atlas.uidi-atlas [hidden]{display:none!important}
/* Progressive disclosure avoids multiple near-identical election introductions. */
.uidi-atlas .uidi-2026-election-brief{padding:clamp(14px,2.2vw,21px);background:#f8fafc!important;color:#173047!important;scroll-margin-top:20px}
.uidi-atlas .uidi-2026-election-brief>p{margin:8px 0 12px;line-height:1.5}
.uidi-atlas .uidi-2026-election-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:13px 0 11px}
.uidi-atlas .uidi-2026-election-actions>button{width:100%!important;min-width:0!important;min-height:49px!important;padding:10px 13px!important;font-size:.91rem!important}
.uidi-atlas .uidi-2026-election-caveat{font-size:.82rem!important;color:#41596b!important;line-height:1.45!important}
.uidi-atlas .uidi-2026-election-source-wrap{margin:7px 0 16px;padding:9px 12px;border:1px solid #d5e1e9;border-radius:8px;background:#fff;color:#27465e}
.uidi-atlas .uidi-2026-election-source-wrap summary{color:#174c73!important;font-weight:750;font-size:.86rem;cursor:pointer}
.uidi-atlas .uidi-2026-election-source-wrap a,.uidi-atlas .uidi-results-admin-help a{color:#09588b!important;text-decoration:underline!important;text-underline-offset:2px}
.uidi-atlas .uidi-2026-finance-freshness{margin:14px 0;background:#fff;border:1px solid #d0dee9;border-radius:9px;padding:11px 13px;color:#193b55}
.uidi-atlas .uidi-2026-finance-freshness>summary{font-size:.9rem;font-weight:750;color:#174e73!important;cursor:pointer}
.uidi-atlas .uidi-2026-finance-freshness .uidi-2026-election-coverage{margin:10px 0 0}
.uidi-atlas .uidi-onsite-results{scroll-margin-top:22px;padding:clamp(13px,2vw,19px);background:#fff!important}
.uidi-atlas .uidi-onsite-results-head h4{color:#16384e!important;margin:4px 0 7px!important}
.uidi-atlas .uidi-onsite-results-head p{color:#39576d!important;line-height:1.5}
.uidi-atlas .uidi-official-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin:10px 0 12px}
.uidi-atlas .uidi-official-meta>div{background:#eff5f9!important;color:#183d58!important;border:1px solid #cbdae6!important}
.uidi-atlas .uidi-official-meta span{color:#36566f!important}
.uidi-atlas .uidi-official-meta strong{color:#123a5c!important;font-size:clamp(.96rem,1.8vw,1.17rem)!important;overflow-wrap:anywhere}
.uidi-atlas .uidi-results-source-status{margin:12px 0 15px;background:#fbfdff;border:1px solid #d1e0ea;border-radius:9px;padding:10px 12px;color:#274b63}
.uidi-atlas .uidi-results-source-status>summary{color:#184d73!important;font-size:.87rem;font-weight:750;cursor:pointer}
.uidi-atlas .uidi-results-source-status .uidi-results-source-health{margin:10px 0 1px}
.uidi-atlas .uidi-results-empty{background:#f0f6fb!important;color:#193e5c!important;border-left:4px solid #1c658f!important;border-radius:7px;padding:14px 16px;margin:10px 0 15px;font-size:.92rem;line-height:1.5}
.uidi-atlas .uidi-results-empty strong{color:#143c5a!important}
.uidi-atlas .uidi-results-empty p{color:#34516a!important;margin:7px 0 0}
.uidi-atlas .uidi-results-clear{align-self:end;min-height:42px;padding:9px 12px!important;font-size:.85rem!important;flex:0 1 auto}
.uidi-atlas .uidi-ux-goals .uidi-ux-goal-results{grid-column:1/-1;min-height:70px;text-align:left;padding:14px 16px!important}
.uidi-atlas .uidi-ux-goals .uidi-ux-goal-results strong{font-size:1.07rem!important}
.uidi-atlas .uidi-ux-goals .uidi-ux-goal-results span{font-size:.88rem!important}
.uidi-atlas .uidi-official-results .uidi-official-filters select,
.uidi-atlas .uidi-official-results .uidi-official-filters input{
  -webkit-text-fill-color:#173b55!important;
  color:#173b55!important;background:#fff!important;background-color:#fff!important;
  border:1px solid #708da5!important;box-shadow:none!important;
}
.uidi-atlas .uidi-official-results .uidi-official-filters label{color:#23475f!important}
@media(max-width:830px){
  .uidi-atlas .uidi-2026-election-actions{grid-template-columns:1fr 1fr}
  .uidi-atlas .uidi-2026-election-actions>button:first-child{grid-column:1/-1}
}
@media(max-width:600px){
  .uidi-atlas .uidi-2026-election-actions{grid-template-columns:1fr}
  .uidi-atlas .uidi-2026-election-actions>button:first-child{grid-column:auto}
  .uidi-atlas .uidi-2026-election-brief{padding:13px!important;margin:15px 0!important}
  .uidi-atlas .uidi-official-meta{grid-template-columns:1fr!important;gap:7px}
  .uidi-atlas .uidi-official-meta>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 12px}
  .uidi-atlas .uidi-official-meta span{font-size:.86rem}
  .uidi-atlas .uidi-official-meta strong{font-size:1rem!important;text-align:right}
}
@media(forced-colors:active){
  .uidi-atlas.uidi-atlas .uidi-2026-election-actions button,
  .uidi-atlas.uidi-atlas .uidi-ux-goals button,
  .uidi-atlas.uidi-atlas .uidi-official-results button{
    forced-color-adjust:auto!important;
    color:ButtonText!important;-webkit-text-fill-color:ButtonText!important;
    background:ButtonFace!important;border:2px solid ButtonText!important;
  }
}
