/* Supporting readings (public/app/readings.js, lane R, Oct 15, 2026): hosted text read in place, the paste box that
   brings a passage from a book we only link to into Ask a Saint, and the questions a teacher places on a reading.
   Linked from index.html for teachers, and again with the student styles (app.js studentStyles) so it follows them. */

/* Hosted text reads like the workbook's own sections: same prose, with the chapter headings and subheads the source has. */
.hosted-reading-text{margin-top:18px;max-width:42rem}
.hosted-reading-text h4{font-size:1.05rem;letter-spacing:.04em;margin:28px 0 4px}
.hosted-reading-text h4+h4{margin-top:0;font-weight:500}
.hosted-reading-text h5{font-size:1rem;font-style:italic;margin:22px 0 6px}
/* The rights holder's credit line: present, quiet, after the text it covers. */
.hosted-reading-text .reading-credit{margin-top:28px;padding-top:12px;border-top:1px solid var(--border,#e5e0d2);font-size:.8rem;color:var(--muted-foreground,#6b6658)}

/* No print copy of a licensed text (the permissions cover reading it in the workbook): the girl's, and the staff views'. */
@media print{.hosted-reading-text,.hosted-reading-staff{display:none!important}}

/* Ask a Saint about a passage: opens under the card's links, full width, like Read here. */
.reading-ask>summary{list-style:none;cursor:pointer}
.reading-ask>summary::-webkit-details-marker{display:none}
.reading-ask>summary svg{flex:none}
.reading-ask[open]{flex-basis:100%}
.reading-ask-form{display:grid;gap:10px;margin-top:14px;max-width:42rem}
.reading-ask-form label{font-size:.875rem;color:var(--muted-foreground,#6b6658)}
.reading-ask-form textarea{width:100%;border:1px solid #d4cdbb;border-radius:12px;padding:10px 12px;font:1rem/1.6 Georgia,serif;background:#fff;resize:vertical}
.reading-ask-form .btn{justify-self:start}
/* House pattern: a submit action looks like a button and fills once there's something to send; pale until then, like the
   Saints sheet's own Send. */
.reading-ask-form:has(textarea:invalid) .btn{opacity:.45;cursor:default}

/* Classroom Manager: each reading's questions, in order, under its Supporting Readings section. The cards and the
   + Question button are Classroom Manager's own (.cm-task, .cm-insert), so a question reads as the assignment it is. */
.rq-block{margin:4px 0 18px}
.rq-reading{margin:14px 0}
.rq-reading>h4{margin:0 0 2px;font-size:.95rem}
.rq-list{list-style:none;margin:0;padding:0}
.rq-tools{display:inline-flex;align-items:center;gap:4px}
/* ↑ and ↓ are one character wide; give them a target a finger or a quick mouse can hit. */
.rq-tools [data-action="question-move"]{min-width:30px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}
.rq-tools [data-action="question-move"]:hover{background:#faf1d5}
/* Its own Assign, then + Question (Oct 18): the section's 14px gap between its assign controls, so "Assigned · Mon,
   Oct 19 · Edit" doesn't run into + Question. */
.cm-insert.rq-add{justify-content:flex-start;margin:6px 0;gap:14px}
/* The three kinds of question side by side, as one choice (the task window's pair of choices is a two-column grid). */

/* A question's sheet sits in the reading card's narrower column: its "Assigned · Due … · grading" tag may wrap there
   instead of running past the card's edge (it never wraps in the full-width To-Do). */
.reading-card .teacher-task .assigned-tag{white-space:normal}

/* Her reading's sources (lane TG #4; app.js ownSources): fine print under her words, a footnote's line height (AGENTS.md:
   "Footnotes sit tight ... about 1.35"), each a link of its own. Here because her page, the girls' and her card's frame all
   load this sheet. In her reading window, the list sits in her reading's gold box with "× Remove" at its right edge. */
.own-sources{margin:12px 0 0;padding-top:10px;border-top:1px solid #e6dcc0}
.own-sources h3{margin:0 0 4px;font:600 .6875rem/1.4 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#80672f}
/* Numbered, always: her words cite them as [1], [2], and the girls' page resets every list to none. */
.own-sources ol{margin:0;padding-left:1.4em;list-style:decimal outside;font-size:.82rem;line-height:1.35;color:#5d6359}
.own-sources li{margin:0 0 2px}
.own-sources a{color:inherit;text-decoration:underline;text-decoration-color:#c9b98f;text-underline-offset:2px;overflow-wrap:anywhere}
.own-sources-edit{position:relative;margin:8px 0 0;padding:10px 12px;border:1px solid #e6dcc0;border-radius:12px;background:#fbf7ec}
.own-sources-edit .own-sources{margin:0;padding:0;border:0}
.own-sources-edit .own-sources-off{position:absolute;top:8px;right:10px;font-size:.8rem}
