:root{--bg:#f5f3ec;--paper:#fffef9;--ink:#263b36;--muted:#727d73;--line:#e3e4d9;--green:#245e50;--green-soft:#e9eee4;--accent:#b98153;--sidebar:#183d3c;--shadow:0 12px 40px #203f3210;--reader-size:22px;--reader-leading:1.95;color-scheme:light;font-family:"Geeza Pro","Tahoma",system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.7}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}a{color:var(--green)}button:disabled{opacity:.55;cursor:wait}button,select,input{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #bd8b50;outline-offset:4px}button svg{flex:none}svg{width:22px;height:22px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.5}h1{font-size:30px;letter-spacing:-.7px}h2{font-size:22px}h3{font-size:19px}small{font-size:12px}button{border:0}input,select,textarea{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:9px;padding:11px 12px;max-width:100%}textarea{resize:vertical}input[type=range]{padding:0;accent-color:var(--green)}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px}select{cursor:pointer}blockquote{margin:15px 0;color:var(--muted);padding:4px 18px;border-inline-start:1px solid var(--line)}.loading{padding:80px;text-align:center}.skip{position:fixed;top:-70px;left:15px;z-index:200;background:var(--paper);padding:12px}.skip:focus{top:10px}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:252px;background:var(--sidebar);color:#d1ded2;display:flex;flex-direction:column;padding:36px 22px;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 4px 40px}.brand strong{font-family:Georgia,serif;font-size:21px;font-weight:400;display:block;color:#f4ead1;white-space:nowrap}.brand small{font-size:10px;display:block;margin-top:3px;color:#abc0b0}.nav-label{font-size:10px;letter-spacing:.5px;color:#93b1a5;padding:0 14px 13px}.sidebar nav{display:grid;gap:9px}.nav-item{display:flex;align-items:center;gap:15px;width:100%;background:transparent;color:#bed0c4;padding:13px 15px;text-align:start;border-radius:10px;font-size:14px;transition:background .16s}.nav-item:hover{background:#ffffff0c}.nav-item.selected{background:#e8dcc422;color:#f4e9cf}.nav-item.selected:after{content:"";width:5px;height:5px;background:#e4c98e;border-radius:50%;margin-inline-start:auto}.nav-item svg{width:21px;height:21px}.side-note{margin:70px 10px 25px;padding:23px 0 0;border-top:1px solid #ffffff1a;font-size:12px;line-height:2;color:#a8c0b1}.side-note>svg{display:block;color:#c5c697;width:29px;height:29px;margin-bottom:13px}.side-note strong{color:#d9dcc2;font-size:14px;font-weight:400}.side-note p{margin-top:9px;font-size:11px;line-height:2.2}.side-bottom{margin-top:auto;display:flex;align-items:center;gap:9px;font-size:10px;padding:0 12px;color:#a6bead}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#81a683;flex:none}.workspace{margin-inline-start:252px;min-height:100vh}.topbar{height:91px;display:flex;align-items:center;justify-content:space-between;padding:0 44px;border-bottom:1px solid var(--line)}.eyebrow{font-family:system-ui,sans-serif;letter-spacing:2px;font-size:10px;line-height:1.8;color:var(--muted);font-weight:500}.topbar>.eyebrow{letter-spacing:1px;font-size:10px}.top-divider{margin:0 15px;color:#bdc3b5}.top-actions{display:flex;align-items:center;gap:24px}.local-state{display:flex;gap:8px;align-items:center;font-size:10px;color:var(--muted)}.icon-button{background:transparent;width:37px;height:37px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;color:var(--muted)}.icon-button:hover,.icon-button.active{background:var(--green-soft);color:var(--green);border-color:var(--line)}.icon-button.active svg{fill:var(--green-soft)}main{max-width:1280px;margin:auto;padding:34px 44px 50px;outline:none}.page-heading{margin-bottom:28px;display:flex;justify-content:space-between;align-items:center}.page-heading p{color:var(--muted);font-size:13px;margin-top:7px}.hero{background:#204b43;min-height:326px;border-radius:18px;display:grid;grid-template-columns:1fr .95fr;overflow:hidden;box-shadow:var(--shadow);position:relative;color:#f7ecd8}.hero-copy{padding:34px 33px;z-index:1}.hero-eyebrow{color:#b5c6aa;font-size:9px;letter-spacing:2.5px}.hero-label{font-size:11px;display:flex;align-items:center;gap:10px;margin:10px 0 10px;color:#bdcdb3}.hero-line{width:25px;height:1px;background:#bdcdb3}.hero h2{font-family:"Geeza Pro",Georgia,serif;font-size:32px;font-weight:400;margin:7px 0 2px;color:#faf0d7}.series-en{text-align:start;font-family:Georgia,serif;font-size:14px;font-style:italic;color:#d0d5b9;margin:0 0 16px;unicode-bidi:plaintext}.hero-description{font-size:12px;line-height:2.15;max-width:325px;color:#d1dcc9}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:23px}.hero-level{font-size:10px;direction:ltr;color:#d4ddc3;letter-spacing:1px}.hero-level small{display:block;font-size:8px;letter-spacing:0;margin-top:1px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;padding:20px 0 20px 22px;min-width:0}.hero-art img{height:100%;width:100%;max-height:320px;object-fit:cover;object-position:40%;border-radius:12px;filter:saturate(.85)}[dir=ltr] .hero-art{padding:20px 22px 20px 0}.art-caption{position:absolute;bottom:30px;left:42px;direction:ltr;font-family:system-ui,sans-serif;font-size:8px;letter-spacing:2px;color:#ebddb7}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:8px;padding:11px 18px;font-size:12px;line-height:1.6;min-height:43px;transition:transform .15s,background .15s;font-weight:500}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--green);color:#fffef1}.button.primary:hover{background:#347560}.button.cream{background:#f1dfb4;color:#2c4b3c;box-shadow:0 3px 15px #0001}.button.outline{border-color:var(--line);background:transparent}.button.outline:hover{background:var(--green-soft)}.button.subtle{background:var(--green-soft);font-size:11px;padding:8px 12px}.button.night{background:#344a61;color:#f5f3e8}.button svg{width:18px;height:18px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:transparent;color:var(--green);font-size:12px;padding:8px 0;min-height:36px}.text-button svg{width:16px;height:16px}[dir=ltr] .button svg[viewBox], [dir=ltr] .text-button svg{transform:none}.section-title{display:flex;align-items:end;justify-content:space-between;margin:34px 0 18px}.section-title h2{font-size:21px;margin-top:3px}.section-title .eyebrow{font-size:8px;letter-spacing:2px}.read-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chapter-card{padding:23px;border:1px solid var(--line);border-radius:13px;background:var(--paper);position:relative;overflow:hidden;box-shadow:0 3px 15px #203f3203}.chapter-card:before{content:"";height:3px;width:35px;background:#b88e65;position:absolute;top:0;inset-inline-start:25px;border-radius:3px}.evening-card:before{background:#7b8b9d}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.session-label{display:flex;align-items:center;gap:10px}.session-label strong{display:block;font-size:12px;font-weight:500}.session-label small{display:block;color:var(--muted);font-size:10px;text-align:start}.session-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#f8ecd9;color:#ab7f4f}.evening-card .session-icon{background:#e8ecf0;color:#697d91}.badge{display:inline-flex;align-items:center;justify-content:center;font-size:9px;border-radius:5px;background:var(--green-soft);color:#59735c;padding:3px 7px;white-space:nowrap}.badge.started{background:#f3ead3;color:#93713e}.badge.level{font-family:system-ui,sans-serif;background:#edf0e4;color:#56705b;font-size:9px;font-weight:600;letter-spacing:.5px;padding:3px 8px}.badge.done{color:#296147}.chapter-number{font-size:9px;color:var(--muted);margin-top:22px;letter-spacing:1px}.chapter-card h3{font-family:Georgia,serif;font-weight:400;font-size:26px;text-align:start;unicode-bidi:plaintext;letter-spacing:-.5px;margin:3px 0 10px}.card-meta{display:flex;gap:13px;align-items:center;font-size:9px;color:var(--muted)}.card-meta>span+span:before{content:"·";margin-inline-end:10px;color:#a8b09f}.card-meta .level:before{content:none}.opening{margin-top:18px;font-family:Georgia,serif;font-size:14px;line-height:1.75;color:var(--muted);min-height:51px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.card-bottom .button{font-size:11px;min-width:145px;padding:10px 16px}.chapter-progress{font-family:system-ui,sans-serif;direction:ltr;letter-spacing:2px;font-size:8px;color:var(--muted)}.stats{display:flex;border-bottom:1px solid var(--line);padding:27px 0;gap:20px}.stat{display:flex;align-items:center;gap:11px;flex:1}.stat+.stat{border-inline-start:1px solid var(--line);padding-inline-start:22px}.stat-icon{color:#8d9c7f;display:flex}.stat-icon svg{width:19px;height:19px}.stat strong{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1}.stat>span:last-child{font-size:10px;color:var(--muted)}.plan-strip{display:flex;align-items:center;gap:17px;padding:24px 0}.plan-strip>svg{color:#8b9a7e}.plan-strip strong{font-size:11px;font-weight:500}.plan-strip p{font-size:9px;color:var(--muted)}.plan-track{height:4px;border-radius:4px;background:var(--line);flex:1;margin:0 15px;min-width:45px;overflow:hidden}.plan-track span{height:100%;display:block;background:#859977}.plan-strip>span{font-family:system-ui,sans-serif;font-size:9px}.footer{font-size:10px;letter-spacing:.2px;text-align:center;color:var(--muted);padding:0 24px 26px}.muted{color:var(--muted);font-size:12px}.notice{background:var(--green-soft);padding:15px;border-radius:10px;font-size:13px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:26px;box-shadow:0 3px 15px #203f3203}.library-intro{display:flex;gap:25px;align-items:center;padding:22px 26px;background:var(--green-soft);border-radius:13px;margin-bottom:25px}.library-intro img{height:100px;object-fit:cover;border-radius:8px}.library-intro h2{margin-top:3px}.library-intro p{font-size:12px;color:var(--muted);margin-top:5px}.chapter-list{display:grid;gap:12px}.chapter-row{display:flex;align-items:center;gap:20px;width:100%;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:11px;text-align:start}.chapter-row:hover{border-color:#879d7d}.row-number{font:24px Georgia,serif;color:#96a18d}.row-chapter{flex:1}.row-chapter strong{display:block;font:22px Georgia,serif;unicode-bidi:plaintext;text-align:start}.row-chapter small{color:var(--muted);font-size:10px;margin-top:5px;display:block}.chapter-row>svg{width:18px;color:var(--muted)}.empty-next{border:1px dashed #aab5a0;border-radius:13px;padding:28px;text-align:center;margin-top:22px}.empty-next>svg{color:#889679}.empty-next h3{font-size:16px;margin:8px 0}.empty-next p{font-size:12px;color:var(--muted);margin-bottom:18px}.recap{margin-top:24px}.recap p{margin-top:14px;font-family:Georgia,serif}.recap summary,details>summary{cursor:pointer;font-weight:500;font-size:15px}.reader-page{max-width:1080px;padding-top:22px}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 0}.reader-controls{display:flex;align-items:center;gap:13px}.font-control{display:flex;align-items:center;gap:10px;font-family:Georgia,serif}.font-control input{width:75px}.reader-controls select{font-size:11px;padding:6px}.reader-title{text-align:center;margin:48px auto 22px}.reader-title>.eyebrow{font-size:9px;letter-spacing:3px}.reader-title h1{font:46px/1.3 Georgia,serif;letter-spacing:-1px;margin:10px 0 17px}.reader-chapter-label{font-size:11px;color:var(--muted);margin-top:17px}.reader-meta{display:flex;gap:13px;align-items:center;justify-content:center;font-size:10px;color:var(--muted)}.reader-hint{display:flex;gap:10px;align-items:center;justify-content:center;color:var(--muted);font-size:10px;line-height:1.9;max-width:650px;margin:0 auto 33px;padding:12px;border-block:1px solid var(--line)}.reader-hint svg{width:15px;flex:none}#story{max-width:650px;margin:0 auto;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:var(--reader-size);line-height:var(--reader-leading);text-align:left;outline-offset:14px}#story>p{margin:0 0 1.1em;white-space:pre-wrap}.word{border-radius:3px;cursor:pointer;transition:background .1s}.word:hover{background:var(--green-soft)}.word:focus-visible,.word.selected-word{background:#dbc69870;outline:1px solid #b0915b;outline-offset:3px}.reader-end{text-align:center;margin:40px auto 26px;max-width:650px;padding-top:25px;border-top:1px solid var(--line)}.end-ornament{font-size:25px;color:#a58c65}.reader-end p{font-size:12px;color:var(--muted);margin:10px 0 22px}.feedback{max-width:650px;margin:30px auto}.feedback h2{font-size:18px}.feedback>p{margin:6px 0 17px}.feedback-row{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:12px}.feedback-row>span{min-width:80px}.chip,.rating{border:1px solid var(--line);background:transparent;border-radius:7px;padding:7px 16px;font-size:11px;min-height:35px}.rating{width:36px;height:36px;padding:0;direction:ltr;font-family:system-ui,sans-serif}.chip.chosen,.rating.chosen{background:var(--green);color:#fff;border-color:var(--green)}.next-button{margin:0 auto;display:flex;width:fit-content}.version-select{display:flex;align-items:center;gap:10px;justify-content:center;margin:20px 0;font-size:12px}.version-select select{padding:7px}.focus-mode .sidebar,.focus-mode .topbar,.focus-mode .footer{display:none}.focus-mode .workspace{margin:0}.focus-mode .reader-page{max-width:900px}.focus-mode .reader-hint{display:none}.definition-card{position:fixed;width:370px;z-index:100;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:21px;box-shadow:0 14px 60px #122f3830;max-height:calc(100dvh - 32px);overflow:auto;color:var(--ink);font-family:system-ui,sans-serif;line-height:1.5;text-align:left}.definition-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.definition-head h2{font:29px Georgia,serif;overflow-wrap:anywhere}.close-definition{width:30px;height:30px}.close-definition svg{width:16px}.definition-base{font-size:11px;color:var(--muted);margin:3px 0 13px}.meaning{font-size:17px;line-height:1.6;margin:12px 0 20px;color:var(--ink)}.definition-card h3{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:15px 0 5px}.definition-context{font:italic 13px/1.7 Georgia,serif;color:var(--muted);border-left:1px solid var(--line);padding-left:11px}.definition-example{font-size:13px;line-height:1.6}.source{display:block;font-size:9px;color:var(--muted);margin:15px 0}.definition-card>.button{width:100%;margin-top:9px}.definition-card>.text-button{font-size:11px}.definition-card>p:not(.meaning){font-size:13px;margin-top:15px}.manual-definition{display:grid;gap:12px;margin-top:15px}.manual-definition label{font-size:11px;display:grid;gap:4px}.manual-definition input,.manual-definition textarea{width:100%;font-size:13px}.word-tools{display:flex;gap:15px;justify-content:space-between;margin-bottom:20px}.word-tools>input{flex:1;max-width:500px;font-size:13px}.filters{display:flex;gap:10px;margin-bottom:25px}#word-list{display:grid;gap:15px}.word-card h2{font:27px Georgia,serif;unicode-bidi:plaintext;text-align:start}.word-card-top{display:flex;align-items:center;justify-content:space-between}.word-meaning{font:17px/1.6 Georgia,serif;margin-top:12px}.word-card blockquote{font:italic 16px/1.7 Georgia,serif;margin-top:18px}.word-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:15px;margin-top:18px}.word-card-bottom small{font-size:10px;color:var(--muted)}.empty-state{text-align:center;padding:70px 25px}.empty-state>svg{width:40px;height:40px;color:#879f7c;margin:15px}.empty-state h2{font-size:23px}.empty-state p{font-size:13px;max-width:420px;margin:15px auto 25px;color:var(--muted)}.review-panel{max-width:680px;text-align:center;margin:40px auto;padding:50px}.review-panel h1{font:42px Georgia,serif;margin-top:25px}.review-panel blockquote{font:22px/1.8 Georgia,serif;text-align:left;margin:25px 0 35px}.review-panel .button-row{justify-content:center}.settings-panel{margin:0 0 22px}.settings-panel>p{font-size:12px;color:var(--muted);margin:10px 0 18px;max-width:800px;line-height:2}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:22px 0}.field{display:grid;gap:7px;font-size:12px}.field>input,.field>select{width:100%;font-size:13px}.field input[type=date],.field input[type=time]{direction:ltr;text-align:start}.checkbox-field{display:flex;align-items:center;gap:10px;font-size:12px;margin:14px 0}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.data-path{display:block;border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:12px;margin-top:17px;font-size:11px;overflow-wrap:anywhere;text-align:left}.editorial-area,.prompt-area{width:100%;min-height:420px;font-family:ui-monospace,monospace;font-size:12px;margin:15px 0}.modal-backdrop{position:fixed;inset:0;background:#102d2b77;z-index:120;display:flex;align-items:center;justify-content:center;padding:20px}.modal{max-width:750px;width:100%;max-height:90dvh;overflow:auto}.modal>p{font-size:14px}#toast{position:fixed;inset-inline:24px;bottom:26px;max-width:650px;width:fit-content;margin:auto;background:var(--ink);color:var(--paper);font-size:12px;padding:12px 20px;border-radius:10px;box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:200;transition:opacity .2s;overflow-wrap:anywhere}#toast.show{opacity:1}[data-theme=dark]{--bg:#182322;--paper:#202e2b;--ink:#e1e6d5;--muted:#a2afa4;--line:#394a42;--green:#7da58b;--green-soft:#2e4337;--accent:#c09d71;--sidebar:#112d2b;--shadow:0 12px 40px #0002;color-scheme:dark}[data-theme=dark] .button.primary{background:#9bbd9d;color:#152d25}[data-theme=dark] .button.primary:hover{background:#b4cfae}[data-theme=dark] .button.cream{color:#243d30}[data-theme=dark] .button.night{background:#6e8398;color:#101d2a}[data-theme=dark] .session-icon{background:#423e2e;color:#d2b57e}[data-theme=dark] .evening-card .session-icon{background:#303e4c;color:#adbed0}[data-theme=dark] .badge.level{background:#354638;color:#c0d2af}[data-theme=dark] .badge{color:#bacfb2}[data-theme=dark] .hero{background:#244b43}[data-theme=dark] .hero-art img{filter:saturate(.7) brightness(.8)}[data-theme=dark] .badge.started{background:#443b2c;color:#e1c28e}[data-theme=dark] .definition-card{box-shadow:0 14px 60px #0006}@media(min-width:1500px){main{padding:40px 60px}.topbar{padding:0 60px}.hero{min-height:365px}.hero-copy{padding:40px}.hero h2{font-size:38px}.hero-description{font-size:14px}.hero-art img{max-height:340px}.chapter-card{padding:28px}.opening{font-size:16px}}@media(max-width:1150px){.sidebar{width:215px;padding:30px 17px}.workspace{margin-inline-start:215px}.brand{gap:8px}.brand strong{font-size:19px}.brand img{width:39px;height:39px}.topbar{padding:0 28px;height:80px}main{padding:28px}.hero-copy{padding:28px 24px}.hero h2{font-size:27px}.hero-description{font-size:11px}.hero-level{display:none}.chapter-card{padding:18px}.card-top>.badge{font-size:8px}.card-meta{gap:8px}.stats{gap:10px}.stat{gap:8px}.stat+.stat{padding-inline-start:14px}.plan-strip{gap:10px}.plan-track{margin:0 8px}.plan-strip>span{font-size:8px}.reader-toolbar{flex-wrap:wrap}.reader-controls{gap:9px}.reader-controls .button{font-size:10px}.font-control input{width:64px}}@media(max-width:900px){.sidebar{width:80px;padding:27px 13px}.brand{padding:0 6px 35px}.brand>div,.nav-label,.side-note,.side-bottom{display:none}.sidebar nav{gap:15px}.nav-item{font-size:0;gap:0;justify-content:center;padding:14px 10px}.nav-item.selected:after{display:none}.nav-item svg{width:23px;height:23px}.workspace{margin-inline-start:80px}.hero-art{padding-inline-end:16px}.hero{grid-template-columns:1fr .85fr}.hero-copy{padding:25px}.hero h2{font-size:26px}.hero .eyebrow{font-size:8px}.page-heading h1{font-size:27px}.opening{font-size:13px}.card-top{align-items:start}.card-top>.badge{margin-top:8px}.session-label{gap:7px}.session-label strong{font-size:11px}.session-icon{width:29px;height:29px}.session-icon svg{width:19px}.plan-strip>span{display:none}#story{font-size:var(--reader-size)}.reader-title h1{font-size:40px}}
@media(max-width:680px){body{font-size:14px}.sidebar{inset-block:auto 0;inset-inline:0;width:100%;height:75px;padding:7px 8px 12px;border-top:1px solid #ffffff13}.brand{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px}.nav-item{font-size:9px;display:flex;flex-direction:column;gap:4px;padding:8px 5px;line-height:1.3;border-radius:9px}.nav-item svg{width:19px;height:19px}.workspace{margin-inline-start:0;padding-bottom:75px}.topbar{height:65px;padding:0 20px}.topbar>.eyebrow{font-size:8px;letter-spacing:.7px}.top-divider{margin:0 7px}.top-actions{gap:10px}.local-state{font-size:0;gap:0}.local-state .status-dot{width:5px;height:5px}.topbar .icon-button{width:32px;height:32px}.topbar svg{width:18px}main{padding:25px 20px 35px}.page-heading{margin-bottom:21px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px;margin-top:5px}.hero{grid-template-columns:1fr;border-radius:13px;min-height:0}.hero-copy{padding:26px}.hero h2{font-size:31px}.hero-description{font-size:12px;max-width:300px;line-height:2}.hero-label{margin-top:8px}.hero .series-en{font-size:13px}.hero-actions{margin-top:21px}.hero-level{display:block}.hero-art{height:175px;padding:0 17px 17px}.hero-art img{object-position:50% 65%;border-radius:8px;width:100%;height:100%}.art-caption{bottom:27px;left:33px;font-size:7px}.section-title{margin-top:27px}.section-title h2{font-size:18px}.section-title .eyebrow{font-size:7px}.section-title .text-button{font-size:10px;gap:5px}.read-grid{grid-template-columns:1fr;gap:15px}.chapter-card{padding:22px}.session-label strong{font-size:12px}.session-icon{width:34px;height:34px}.card-top>.badge{font-size:9px}.chapter-number{margin-top:20px}.chapter-card h3{font-size:28px}.opening{font-size:15px;min-height:0}.card-meta{gap:13px;font-size:10px}.stats{gap:8px;padding:25px 0}.stat{flex-direction:column;gap:8px}.stat+.stat{padding-inline-start:6px}.stat-icon svg{width:19px;height:19px}.stat strong{font-size:26px}.stat>span:last-child{font-size:9px}.plan-strip{padding:22px 0 5px}.plan-strip strong{font-size:10px}.plan-strip p{font-size:9px}.plan-track{height:3px;margin-inline-start:15px}.footer{padding-bottom:25px;font-size:9px}.library-intro{gap:15px;padding:18px}.library-intro img{width:85px;height:125px}.library-intro .eyebrow{font-size:7px;letter-spacing:1px}.library-intro h2{font-size:20px}.library-intro p{font-size:10px}.chapter-row{gap:12px;padding:17px 13px;flex-wrap:wrap}.row-number{font-size:21px}.row-chapter strong{font-size:21px}.row-chapter small{font-size:9px}.chapter-row>.badge:not(.level){display:none}.chapter-row>svg{width:15px}.panel{padding:22px}.reader-page{padding:10px 21px 30px}.reader-toolbar{gap:8px;padding:9px 0}.reader-toolbar>.text-button{font-size:10px}.reader-controls{gap:8px;width:100%;justify-content:space-between}.reader-controls .button{padding:7px 9px;min-height:34px;font-size:10px}.font-control{gap:6px;font-size:16px}.font-control input{width:70px}.reader-controls select{padding:4px 7px}.reader-title{margin:34px auto 21px}.reader-title h1{font-size:39px;margin-bottom:15px}.reader-title>.eyebrow{font-size:8px;letter-spacing:2px}.reader-meta{gap:10px;font-size:9px}.reader-hint{font-size:9px;padding:12px 5px;margin-bottom:28px;align-items:start}.reader-hint svg{margin-top:3px}.reader-chapter-label{font-size:10px}#story{font-size:var(--reader-size);line-height:var(--reader-leading)}.reader-end{margin-top:30px;padding-top:20px}.feedback{padding:19px}.feedback h2{font-size:17px}.feedback .muted{font-size:10px}.feedback-row{gap:7px;font-size:11px;flex-wrap:wrap}.feedback-row>span{min-width:50px}.chip{padding:7px 12px;font-size:10px}.rating{width:31px;height:33px}.next-button{font-size:11px}.definition-card{inset:auto 8px 9px!important;width:calc(100% - 16px)!important;max-height:70dvh;border-radius:17px;padding:21px;box-shadow:0 -12px 80px #122f3840;padding-bottom:max(21px,env(safe-area-inset-bottom))}.definition-card .meaning{font-size:18px}.definition-card .definition-context{font-size:14px}.definition-card h3{font-size:10px}.definition-card .source{font-size:9px}.word-tools{flex-wrap:wrap;gap:12px}.word-tools>input{width:100%;flex-basis:100%;font-size:12px}.word-tools .button{font-size:11px}.word-card-bottom{align-items:start}.word-card-bottom small{font-size:9px}.word-card-bottom .text-button{font-size:10px;white-space:nowrap}.word-card blockquote{font-size:15px;margin-top:12px}.review-panel{padding:26px 22px}.review-panel blockquote{font-size:21px}.review-panel .button-row{gap:9px}.review-panel .button{font-size:11px}.form-grid{grid-template-columns:1fr;gap:17px}.settings-panel h2{font-size:19px}.settings-panel p{font-size:11px}.button-row{gap:10px}.button-row .button{font-size:11px;padding:10px 14px}.settings-panel .field{font-size:11px}.data-path{font-size:10px}.modal-backdrop{padding:14px}.modal{padding:22px}.prompt-area{min-height:300px}.editorial-area{font-size:11px}.focus-mode .workspace{padding-bottom:0}.focus-mode .reader-page{padding-top:8px}#toast{bottom:91px;inset-inline:15px;font-size:11px;max-width:calc(100% - 30px)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.reader-toolbar,.reader-hint,.reader-end,.feedback,.footer,.next-button,#overlay,#toast{display:none}.workspace{margin:0}.reader-page{padding:0}#story{max-width:100%;font-size:12pt;line-height:1.7}}

/* Story Journey 2 — one reading action, a quiet atlas, and contextual support. */
.home-v2 .page-heading{margin-bottom:25px}.home-hero{min-height:330px}.home-hero .hero-copy{padding:32px}.home-hero h2{font-size:31px}.home-hero .next-story-title{font:23px/1.4 Georgia,serif;unicode-bidi:plaintext;text-align:start;margin:15px 0 10px;color:#f4e5c6}.home-hero .hero-description{min-height:46px;font-size:12px}.home-hero .hero-actions{margin-top:23px}.home-hero .hero-level{font-size:11px;letter-spacing:.2px}.recap-v2{margin:18px 0;padding:15px 19px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.recap-v2 summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-size:12px;color:var(--green)}.recap-v2 summary:after{content:'+';margin-inline-start:auto;font:20px Georgia,serif;font-weight:400}.recap-v2[open] summary:after{content:'−'}.recap-v2 summary::-webkit-details-marker{display:none}.recap-v2 summary svg{width:17px;height:17px}.recap-v2>.muted{margin-top:12px}.recap-entry{padding-top:13px;text-align:left}.recap-entry small{font:12px Georgia,serif;color:var(--green)}.recap-entry p{font:16px/1.8 Georgia,serif;color:var(--muted);margin-top:4px}.home-companions{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:21px 0}.companion-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:22px;display:grid;grid-template-columns:36px 1fr;gap:0 13px;align-items:start}.small-emblem{display:flex;align-items:center;justify-content:center;width:34px;height:34px;color:#8b9d7f;background:var(--green-soft);border-radius:50%}.small-emblem svg{width:20px;height:20px}.companion-card h2{font-size:17px;font-weight:500}.companion-card p{font-size:11px;color:var(--muted);line-height:2;margin-top:8px;min-height:42px}.companion-card>.text-button{grid-column:2;justify-self:start;font-size:11px;margin-top:9px}.quiet-footer{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;margin-top:29px;font-size:10px;color:var(--muted)}.quiet-footer svg{width:17px;height:17px;flex:none}.suggestion-panel{display:flex;align-items:center;gap:17px;padding:20px;background:var(--green-soft);border:1px solid var(--line);border-radius:12px;margin:20px 0}.suggestion-panel>div{flex:1}.suggestion-panel>svg{flex:none}.suggestion-panel strong{font-size:14px;font-weight:500}.suggestion-panel p{font-size:11px;line-height:2;margin-top:5px}.suggestion-panel .button{font-size:11px;white-space:nowrap}.atlas-panel{padding:25px;margin-bottom:20px}.atlas-heading{margin:0 0 20px}.atlas-heading h2{font-size:23px}.atlas-heading .eyebrow{font-size:8px}.atlas-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:25px;align-items:stretch}.story-map{position:relative;min-width:0;aspect-ratio:1.5;overflow:hidden;border-radius:11px;background:#dedac4;direction:ltr;isolation:isolate}.story-map>img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.65);opacity:.85}.story-map.map-unopened>img{filter:blur(18px) saturate(.3);opacity:.18}.map-fog{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;background:var(--green-soft);text-align:center;direction:inherit}.map-fog>svg{width:32px;height:32px;color:#839978;margin-bottom:15px}.map-fog h2{font-size:20px}.map-fog p{font-size:11px;color:var(--muted);line-height:2;max-width:240px;margin-top:11px}.map-cloud{position:absolute;left:52%;top:3%;width:43%;height:35%;background:#dce2d4;box-shadow:0 0 20px 18px #dce2d4;border-radius:40%;z-index:1}.map-pin{position:absolute;transform:translate(-50%,-50%);background:none;display:flex;flex-direction:column;align-items:center;gap:5px;z-index:3;color:#243f35;min-width:40px;min-height:40px;padding:0;font-size:10px}.map-pin>span:last-child{padding:4px 9px;border-radius:5px;background:#fbf5df;box-shadow:0 3px 12px #16382c22;white-space:nowrap;border:1px solid #f2e4b6;font-family:"Geeza Pro",Tahoma,system-ui,sans-serif}.pin-dot{height:13px;width:13px;background:#315d4c;border:3px solid #f5e3b4;border-radius:50%;box-shadow:0 0 0 4px #f5e3b438}.map-pin:hover .pin-dot,.map-pin:focus-visible .pin-dot{box-shadow:0 0 0 6px #f5e3b455}.map-caption{position:absolute;bottom:12px;inset-inline:15px;font:8px/1.5 system-ui,sans-serif;letter-spacing:1.5px;color:#f6efd8;z-index:3;direction:inherit}.discovery-detail{padding:17px 0 10px;min-width:0;display:flex;flex-direction:column;justify-content:center}.discovery-detail>.eyebrow{font-size:9px;letter-spacing:.7px}.discovery-detail h3{font-size:25px;font-weight:400;margin-top:10px}.discovery-name{font:italic 15px Georgia,serif;color:var(--green);margin-top:5px}.discovery-detail>p:not(.discovery-name){font:17px/1.8 Georgia,serif;margin-top:16px;text-align:left}.discovery-detail>small{font-size:10px;margin-top:21px;line-height:1.9}.people-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.person-note{padding:21px}.person-note .eyebrow{font-size:8px;letter-spacing:1px}.person-note h3{font-size:20px;margin:7px 0 11px;font-weight:400}.person-note p{font:16px/1.8 Georgia,serif;color:var(--muted)}.journey-plan{display:grid;gap:12px;margin-top:23px;padding:24px}.journey-plan h3{font-size:17px}.journey-plan p{font-size:11px;line-height:2;color:var(--muted)}.journey-plan .text-button{justify-self:start;font-size:11px}.meaning-details{border-block:1px solid var(--line);margin-top:17px;padding:11px 0}.meaning-details>summary{font-size:11px;color:var(--green);line-height:2;cursor:pointer}.meaning-details[open]{padding-bottom:0}.meaning-details .source{margin:13px 0}.definition-card>.text-button{margin-top:6px}.resume-word{background:#c7b07755;border-radius:3px;outline:1px solid #af94565c;outline-offset:2px}.reader-page>.recap-v2{max-width:650px;margin:-12px auto 28px;font-size:11px}.reader-end>.text-button{display:flex;margin:13px auto 0;font-size:11px}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:18px}.modal-heading h2{font-size:21px}.modal-heading>.text-button{font-size:11px;white-space:nowrap}.journey-modal{max-width:780px}.passage-help h3{font-size:12px;font-weight:500;margin-top:20px}.original-passage{font:17px/1.9 Georgia,serif;color:var(--muted);padding:15px 18px;background:var(--bg);border-radius:9px;margin:12px 0;white-space:pre-wrap}.simpler-passage{font:21px/1.9 Georgia,serif;margin:12px 0 17px;white-space:pre-wrap}.help-note{margin-top:20px;color:var(--muted);font-size:11px;line-height:1.9}.review-scene-label{font-size:11px;line-height:2;color:var(--muted);margin-top:13px}.review-panel .review-term{font:30px Georgia,serif}.review-panel>h1:not([lang]){font-family:"Geeza Pro",Tahoma,system-ui,sans-serif;font-size:28px}.review-panel blockquote{border:0;padding:20px 0;margin:18px 0 22px}.genre-choices{display:flex;flex-wrap:wrap;gap:10px;margin:19px 0}.genre-choice{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:12px;cursor:pointer}.genre-choice:has(input:checked){background:var(--green-soft);border-color:#9aaa8c}.genre-choice input{margin:0;width:16px;height:16px}.genre-choice:focus-within{outline:2px solid #bd8b50;outline-offset:2px}#story-preferences>.field{max-width:320px;margin:22px 0}.storage-panel>.button{margin-inline-end:15px}.storage-panel>.text-button{margin-top:14px}.storage-warning{display:flex;align-items:center;justify-content:center;gap:18px;padding:13px 24px;background:#f3d6b8;color:#532b18;font-size:12px;position:sticky;top:0;z-index:80;border-bottom:1px solid #e5bd95}.storage-warning .button{color:#532b18;border-color:#bf8a5b;font-size:11px;background:#fff6e5;min-height:35px;padding:7px 12px}.save-error{color:#9c492b!important}.local-state .text-button{font-size:9px}.draft-review>.notice{font-size:11px;line-height:2}.draft-chapter{margin:18px 0;border:1px solid var(--line);padding:15px;border-radius:9px}.draft-chapter summary{font:18px/1.6 Georgia,serif;direction:ltr;cursor:pointer}.draft-chapter .muted{margin:12px 0;font-size:11px}.draft-text{font:19px/1.9 Georgia,serif;white-space:pre-wrap;border-block:1px solid var(--line);padding:18px 0}.draft-review>.button{margin-inline-end:10px;margin-top:13px}.draft-review .checkbox-field{font-size:12px;line-height:2;align-items:start;margin-top:24px}.draft-review input{flex:none;margin-top:5px}[data-theme=dark] .map-cloud{background:#a6b3a0;box-shadow:0 0 20px 18px #a6b3a0}[data-theme=dark] .story-map>img{filter:saturate(.6) brightness(.8)}[data-theme=dark] .map-pin>span:last-child{background:#e0d4ae;border-color:#e0d4ae;color:#183d2e}[data-theme=dark] .storage-warning{background:#573c25;color:#f5dec0;border-color:#765237}[data-theme=dark] .storage-warning .button{background:#2d2e23;color:#f5dec0;border-color:#a9855c}[data-theme=dark] .save-error{color:#f1b394!important}
@media(max-width:1100px){.atlas-grid{grid-template-columns:1.5fr 1fr;gap:20px}.discovery-detail h3{font-size:23px}.discovery-detail>p:not(.discovery-name){font-size:16px}.reader-controls{flex-wrap:wrap}.reader-controls .button{font-size:10px}.reader-controls{gap:8px}.reader-controls .font-control input{width:65px}}@media(max-width:900px){.atlas-grid{grid-template-columns:1fr}.discovery-detail{padding:7px 3px}.discovery-detail>.eyebrow{margin-top:8px}.discovery-detail h3{margin-top:5px}.discovery-detail>small{margin-top:13px}.discovery-detail>p:not(.discovery-name){margin-top:10px}.people-strip{gap:14px}.home-hero .hero-copy{padding:25px}.companion-card{padding:19px;grid-template-columns:30px 1fr;gap:0 10px}.companion-card h2{font-size:16px}.companion-card p{font-size:10px}.small-emblem{width:30px;height:30px}.suggestion-panel{flex-wrap:wrap}.suggestion-panel .button{margin-inline-start:38px}}@media(max-width:680px){.home-v2 .page-heading h1{font-size:27px}.home-hero .hero-copy{padding:26px}.home-hero h2{font-size:29px}.home-hero .next-story-title{font-size:25px;margin-top:16px}.home-hero .hero-description{font-size:12px;min-height:0}.home-hero .hero-actions{gap:15px}.home-hero .hero-level{display:block;font-size:10px}.home-hero .hero-art{height:155px}.home-companions{grid-template-columns:1fr;gap:13px;margin-top:17px}.companion-card{padding:20px;grid-template-columns:34px 1fr;gap:0 13px}.companion-card h2{font-size:17px}.companion-card p{font-size:11px;min-height:0;margin-top:6px}.companion-card>.text-button{margin-top:7px}.small-emblem{width:34px;height:34px}.recap-v2{padding:13px 15px;margin:15px 0}.recap-v2 summary{font-size:11px}.recap-entry p{font-size:16px}.quiet-footer{font-size:9px;line-height:2;align-items:start;padding:0 4px}.quiet-footer svg{margin-top:3px;width:15px}.atlas-panel{padding:18px}.atlas-heading{gap:10px;align-items:center;margin-bottom:15px}.atlas-heading h2{font-size:20px}.atlas-heading .eyebrow{font-size:7px;letter-spacing:.7px}.atlas-heading .badge{font-size:8px}.story-map{aspect-ratio:1.3;min-height:230px}.map-fog{padding:24px}.map-fog h2{font-size:19px}.map-fog p{font-size:10px;max-width:220px}.map-caption{font-size:6px;bottom:10px;letter-spacing:1px}.map-pin{font-size:9px}.map-pin>span:last-child{padding:4px 7px}.pin-dot{width:12px;height:12px;border-width:2px}.map-cloud{width:40%;height:28%;left:55%;top:4%}.discovery-detail h3{font-size:23px}.discovery-detail>p:not(.discovery-name){font-size:17px;line-height:1.8}.discovery-detail>.discovery-name{font-size:14px}.discovery-detail>small{font-size:9px}.people-strip{grid-template-columns:1fr;gap:13px}.person-note{padding:20px}.person-note h3{font-size:21px}.person-note p{font-size:16px}.person-note .eyebrow{font-size:8px}.journey-plan{padding:20px}.journey-plan h3{font-size:16px}.journey-plan p{font-size:10px;line-height:2}.reader-toolbar{position:sticky}.reader-controls{gap:8px;justify-content:start}.reader-controls .font-control{margin-inline-end:auto}.reader-controls .button{font-size:10px;min-height:34px}.reader-controls select{padding:5px}.reader-page>.recap-v2{margin-top:-7px;margin-bottom:26px;padding:12px 14px}.reader-page>.recap-v2 summary{font-size:10px}.reader-page>.recap-v2 .recap-entry p{font-size:15px}.journey-modal{padding:20px}.modal-heading{align-items:start;gap:12px}.modal-heading h2{font-size:19px}.modal-heading>.text-button{font-size:10px;padding:4px 0}.modal-heading svg{width:14px;height:14px}.passage-help>.eyebrow{font-size:8px;letter-spacing:.8px}.passage-help h3{font-size:11px}.original-passage{font-size:16px;padding:12px}.simpler-passage{font-size:20px}.help-note{font-size:10px;line-height:2}.meaning-details>summary{font-size:12px}.review-panel>h1:not([lang]){font-size:25px;margin-top:19px}.review-scene-label{font-size:10px;line-height:2}.review-panel blockquote{font-size:23px;padding:16px 0}.genre-choices{gap:9px}.genre-choice{font-size:11px;padding:9px 10px}#story-preferences>.field{margin:19px 0;max-width:100%}.storage-panel>.button{margin-inline-end:0}.storage-panel .text-button{display:flex;margin-top:18px}.storage-warning{font-size:10px;padding:11px 15px;gap:12px;align-items:start}.storage-warning>span{flex:1;line-height:2}.storage-warning>.button{font-size:9px;min-height:31px;padding:7px 9px;flex:none}.suggestion-panel{gap:10px;padding:18px}.suggestion-panel strong{font-size:13px}.suggestion-panel p{font-size:10px}.suggestion-panel .button{font-size:10px;min-height:36px}.draft-chapter{padding:12px}.draft-chapter summary{font-size:17px}.draft-text{font-size:18px}.draft-review>.notice{font-size:10px}.draft-review .checkbox-field{font-size:11px}.draft-review>.button{font-size:11px}.reader-end>.text-button{font-size:10px}.focus-mode .reader-controls{flex-wrap:wrap}}

.workspace{overflow-anchor:none}.journey-modal{overscroll-behavior:contain}

/* After-reading practice: separate from the story and fully keyboard accessible. */
.study-panel{max-width:800px;margin:32px auto;padding:30px;scroll-margin-top:100px}
.study-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.study-heading h2{font-size:1.7rem;margin:10px 0}.study-score{padding:12px 16px;border:1px solid var(--line);border-radius:50px;white-space:nowrap;font-variant-numeric:tabular-nums}
.study-details{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.study-details>summary{cursor:pointer;font-weight:600;padding:8px 0}.study-questions{display:grid;gap:26px;margin-top:20px}.study-question{border:0;padding:0;margin:0;min-width:0}.study-question legend{font-weight:600;line-height:1.6;margin-bottom:12px}.study-options{display:grid;gap:8px;margin-bottom:14px}.study-option{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:14px;cursor:pointer}.study-option:has(input:checked){background:var(--green-soft);border-color:var(--accent)}.study-option input{margin-top:5px;flex-shrink:0}.study-answer:not(:empty){margin-top:14px;padding:18px;background:var(--green-soft);border-radius:8px}.study-answer blockquote{font-family:Georgia,serif;font-size:1.12em;margin:16px 0;padding-inline-start:16px;border-inline-start:1px solid var(--line)}.answer-right{color:var(--accent)}.writing-task{font-size:1.12em;line-height:1.8}.writing-area{width:100%;min-height:210px;resize:vertical;font:1.1rem/1.8 Georgia,serif;border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--paper);color:var(--ink);box-sizing:border-box}.writing-area:focus{outline:2px solid var(--accent);outline-offset:3px}.writing-status{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;margin:10px 0}.writing-honesty{font-size:.9rem;line-height:1.8;color:var(--muted)}.writing-checklist{display:grid;gap:12px;padding:16px 0}.writing-checklist label{display:flex;align-items:flex-start;gap:10px}.writing-checklist input{margin-top:5px}.writing-sample:not(:empty){padding:20px;margin-top:18px;border:1px dashed var(--line);border-radius:14px;line-height:1.85}.course-banner{margin:20px 0;padding:20px;display:flex;justify-content:space-between;gap:18px;align-items:center}.course-banner p{margin:5px 0}.day-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.day-reading{padding:20px;text-align:start;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);cursor:pointer}.day-reading strong{display:block;margin:10px 0;font:1.2rem Georgia,serif}.season-week{margin:14px 0}.season-week>summary{padding:18px;cursor:pointer;font-weight:600}.season-week .chapter-list{padding:0 16px 16px}.course-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.course-filter input{min-width:0;max-width:280px;padding:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px}
@media(max-width:600px){.study-panel{padding:20px 16px;margin:24px 0}.study-heading h2{font-size:1.35rem}.study-score{padding:9px 12px}.day-pair{grid-template-columns:1fr}.course-banner{align-items:flex-start;flex-direction:column}.study-option{padding:12px}.writing-area{font-size:1rem}.study-details>summary{line-height:1.8}}

/* Graded anthology keeps the existing reader and visual language. */
.graded-levels{display:flex;flex-wrap:wrap;gap:10px;margin-block:20px}
.graded-levels .chip{min-width:58px;min-height:44px;direction:ltr}
.graded-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-block:22px}
.graded-story{padding:28px;display:flex;flex-direction:column;min-width:0}
.graded-story h3{font-size:1.6rem;line-height:1.3;margin-block:18px}
.graded-story .opening{flex:1;line-height:1.8}
.graded-story .card-bottom{flex-wrap:wrap;gap:12px}
.graded-results h2{margin-block-start:28px}
@media(max-width:760px){.graded-grid{grid-template-columns:1fr}.graded-story{padding:22px}}

/* Connected serial: a quiet, chronological reading path. */
.serial-heading{max-width:800px;margin-block:18px 32px}.serial-heading h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.4;margin:16px 0}.serial-hook{font-size:1.25rem;line-height:1.9;max-width:700px}.serial-heading .muted{line-height:1.9}.serial-setup,.serial-settings{padding:28px;margin-block:24px}.serial-setup>p,.serial-settings>p{line-height:1.9}.serial-level-choice{border:0;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.serial-level-choice legend{font-weight:600;margin-bottom:14px}.serial-level-choice label{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:12px;cursor:pointer;min-width:0}.serial-level-choice label:has(input:checked){border-color:var(--accent);background:var(--green-soft)}.serial-level-choice label:focus-within{outline:2px solid var(--accent);outline-offset:3px}.serial-level-choice strong{font-size:1.25rem}.serial-level-choice span{grid-column:1/-1;font-size:.86rem;line-height:1.8}.serial-level-choice input{margin:0;accent-color:var(--accent)}.serial-preview{direction:ltr;unicode-bidi:isolate;font-size:.9rem;line-height:2.1;border-block:1px solid var(--line);padding-block:16px}.serial-status,.serial-home{padding:26px;display:flex;gap:24px;align-items:center;justify-content:space-between;margin-block:24px}.serial-home h2{font-size:1.5rem;margin-block:12px}.serial-home p,.serial-status p{line-height:1.8;margin-bottom:0}.serial-home>.button,.serial-status>.button{flex-shrink:0}.serial-settings summary{font-weight:600;cursor:pointer;padding-block:8px}.serial-settings .form-grid{margin-block:20px}.serial-path-title{font-size:1.3rem;margin-block:32px 16px}.serial-path{padding:0;list-style:none;margin:0}.serial-episode{display:flex;gap:20px;align-items:center;padding:22px 4px;border-bottom:1px solid var(--line)}.serial-number{font-family:Georgia,serif;font-size:1.5rem;color:var(--muted);min-width:36px;text-align:center}.serial-episode-title{flex:1;min-width:0}.serial-episode h3{font:1.2rem/1.5 Georgia,serif;margin:0 0 8px}.serial-episode small{color:var(--muted);line-height:1.8}.serial-episode.current{background:var(--green-soft);padding-inline:16px;border-radius:8px}.serial-episode.complete .serial-number{color:var(--accent)}.serial-reader-next{padding:24px;margin-block:24px}.serial-reader-next h2{font-size:1.25rem}.serial-reader-next p{line-height:1.9}.serial-reader-next .button{margin-inline-end:12px;margin-block:8px}.serial-recap{padding:20px;margin-block:20px}.serial-recap summary{cursor:pointer}.serial-recap p{font:1.05rem/1.8 Georgia,serif}
@media(max-width:760px){.serial-level-choice{grid-template-columns:repeat(2,minmax(0,1fr))}.serial-status,.serial-home{align-items:stretch;flex-direction:column}.serial-setup,.serial-settings{padding:20px}.serial-episode{flex-wrap:wrap;gap:12px}.serial-episode-title{flex-basis:calc(100% - 60px)}.serial-episode>.badge{margin-inline-start:48px}.serial-episode>.button{margin-inline-start:auto}.serial-episode>.muted{font-size:.8rem}.serial-heading h1{font-size:2rem}.serial-hook{font-size:1.1rem}}

/* Prepared aids and local listening preserve the original story's typography. */
#story{max-width:var(--story-width,720px)}
.reader-preferences{max-width:900px;margin:16px auto;padding:16px;border-block:1px solid var(--line)}
.reader-preferences summary,.placement-panel>summary,.evidence-panel>summary{cursor:pointer;font-weight:600;padding:8px 0}
.reader-preferences form,.reader-preferences .muted{margin-top:16px}.reader-preferences .checkbox-field{margin-block:15px}
.pilot-note{max-width:760px;margin:12px auto;font-size:.85rem;line-height:1.9}
.audio-player{max-width:900px;margin:22px auto;padding:22px}.audio-heading,.audio-main-controls,.audio-options{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.audio-heading{justify-content:space-between}.audio-status{font-size:.8rem}.audio-main-controls{margin-block:18px}.audio-options>label{display:flex;align-items:center;gap:10px}.audio-note{font-size:.8rem;margin-top:16px;line-height:1.8}
#story .listen-current{background:var(--green-soft);box-shadow:0 2px 0 var(--accent);border-radius:3px}
main.listening-only #story{display:none}
#story .prepared-expression{text-decoration:underline dotted var(--accent);text-underline-offset:5px}
#story .phrase-aid{font:500 .7rem/1.5 system-ui,sans-serif;direction:rtl;display:inline-flex;vertical-align:middle;padding:3px 7px;margin-inline:5px;border:1px solid var(--line);border-radius:5px;min-height:30px}
#story .sentence-aid{display:block;margin-block:14px;font:500 .8rem/1.7 system-ui,sans-serif;direction:rtl;min-height:40px}
.prepared-help{max-width:780px;max-height:85vh;overflow:auto}.prepared-help .modal-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.prepared-help blockquote{font:1.2rem/1.8 Georgia,serif;color:var(--ink)}
.prepared-answer{font:1.25rem/1.9 Georgia,serif;padding:18px 0;min-height:80px;white-space:pre-line}.help-actions,.definition-aids{display:flex;gap:10px;flex-wrap:wrap}.prepared-help>.button{margin-top:15px}.optional-arabic{border-top:1px solid var(--line);padding-top:14px;margin-top:15px}.optional-arabic summary{cursor:pointer;font-size:.85rem}.optional-arabic p{padding-block:12px;font:1rem/1.9 "Geeza Pro",Tahoma,sans-serif}
.placement-panel{padding:20px;margin-block:20px}.placement-panel .probe-text{max-width:720px;font:1.2rem/1.9 Georgia,serif;margin:24px auto}.probe-text p+p{margin-top:18px}.placement-form{display:grid;gap:25px}.placement-form .study-option{margin-top:8px}.placement-panel [role=status]:not(:empty){padding-top:20px}.serial-suggestion{padding:20px;background:var(--green-soft);border-radius:12px;margin-bottom:20px}.serial-suggestion p{margin-block:10px}
.evidence-panel{padding:24px;margin-block:24px}.skill-evidence dt{font-weight:600;margin-top:20px}.skill-evidence dd{margin:6px 0;line-height:1.9;color:var(--muted)}.experience-feedback{display:grid;gap:15px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.definition-base summary{cursor:pointer;font-size:.8rem}.definition-base{margin:12px 0}
.reader-reduce-motion *, .reader-reduce-motion *::before, .reader-reduce-motion *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(max-width:760px){.audio-player{padding:16px}.audio-main-controls .button{flex:1 1 42%;min-height:44px}.audio-options{align-items:stretch}.audio-options>label{flex:1 1 100%;justify-content:space-between}.prepared-help{padding:18px;max-height:86vh}.prepared-help .modal-heading{flex-direction:column}.prepared-help h2{font-size:1.2rem}.help-actions .button{flex:1 1 40%}.reader-preferences .form-grid{grid-template-columns:1fr}.placement-panel{padding:16px}.evidence-panel{padding:18px}.serial-episode h3:not([lang]){font-family:inherit;font-size:1rem}}
@media print{.audio-player,.sentence-aid,.phrase-aid,.reader-preferences{display:none!important}}
/* Optional curriculum: honest inventory and compact reader practice. */
.curriculum-panel>summary{font-weight:700;cursor:pointer}
.curriculum-body{padding-block-start:1rem}
.curriculum-boundary{padding:.9rem;background:var(--green-soft);border-radius:8px}
.curriculum-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1rem}
.curriculum-counts dt{font-size:.85rem}
.curriculum-counts dd{margin:0;font-size:1.65rem;font-weight:700}
.curriculum-search{display:flex;flex-wrap:wrap;gap:.6rem;margin-block:1rem}
.curriculum-search input{flex:1;min-width:120px}
.curriculum-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:1rem}
.curriculum-item{border-block-start:1px solid currentColor;padding-block:1rem;overflow-wrap:anywhere}
.curriculum-item>strong,.curriculum-item>small{display:block}
.curriculum-item p,.curriculum-item blockquote{margin-block:.55rem}
.curriculum-item blockquote{margin-inline:0;padding-inline:.8rem;border-inline-start:2px solid currentColor}
.curriculum-coverage{width:100%;margin-block:1rem;border-collapse:collapse}
.curriculum-coverage th,.curriculum-coverage td{text-align:start;padding:.45rem;border-block-end:1px solid currentColor}
.curriculum-paging{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
