.rider-polls { padding: clamp(3rem, 7vw, 7rem) clamp(1rem, 7vw, 8rem); border-bottom: 1px solid var(--line); }
select { width: 100%; border: 1px solid #454b51; background: #0c0f12; color: #fff; padding: 1rem; font: inherit; }
.rider-polls h2 { margin-bottom: 1rem; }
.poll-explainer { max-width: 760px; color: var(--muted); }
.proposal-list { grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)); margin-top: 2rem; }
.rider-proposal { border-top: 3px solid var(--red); overflow: hidden; padding: 0 !important; }
.proposal-body { padding: 1.4rem; }
.proposal-cover { aspect-ratio: 16 / 9; background-position: center; background-size: cover; border-bottom: 1px solid var(--line); }
.proposal-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem; margin-bottom: 1rem; color: var(--red); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.proposal-context { margin: .45rem 0; color: var(--muted) !important; font-size: .9rem; }
.vote-box { margin-top: 1.3rem; padding-top: 1.1rem; border-top: 1px solid var(--line); }
.vote-box > p { margin-top: 0; color: var(--muted); font-size: .9rem; }
.vote-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.vote-actions button { min-height: 64px; border: 1px solid #42484e; background: #090b0d; color: #fff; padding: .7rem; cursor: pointer; }
.vote-actions button.selected { border-color: var(--red); background: rgba(229,35,35,.14); }
.vote-actions strong, .vote-actions span { display: block; }
.vote-actions strong { font-size: 1.25rem; }
.vote-actions span { margin-top: .15rem; font-size: .75rem; font-weight: 900; text-transform: uppercase; }
.converted { margin-top: 1.2rem; border-left: 3px solid var(--red); padding: .85rem 1rem; background: #090b0d; color: #ddd !important; }
@media (max-width: 520px) { .vote-actions { grid-template-columns: 1fr; } }
