/* ==========================================================
   PLUGIN «Κουίζ & ψηφοφορίες» (γύρος 178) — τα τρία κουίζ και η ψηφοφορία (κλάσεις nxf-q / nxf-a / nxf-pq …).
   Ουδέτερα: χρώμα του θέματος (--nx-accent) + η παλέτα nxf-pal-N του NexusCms (site-formats.css). Ένα θέμα τα αλλάζει στο δικό του CSS.
   ========================================================== */
/* --- Ερωτήσεις (κουίζ / ψηφοφορία) --- */
.nxf-q { margin: 0 0 30px; }
.nxf-q-head { position: relative; border-radius: var(--nxf-radius); overflow: hidden; margin: 0 0 12px; min-height: 150px; display: flex; align-items: center;
              justify-content: center; text-align: center; color: #fff; background: var(--nxf-c, #374151); }
.nxf-q-head:not(.has-img) { background: linear-gradient(135deg, var(--nxf-c, #374151), color-mix(in srgb, var(--nxf-c, #374151) 55%, #6d28d9)); }
.nxf-q-head.nxf-pal-0 { background: #111; }
.nxf-q-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.nxf-q-head.has-img { min-height: 260px; }
.nxf-q-head.has-img::after { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .28); }
.nxf-q-title { position: relative; z-index: 1; margin: 0; padding: 26px 22px; font-size: 1.9em; line-height: 1.2; text-shadow: 0 2px 10px rgba(0, 0, 0, .35); }
.nxf-answers { display: grid; gap: 12px; }
.nxf-cols-1 { grid-template-columns: 1fr; }
.nxf-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nxf-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nxf-a { position: relative; display: flex; flex-direction: column; align-items: stretch; text-align: left; padding: 0; border: 1px solid rgba(127, 127, 127, .25);
         border-radius: var(--nxf-radius); background: transparent; cursor: pointer; overflow: hidden; transition: transform .15s, box-shadow .15s, opacity .2s; }
.nxf-a:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0, 0, 0, .12); }
.nxf-a-img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.nxf-a-blank { display: block; aspect-ratio: 1 / 1; background: linear-gradient(135deg, #3b82f6, #8b5cf6); }
.nxf-a-text { display: block; padding: 10px 12px 12px 34px; font-weight: 700; line-height: 1.3; }
.nxf-a-note { display: block; padding: 0 12px 10px 34px; font-size: 12px; opacity: .65; margin-top: -6px; }
.nxf-ans-text .nxf-a { min-height: 96px; justify-content: center; color: #fff; border: 0; background: var(--nxf-c, #374151); }
.nxf-ans-text .nxf-a-text { padding: 18px 14px 18px 38px; font-size: 1.15em; }
.nxf-check { position: absolute; left: 10px; bottom: 12px; width: 16px; height: 16px; border-radius: 3px; border: 2px solid currentColor; opacity: .75; }
.nxf-ans-img .nxf-check { bottom: auto; top: auto; }
.nxf-ans-img .nxf-a .nxf-check { position: absolute; left: 12px; bottom: 13px; }
.nxf-a.is-chosen .nxf-check { background: currentColor; box-shadow: inset 0 0 0 3px var(--nxf-c, #fff); opacity: 1; }
.nxf-ans-img .nxf-a.is-chosen { border-color: var(--nxf-accent); box-shadow: 0 0 0 2px var(--nxf-accent); }
.nxf-a.is-other { opacity: .55; }
.nxf-a.is-correct { opacity: 1; box-shadow: 0 0 0 3px #16a34a; }
.nxf-a.is-wrong { box-shadow: 0 0 0 3px #dc2626; }
.nxf-a.is-correct::after, .nxf-a.is-wrong::after { position: absolute; right: 10px; top: 8px; font: 900 15px/1 "Font Awesome 6 Free"; color: #fff; padding: 6px;
                                                  border-radius: 50%; }
.nxf-a.is-correct::after { content: "\f00c"; background: #16a34a; }
.nxf-a.is-wrong::after { content: "\f00d"; background: #dc2626; }
.nxf-explain { margin: 10px 0 0; padding: 12px 14px; border-left: 4px solid var(--nxf-accent); background: rgba(127, 127, 127, .08); border-radius: 0 6px 6px 0; }
.nxf-explain p { margin: 0; }
.nxf-results { margin: 24px 0 0; padding: 22px; border-radius: 10px; background: rgba(127, 127, 127, .08); text-align: center; }
.nxf-score { font-size: 1.1em; margin: 0 0 14px; }
.nxf-score b { font-size: 1.4em; color: var(--nxf-accent); }
.nxf-result-img { width: 100%; max-height: 380px; object-fit: cover; border-radius: 8px; margin: 0 auto 14px; }
.nxf-result-title { font-size: 1.6em; margin: 0 0 8px; }
.nxf-retry, .nxf-done { margin-top: 14px; min-height: 42px; padding: 8px 22px; border: 0; border-radius: 999px; font-weight: 700; color: #fff !important;
                        background: var(--nxf-accent); cursor: pointer; }
.nxf-done-wrap { text-align: center; margin: 18px 0 0; }

/* --- Ψηφοφορία --- */
.nxf-pa .nxf-bar { display: none; position: relative; height: 8px; margin: 0 12px 10px; border-radius: 999px; background: rgba(127, 127, 127, .2); overflow: hidden; }
.nxf-pa .nxf-bar-fill { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 999px; background: var(--nxf-accent); transition: width .5s; }
.nxf-pa .nxf-pct { display: none; position: absolute; right: 10px; top: 8px; padding: 2px 8px; border-radius: 999px; font-size: 13px; font-weight: 800; color: #fff; background: rgba(0, 0, 0, .55); }
.nxf-pq.is-shown .nxf-bar, .nxf-pq.is-shown .nxf-pct { display: block; }
.nxf-pq .nxf-ans-text .nxf-pa { min-height: 0; color: inherit; background: rgba(127, 127, 127, .07); border: 1px solid rgba(127, 127, 127, .2); }
.nxf-pq .nxf-ans-text .nxf-pa .nxf-a-text { padding: 14px 70px 8px 38px; font-size: 1em; }
.nxf-pq .nxf-ans-text .nxf-pa .nxf-check { top: 15px; bottom: auto; }
.nxf-pa.is-mine { box-shadow: 0 0 0 2px var(--nxf-accent); }
.nxf-pa:disabled { cursor: default; }
.nxf-votes { font-size: 13px; opacity: .7; margin: 8px 0 0; text-align: right; }
.nxf-poll-err { padding: 8px 12px; border-radius: 6px; background: rgba(239, 68, 68, .14); }

@media (max-width: 640px) {
    .nxf-cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nxf-q-title { font-size: 1.45em; padding: 20px 16px; }
    .nxf-q-head.has-img { min-height: 200px; }
}

/* πλάτος της μπάρας κάθε απάντησης της ψηφοφορίας (το HTML δεν έχει inline style) */
.nxf-w-0{width:0%}.nxf-w-1{width:1%}.nxf-w-2{width:2%}.nxf-w-3{width:3%}.nxf-w-4{width:4%}.nxf-w-5{width:5%}.nxf-w-6{width:6%}.nxf-w-7{width:7%}.nxf-w-8{width:8%}.nxf-w-9{width:9%}.nxf-w-10{width:10%}.nxf-w-11{width:11%}.nxf-w-12{width:12%}.nxf-w-13{width:13%}.nxf-w-14{width:14%}.nxf-w-15{width:15%}.nxf-w-16{width:16%}.nxf-w-17{width:17%}.nxf-w-18{width:18%}.nxf-w-19{width:19%}.nxf-w-20{width:20%}.nxf-w-21{width:21%}.nxf-w-22{width:22%}.nxf-w-23{width:23%}.nxf-w-24{width:24%}.nxf-w-25{width:25%}.nxf-w-26{width:26%}.nxf-w-27{width:27%}.nxf-w-28{width:28%}.nxf-w-29{width:29%}.nxf-w-30{width:30%}.nxf-w-31{width:31%}.nxf-w-32{width:32%}.nxf-w-33{width:33%}.nxf-w-34{width:34%}.nxf-w-35{width:35%}.nxf-w-36{width:36%}.nxf-w-37{width:37%}.nxf-w-38{width:38%}.nxf-w-39{width:39%}.nxf-w-40{width:40%}.nxf-w-41{width:41%}.nxf-w-42{width:42%}.nxf-w-43{width:43%}.nxf-w-44{width:44%}.nxf-w-45{width:45%}.nxf-w-46{width:46%}.nxf-w-47{width:47%}.nxf-w-48{width:48%}.nxf-w-49{width:49%}.nxf-w-50{width:50%}.nxf-w-51{width:51%}.nxf-w-52{width:52%}.nxf-w-53{width:53%}.nxf-w-54{width:54%}.nxf-w-55{width:55%}.nxf-w-56{width:56%}.nxf-w-57{width:57%}.nxf-w-58{width:58%}.nxf-w-59{width:59%}.nxf-w-60{width:60%}.nxf-w-61{width:61%}.nxf-w-62{width:62%}.nxf-w-63{width:63%}.nxf-w-64{width:64%}.nxf-w-65{width:65%}.nxf-w-66{width:66%}.nxf-w-67{width:67%}.nxf-w-68{width:68%}.nxf-w-69{width:69%}.nxf-w-70{width:70%}.nxf-w-71{width:71%}.nxf-w-72{width:72%}.nxf-w-73{width:73%}.nxf-w-74{width:74%}.nxf-w-75{width:75%}.nxf-w-76{width:76%}.nxf-w-77{width:77%}.nxf-w-78{width:78%}.nxf-w-79{width:79%}.nxf-w-80{width:80%}.nxf-w-81{width:81%}.nxf-w-82{width:82%}.nxf-w-83{width:83%}.nxf-w-84{width:84%}.nxf-w-85{width:85%}.nxf-w-86{width:86%}.nxf-w-87{width:87%}.nxf-w-88{width:88%}.nxf-w-89{width:89%}.nxf-w-90{width:90%}.nxf-w-91{width:91%}.nxf-w-92{width:92%}.nxf-w-93{width:93%}.nxf-w-94{width:94%}.nxf-w-95{width:95%}.nxf-w-96{width:96%}.nxf-w-97{width:97%}.nxf-w-98{width:98%}.nxf-w-99{width:99%}.nxf-w-100{width:100%}
