#elections [data-current-election-groups] :is(.precinct-race-card,.race-card,.precinct-race-row,.precinct-race-category,.election-category)[hidden],
#elections .college-election-empty[hidden]{display:none!important}
#elections .college-election-empty{padding:18px;border:1px solid var(--area-line);background:var(--area-surface);color:var(--area-muted)}
@media(max-width:650px){#elections>.election-office-filter{grid-template-columns:minmax(0,1fr)}#elections>.election-office-filter .election-office-filter-status{justify-self:start;text-align:left}}

#elections .college-past-page-disabled{color:#849094;cursor:default}
#elections .college-history-event[hidden]{display:none!important}
#elections .college-past-page-disabled .ptp-inline-page-mark{--ptp-inline-page-mark-color:currentColor}
#elections .college-past-page-disabled i{color:inherit}

/* Selected A: compact separate panel with tight spacing. */
#elections .college-next-election-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:1px;background:#dce1de;border:1px solid #c4cdca;padding:2px 6px;margin:1px 0 5px;color:#586466}
#elections .college-next-election-panel small{font:700 10px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:.03em}
#elections .college-next-election-panel b{font:700 12px/1.3 Arial,sans-serif;min-width:0}
#elections .college-next-election-panel em{font:400 10px/1.3 Arial,sans-serif}
#elections [data-current-election-groups] .precinct-race-card>strong{margin-top:auto}
#elections [data-current-election-groups] .precinct-race-card>strong .ptp-inline-page-mark{--ptp-inline-page-mark-color:currentColor}

#elections .precinct-race-card.is-unopposed{border-top-color:#b38227;background:#fff;color:var(--area-navy);box-shadow:0 7px 22px rgba(8,47,73,.07)}
#elections .precinct-race-card.is-unopposed .precinct-race-status{background:#fff0c9;color:#805d18;border-color:#e3c680}
#elections .precinct-race-card.is-unopposed strong{color:var(--area-teal)}
#elections .precinct-race-card.is-unopposed .college-past-page-disabled{color:#849094}
#elections .precinct-race-card.is-unopposed .ptp-inline-page-mark{--ptp-inline-page-mark-color:currentColor}
#elections .election-cycle-guide i.is-unopposed{background:#b38227}

/* Match every row and state without clipping longer office names or dates. */
#elections .precinct-race-grid{grid-auto-rows:1fr;align-items:stretch}
#elections .precinct-race-grid>.precinct-race-card{box-sizing:border-box;min-height:175px;height:100%}
#elections .precinct-race-grid>.precinct-race-card h4{margin-bottom:6px}

/* Use a common centerline despite the arrow's larger glyph size. */
#elections .precinct-race-card>strong{align-items:center}
#elections .precinct-race-card>strong i{display:inline-flex;align-items:center;justify-content:center;line-height:1;font-style:normal;vertical-align:middle}

#elections .election-office-filter-controls button:disabled,
#elections .election-office-filter-controls button:disabled:hover{background:#e2e6e4;border-color:#ccd3d0;color:#89938f;box-shadow:none;transform:none;cursor:not-allowed;opacity:1}

/* Current and past filter bars keep their color key at the right edge. */
#elections .election-office-filter .election-cycle-guide{justify-content:flex-end}
#elections .election-office-filter .election-cycle-guide > [aria-label="Election card key"]{margin-left:auto;justify-content:flex-end}

/* Center the next-election panel between the office title and page action. */
#elections .precinct-race-card:has(> .college-next-election-panel) h4{margin-bottom:0}
#elections .precinct-race-card > .college-next-election-panel{margin-block:auto}
#elections .precinct-race-card > .college-next-election-panel + strong{margin-top:0}

/* Registration option C, selected from registration-deadline-options.html. */
#elections .election-registration.registration-date-first{border:1px solid var(--area-teal);background:#eff5f3}
#elections .registration-date-first strong{font:700 26px/1.25 Georgia,serif}
#elections .registration-date-first .election-registration-link{border-radius:4px;box-shadow:0 3px 0 #0c514f}
