.poll-block   { background: var(--rb-card); border: 0.5px solid var(--rb-border-gold); border-radius: 6px; padding: 16px; }
.poll-sponsor { font-size: 8px; text-transform: uppercase; letter-spacing: 2px; color: var(--rb-dim); margin-bottom: 6px; }
.poll-title   { font-size: 13px; font-weight: 500; margin-bottom: 14px; color: var(--rb-text); }
.poll-options { display: flex; flex-direction: column; gap: 8px; }
.poll-opt     { display: flex; align-items: center; gap: 8px; cursor: pointer; }
.poll-bar-wrap { flex: 1; height: 26px; background: rgba(255,255,255,0.04); border-radius: 3px; overflow: hidden; position: relative; }
.poll-bar      { height: 100%; border-radius: 3px; transition: width .8s cubic-bezier(.4,0,.2,1); }
.poll-label       { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); font-size: 10px; font-weight: 600; color: #111; z-index: 1; white-space: nowrap; }
.poll-label-light { color: var(--rb-text); }
.poll-pct         { font-size: 11px; font-weight: 600; color: var(--rb-gold); min-width: 32px; text-align: right; }
.poll-vote-btn    { width: 100%; margin-top: 12px; background: var(--rb-gold-muted); color: var(--rb-gold); font-size: 10px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; padding: 8px; border-radius: 3px; border: 0.5px solid var(--rb-border-gold); cursor: pointer; transition: background .15s; }
.poll-vote-btn:hover { background: rgba(245,166,35,0.22); }
.poll-footer { margin-top: 8px; font-size: 9px; color: var(--rb-dim); }
