.prediction-poll { border: 2px solid var(--color-2, #f9d600); padding: clamp(12px, 2vw, 18px); overflow-wrap: anywhere; }
.prediction-poll__eyebrow { text-transform: uppercase; letter-spacing: .1em; font-size: 11px; line-height: 1.3; font-weight: 700; color: var(--color-5, #ffe600); margin: 0 0 4px; }
.prediction-poll h2 { margin: 0 0 4px; font-size: clamp(22px, 3vw, 30px); text-align: center; }
.prediction-poll__event { color: #d0d3df; font-size: 14px; margin: 0 0 12px; }
.prediction-poll__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.prediction-poll__option { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px; text-align: center; border: 1px solid #48516c; background: rgba(255,255,255,.04); }
.prediction-poll__avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: #25263c; }
.prediction-poll__name { font-size: 16px; line-height: 1.35; font-weight: 700; flex: 1; min-height: 36px; display: flex; align-items: center; }
.prediction-poll button { font: inherit; font-size: 14px; font-weight: 700; padding: 8px 10px; min-height: 44px; width: 100%; cursor: pointer; border: 2px solid #ffe600; color: #07081b; background: #ffe600; }
.prediction-poll button:disabled { cursor: default; opacity: .55; }
.prediction-poll button:focus-visible { outline: 3px solid white; outline-offset: 4px; }
.prediction-poll__chosen { font-weight: 700; color: #ffe600; }
.prediction-poll__share { width: 100%; }
.prediction-poll progress { display: block; width: 100%; height: 12px; accent-color: #ffe600; margin: 8px 0; }
.prediction-poll__status { font-size: 13px; line-height: 1.4; margin: 10px 0 4px; }
.prediction-poll__total, .prediction-poll__closing, .prediction-poll__privacy { font-size: 12px; line-height: 1.4; color: #d0d3df; margin: 4px 0; }
.prediction-poll__result { border-top: 1px solid #48516c; margin-top: 12px; padding-top: 8px; }
.prediction-poll__result h3 { text-align: left; }
.prediction-poll__event-link { display: inline-block; padding: 6px 0; font-size: 13px; color: #ffe600; text-decoration: underline; }
.prediction-poll [hidden] { display: none !important; }
@media(max-width: 420px) { .prediction-poll__options { gap: 8px; } .prediction-poll__option { padding: 10px 8px; } .prediction-poll__name { font-size: 15px; } }
