.level-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 20px; padding: 18px; background: rgba(255,255,255,.94); border-radius: 20px; box-shadow: var(--shadow); }
.level-picker .choice { justify-content: flex-start; text-align: left; gap: 10px; }
.level-picker p { grid-column: 1 / -1; margin: 0; color: var(--muted); font-size: .9rem; }
.score, .domain { color: var(--muted); font-size: .94rem; }
.function-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.function-pair p { margin: 0; padding: 12px; background: rgba(255,255,255,.7); border-radius: 16px; text-align: center; font-size: 1.25rem; }
.composition-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.composition-options .choice { gap: 10px; min-height: 80px; }
.composition-options .choice span { min-width: 0; }
.choice.answer-correct { border-color: var(--green); background: rgba(115,204,128,.18); }
.choice.answer-wrong { border-color: var(--red); background: rgba(214,69,69,.12); }
.correction { margin-top: 18px; padding: 16px; border: 1px solid var(--border); border-radius: 16px; }
.correction h3 { margin-top: 0; }
#calculation { padding-left: 24px; }
#calculation li { margin: 12px 0; line-height: 1.8; }
.completion { margin-top: 18px; padding: 20px; border: 1px solid var(--green); border-radius: 16px; background: rgba(115,204,128,.18); }
.completion h3 { margin-top: 0; }
@media (max-width: 620px) {
  .level-picker, .function-pair, .composition-options { grid-template-columns: 1fr; }
  .composition-options .choice { min-height: 65px; }
  .function-pair p { font-size: 1.1rem; }
}
