/* Topic-specific controls inherit the forum palette and existing layout. */
.forum-ext .forum-ext-poll { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--forum-line); }
.forum-ext .forum-ext-poll h3 { margin: 0 0 8px; overflow-wrap: anywhere; }
.forum-ext .forum-ext-poll-meta { color: var(--forum-muted); font-size: .875rem; }
.forum-ext .forum-ext-poll-choices { margin: 0; padding: 0; border: 0; min-width: 0; }
.forum-ext .forum-ext-poll-choices legend { margin-bottom: 10px; }
.forum-ext .forum-ext-poll-choices .forum-ext-poll-choice { display: flex; align-items: center; gap: 10px; padding: 10px 12px; margin-bottom: 8px; border: 1px solid var(--forum-line); border-radius: var(--mz-border-radius); cursor: pointer; }
.forum-ext .forum-ext-poll-choice input { width: auto; flex: 0 0 auto; margin: 0; accent-color: var(--forum-accent); }
.forum-ext .forum-ext-poll-choice span { min-width: 0; overflow-wrap: anywhere; }
.forum-ext .forum-ext-poll-results { margin-top: 16px; }
.forum-ext .forum-ext-poll-results summary, .forum-ext .forum-ext-poll-create summary { cursor: pointer; color: var(--forum-accent); }
.forum-ext .forum-ext-poll-result { margin-top: 14px; }
.forum-ext .forum-ext-poll-result > div { display: flex; justify-content: space-between; gap: 12px; }
.forum-ext .forum-ext-poll-result span { overflow-wrap: anywhere; min-width: 0; }
.forum-ext .forum-ext-poll-result strong { white-space: nowrap; }
.forum-ext .forum-ext-poll-result progress { width: 100%; height: 8px; appearance: none; border: 0; background: var(--forum-line); border-radius: var(--mz-border-radius); overflow: hidden; }
.forum-ext .forum-ext-poll-result progress::-webkit-progress-bar { background: var(--forum-line); }
.forum-ext .forum-ext-poll-result progress::-webkit-progress-value { background: var(--forum-accent); }
.forum-ext .forum-ext-poll-result progress::-moz-progress-bar { background: var(--forum-accent); }
.forum-ext .forum-ext-poll-manage { margin: 0; }
.forum-ext .forum-ext-poll-create { margin-top: 20px; font-size: .875rem; }
.forum-ext .forum-ext-poll-create form { margin-top: 14px; }

.forum-ext .forum-ext-poll-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.forum-ext .forum-ext-poll-actions > *, .forum-ext .forum-ext-poll-actions button { width: auto; flex: 0 0 auto; margin-bottom: 0; }
.forum-ext .forum-ext-poll-actions button { padding: 7px 12px; min-height: 36px; font-size: .875rem; }
.forum-ext .forum-ext-poll-results[hidden] { display: none; }
