/* Τα selectors έχουν διπλή κλάση ώστε να υπερισχύουν και από scoped Bootstrap (π.χ. .bootstrap_scoped button). */
.vv-poll { margin: 1.5rem 0; }
.vv-poll *, .vv-poll *::before, .vv-poll *::after { box-sizing: border-box; }
.vv-poll .vv-grid { display: grid; grid-template-columns: repeat(var(--vv-cols-mobile, 1), minmax(0, 1fr)); gap: 1.5rem; }
@media (min-width: 768px) {
	.vv-poll .vv-grid { grid-template-columns: repeat(var(--vv-cols-desktop, 3), minmax(0, 1fr)); }
}
.vv-poll .vv-item { display: flex; flex-direction: column; gap: .75rem; }
.vv-poll .vv-embed { position: relative; aspect-ratio: 16 / 9; background: #000; }
.vv-poll .vv-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.vv-poll .vv-desc { margin: 0; }
.vv-poll .vv-button { align-self: flex-start; padding: .2rem 1.25rem; border: 0; border-radius: 4px; background: #0d6efd; color: #fff; font: inherit; line-height: 1.5; cursor: pointer; }
.vv-poll .vv-button:disabled { opacity: .5; cursor: default; }
.vv-poll .vv-message { margin: 0 0 1rem; font-weight: 600; }
.vv-poll .vv-notice { margin: 0 0 1rem; padding: .5rem .75rem; background: #f1f1f1; border-radius: 4px; }
.vv-poll .vv-result { display: none; }
.vv-poll.vv-show-results .vv-result { display: block; }
.vv-poll .vv-bar { height: 8px; margin-bottom: .25rem; background: #e5e5e5; border-radius: 4px; overflow: hidden; }
.vv-poll .vv-bar span { display: block; height: 100%; background: #0d6efd; transition: width .4s; }

/* Modal «Ευχαριστούμε» (μπαίνει στο body, εκτός του .vv-poll) */
.vv-modal { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 1rem; background: rgba(0, 0, 0, .6); }
.vv-modal .vv-modal-box { box-sizing: border-box; max-width: 420px; width: 100%; padding: 1.5rem; border-radius: 8px; background: #fff; color: #212529; text-align: center; box-shadow: 0 10px 40px rgba(0, 0, 0, .3); }
.vv-modal .vv-modal-box h4 { margin: 0 0 .75rem; font-size: 1.5rem; }
.vv-modal .vv-modal-box p { margin: 0 0 1.25rem; }
.vv-modal .vv-modal-close { padding: .5rem 1.25rem; border: 0; border-radius: 4px; background: #0d6efd; color: #fff; font: inherit; cursor: pointer; }

/* Στοίχιση περιγραφής και κουμπιού (shortcode: align="left|center|right") */
.vv-poll.vv-align-center .vv-desc { text-align: center; }
.vv-poll.vv-align-center .vv-button { align-self: center; }
.vv-poll.vv-align-right .vv-desc { text-align: right; }
.vv-poll.vv-align-right .vv-button { align-self: flex-end; }
