/* White typography everywhere inside plugin */
.zen-votes, .zen-votes *,
.zv-results-wrap, .zv-results-wrap *,
.zv-grid, .zv-grid * { color: #fff !important; }

/* Force two cards horizontal as a grid; shrink responsively */
.zv-grid .zv-options.two-col {
  display: grid;
  grid-template-columns: 1fr 1fr; /* always two columns */
  gap: 16px;
}
@media (max-width: 480px){
  .zv-grid .zv-options.two-col { gap: 10px; }
}
.zv-card {
  border-radius: 14px;
  padding: clamp(10px, 2vw, 16px);
  text-align: center;
  color: #fff;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
}
.zv-card h3 { margin: 6px 0 10px; font-size: clamp(14px, 2.8vw, 18px); }

.zv-img img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  margin-bottom: clamp(8px, 2vw, 12px);
  display:block;
}

/* Single "Vote" action */
.zv-vote-btn {
  display: inline-block;
  background: rgba(0,0,0,0.25);
  padding: 8px 16px;
  border-radius: 8px;
  cursor: pointer;
  font-weight:600;
  border: 1px solid rgba(255,255,255,0.25);
}
input[type="radio"][name^="vote_"] { display:none; }
input[type="radio"][name^="vote_"]:checked + .zv-vote-btn { background:#000; color:#fff; }

.zv-msg { margin-top:12px; font-weight:bold; text-align:center; }

/* Results */
.zv-total { margin-top:10px; font-weight:600; text-align:center; }

/* Closed note */
.zv-closed-note {
  background: rgba(0,0,0,0.25);
  padding: 8px 10px;
  border-radius: 6px;
  font-weight:600;
  margin-top: 4px;
}
