/* V1.2 / Story-first lessons. Real layout, original SVG artwork, touch targets. */
.lesson-page .lesson-workspace{display:flex;flex-direction:column;max-width:1080px;margin:0 auto;gap:18px}
.lesson-page .lesson-story-col,.lesson-page .lesson-question-col{width:100%;min-width:0}
.lesson-page .lesson-question-col{position:static}
.lesson-page .story-panel>p{max-width:80ch;font-size:clamp(15px,1.5vw,19px);line-height:1.88;color:#e2ede4}
.lesson-page .lesson-question-col>h2{font-size:clamp(23px,3vw,36px)}
.lesson-page .lesson-meaning{display:none}
.speech-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 17px}
.speak-btn{touch-action:manipulation;display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:11px 16px;border:1px solid #448e5d;border-radius:7px;background:#123021;color:#7aff9f;font:800 12px var(--mono);letter-spacing:.7px;cursor:pointer;transition:background .12s,border-color .12s}
.speak-btn:hover,.speak-btn:focus-visible{background:#1b4830;border-color:#75ffa1}
.speak-btn[aria-pressed="true"]{background:#4a1d20;border-color:#ff7277;color:#ffb9bc}
.speak-btn:disabled{opacity:.5;cursor:not-allowed}
.speech-note{color:#a9c5b1;font-size:12px;line-height:1.6}
.tupac-page{padding-bottom:46px}
.tupac-layout{max-width:1060px;margin:0 auto}
.tupac-hero .course-header-image{height:clamp(205px,27vw,325px);border-radius:12px;overflow:hidden}
.tupac-hero .course-header-text h1{font-size:clamp(31px,5vw,56px)}
.tupac-progress{padding:17px 3px 5px}
.tupac-progress-label{display:flex;justify-content:space-between;gap:14px;align-items:center;color:#a8c9ad;font:800 11px var(--mono);letter-spacing:1px}
.tupac-progress-label strong{color:var(--green)}
.tupac-progress .bar{margin:10px 0 5px}
.tupac-chapter{padding:clamp(19px,4vw,38px);background:linear-gradient(135deg,#0f1b19 0%,#0c1415 100%);border:1px solid #335542;border-radius:13px}
.chapter-ribbon{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.chapter-ribbon .eyebrow{color:#72f397;letter-spacing:2px}
.chapter-pill{border:1px solid #3d6b4b;color:#a4e2b1;padding:6px 10px;border-radius:30px;font:800 10px var(--mono);letter-spacing:.8px}
.tupac-chapter h1{font:900 clamp(27px,4vw,47px)/1.09 var(--mono);margin:20px 0 11px;letter-spacing:-.4px;text-transform:uppercase;max-width:800px}
.chapter-intro{color:#91b19e;font-size:13px;margin:0 0 23px}
.chapter-story{color:#e1eee5;font-size:clamp(16px,1.65vw,20px);line-height:1.85;max-width:74ch;white-space:normal;letter-spacing:.05px}
.chapter-story:first-letter{font-size:1.4em;color:#83ff9e;font-weight:800}
.tupac-chapter .speech-controls{margin:25px 0 22px}
.tupac-chapter .story-audio{min-height:54px;padding:13px 19px}
.chapter-sources{display:flex;flex-wrap:wrap;align-items:center;gap:9px 15px;padding-top:16px;border-top:1px solid #2a4434}
.chapter-sources>span{font:800 10px var(--mono);letter-spacing:1.2px;color:#83a791}
.chapter-sources a{color:#8cecad;font-size:12px;text-decoration:underline;text-decoration-color:#396a48;text-underline-offset:3px}
.tupac-checkpoints{padding:22px 0 4px}
.chapter-check-header{margin:0 0 18px}
.chapter-check-header .eyebrow{color:#77f498}
.chapter-check-header h2{font:900 clamp(25px,3vw,35px) var(--mono);margin:9px 0 4px}
.chapter-check-header p{margin:0;color:#acbfaf;font-size:13px}
.chapter-question{margin:15px 0;padding:clamp(16px,3vw,29px);border:1px solid #34473e;border-radius:11px;background:#111c1a}
.chapter-question h3{font:850 clamp(22px,3vw,30px)/1.33 var(--mono);margin:14px 0 16px;letter-spacing:-.2px}
.chapter-question .full-answers{max-width:810px}
.chapter-question .full-answers button[data-answer]{min-height:64px;font-size:15px}
.chapter-question .full-answers button b{font-size:clamp(14px,1.5vw,17px);text-align:left}
.chapter-question .quiz-feedback{max-width:810px}
.chapter-question .quiz-next{margin-top:15px;min-height:57px;max-width:810px}
.chapter-check-done{display:flex;gap:13px;align-items:center;padding:17px;border:1px solid #306543;border-radius:9px;background:#102b1b;margin:14px 0}
.chapter-check-mark{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:50%;background:#43ed79;color:#001b09;font-size:25px;font-weight:900}
.chapter-check-done small{display:block;font:700 11px var(--mono);color:#8affaa;margin-bottom:4px}
.chapter-check-done strong{font-size:15px;font-weight:700}
.chapter-parent-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}
.chapter-parent-nav a{display:grid;place-items:center;min-width:45px;min-height:45px;border:1px solid #3b6048;border-radius:7px;color:#afffc4;font-weight:800}
.chapter-parent-nav a.active{background:#45e979;color:#07170a}
.checkpoint-resume{color:#77e6a0;margin:15px 0}
.tupac-closing{margin:22px 2px;padding-top:16px;border-top:1px solid #284032;font:800 11px var(--mono);letter-spacing:1.5px;color:#9eb7a6;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
.tupac-closing span{color:#55e981}
.chapter-question[hidden],.quiz-next[hidden]{display:none!important}
@media(max-width:760px){
 .lesson-page .lesson-workspace{gap:11px}.tupac-page{padding:11px 12px 99px}
 .tupac-hero .course-header-image{height:190px}.tupac-hero .course-header-text h1{font-size:30px}
 .tupac-progress{padding:12px 1px 1px}.tupac-chapter{padding:19px 16px}.tupac-chapter h1{margin:17px 0 11px;font-size:29px}
 .chapter-story{font-size:17px;line-height:1.85}.chapter-intro{font-size:12px}
 .speech-controls{flex-direction:column;align-items:stretch;gap:6px;margin:17px 0}
 .speak-btn{width:100%;min-height:56px;font-size:12px}
 .chapter-sources{gap:10px}.chapter-sources a{font-size:11px}
 .tupac-checkpoints{padding-top:18px}.chapter-check-header h2{font-size:29px}
 .chapter-question{padding:17px 13px;margin:12px 0;border-radius:10px}
 .chapter-question h3{font-size:24px;line-height:1.32}
 .chapter-question .full-answers button[data-answer]{min-height:66px;padding:12px 10px}
 .chapter-question .full-answers button b{font-size:15px;line-height:1.5}
 .chapter-question .quiz-next{min-height:60px;width:100%}
 .tupac-closing{font-size:9px;line-height:1.7}
 .lesson-page .story-panel>p{font-size:16px;line-height:1.8}
}

.tupac-content-note{display:flex;gap:8px 17px;flex-wrap:wrap;align-items:center;margin:12px 0 16px;padding:13px 16px;border:1px solid #655032;background:#241b12;border-radius:8px;color:#e9c99e;font-size:12px;line-height:1.6}
.tupac-content-note strong{font:900 10px var(--mono);letter-spacing:1.2px;color:#f7c680}.tupac-content-note span{flex:1;min-width:200px}

/* V1.3: real MP3 audio + inline, accessible karaoke highlighting. */
.read-word {border-radius:3px;transition:background-color .075s linear,color .075s linear;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.read-word.is-read-current {background:#adff74;color:#071609;box-shadow:0 0 0 2px #adff7460;font-weight:800;}
.read-word.is-read-past {color:#8cefb0;}
.answer-options [data-answer].is-reading-option {border-color:#6af49a!important;box-shadow:inset 0 0 0 1px #71f5a1,0 0 18px #1c863a20;}
.speak-btn[aria-pressed="true"]{background:#4a1d20;border-color:#ff7277;color:#ffb9bc;}
.speech-note{min-height:17px;}
.speak-audio-retry {display:inline-block;color:#a7eab5;font-size:12px;}
@media (prefers-reduced-motion: reduce){.read-word {transition:none;}}

/* VIKINGS / M002 — black iron + earth + ember treatment on the shared read-along engine. */
.vikings-page .tupac-chapter{background:linear-gradient(135deg,#1a1712 0%,#0e1110 100%);border-color:#654a2c}
.vikings-page .chapter-ribbon .eyebrow,.vikings-page .chapter-check-header .eyebrow{color:#e8b76b}
.vikings-page .chapter-pill{border-color:#70542f;color:#e8c78f}
.vikings-page .chapter-story:first-letter{color:#df9c4f}
.vikings-page .chapter-sources{border-top-color:#4b3824}
.vikings-page .chapter-sources a{color:#dfb478;text-decoration-color:#6b4d2d}
.vikings-page .tupac-progress-label{color:#c7b9a2}
.vikings-page .tupac-progress-label strong{color:#e1ad62}
.vikings-page .tupac-closing{border-top-color:#4c3825;color:#bba98e}
.vikings-page .tupac-closing span{color:#dfa351}
