/* PaperPapa - script reading styles.
   Auto-extracted from the 147 house-style HTML files, rule-level deduped,
   and scoped under .dse-script so they cannot leak into the theme chrome.
   Regenerate via tools; do not hand-edit. */

.dse-script * { box-sizing: border-box; }
.dse-script { font-family: "Source Serif 4", Georgia, "Times New Roman", serif; max-width: 1100px; margin: 0 auto; padding: 0 1.5rem 3rem 1.5rem; color: #222; line-height: 1.65; }
.dse-script .search-bar { position: sticky; top: 0; background: rgba(255, 255, 255, 0.96); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); padding: 0.6rem 0; border-bottom: 1px solid #ddd; z-index: 100; margin: 0 0 1.4rem 0; }
.dse-script .search-bar input { width: 100%; padding: 0.5rem 0.8rem; font-size: 0.95rem; border: 1px solid #ccc; border-radius: 4px; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .search-bar input:focus { outline: 2px solid #5d8aa8; outline-offset: -1px; border-color: #5d8aa8; }
.dse-script .search-bar .hint { font-size: 0.78rem; color: #888; font-family: "Manrope", -apple-system, sans-serif; margin-top: 0.3rem; }
.dse-script h1 { border-bottom: 2px solid #2c3e50; padding-bottom: 0.4rem; margin: 1rem 0 0.2rem 0; }
.dse-script .meta { color: #666; font-size: 0.92rem; margin-bottom: 1.6rem; }
.dse-script .meta .tag { display: inline-block; background: #f0eee6; color: #4a4a4a; padding: 0.1rem 0.5rem; border-radius: 10px; font-size: 0.78rem; margin: 0 0.2rem; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .meta .tag.grade-5ss { background: #ffd2a8; color: #7a4408; font-weight: 700; }
.dse-script h2 { color: #2c3e50; margin-top: 2.4rem; border-bottom: 1px solid #e0e0e0; padding-bottom: 0.3rem; }
.dse-script .prompt-box { background: #eef3f8; border-left: 4px solid #5d8aa8; padding: 0.8rem 1.1rem; margin: 1rem 0 1.6rem 0; border-radius: 0 4px 4px 0; font-size: 0.95rem; }
.dse-script .prompt-box .label { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em; color: #5d8aa8; font-weight: bold; }
.dse-script .prompt-box .poster-info { background: #fff; padding: 0.5rem 0.8rem; margin: 0.5rem 0; border-radius: 4px; border-left: 3px solid #b5b0a0; font-size: 0.88rem; }
.dse-script details.page-images { margin: 1.4rem 0; border: 1px solid #ddd; border-radius: 6px; background: #f7f5f0; }
.dse-script details.page-images summary { padding: 0.75rem 1rem; cursor: pointer; font-weight: bold; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.92rem; color: #2c3e50; user-select: none; }
.dse-script details.page-images summary:hover { background: #efebe0; border-radius: 6px; }
.dse-script details.page-images[open] summary { border-bottom: 1px solid #ddd; border-radius: 6px 6px 0 0; }
.dse-script .page-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; padding: 1rem; }
.dse-script .page-grid figure { margin: 0; }
.dse-script .page-grid img { width: 100%; height: auto; border: 1px solid #ccc; border-radius: 4px; background: white; display: block; }
.dse-script .page-grid figcaption { text-align: center; font-size: 0.82rem; color: #666; font-family: "Manrope", -apple-system, sans-serif; margin-top: 0.3rem; }
.dse-script .writing { background: #faf9f4; padding: 1rem 1.4rem; border-radius: 6px; border: 1px solid #e0ddd0; margin: 1rem 0; }
.dse-script .writing p { margin: 0 0 1.1rem 0; }
.dse-script .writing p:last-child { margin-bottom: 0; }
.dse-script .legend { background: #f4f4ee; padding: 0.7rem 1rem; border-radius: 4px; margin: 0.8rem 0 1.4rem 0; font-size: 0.9rem; }
.dse-script .legend code { background: white; padding: 1px 6px; border-radius: 3px; border: 1px solid #ddd; }
.dse-script del { color: #b03a2e; text-decoration: line-through; }
.dse-script ins { color: #1e6e34; text-decoration: none; background: #e1f0e5; padding: 0 3px; border-radius: 2px; font-weight: 600; }
.dse-script mark.unclear { background: #fff2c4; border-bottom: 1.5px dotted #b5872a; padding: 0 2px; }
.dse-script .struck-block { color: #999; font-style: italic; border-left: 3px dashed #c8a8a8; padding: 0.5rem 0.9rem; margin: 0.4rem 0 1rem 0; background: #fdf6f3; font-size: 0.92rem; }
.dse-script .struck-block .strike-label { display: block; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.06em; color: #a06060; font-weight: bold; margin-bottom: 0.3rem; }
.dse-script .struck-block .struck-text { text-decoration: line-through; }
.dse-script .rewrite-callout { margin: 0.6rem 0 1.1rem 0; padding: 0.7rem 1rem; border-left: 3px solid #8b5a9f; background: #f6f0fa; border-radius: 0 4px 4px 0; }
.dse-script .rewrite-callout .label { font-weight: bold; color: #6a3d80; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .rewrite-callout p { margin: 0.35rem 0; }
.dse-script .rewrite-callout .rewrite { color: #4a2d60; font-style: italic; }
.dse-script .note-block { background: #fff8e1; border: 1px solid #f3d97b; padding: 0.6rem 0.9rem; border-radius: 4px; margin: 0.8rem 0; font-size: 0.92rem; color: #6a5a1a; }
.dse-script .strength { margin: 0.7rem 0; padding: 0.6rem 1rem; border-left: 3px solid #2e8b57; background: #eef7f0; border-radius: 0 4px 4px 0; }
.dse-script .strength .label { font-weight: bold; color: #1e6e34; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .strength p { margin: 0.3rem 0; }
.dse-script .table-wrap { overflow-x: auto; }
.dse-script table { border-collapse: collapse; width: 100%; margin: 1rem 0; font-size: 0.95rem; }
.dse-script th, .dse-script td { border: 1px solid #d8d6cc; padding: 0.55rem 0.75rem; text-align: left; vertical-align: top; }
.dse-script th { background: #f0eee6; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.04em; }
.dse-script td.word { font-weight: 600; color: #2c3e50; white-space: nowrap; }
.dse-script .cat-legend { background: #f7f5ef; padding: 0.7rem 1rem; border-radius: 4px; margin: 0.8rem 0 1.4rem 0; font-size: 0.88rem; color: #4a4a4a; }
.dse-script .cat-legend strong { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; }
.dse-script .cat-pill { display: inline-block; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; font-weight: 700; padding: 0.15rem 0.55rem; border-radius: 12px; vertical-align: middle; line-height: 1.4; white-space: nowrap; }
.dse-script .cat-pill.fluency { background: #d4ebf7; color: #1e5a82; }
.dse-script .cat-pill.authenticity { background: #fde4cc; color: #8a5a14; }
.dse-script .cat-pill.text-type { background: #e8dcf3; color: #5a3a80; }
.dse-script .cat-pill.lineref { background: #eef2f7; color: #4a5a6e; font-weight: 600; }
.dse-script .suggestion { margin: 0.9rem 0; padding: 0.7rem 1rem; border-left: 3px solid #d4a017; background: #fdf8ec; border-radius: 0 4px 4px 0; }
.dse-script .suggestion .label-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 0.6rem; margin-bottom: 0.2rem; flex-wrap: wrap; }
.dse-script .suggestion .label { font-weight: bold; color: #8a6500; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .suggestion .orig-text { color: #555; font-style: italic; margin: 0.3rem 0; }
.dse-script .suggestion .new-text { color: #1e6e34; margin: 0.3rem 0; }
.dse-script .suggestion .note { color: #5a5a5a; font-size: 0.92rem; margin-top: 0.4rem; }
.dse-script .pro-rewrite { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px solid #5d8aa8; background: #f0f5f9; border-radius: 6px; }
.dse-script .pro-rewrite .label { font-weight: bold; color: #2c5e80; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .pro-rewrite .caveat { font-size: 0.86rem; color: #5a5a5a; font-style: italic; margin-bottom: 0.8rem; }
.dse-script .pro-rewrite .col-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 0.6rem 0; }
.dse-script .pro-rewrite .col h4 { margin: 0 0 0.4rem 0; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #6a6a6a; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .pro-rewrite .student { background: #fcfaf3; padding: 0.6rem 0.8rem; border-radius: 4px; font-size: 0.92rem; }
.dse-script .pro-rewrite .pro { background: #ffffff; padding: 0.6rem 0.8rem; border-radius: 4px; font-size: 0.92rem; border-left: 3px solid #5d8aa8; }
.dse-script .pro-rewrite .commentary { margin-top: 0.8rem; font-size: 0.92rem; color: #444; }
.dse-script .pro-rewrite .commentary ul { margin: 0.4rem 0 0 0; padding-left: 1.2rem; }
.dse-script .pro-rewrite .commentary li { margin: 0.3rem 0; }
.dse-script .spotlight { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px solid #2e8b57; background: #eef7f0; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #1e6e34; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .spotlight .caveat { font-size: 0.86rem; color: #5a5a5a; font-style: italic; margin-bottom: 0.8rem; }
.dse-script .spotlight .quote { background: #fcfaf3; padding: 0.6rem 0.9rem; border-radius: 4px; font-size: 0.93rem; border-left: 3px solid #2e8b57; margin: 0.5rem 0 0.8rem 0; font-style: italic; color: #2a3a2a; }
.dse-script .spotlight h4 { margin: 0.9rem 0 0.4rem 0; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #6a6a6a; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .spotlight .why ul, .dse-script .spotlight .sharpen ul { margin: 0.3rem 0 0 0; padding-left: 1.2rem; font-size: 0.94rem; color: #444; }
.dse-script .spotlight .why li, .dse-script .spotlight .sharpen li { margin: 0.3rem 0; }
.dse-script .spotlight .sharpen { margin-top: 0.9rem; padding-top: 0.8rem; border-top: 1px dashed #c0d8c6; }
.dse-script .back-link { display: inline-block; margin: 0 0 1rem 0; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; color: #5d8aa8; text-decoration: none; }
.dse-script .back-link:hover { text-decoration: underline; }
.dse-script .no-match { text-align: center; color: #888; font-style: italic; padding: 1rem; display: none; }
@media (max-width: 720px) {
.dse-script { padding: 0 1rem 2rem 1rem; }
.dse-script .pro-rewrite .col-pair { grid-template-columns: 1fr; }
.dse-script h1 { font-size: 1.5rem; }
.dse-script h2 { font-size: 1.2rem; }
}
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript { font-family: "Source Serif 4", Georgia, serif; line-height: 1.7; max-width: 760px; }
.dse-script .lined-transcript .line { display: grid; grid-template-columns: 2.8rem 1fr; align-items: baseline; padding: 0.06rem 0; }
.dse-script .lined-transcript .ln { color: #aaa; font-size: 0.75rem; text-align: right; padding-right: 0.9rem; user-select: none; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; }
.dse-script .lined-transcript .ln-blank { visibility: hidden; }
.dse-script .lined-transcript .page-break { margin: 1.2rem 0 0.6rem 3rem; padding-top: 0.5rem; border-top: 1px dashed #d0d0d0; color: #888; font-size: 0.82rem; font-style: italic; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; }
.dse-script .lined-transcript .photo-title { font-weight: 700; font-style: italic; text-align: center; margin: 0.6rem 0 0.8rem 3rem; color: #2c3e50; }
.dse-script .lined-transcript .photo-heading { margin: 0.4rem 0 0.2rem 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.06em; color: #5a5a5a; }
.dse-script .lined-transcript .indent { display: inline-block; width: 1.6em; }
.dse-script .lined-transcript .interlinear { color: #888; font-style: italic; font-size: 0.85em; }
.dse-script .meta .tag.grade-5s { background: #fde2b8; color: #7a5408; font-weight: 700; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .article-title { font-weight: 700; font-style: italic; text-align: center; margin: 0.6rem 0 0.8rem 3rem; color: #2c3e50; }
.dse-script .search-bar { position: sticky; top: 0; background: rgba(255, 255, 255, 0.96); backdrop-filter: blur(6px); padding: 0.6rem 0; border-bottom: 1px solid #ddd; z-index: 100; margin: 0 0 1.4rem 0; }
.dse-script .meta .tag.perfect { background: #fde2b1; color: #7a4408; font-weight: 700; border: 1.5px solid #d4a017; }
.dse-script details.page-images summary { padding: 0.75rem 1rem; cursor: pointer; font-weight: bold; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.92rem; color: #2c3e50; }
.dse-script .writing h3 { margin: 1.4rem 0 0.5rem 0; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.95rem; text-transform: uppercase; letter-spacing: 0.06em; color: #2c3e50; border-bottom: 1px dashed #c8c5b8; padding-bottom: 0.2rem; }
.dse-script .writing h3:first-child { margin-top: 0; }
.dse-script .perfect-banner { background: linear-gradient(90deg, #fff3d6, #ffe1a8); border: 2px solid #d4a017; padding: 0.9rem 1.1rem; border-radius: 6px; margin: 1.2rem 0 1.6rem 0; color: #6a4400; font-size: 0.95rem; font-weight: 600; }
.dse-script .perfect-banner strong { color: #5a3300; }
.dse-script blockquote { margin: 0.5rem 0 0.8rem 0; padding: 0.4rem 0.9rem; border-left: 3px solid #b5b0a0; background: #fafaf3; font-style: italic; color: #3a3a3a; font-size: 0.95rem; }
.dse-script .cat-pill.lineref { background:#eef2f7; color:#4a5a6e; font-weight:600; }
@media (max-width: 720px) {
.dse-script { padding: 0 1rem 2rem 1rem; }
.dse-script .pro-rewrite .col-pair { grid-template-columns: 1fr; }
}
@media print {
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script { max-width: none; }
.dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .meta .tag.grade-5s { background: #f7d8a8; color: #6a4408; font-weight: 700; }
.dse-script .lined-transcript { font-family: "Source Serif 4", Georgia, serif; line-height: 1.7; max-width: 720px; }
.dse-script .lined-transcript .title-line { font-weight: 700; font-style: italic; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .pro-rewrite, .dse-script .spotlight { page-break-inside: avoid; }
}
.dse-script .lined-transcript { font-family: "Source Serif 4", Georgia, serif; line-height: 1.7; max-width: 740px; }
.dse-script .lined-transcript .sub-heading { margin: 0.8rem 0 0.2rem 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.06em; color: #6a6a6a; font-weight: 700; }
.dse-script .lined-transcript .end-marker { margin: 0.8rem 0 0 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.78rem; letter-spacing: 0.06em; color: #888; font-weight: 600; }
.dse-script .meta .tag.perfect { background: #ffe7c8; color: #7a5408; font-weight: 700; }
.dse-script .caret { color: #1e6e34; background: #e1f0e5; padding: 0 3px; border-radius: 2px; font-weight: 600; }
.dse-script .caret::before { content: "^"; font-weight: 700; margin-right: 1px; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .strike-note { margin: 0.5rem 0 0.2rem 3rem; color: #a06060; font-size: 0.78rem; font-style: italic; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; }
.dse-script .lined-transcript .line.struck del { color: #b03a2e; font-style: normal; }
.dse-script .meta .tag.grade-5s { background: #ffe7b2; color: #7a5e08; font-weight: 700; }
.dse-script .meta .tag.outlier { background: #f4cccc; color: #7a2828; font-weight: 700; }
.dse-script .outlier-block { background: #fdecea; border: 1px solid #e8a098; padding: 0.7rem 1rem; border-radius: 4px; margin: 0.8rem 0; font-size: 0.92rem; color: #6f2a23; }
.dse-script .outlier-block strong { color: #5a1f19; }
.dse-script .lined-transcript .title-line { font-weight: 700; font-style: italic; text-align: center; margin: 0.2rem 0 0.8rem 0; }
.dse-script .meta .tag.band { background: #e6f0e0; color: #2d5a1a; font-weight: 700; }
.dse-script .preprinted { background: #f3f0e8; padding: 0.8rem 1.1rem; border-radius: 4px; margin: 1rem 0; font-style: italic; color: #4a4a4a; border: 1px dashed #c8c2b0; }
.dse-script .preprinted .label { font-style: normal; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em; color: #8a7a4a; font-weight: bold; display: block; margin-bottom: 0.4rem; }
.dse-script .unpack { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px solid #5d8aa8; background: #f0f5f9; border-radius: 6px; }
.dse-script .unpack .label { font-weight: bold; color: #2c5e80; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .unpack .caveat { font-size: 0.86rem; color: #5a5a5a; font-style: italic; margin-bottom: 0.8rem; }
.dse-script .unpack h4 { margin: 1rem 0 0.3rem 0; font-size: 0.95rem; color: #2c5e80; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .unpack ul { margin: 0.3rem 0 0.8rem 0; padding-left: 1.3rem; }
.dse-script .unpack li { margin: 0.35rem 0; }
.dse-script .unpack .quote { background: #fcfaf3; padding: 0.4rem 0.7rem; border-left: 3px solid #d4a017; border-radius: 0 4px 4px 0; font-style: italic; color: #4a4a4a; margin: 0.4rem 0; font-size: 0.92rem; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images:not([open]) summary::after { content: " (collapsed — open in browser to view)"; font-style: italic; color: #888; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .unpack, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .writing h3.title { text-align: center; margin: 0 0 1.2rem 0; font-size: 1.15rem; color: #2c3e50; border-bottom: none; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images:not([open]) summary::after { content: " (collapsed — open in browser to view)"; font-style: italic; color: #888; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .title-line { text-align: center; font-weight: 700; font-style: italic; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images:not([open]) summary::after { content: " (collapsed &mdash; open in browser to view)"; font-style: italic; color: #888; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .title-line { text-align: center; font-style: italic; color: #888; }
.dse-script .meta .tag.perfect { background: #fce8b5; color: #6e4d00; font-weight: 700; }
.dse-script .perfect-banner { background: linear-gradient(135deg, #fce8b5 0%, #f7d878 100%); border: 2px solid #d4a017; padding: 1rem 1.2rem; border-radius: 6px; margin: 1rem 0 1.6rem 0; }
.dse-script .perfect-banner .label { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; color: #6e4d00; font-weight: 700; display: block; margin-bottom: 0.3rem; }
.dse-script .perfect-banner p { margin: 0.35rem 0; color: #4a3500; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script details.page-images:not([open]) summary::after { content: " (collapsed &mdash; open in browser to view)"; font-style: italic; color: #888; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .unpack, .dse-script .perfect-banner, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .addr { font-style: italic; color: #555; }
.dse-script .lined-transcript .centered-title { font-weight: bold; }
.dse-script .writing h3.title { text-align: center; margin: 0 0 1.2rem 0; font-size: 1.15rem; color: #888; border-bottom: none; font-style: italic; }
.dse-script .meta .tag.band { background: #d8eedd; color: #1e5a34; font-weight: 700; }
.dse-script .lined-transcript .missing { margin: 0.6rem 0 0.6rem 3rem; padding: 0.5rem 0.8rem; color: #888; font-size: 0.86rem; font-style: italic; background: #f3f0e8; border-left: 3px dashed #c8c2b0; }
.dse-script .missing-page { margin: 1.2rem 0 1.2rem 3rem; padding: 0.75rem 1rem; border: 1px dashed #c8a8a8; background: #fdf6f3; color: #8a5a5a; font-size: 0.88rem; font-family: "Manrope", -apple-system, sans-serif; border-radius: 4px; }
.dse-script .missing-page strong { color: #6a3030; }
.dse-script .lined-transcript .title-line { text-align: center; font-weight: 600; color: #2c3e50; padding: 0.4rem 0 0.8rem 0; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite, .dse-script .spotlight { page-break-inside: avoid; }
}
.dse-script .lined-transcript .report-title { font-weight: bold; text-decoration: underline; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .rewrite-callout, .dse-script .pro-rewrite, .dse-script .spotlight { page-break-inside: avoid; }
}
.dse-script .meta .tag.perfect { background: #e6f4ea; color: #1e6e34; font-weight: 700; }
.dse-script .delta-block { background: #fdf0f0; border: 1px solid #d4a4a4; padding: 0.7rem 1rem; border-radius: 4px; margin: 0.8rem 0; font-size: 0.92rem; color: #7a3030; }
@media (max-width: 720px) {
.dse-script { padding: 0 1rem 2rem 1rem; }
.dse-script h1 { font-size: 1.5rem; }
.dse-script h2 { font-size: 1.2rem; }
}
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr { page-break-inside: avoid; }
}
.dse-script .lined-transcript .report-title { text-align: center; font-weight: bold; text-decoration: underline; }
.dse-script .meta .tag.grade-5s { background: #ffe1b3; color: #8a5a14; font-weight: 700; }
.dse-script .prompt-box .image-note { background: white; border: 1px dashed #b6c8d8; padding: 0.5rem 0.8rem; margin: 0.6rem 0 0.3rem 0; border-radius: 3px; font-size: 0.88rem; color: #4a5a6a; font-style: italic; }
.dse-script .lined-transcript .story-title { font-weight: bold; text-align: center; letter-spacing: 0.03em; }
.dse-script .meta .tag.dual { background: #e1f0e5; color: #1e6e34; }
.dse-script .prompt-box .stimulus { background: #fff; border: 1px dashed #b6c8d8; padding: 0.6rem 0.9rem; margin: 0.5rem 0; border-radius: 3px; font-family: "Source Serif 4", Georgia, serif; font-style: italic; }
.dse-script .writing .blog-title { text-align: center; font-weight: bold; font-size: 1.15rem; text-decoration: underline; margin-bottom: 1rem; }
.dse-script .lined-transcript .blog-title-line { text-align: center; font-weight: bold; text-decoration: underline; margin-bottom: 0.3rem; }
.dse-script .meta .tag.perfect { background: #f5d97e; color: #6b4f00; font-weight: 700; }
.dse-script .perfect-banner { background: linear-gradient(90deg, #fff5d6 0%, #ffe9a3 100%); border: 1px solid #d4a017; padding: 0.9rem 1.2rem; border-radius: 6px; margin: 1.2rem 0; }
.dse-script .perfect-banner .head { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.08em; color: #8a6500; font-weight: 700; }
.dse-script .perfect-banner h3 { margin: 0.2rem 0 0.4rem 0; color: #6b4f00; }
.dse-script .perfect-banner p { margin: 0.3rem 0; font-size: 0.95rem; color: #4a3a14; }
.dse-script .gap-banner { background: #fef0e9; border: 1px solid #e8a679; padding: 0.9rem 1.2rem; border-radius: 6px; margin: 1.2rem 0; }
.dse-script .gap-banner .head { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.08em; color: #a55a14; font-weight: 700; }
.dse-script .gap-banner h3 { margin: 0.2rem 0 0.4rem 0; color: #7a3d00; }
.dse-script .gap-banner p { margin: 0.3rem 0; font-size: 0.95rem; color: #5a2f0a; }
.dse-script .top-banner { background: linear-gradient(90deg, #fff5d6 0%, #ffe9a3 100%); border: 1px solid #d4a017; padding: 0.9rem 1.2rem; border-radius: 6px; margin: 1.2rem 0; }
.dse-script .top-banner .head { font-family: "Manrope", -apple-system, sans-serif; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.08em; color: #8a6500; font-weight: 700; }
.dse-script .top-banner h3 { margin: 0.2rem 0 0.4rem 0; color: #6b4f00; }
.dse-script .top-banner p { margin: 0.3rem 0; font-size: 0.95rem; color: #4a3a14; }
.dse-script .prompt-box .letter-quote { background: #fff; padding: 0.6rem 0.9rem; margin: 0.6rem 0; border-radius: 4px; border-left: 3px solid #b5b0a0; font-style: italic; font-size: 0.92rem; }
.dse-script .struck-block { color: #888; text-decoration: line-through; opacity: 0.7; }
.dse-script .spotlight .label { font-weight: bold; color: #1e6e34; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.4rem; }
.dse-script .spotlight .quote { background: #fcfaf3; padding: 0.5rem 0.8rem; border-left: 3px solid #2e8b57; border-radius: 0 4px 4px 0; font-style: italic; color: #2a4a36; margin: 0.5rem 0; font-size: 0.95rem; }
.dse-script .spotlight p { margin: 0.5rem 0; }
@media print {
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script { max-width: none; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite, .dse-script .spotlight, .dse-script .perfect-banner { page-break-inside: avoid; }
}
.dse-script .spotlight { margin: 1.4rem 0; padding: 0.9rem 1.1rem; border: 1px dashed #b08d3a; background: #fdf6e2; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #7a5800; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.07em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.35rem; }
.dse-script .spotlight p { margin: 0.4rem 0; font-size: 0.93rem; }
@media print {
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script { max-width: none; }
}
.dse-script .spotlight { margin: 1.2rem 0; padding: 0.9rem 1.1rem; border-left: 4px solid #b8860b; background: #fdf6e3; border-radius: 0 5px 5px 0; }
.dse-script .spotlight .label { font-weight: bold; color: #8a6500; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.07em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .spotlight p { margin: 0.4rem 0; }
.dse-script .lined-transcript .title-line { font-weight: bold; font-size: 1.05em; text-align: center; padding: 0.3rem 0 0.6rem 0; }
@media print {
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script { max-width: none; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .date-line { text-align: right; font-style: italic; color: #777; font-size: 0.9em; }
.dse-script .lined-transcript .title-line { font-weight: bold; font-size: 1.05em; text-align: center; padding: 0.3rem 0 0.1rem 0; }
.dse-script .lined-transcript .byline-line { font-style: italic; color: #666; font-size: 0.9em; text-align: center; padding: 0 0 0.6rem 0; }
.dse-script .lined-transcript .section-head { margin: 1.2rem 0 0.4rem 3rem; padding-top: 0.4rem; color: #2c3e50; font-weight: 700; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; }
.dse-script .meta .tag.grade-5s { background: #ffe9b3; color: #8a5a14; font-weight: 700; }
@media print {
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images[open] summary { display: none; }
.dse-script { max-width: none; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite, .dse-script .spotlight { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
}
.dse-script .lined-transcript .title-line { font-weight: bold; }
.dse-script .lined-transcript .subhead { font-weight: bold; font-style: italic; }
.dse-script .spotlight { margin: 1rem 0; padding: 0.9rem 1.1rem; border-left: 4px solid #8b5a9f; background: #f6f0fa; border-radius: 0 6px 6px 0; }
.dse-script .spotlight .label { font-weight: bold; color: #6a3d80; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.4rem; }
.dse-script .spotlight .quote { font-style: italic; color: #4a2d60; margin: 0.4rem 0; padding-left: 0.6rem; border-left: 2px solid #c4afd6; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .spotlight, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .prompt-box blockquote { margin: 0.5rem 0; padding: 0.4rem 0.8rem; background: #fff; border-left: 3px solid #b5b0a0; font-size: 0.88rem; font-style: italic; color: #555; }
.dse-script .cat-pill.lineref { background: #ececec; color: #555; }
.dse-script .suggestion .pill-stack { display: flex; gap: 0.3rem; flex-wrap: wrap; }
.dse-script .lined-transcript h3.title-line { color: #5a3a80; font-size: 1.05rem; margin: 0 0 0.6rem 3rem; font-style: italic; }
.dse-script .meta .tag.grade-5sst { background: #ffe9b3; color: #8a5a14; font-weight: 700; }
.dse-script .lined-transcript .title-line { text-align: center; font-weight: bold; margin: 0.2rem 0 0.6rem 3rem; }
.dse-script .spotlight { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px dashed #b08a3a; background: #fdf6e3; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #7a5a18; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .spotlight blockquote { margin: 0.4rem 0; padding: 0.4rem 0.8rem; border-left: 3px solid #b08a3a; background: #fffaf0; font-style: italic; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite, .dse-script .spotlight { page-break-inside: avoid; }
}
.dse-script .lined-transcript .headline { font-weight: bold; font-size: 1.15rem; text-align: center; }
.dse-script .lined-transcript .byline { font-style: italic; text-align: center; color: #5a5a5a; }
.dse-script .writing h3 { margin: 0 0 1rem 0; font-family: "Source Serif 4", Georgia, serif; font-size: 1.15rem; text-align: center; }
.dse-script .lined-transcript .title-line { font-weight: bold; text-decoration: underline; }
.dse-script .lined-transcript .title-line { text-align: center; font-weight: bold; }
.dse-script .meta .tag.grade-5sst { background: #e8dcf3; color: #5a3a80; font-weight: bold; }
.dse-script .spotlight blockquote { border-left:3px solid #2e8b57; background:#fff; padding:0.5rem 0.9rem; margin:0.6rem 0; font-style:italic; color:#2a3a2a; }
.dse-script .cross-ref { background: #f3eef7; border: 1px solid #c5b0d8; padding: 0.7rem 1rem; border-radius: 4px; margin: 1rem 0; font-size: 0.92rem; color: #4a3a60; }
.dse-script .cross-ref strong { color: #5a3a80; }
.dse-script .lined-transcript .end-marker { margin: 0.6rem 0 0 3rem; padding: 0.4rem 0.7rem; background: #fff; border: 1px dashed #b03a2e; color: #b03a2e; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.82rem; font-weight: bold; display: inline-block; border-radius: 4px; }
.dse-script .spotlight { margin: 0.7rem 0; padding: 0.8rem 1.1rem; border: 2px solid #2e8b57; background: #f3faf5; border-radius: 6px; }
.dse-script .spotlight blockquote { margin: 0.4rem 0 0.6rem 0; padding: 0.5rem 0.8rem; border-left: 3px solid #2e8b57; background: #ffffff; font-style: italic; color: #1a4a2a; }
.dse-script .spotlight { margin: 1.4rem 0; padding: 0.9rem 1.1rem; border: 1px dashed #b08a4a; background: #fbf5e6; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #8a6500; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .meta .tag.grade-5ss { background: #ffd27a; color: #6d3f00; font-weight: 700; }
.dse-script .prompt-box .poem-block { background: #fff; padding: 0.7rem 1rem; margin: 0.5rem 0; border-radius: 4px; border-left: 3px solid #b5b0a0; font-size: 0.88rem; font-style: italic; }
.dse-script .prompt-box .poem-block .attrib { font-style: normal; font-size: 0.8rem; color: #666; display: block; margin-top: 0.4rem; }
.dse-script .spotlight { margin: 1rem 0; padding: 0.9rem 1.1rem; border-left: 3px solid #8b5a9f; background: #f6f0fa; border-radius: 0 4px 4px 0; }
.dse-script .spotlight .label { font-weight: bold; color: #6a3d80; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .meta .tag.grade-5 { background: #ffd9b3; color: #8a4a14; font-weight: 700; }
.dse-script .lined-transcript .chapter-head { font-style: italic; color: #5a5a5a; }
.dse-script .lined-transcript .boom { font-weight: bold; letter-spacing: 0.12em; text-align: center; }
.dse-script .meta .tag.grade-5s { background: #ffe0b3; color: #8a4a14; font-weight: 700; }
.dse-script .meta .tag.grade-5ss { background: #ffd07a; color: #6b4407; font-weight: 700; }
.dse-script .spotlight { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px solid #c08540; background: #fbf3e8; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #8a5a14; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .article-title { font-weight: bold; text-align: center; font-size: 1.05rem; margin: 0.4rem 0 1.2rem 0; letter-spacing: 0.02em; }
.dse-script .transcript { background: #faf9f4; padding: 1rem 1.4rem 1rem 0.6rem; border-radius: 6px; border: 1px solid #e0ddd0; margin: 1rem 0; font-family: "Source Serif 4", Georgia, "Times New Roman", serif; }
.dse-script .transcript ol { margin: 0; padding-left: 3.2rem; list-style: decimal; }
.dse-script .transcript ol li { padding: 0.05rem 0; list-style-position: outside; color: #cdc8b8; font-size: 0.78rem; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .transcript ol li span.line { color: #222; font-family: "Source Serif 4", Georgia, "Times New Roman", serif; font-size: 1rem; }
.dse-script .transcript ol li.major { list-style-type: decimal; color: #6a6a6a; font-weight: 600; }
.dse-script .transcript ol li.minor { list-style-type: none; }
.dse-script .transcript h3 { margin: 0.4rem 0 0.6rem 0; font-size: 0.92rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; color: #2c3e50; }
.dse-script .grammar-note { margin: 0.6rem 0; padding: 0.55rem 0.9rem; border-left: 3px solid #b03a2e; background: #fcefea; border-radius: 0 4px 4px 0; font-size: 0.93rem; }
.dse-script .grammar-note .lineref { display: inline-block; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.72rem; color: #8a3a2a; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; margin-right: 0.4rem; }
.dse-script .cat-pill.lineref { background: #ece9df; color: #6a6a4a; }
.dse-script .suggestion .label-pills { display: flex; gap: 0.3rem; flex-wrap: wrap; }
.dse-script .spotlight { margin: 1.6rem 0; padding: 1rem 1.2rem; border: 2px solid #8a5a14; background: #fff5e1; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #6a4a10; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
.dse-script .lined-transcript .section-head { margin: 1rem 0 0.4rem 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.06em; color: #2c3e50; font-weight: 700; }
.dse-script .meta .tag.grade-l5 { background: #d4ebf7; color: #1e5a82; font-weight: 700; }
.dse-script .writing h3 { margin: 0 0 0.4rem 0; font-family: "Source Serif 4", Georgia, serif; font-size: 1.15rem; text-align: center; }
.dse-script .writing .byline { text-align: center; font-style: italic; color: #5a5a5a; font-size: 0.9rem; margin: 0 0 1rem 0; }
.dse-script .lined-transcript .ln { color: #aaa; font-size: 0.75rem; text-align: right; padding-right: 0.9rem; user-select: none; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .lined-transcript .page-break { margin: 1.2rem 0 0.6rem 3rem; padding-top: 0.5rem; border-top: 1px dashed #d0d0d0; color: #888; font-size: 0.82rem; font-style: italic; font-family: "Manrope", -apple-system, sans-serif; }
.dse-script .lined-transcript .section-head { margin: 0.9rem 0 0.3rem 3rem; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; font-weight: 700; color: #2c3e50; letter-spacing: 0.04em; }
.dse-script .lined-transcript .form-field { margin: 0.4rem 0 0.6rem 3rem; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; color: #4a4a4a; }
.dse-script .lined-transcript .form-field .field-label { font-weight: 700; color: #2c3e50; }
.dse-script .lined-transcript .form-field .field-value { display: inline-block; padding: 0 0.4rem; border-bottom: 1px solid #999; min-width: 9rem; font-family: "Source Serif 4", Georgia, serif; }
.dse-script .cat-pill.lineref { background: #ece8da; color: #5a5a4a; }
.dse-script .suggestion .label-row .pills { display: flex; gap: 0.3rem; flex-wrap: wrap; }
@media (max-width: 720px) {
.dse-script { padding: 0 1rem 2rem 1rem; }
}
.dse-script .lined-transcript .section-head { margin: 0.9rem 0 0.4rem 0; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.85rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: #2c3e50; border-bottom: 1px dashed #c8c5b8; padding-bottom: 0.2rem; }
.dse-script .cat-pill.appeal { background: #fce4ec; color: #8a2050; }
.dse-script .meta .tag.grade-5ss { background: #ffd28a; color: #6a3a04; font-weight: 700; }
.dse-script .ln-ref { display: inline-block; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.72rem; background: #ece9d8; color: #5a5a3a; padding: 0.05rem 0.4rem; border-radius: 8px; margin: 0 0.2rem; vertical-align: middle; letter-spacing: 0.02em; }
.dse-script .spotlight .why ul { margin: 0.3rem 0 0 0; padding-left: 1.2rem; font-size: 0.94rem; color: #444; }
.dse-script .spotlight .why li { margin: 0.3rem 0; }
.dse-script .lined-transcript .section-head { margin: 0.9rem 0 0.4rem 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.06em; color: #5a5a3a; font-weight: 700; }
.dse-script .lined-transcript .heading { font-weight: 700; }
.dse-script .meta .tag.grade-5ss { background: #ffd4d4; color: #8a1414; font-weight: 700; }
.dse-script .cat-pill.appeal { background: #ffd7e1; color: #8a1438; }
.dse-script .meta .tag.grade-5ss { background: #ffd7a0; color: #7a4a08; font-weight: 700; }
.dse-script .writing h3 { margin: 0 0 0.4rem 0; font-family: "Source Serif 4", Georgia, serif; font-size: 1.2rem; text-align: center; }
.dse-script .writing .subhead { text-align: center; font-style: italic; color: #5a5a5a; font-size: 0.95rem; margin: 0 0 0.4rem 0; }
.dse-script .pill { display: inline-block; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.06em; font-family: "Manrope", -apple-system, sans-serif; font-weight: 700; padding: 0.1rem 0.5rem; border-radius: 10px; background: #e8e6da; color: #555; margin: 0 0.15rem; vertical-align: middle; }
.dse-script .line-ref { display: inline-block; font-size: 0.72rem; font-family: "Manrope", -apple-system, sans-serif; font-weight: 600; padding: 0.05rem 0.45rem; border-radius: 9px; background: #e6e3d4; color: #5a4f1e; margin-right: 0.35rem; vertical-align: baseline; }
.dse-script .lined-transcript .subhead-line { font-style: italic; text-align: center; }
.dse-script .lined-transcript .byline-line { font-style: italic; text-align: center; font-size: 0.95rem; color: #5a5a5a; }
.dse-script .lined-transcript .section-head { font-weight: 700; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.06em; color: #2c3e50; margin-top: 0.6rem; }
.dse-script .meta .tag.grade-5s { background: #ffe07a; color: #6b5407; font-weight: 700; }
.dse-script .cat-pill.appeal { background: #f7d4e4; color: #82245a; }
@media (max-width: 720px) {
.dse-script { padding: 0 1rem 2rem 1rem; }
.dse-script h1 { font-size: 1.5rem; }
.dse-script h2 { font-size: 1.2rem; }
.dse-script .pro-rewrite .col-pair { grid-template-columns: 1fr; }
}
.dse-script .spotlight { margin: 1.4rem 0; padding: 0.9rem 1.2rem; border: 1px solid #5d8aa8; background: #eef3f8; border-radius: 6px; }
.dse-script .spotlight .label { font-weight: bold; color: #2c5e80; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.08em; font-family: "Manrope", -apple-system, sans-serif; display: block; margin-bottom: 0.3rem; }
@media print {
.dse-script { margin: 0; max-width: none; padding: 0.4in; font-size: 11pt; }
.dse-script .search-bar, .dse-script .back-link { display: none; }
.dse-script details.page-images { page-break-inside: avoid; }
.dse-script h2 { page-break-after: avoid; }
.dse-script .suggestion, .dse-script .strength, .dse-script tr, .dse-script .pro-rewrite { page-break-inside: avoid; }
}
.dse-script .lined-transcript .title-line { font-weight: 600; font-style: italic; }
.dse-script .lined-transcript .form-field { margin: 0.4rem 0 0.6rem 3rem; font-family: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif; font-size: 0.85rem; color: #4a4a4a; }
.dse-script .lined-transcript .form-field .marginal { color: #888; font-style: italic; margin-left: 0.7rem; font-size: 0.8rem; }
.dse-script .lined-transcript .essay-title { font-style: italic; text-align: center; font-weight: 600; }
.dse-script .meta .tag.grade-5 { background: #d8ecd6; color: #2a6a32; font-weight: 700; }
.dse-script .lined-transcript .section-head { font-weight: 700; font-family: "Manrope", -apple-system, sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.06em; color: #2c3e50; margin: 0.9rem 0 0.4rem 0; border-bottom: 1px dashed #c8c5b8; padding-bottom: 0.2rem; }
.dse-script .cat-pill.line-refs { background: #e6e3d4; color: #5a4f1e; }
.dse-script .lined-transcript .headline-line { font-weight: 700; }
.dse-script .meta .tag.grade-l4 { background: #d4ebf7; color: #1e5a82; font-weight: 700; }
.dse-script .subscore-block { background: #fff8e1; border: 1px solid #f3d97b; padding: 0.8rem 1rem; border-radius: 4px; margin: 0.8rem 0; font-size: 0.92rem; color: #5a4a14; }
.dse-script .subscore-block table { margin: 0.5rem 0 0.4rem 0; font-size: 0.88rem; background: #fffdf3; }
.dse-script .subscore-block th, .dse-script .subscore-block td { padding: 0.35rem 0.55rem; }
.dse-script .meta .tag.grade-5ss { background: #ffd47a; color: #6a3a0a; font-weight: 700; }
.dse-script .meta .tag.grade-5s { background: #ffd47a; color: #6a3a0a; font-weight: 700; }
.dse-script .lined-transcript .title-line { font-style: italic; }
.dse-script .lined-transcript .heading { font-weight: bold; text-decoration: underline; }
.dse-script .lined-transcript .title-line { font-weight: 600; }
.dse-script .lined-transcript .heading { font-weight: bold; text-decoration: underline; margin: 0.4rem 0 0.2rem 0; }
.dse-script .lined-transcript .heading { font-weight: 600; text-decoration: underline; }

/* ---- v2 polish (2026-06-05): drop cap + warmer paper surface on the
   student's writing block. Restrained — only the first paragraph inside
   each `.writing` block gets a drop cap, and only when it has plain text
   (not when it starts with a heading or callout). ---- */
.dse-script .writing { background: #fcfaf2; border-color: #e8e2cf; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.02); }
.dse-script .writing > p:first-of-type::first-letter,
.dse-script .writing > h3 + p::first-letter {
	float: left;
	font-family: "Source Serif 4", Georgia, serif;
	font-size: 3.2rem;
	line-height: 0.95;
	padding: 0.2rem 0.55rem 0 0;
	color: #2563eb;
	font-weight: 700;
}
/* Don't drop-cap inside transcript or other structured blocks. */
.dse-script .lined-transcript p::first-letter,
.dse-script .pro-rewrite p::first-letter,
.dse-script .spotlight p::first-letter,
.dse-script .strength p::first-letter,
.dse-script .suggestion p::first-letter,
.dse-script .grammar-note p::first-letter,
.dse-script .rewrite-callout p::first-letter,
.dse-script .perfect-banner p::first-letter,
.dse-script .preprinted p::first-letter,
.dse-script .gap-banner p::first-letter,
.dse-script .top-banner p::first-letter {
	float: none; font-size: inherit; line-height: inherit;
	padding: 0; color: inherit; font-weight: inherit;
}
