/* Taiwan CAP maths: exam-style multiple choice */
.cm-note { font-size: .9375rem; color: var(--ink); background: var(--chip, #F1F4FA); border-radius: .5rem; padding: .6rem .8rem; margin: 0 0 1rem; }
.cm-stage { display: grid; gap: .75rem; width: 100%; max-width: 40rem; margin: 0 auto; }
.cm-src { margin: 0; font-size: .8125rem; color: #6b7280; }
.cm-q { margin: 0; font: 500 1.1875rem/1.7 var(--f-b), var(--cjk); }
.cm-opts { display: grid; gap: .5rem; }
.cm-opt { justify-content: flex-start; text-align: left; font-size: 1.0625rem; padding: .7em 1em; white-space: normal; }
.cm-opt b { margin-right: .5em; font-weight: 600; }
.cm-opt.cm-right { box-shadow: inset 0 0 0 3px var(--mint); }
.cm-next { justify-self: end; }
.cm-sys { display: inline-flex; flex-direction: column; vertical-align: middle; border-left: 2px solid currentColor; border-radius: .4em 0 0 .4em; padding: 0 .4em; margin: 0 .2em; line-height: 1.5; }
.cm-rad { border-top: 1.5px solid currentColor; padding: 0 .1em; }
.cm-sheet { list-style: none; margin: 0; padding: 0; display: grid; gap: 5mm; }
.cm-sheet > li { break-inside: avoid; }
.cm-sheet .cm-q { font-size: 11pt; line-height: 1.6; }
.cm-sopts { list-style: none; margin: 1mm 0 0; padding: 0 0 0 4mm; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1mm 6mm; font-size: 10.5pt; }
.cm-sopts .cm-key { font-weight: 700; color: #E8573C; }
.cm-sheet .cm-src { font-size: 8pt; margin-top: 1mm; }
@media print { .cm-sheet { gap: 4mm; } }
.cm-keylist { list-style: none; margin: 0; padding: 0; display: grid; gap: 2.5mm; font-size: 10.5pt; }
.cm-keylist li { display: grid; grid-template-columns: 8mm auto; column-gap: 2mm; }
.cm-keylist .cm-src { grid-column: 2; font-size: 8pt; color: #6b7280; }
.cm-opt:disabled { opacity: 1; color: var(--ink); cursor: default; }
