.gubtrk-voteform .news-poll-options {
  gap: 0.65rem;
}

.gubtrk-poll-choice {
  position: relative;
}

.gubtrk-poll-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.gubtrk-poll-option {
  display: block;
  border: 1px solid #e4e4e7;
  border-radius: 0.5rem;
  background: #fff;
  color: #52525b;
  cursor: pointer;
  font-size: 0.9rem;
  line-height: 1.35;
  padding: 0.55rem 0.7rem;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.gubtrk-poll-option:hover {
  border-color: #93c5fd;
  color: #27272a;
}

.gubtrk-poll-option.active,
.gubtrk-poll-radio:checked + .gubtrk-poll-option {
  border-color: #2563eb;
  background: #2563eb;
  color: #fff;
}

.gubtrk-poll-radio:focus-visible + .gubtrk-poll-option {
  outline: 3px solid rgba(37, 99, 235, 0.28);
  outline-offset: 2px;
}

.gubtrk-poll-status,
.gubtrk-poll-result-message {
  min-height: 1.2rem;
  margin: 0.55rem 0 0;
  color: #64748b;
  font-size: 0.75rem;
  line-height: 1.35;
}

.gubtrk-poll-status:not(:empty) {
  color: #b42318;
}

.news-poll-result {
  margin-bottom: 0.75rem;
  color: #334155;
  font-size: 0.84rem;
  line-height: 1.3;
}

.news-poll-result:last-child {
  margin-bottom: 0;
}

.news-poll-result .progress {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}

.news-poll-result .progress-bar {
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb 0%, #1d4ed8 100%);
  transition: width 0.45s ease;
}

.news-poll-submit.is-loading {
  cursor: wait;
}

html.dark .gubtrk-poll-option {
  border-color: #32567e;
  background: #11243d;
  color: #b0c4de;
}

html.dark .gubtrk-poll-option:hover {
  border-color: #4a9eff;
  color: #fff;
}

html.dark .gubtrk-poll-option.active,
html.dark .gubtrk-poll-radio:checked + .gubtrk-poll-option {
  border-color: #4a9eff;
  background: #2563eb;
  color: #fff;
}

html.dark .news-poll-result {
  color: #dbeafe;
}

html.dark .news-poll-result .progress {
  background: #274463;
}

html.dark .gubtrk-poll-status,
html.dark .gubtrk-poll-result-message {
  color: #9fb5cf;
}

html.dark .gubtrk-poll-status:not(:empty) {
  color: #fca5a5;
}
