.hcsun-results {
  --hcsun-ink: #163027;
  --hcsun-muted: #4b5f56;
  --hcsun-accent: #23684d;
  --hcsun-line: #d9e1db;
  color: var(--hcsun-ink);
  background: #fff;
  font: inherit;
  line-height: 1.55;
  text-align: left;
  padding: clamp(16px, 3vw, 32px);
  border: 1px solid var(--hcsun-line);
  border-radius: 8px;
  margin-block: 24px;
  min-width: 0;
  overflow-wrap: anywhere;
  color-scheme: light;
}
.hcsun-results *, .hcsun-results *::before, .hcsun-results *::after { box-sizing: border-box; }
.hcsun-results .hcsun-results__header { border-bottom: 2px solid var(--hcsun-ink); padding-bottom: 16px; }
.hcsun-results .hcsun-results__kicker { color: var(--hcsun-muted); font: 700 .75em/1.5 system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 10px; }
.hcsun-results .hcsun-results__title { color: var(--hcsun-ink); font: 700 clamp(1.75rem, 4vw, 2.5rem)/1.1 Georgia, serif; margin: 0 0 16px; }
.hcsun-results p { margin: 8px 0; }
.hcsun-results a { color: #17563f; text-decoration: underline; text-underline-offset: .14em; }
.hcsun-results a:focus-visible { outline: 2px solid var(--hcsun-accent); outline-offset: 3px; }
.hcsun-results .hcsun-results__badge { display: inline-block; background: #f9edcb; color: #624900; padding: 3px 9px; border-radius: 3px; font: 700 .8em/1.5 system-ui, sans-serif; }
.hcsun-results .hcsun-results__group { color: var(--hcsun-ink); font: 700 1.5rem/1.25 Georgia, serif; margin: 30px 0 8px; }
.hcsun-results .hcsun-results__race { margin: 20px 0; padding: 22px 0; border-top: 1px solid var(--hcsun-line); }
.hcsun-results .hcsun-results__race-title { color: var(--hcsun-ink); font: 700 1.2rem/1.35 system-ui, sans-serif; margin: 0 0 8px; }
.hcsun-results .hcsun-results__note, .hcsun-results .hcsun-results__meta { font: 400 .85em/1.6 system-ui, sans-serif; color: var(--hcsun-muted); }
.hcsun-results .hcsun-results__notice { font: 500 .9em/1.6 system-ui, sans-serif; border-left: 3px solid #9b6500; background: #fff6df; color: #624900; padding: 10px 12px; margin: 16px 0; }
.hcsun-results .hcsun-results__candidates { list-style: none; margin: 20px 0; padding: 0; }
.hcsun-results .hcsun-results__candidate { margin: 0 0 18px; padding: 0; }
.hcsun-results .hcsun-results__candidate-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 7px; }
.hcsun-results .hcsun-results__name { font-weight: 700; }
.hcsun-results .hcsun-results__party { display: block; color: var(--hcsun-muted); font: 400 .8em/1.5 system-ui, sans-serif; }
.hcsun-results .hcsun-results__numbers { display: flex; flex-shrink: 0; align-items: baseline; gap: 18px; font: 500 .9em/1.5 system-ui, sans-serif; font-variant-numeric: tabular-nums; }
.hcsun-results .hcsun-results__numbers strong { min-width: 5.5ch; text-align: right; }
.hcsun-results abbr { text-decoration: none; }
.hcsun-results .hcsun-results__track { height: 7px; background: #edf1ed; border-radius: 2px; overflow: hidden; }
.hcsun-results .hcsun-results__bar { display: block; height: 100%; background: var(--hcsun-accent); }
.hcsun-results .hcsun-results__meta { border-top: 1px solid #edf1ed; padding-top: 10px; }
.hcsun-results .hcsun-results__connection:empty { display: none; }
.hcsun-results .hcsun-results__connection { color: var(--hcsun-muted); font: 400 .85em/1.5 system-ui, sans-serif; }
@media (max-width: 480px) {
  .hcsun-results .hcsun-results__candidate-row { flex-direction: column; gap: 4px; }
  .hcsun-results .hcsun-results__numbers { width: 100%; justify-content: space-between; }
}
@media print {
  .hcsun-results { border: 0; padding: 0; }
  .hcsun-results .hcsun-results__race { break-inside: avoid; }
  .hcsun-results .hcsun-results__connection { display: none; }
}
