*{box-sizing:border-box}body{margin:0;background:#f6f2e9;color:#19313b;font:18px/1.65 system-ui,sans-serif}a{color:#165b68}header,footer{padding:22px max(24px,calc((100vw - 1200px)/2));background:#102b37;color:#fff;display:flex;justify-content:space-between;gap:20px}header a{color:#fff;text-decoration:none;font-weight:700}header span{font-size:11px;letter-spacing:3px;display:block}main{max-width:1200px;margin:auto;padding:42px 24px}h1{font:500 clamp(32px,5vw,58px)/1.08 Georgia,serif;max-width:850px}h2{line-height:1.2}p{max-width:76ch}.eyebrow{color:#775326;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:2px}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:center}.cover{width:100%;max-height:580px;object-fit:contain}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.panel{padding:24px;border:1px solid #d5d4c9;border-radius:14px;background:#fff}.card h3{line-height:1.3}.card a{text-decoration:none}.small{font-size:14px}.lesson-layout{display:grid;grid-template-columns:240px 1fr;gap:35px}aside a{display:block;padding:9px 12px;font-size:14px;text-decoration:none;border-radius:7px}aside a[aria-current]{background:#193d49;color:white}section{margin:28px 0}button,.button{display:inline-block;background:#184e5b;color:#fff;border:0;border-radius:7px;padding:12px 18px;font:inherit;cursor:pointer;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #d49331;outline-offset:3px}button.secondary{background:#e9eee9;color:#163f49}audio{width:100%;margin:16px 0}textarea{width:100%;min-height:130px;padding:15px;font:inherit;border:1px solid #a7b4b7;border-radius:7px}figure{margin:25px 0}figure img{width:100%}figcaption{font-size:14px}label.option{display:block;padding:10px;background:#f4f5f0;margin:8px 0;border-radius:7px}nav.actions{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0}progress{width:100%;height:15px;accent-color:#1c6973}.notice{border-left:4px solid #ce9c50;padding:14px 20px;background:#eee8d9}iframe{width:100%;height:650px;border:1px solid #ccc}@media(max-width:800px){.hero,.lesson-layout{grid-template-columns:1fr}.hero .cover{max-height:420px}.grid{grid-template-columns:1fr 1fr}aside{max-height:210px;overflow:auto}.lesson-layout{gap:15px}header{font-size:14px}}@media(max-width:500px){.grid{grid-template-columns:1fr}main{padding:25px 18px}.panel{padding:18px}}
.reader{margin:18px 0;border:1px solid #ced7d7;background:white;border-radius:12px;padding:12px}.reader-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px}.reader-tools select{font:inherit;padding:8px;border:1px solid #9dafb5}.reader-tools button:disabled{opacity:.4;cursor:default}.reading-page{display:block;width:100%;height:auto}.reading-text pre{font:16px/1.6 system-ui;white-space:pre-wrap;overflow-wrap:anywhere}.reading-text{padding:15px}summary{cursor:pointer;padding:12px 0;font-weight:600}

.reading-prose{font:19px/1.8 Georgia,serif;padding:8px 20px;max-width:76ch;margin:auto}.reading-prose p{margin:1em 0}.reader-tools{position:sticky;top:0;background:#fff;z-index:1;border-bottom:1px solid #dee3df}@media(max-width:500px){.reading-prose{padding:8px;font-size:18px}}

.listening-bar{position:sticky;top:0;z-index:3;background:#112c38;color:#fff;padding:12px 18px;border-radius:10px;box-shadow:0 3px 12px #0002}.listening-bar strong{font-size:14px}.listening-bar audio{display:block;height:40px;margin:8px 0 0}.reader-tools{position:static}.technical-notes{background:#f1f5ee;border-left:4px solid #478278;padding:12px 20px;font:16px/1.6 system-ui}.technical-notes h3{margin:5px 0}

/* Account-linked learning and integrated exercise reader */
.account-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:16px;border:1px solid #baccc9;border-radius:12px;background:#e8efeb;margin-bottom:26px;font-size:14px}.account-strip #save-status{flex:1 1 250px}.account-strip .error{color:#942d20}.account-strip button{padding:7px 10px}.reading-paragraph{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin:18px 0}.reading-paragraph p{margin:0}.cue-button{font-size:13px;padding:7px 10px;background:#e0ede8;color:#174e5a;text-align:left;line-height:1.4}.cue-index ol{padding-left:24px;max-height:380px;overflow:auto}.cue-index li{margin:9px 0}.cue-index button{width:100%}.technical-notes{border-left:4px solid #bf8b3c;background:#faf5e9;padding:12px 20px;margin:24px 0}.technical-notes h3{margin-top:0}.teaching-visual{margin:30px 0}.teaching-visual img{width:100%;height:auto;display:block;border:1px solid #d8ddd6;border-radius:8px}.teaching-visual figcaption{font-size:14px;color:#4d6570;margin-top:9px}.exercise-form{background:#eef3ee;border:1px solid #c5d3c9;padding:22px;border-radius:10px}.exercise-answer{display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:10px;align-items:center;margin:12px 0}.exercise-answer input{width:100%;min-width:0;padding:10px;font:inherit;border:1px solid #79928f;border-radius:5px;background:white}dt{font-weight:700;margin-top:15px}dd{margin:3px 0 18px}article,section,.reader,.reading-prose{min-width:0}.reader-tools{display:flex;align-items:center;justify-content:space-between;gap:8px}.reader-tools select{padding:8px;font:inherit}.listening-bar{position:sticky;top:0;background:#e5eee9;padding:15px;z-index:2;border:1px solid #b8cdc6;border-radius:10px}.listening-bar audio{width:100%;display:block;margin-top:8px}.listening-bar p{margin:4px 0}button[hidden]{display:none}button:disabled{opacity:.45;cursor:default}summary{cursor:pointer}fieldset{border:0;padding:0}input:focus-visible,select:focus-visible{outline:3px solid #bd882f;outline-offset:2px}@media(max-width:600px){.reading-paragraph{grid-template-columns:1fr}.reading-paragraph .cue-button{justify-self:start}.exercise-answer{grid-template-columns:1fr}.account-strip{align-items:flex-start}.teaching-visual{margin-inline:-8px}.reader-tools{font-size:14px}.listening-bar{padding:9px}main{padding:24px 14px}.panel,.exercise-form{padding:16px}}
.listening-bar{color:#19313b}.visual-enlarge{display:inline-block;font:14px/1.5 system-ui,sans-serif;margin-top:8px}.reading-prose .subtitle{font:italic 18px/1.4 Georgia,serif;color:#65706a}
