/* Чтение с вопросами: обычный лист (имя, дата, заголовок). Текст — колонка с числами справа (12 мм), кегль --fs
   ужимается в app.js; вопросы — линейки для ответа. Лист взрослого — ответы, рамка проверки чтения, копия текста. */
.rc-sheet { width: 100%; align-self: stretch; display: flex; flex-direction: column; gap: 3.5mm; font-size: var(--fs, 13pt); color: #2b2b2b; }
.sheet-body:has(.rc-sheet) { align-items: stretch; justify-content: flex-start; }
.rc-memo { flex: none; font: italic 10pt/1.35 var(--body); color: #666; border-left: 2.5px solid var(--teal, #2bb3a3); padding: 0.6mm 0 0.6mm 3mm; }
.rc-text { position: relative; flex: none; line-height: 1.6; font-family: var(--body); }
.rc-text.rc-nums { padding-right: 14mm; }
.rc-p { margin: 0 0 0.45em; text-indent: 1.4em; }
.rc-p:last-child { margin-bottom: 0; }
.rc-w { white-space: nowrap; }
.rc-n { position: absolute; right: 0; width: 11mm; text-align: right; font: 600 8.5pt var(--body); color: #9a8f6c; }
.rc-g1 .rc-text { line-height: 1.75; }
.rc-qs { flex: none; margin: 1mm 0 0; padding: 0; list-style: none; counter-reset: q; display: flex; flex-direction: column; gap: 3mm; font-size: 0.86em; }
.rc-qs li { counter-increment: q; break-inside: avoid; }
.rc-q { display: block; position: relative; padding-left: 7.5mm; font-weight: 600; line-height: 1.35; }
.rc-q::before { content: counter(q); position: absolute; left: 0; top: 0.05em; width: 5.4mm; height: 5.4mm; border-radius: 50%; background: var(--teal, #2bb3a3); color: #fff; font: 700 8.5pt/5.4mm var(--body); text-align: center; }
.rc-line { display: block; height: 9mm; margin-left: 7.5mm; border-bottom: 1.2px solid #b9b0a0; }
.rc-g1 .rc-line { height: 11mm; }
.rc-g3 .rc-line { height: 8.5mm; }
.rc-qpage .rc-qs { gap: 5mm; font-size: 0.95em; }
.rc-qpage .rc-line { height: 9.5mm; }
.rc-turn { margin: auto 0 0; text-align: right; font: italic 600 11pt var(--body); color: #888; }
/* лист взрослого */
.rc-adult { gap: 3mm; }
.rc-ans { margin: 0; padding-left: 6mm; display: flex; flex-direction: column; gap: 2mm; line-height: 1.35; }
.rc-ans b { display: block; }
.rc-ans span { display: block; color: #1f7a72; }
.rc-box { flex: none; border: 1.2px solid #d6cdb4; border-radius: 3mm; padding: 2.5mm 4mm; background: #fbf8f1; line-height: 1.35; }
.rc-box p { margin: 1mm 0 0; font-size: 0.92em; color: #555; }
.rc-time { display: flex; gap: 5mm; flex-wrap: wrap; margin-top: 2mm; font-weight: 600; }
.rc-time span { display: flex; align-items: flex-end; gap: 1.5mm; }
.rc-time i { display: inline-block; width: 16mm; border-bottom: 1.2px solid #777; height: 1.1em; }
.rc-copy { flex: none; border-top: 1px dashed #ccc; padding-top: 2mm; }
.rc-copy > b { display: block; font-size: 0.9em; color: #777; margin-bottom: 1mm; }
.rc-copy .rc-text { font-size: 0.92em; line-height: 1.5; }
.rc-copy .rc-n { font-size: 7.5pt; }
