.roadmap-feedback { margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid #58615b; }
.roadmap-feedback h3 { font-size: clamp(1.5rem, 3vw, 2rem); margin: 0 0 .75rem; }
.feedback-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: 1rem; margin-block: 1.25rem 2rem; }
.feedback-card { border: 1px solid #657269; border-radius: 1rem; padding: 1.25rem; background: #121b17; color: #f2f8f4; overflow-wrap: anywhere; }
.feedback-card h4 { margin: .75rem 0; font-size: 1.15rem; }
.feedback-card p { line-height: 1.6; }
.feedback-stage { font-size: .8rem; color: #b5efce; border: 1px solid #56866a; border-radius: 2rem; padding: .25rem .6rem; }
.feedback-vote { min-height: 44px; padding: .6rem 1rem; border: 1px solid #a2daba; border-radius: .5rem; background: #d4f5e1; color: #102418; font: inherit; font-weight: 600; cursor: pointer; }
.feedback-vote:disabled { cursor: default; background: #263b2f; color: #d4f5e1; border-color: #8cba9f; }
.feedback-form { display: grid; gap: .6rem; max-width: 42rem; }
.feedback-form h4 { margin: 0 0 .5rem; font-size: 1.25rem; }
.feedback-form input, .feedback-form textarea { box-sizing: border-box; width: 100%; min-height: 44px; font: inherit; color: #f2f8f4; background: #121b17; border: 1px solid #889b8e; border-radius: .5rem; padding: .75rem; }
.feedback-form textarea { resize: vertical; }
.feedback-form button { justify-self: start; min-height: 44px; }
.feedback-note { font-size: .875rem; line-height: 1.6; max-width: 65ch; }
.feedback-note a { color: inherit; text-decoration: underline; }
.feedback-status { min-height: 1.5em; font-size: .95rem; }
.roadmap-feedback :is(button, input, textarea, a):focus-visible { outline: 3px solid #a8f1ca; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .roadmap-feedback * { scroll-behavior: auto; } }
