.interest-form { margin: 1.5rem 0; }
.interest-question { margin: 0 0 1rem; padding: 1rem; border: 1px solid #535968; border-radius: 12px; min-width: 0; }
.interest-question legend { padding: 0 .35rem; font-weight: 650; line-height: 1.4; }
.interest-options { display: flex; flex-wrap: wrap; gap: .65rem; }
.interest-options label { display: flex; align-items: center; gap: .5rem; min-height: 44px; padding: .5rem .65rem; border-radius: 8px; background: #eef1f7; color: #172032; cursor: pointer; }
.interest-options label:has(input:checked) { outline: 2px solid #3658b4; }
.interest-options input { width: 20px; height: 20px; flex-shrink: 0; accent-color: #3658b4; }
.interest-options input:focus-visible { outline: 3px solid #172032; outline-offset: 3px; }
.interest-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.interest-actions .btn { font: inherit; cursor: pointer; }
.interest-actions .btn:disabled { opacity: .6; cursor: default; }
.interest-result { margin-top: 1.5rem; padding: 1rem; border: 2px solid #3658b4; border-radius: 12px; }
.interest-result:focus { outline: 3px solid #172032; outline-offset: 4px; }
.interest-result [hidden] { display: none; }
.interest-scores { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.interest-scores div { padding: .75rem; background: #eef1f7; border-radius: 8px; }
.interest-scores dt { font-weight: 650; }
.interest-scores dd { margin: .25rem 0 0; }
.interest-exercise { margin-top: 1rem; padding-top: .75rem; border-top: 1px solid #535968; }
@media (max-width: 520px) {
  .interest-scores { grid-template-columns: 1fr; }
  .interest-options { flex-direction: column; }
  .interest-actions .btn { width: 100%; white-space: normal; }
}
