/* Homepage vote banner — loaded from index.html only. */

.vote-banner {
  position: relative;
  z-index: 90;
  background: #0A162B;
  color: #E5E7EB;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}

.vote-banner[hidden] {
  display: none !important;
}

.vote-banner__inner {
  display: flex;
  align-items: center;
  gap: 8px 12px;
  padding-block: 4px;
}

.vote-banner__copy {
  flex: 1 1 auto;
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #E5E7EB;
}

.vote-banner__link {
  color: #93C5FD;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.vote-banner__link:hover {
  color: #BFDBFE;
}

.vote-banner__dismiss {
  flex-shrink: 0;
  box-sizing: border-box;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #E5E7EB;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.vote-banner__dismiss:hover {
  color: #FFFFFF;
}

.vote-banner__dismiss:focus-visible {
  outline: 2px solid #93C5FD;
  outline-offset: 2px;
}

@media (max-width: 640px) {
  .vote-banner__copy {
    font-size: 0.8125rem;
  }
}
