.answer-contribution-option { margin: 20px 0; text-align: left; }
.answer-contribution-option label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: 13px; line-height: 1.7; font-weight: 600; }
.answer-contribution-option input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #37533e; }
.answer-contribution-option small { display: inline-block; margin-left: 8px; color: #626956; font-size: 11px; font-weight: 400; }
.answer-contribution-option p { margin: 9px 0 0 28px; color: #626956; font-size: 11px; line-height: 1.9; }
.answer-contribution-option a { margin-left: .5em; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.answer-contribution { margin: 24px 0; padding: 20px 24px; border: 1px solid #d4dcc8; border-radius: 14px; background: #f8faf4; }
.answer-contribution .answer-contribution-option { margin-top: 0; }
.answer-contribution-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.answer-contribution-actions button { padding: 10px 16px; border: 1px solid #37533e; border-radius: 7px; background: #37533e; color: #fff; font: inherit; font-size: 12px; cursor: pointer; }
.answer-contribution-actions button:disabled { opacity: .5; cursor: default; }
.answer-contribution-actions p, .answer-contribution-note { margin: 0; color: #626956; font-size: 11px; line-height: 1.8; }
.answer-contribution-note { margin-top: 12px; }
.answer-contribution input:focus-visible, .answer-contribution button:focus-visible, .answer-contribution-option a:focus-visible { outline: 2px solid #37533e; outline-offset: 4px; }
@media (max-width: 480px) { .answer-contribution { padding: 18px 16px; } }
@media print { .answer-contribution, .answer-contribution-option { display: none !important; } }
