.poll-shell{max-width:1050px;margin:0 auto}
.poll-state{border:1px solid #b9d5df;border-left:5px solid #0e8caa;background:#eef9fc;border-radius:10px;padding:16px 20px;font-weight:750;color:#163c50}
.poll-progress{margin:18px 0 6px;color:#183c51;font-size:1rem;font-weight:750;font-variant-numeric:tabular-nums}
.poll-questions,.poll-results{display:grid;gap:18px;margin:22px 0}
.poll-question,.poll-result-card{min-width:0;border:1px solid var(--line,#d6e0ea);background:#fff;border-radius:20px;padding:22px;box-shadow:0 5px 20px rgba(6,26,47,.05)}
.poll-question legend{font-size:1.1rem;font-weight:850;line-height:1.5;padding:0 5px;color:#142e44;max-width:100%}
.poll-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.poll-choice{display:flex;gap:10px;align-items:flex-start;padding:12px 15px;border:1px solid #d6e0ea;border-radius:12px;background:#f8fbff;cursor:pointer;color:#1b3449}
.poll-choice:has(input:checked){border-color:#168eae;background:#eaf8fc}
.poll-choice input{margin-top:4px;accent-color:#077fa0}
.poll-choice:has(input:disabled){opacity:.62;cursor:not-allowed}
.poll-consent{border:1px solid #c9d9e3;background:#f5f9fc;border-radius:16px;padding:20px;display:grid;gap:14px}
.poll-consent label{display:flex;align-items:flex-start;gap:11px;line-height:1.5}
.poll-consent input{margin-top:5px;flex-shrink:0}
.poll-consent a{color:#086783;text-decoration:underline;text-underline-offset:2px}
.poll-consent a:focus-visible{outline:3px solid #045c78;outline-offset:3px;border-radius:3px}
.poll-consent-note{margin:0;padding:12px 15px;border-left:3px solid #216d86;background:#eef7fa;color:#254657;font-size:.94rem;line-height:1.6}
.poll-captcha{min-height:20px;margin:18px 0}
.poll-action-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.poll-action-row button:disabled{opacity:.55;cursor:not-allowed}
#poll-feedback{min-height:1.75em;color:#135a70;font-weight:750}
.poll-result-card h3{font-size:1.08rem;margin:0 0 18px;color:#17334b}
.poll-result-row{margin:12px 0}
.poll-result-labels{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.91rem}
.poll-result-labels strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.poll-result-track{height:12px;margin-top:6px;background:#ebf1f5;border-radius:999px;overflow:hidden}
.poll-result-track span{display:block;height:100%;background:linear-gradient(90deg,#0d829e,#49b5c8)}
.poll-method-note{margin-top:20px;padding:18px;border-left:4px solid #168dab;background:#f5f9fc;color:#1b4058}
@media(max-width:650px){.poll-choice-grid{grid-template-columns:1fr}.poll-question,.poll-result-card{padding:17px}.poll-action-row .btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.poll-result-track span{transition:none}}
