@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-sans-latin-400-normal-AkRraKH2.woff2)format("woff2"),url(/assets/nunito-sans-latin-400-normal-DY9yCUyQ.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-latin-600-normal-BtVRvDNj.woff2)format("woff2"),url(/assets/nunito-sans-latin-600-normal-DLks-Kj1.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-latin-700-normal-CICRJDmU.woff2)format("woff2"),url(/assets/nunito-sans-latin-700-normal-CLVG92B9.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-latin-800-normal-MgCk9Q3Y.woff2)format("woff2"),url(/assets/nunito-sans-latin-800-normal-DOf_K5Iw.woff)format("woff")}:root{color:#263b31;font-synthesis:none;--green:#315840;--deep:#233f30;--muted:#60695e;--line:#dedfd3;--paper:#fffef9;--light:#eaf0df;--yellow:#ecd68e;--radius:18px;background:#f7f6ee;font-family:Nunito Sans,system-ui,sans-serif;font-size:17px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #887019}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.035em;font-weight:800;line-height:1.15}h1{max-width:23ch;font-size:clamp(2rem,3.6vw,3.2rem)}h2{font-size:1.6rem}h3{font-size:1.2rem}p{margin-top:.7rem}small{font-size:.8rem;line-height:1.5}.muted,.meta{color:var(--muted)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#5d6b53;font-size:.72rem;font-weight:800}.shell{flex-direction:column;min-height:100dvh;display:flex}.site-header,.main,.site-footer{width:min(1180px,100% - 80px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:100px;display:flex}.site-header nav{align-items:center;gap:24px;font-size:.9rem;display:flex}.site-header nav a{align-items:center;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.wordmark{letter-spacing:-.07em;align-items:center;gap:11px;font-size:1.65rem;font-weight:800;text-decoration:none;display:flex}.wordmark:before{content:"";background:var(--green);border-radius:1px 17px;width:20px;height:28px;transform:rotate(15deg)}.main{flex:1;padding-block:44px 72px}.main.narrow{max-width:760px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding-block:23px;font-size:.77rem;display:flex}.site-footer a{align-items:center;min-height:44px;display:flex}.button{border:1px solid var(--line);background:var(--paper);min-height:46px;color:var(--deep);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 21px;font-size:.9rem;font-weight:700;line-height:1.4;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.button:hover{background:#eef0e5}.button:active{transform:translateY(1px)}.button.primary{background:var(--green);color:#fffef7;border-color:var(--green)}.button.primary:hover{background:var(--deep)}.button.large{min-height:55px;padding:14px 32px;font-size:1rem}.button.quiet{background:0 0;border-color:#0000;padding-inline:12px}.button.quiet:hover{background:#eaece0}.text-link{align-items:center;min-height:44px;font-size:.9rem;font-weight:700;display:inline-flex}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.message{white-space:pre-line;background:#eff0e4;border-left:3px solid #a2ab7b;border-radius:0 8px 8px 0;max-width:75ch;padding:13px 17px;font-size:.92rem}.message.error{color:#7e3222;background:#faece7;border-color:#a64c38}.message.success{background:#e9f0e3;border-color:#597f49}.stack{gap:20px;display:grid}.field{gap:7px;display:grid}.field label{font-size:.88rem;font-weight:700}.field small{color:var(--muted)}input,select,textarea{color:#263b31;background:var(--paper);border:1px solid #b7bdae;border-radius:8px;width:100%;min-width:0;min-height:46px;padding:10px 13px}textarea{resize:vertical;line-height:1.65}select{padding-right:36px}input[type=checkbox],input[type=radio]{width:21px;height:21px;min-height:21px;accent-color:var(--green);flex-shrink:0}.form-output:empty{display:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--green);color:#fff;z-index:5;padding:12px;position:fixed;top:-70px;left:20px}.skip-link:focus{top:10px}.loading{gap:18px;max-width:720px;margin:90px auto;padding:24px;display:grid}.loading div{background:#e6e8dc;border-radius:7px;height:24px}.loading div:first-child{width:65%;height:60px}.loading div:last-child{width:80%}.home-hero{grid-template-columns:1fr 1.02fr;align-items:center;gap:58px;padding:36px 0 60px;display:grid}.home-copy h1{margin-top:20px;font-size:clamp(2.3rem,3.8vw,3.2rem);line-height:1.16}.home-copy h1 span{color:#65755a;display:block}.home-copy .lead{color:#52604f;max-width:37ch;margin:26px 0 30px;font-size:1.07rem}.home-meta{color:var(--muted);gap:25px;margin-top:36px;font-size:.77rem;display:flex}.home-meta span{border-left:1px solid #b7bdae;padding-left:25px}.home-image{padding-bottom:25px;position:relative}.home-image img{object-fit:cover;border-radius:130px 18px 18px;width:100%;height:410px;display:block}.home-image figcaption{background:var(--paper);border:1px solid var(--line);border-radius:12px;gap:2px;padding:16px 30px;display:grid;position:absolute;bottom:0;left:-22px}.home-image figcaption span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.home-image figcaption strong{font-size:1.05rem}.home-bottom{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:60px;padding-top:34px;display:grid}.home-bottom h2{max-width:23ch;font-size:1.45rem}.home-bottom p{color:var(--muted);max-width:55ch;margin-top:0;font-size:.93rem}.auth-layout{grid-template-columns:1fr .8fr;gap:100px;padding:32px 38px;display:grid}.auth-form h1{max-width:16ch;margin:18px 0 32px;font-size:2.5rem}.auth-links{gap:12px;margin-top:22px;font-size:.88rem;display:grid}.auth-aside{background:#e8eddc;border-radius:80px 16px 16px;flex-direction:column;justify-content:center;align-self:stretch;padding:55px 37px;display:flex}.auth-aside h2{margin-top:22px;font-size:2rem}.auth-aside p{color:#53614c}.auth-caption{gap:8px;margin-top:70px;font-size:.8rem;font-weight:700;display:grid}.auth-caption span{font-weight:400}.join-layout{grid-template-columns:1fr .7fr;gap:140px;max-width:930px;margin:35px auto;display:grid}.join-panel h1{margin:15px 0 32px}.join-panel .text-link{margin-top:18px}.code-input{letter-spacing:.15em;text-transform:uppercase;font-size:1.8rem}.join-note{border-left:1px solid var(--line);padding-top:20px;padding-left:44px}.join-note h2{margin-top:16px}.join-note p{color:var(--muted)}.steps{color:var(--muted);gap:18px;margin-top:28px;padding-left:24px;display:grid}.prose h1{margin:18px 0 30px}.prose h2{margin:32px 0 12px}.prose .button{margin-top:32px}.page-heading{justify-content:space-between;align-items:start;gap:30px;margin:10px 0 32px;display:flex}.page-heading h1{margin:12px 0;font-size:2.3rem}.account-label{color:var(--muted);margin-top:12px;font-size:.77rem}.teacher-controls{align-items:end;gap:24px;margin:35px 0 24px;display:flex}.teacher-controls>.field{min-width:260px}.tabs{background:#e9ecdf;border-radius:11px;gap:4px;padding:4px;display:flex}.tab{min-height:44px;padding:10px 18px;font-size:.9rem;font-weight:700;text-decoration:none}.tab.selected{background:var(--paper);border-radius:8px}.create-class{margin-left:auto;position:relative}.create-class summary{cursor:pointer;min-height:44px;padding:10px 12px;font-weight:700}.create-class[open]{flex-basis:100%}.create-class-form{background:var(--light);border-radius:12px;flex-wrap:wrap;align-items:end;gap:14px;padding:20px;display:flex}.create-class-form .field:first-child{flex:1}.create-class-form .field:nth-child(2){min-width:120px}.teacher-controls:has(.create-class[open]){flex-wrap:wrap}.lesson-agenda{border-top:1px solid var(--line)}.agenda-row{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr auto;align-items:center;gap:24px;padding:26px 0;display:grid}.day-number{align-self:start;padding-top:5px;display:grid}.day-number small{letter-spacing:.1em;color:var(--muted);font-size:.65rem;font-weight:800}.day-number strong{letter-spacing:-.05em;color:#7c876b;font-size:2rem;line-height:1.3}.agenda-story h2{margin-top:6px;font-size:1.4rem}.agenda-words{margin-top:8px;font-size:.9rem;font-weight:700}.agenda-story .meta{margin-top:4px;font-size:.78rem}.status-label{color:var(--muted);font-size:.7rem}.agenda-actions{align-items:center;gap:10px;display:flex}.empty-state{max-width:60ch;padding:35px 0 50px}.open-windows{background:var(--light);border-radius:14px;margin:30px 0;padding:24px}.open-windows h2{margin-bottom:15px;font-size:1.2rem}.window-panel{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.window-panel>div:first-child{margin-right:auto}.window-panel p{margin:0;font-size:.8rem}.inline-code{letter-spacing:.08em;font-size:1.6rem;display:block}.word-timeline{margin-top:36px}.word-timeline summary{cursor:pointer;min-height:44px;font-size:1.2rem;font-weight:800}.table-scroll{margin-top:20px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.82rem}caption{text-align:left;color:var(--muted);padding:0 0 18px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px 16px}thead{background:#e9eddc}tbody th{min-width:170px}.lesson-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.lesson-top select{width:auto;max-width:200px}.greeting{color:var(--muted);margin:5px 0 0;font-size:.88rem}.session-status:empty{display:none}.session-status{margin-top:20px}.lesson-hero{grid-template-columns:1fr .63fr;gap:55px;margin:30px 0;display:grid}.lesson-hero img{object-fit:cover;border-radius:70px 14px 14px;width:100%;height:250px}.lesson-heading{align-self:center}.lesson-heading h1{margin-top:13px;font-size:2.5rem}.words-label{margin-top:22px;display:block}.new-words{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.word-chip{min-height:44px;color:var(--green);background:#edf1e4;border:1px solid #bdc9a9;border-radius:8px;padding:8px 17px;font-size:.96rem;font-weight:700}.word-chip:hover{background:#e2e9d5}.word-chip.review{color:#5c502b;background:#f5ebc8;border-color:#dfd19b}.lesson-progress{border-bottom:1px solid var(--line);color:var(--muted);gap:28px;margin:15px 0 34px;font-size:.77rem;display:flex}.lesson-progress span{border-bottom:3px solid #0000;padding:12px 0}.lesson-progress .current{color:var(--green);border-color:var(--green);font-weight:800}.reading{max-width:850px;margin:auto}.reading-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.reading-toolbar h2{font-size:1.15rem}.story-text{white-space:pre-line;max-width:68ch;font-size:1.22rem;line-height:1.95}.story-text p{margin:0 0 20px}.word{font:inherit;color:#335431;font-weight:700;line-height:inherit;vertical-align:baseline;background:#edf0e1;border:0;border-bottom:2px solid #55744c;border-radius:3px;min-width:44px;min-height:44px;padding:0 2px}.word.review{background:#fbf1d2;border-color:#b09b43}.word:hover{background:#dfe8ce}.audio-settings{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;padding-top:15px;display:flex}.audio-settings select{width:auto;min-height:44px;font-size:.8rem}.audio-settings small{color:var(--muted);margin-left:auto;font-size:.72rem}.audio-button{min-height:44px;padding:7px 12px;font-size:.77rem}.audio-button:before{content:"";clip-path:polygon(0 25%,30% 25%,80% 0,80% 100%,30% 75%,0 75%);background:currentColor;width:10px;height:12px}.audio-button.playing{background:#e3ebd6}.audio-missing{color:var(--muted);font-size:.72rem;display:inline-block}.review-strip{background:#f1eddc;border-radius:14px;max-width:850px;margin:35px auto;padding:22px 25px}.review-strip>p{margin:5px 0 13px;font-size:.88rem}.review-words{flex-wrap:wrap;gap:12px;display:flex}.review-words>div{max-width:230px}.review-words small{color:var(--muted);margin-top:6px;display:block}.activity{max-width:850px;margin:36px auto 0;scroll-margin-top:25px}.read-next{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding-top:30px;display:flex}.read-next h2{font-size:1.2rem}.read-next p{color:var(--muted);font-size:.85rem}.read-next .button{flex-shrink:0}.question-form{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:32px 38px}.question-label{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.question-form h2{letter-spacing:-.025em;margin-bottom:25px;font-size:1.5rem;line-height:1.35}.choices{border:0;gap:10px;margin:0 0 25px;padding:0;display:grid}.choice-row{align-items:center;gap:10px;display:flex}.choice{border:1px solid var(--line);cursor:pointer;border-radius:10px;flex:1;align-items:center;gap:14px;min-height:56px;padding:14px 18px;display:flex}.choice:has(input:checked){background:#edf2e5;border-color:#537d48}.question-form>.actions{margin-top:22px}.question-feedback{margin-top:18px}.question-feedback:empty{display:none}.question-feedback .button{margin-top:18px}.hint{background:#f4efd9;border-radius:10px;padding:20px 24px}.hint p{white-space:pre-line;line-height:1.7}.finish{text-align:center;border-top:1px solid var(--line);padding:40px 0}.finish h2{margin:12px 0;font-size:2.2rem}.finish .button{margin-top:25px}.sentence-starter{color:var(--muted);margin-bottom:15px}.lesson-content[data-text-size=large] .story-text{font-size:1.42rem}.lesson-content[data-text-size=largest] .story-text{font-size:1.65rem}dialog{color:var(--deep);background:var(--paper);border:1px solid #c5cbb8;border-radius:20px;width:min(580px,100% - 28px);max-height:90dvh;padding:30px;overflow-y:auto;box-shadow:0 24px 70px #273b3329}dialog::backdrop{background:#263c3477}.dialog-top{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.word-dialog h2{font-size:2rem}.word-definition{margin:18px 0;font-size:1.2rem}.word-dialog blockquote{background:#f0f3e8;border-left:3px solid #93a878;margin:24px 0;padding:18px 20px;font-size:.95rem}.word-dialog .field{margin:20px 0}.translated-word{border-top:1px solid var(--line);padding-top:22px}.translated-word p{margin-bottom:16px;font-size:1.12rem}.translated-word [dir=rtl]{unicode-bidi:isolate;font-family:system-ui,sans-serif;line-height:1.9}.code-dialog{text-align:center;padding:40px}.code-dialog h2{margin-top:16px}.big-code{letter-spacing:.14em;margin:30px 0;font-size:clamp(2rem,6vw,3.6rem);font-weight:800}.code-dialog .button{margin-top:20px}.editor-toolbar{z-index:1;border-block:1px solid var(--line);background:#f7f6eef5;align-items:center;gap:12px;margin-bottom:28px;padding:12px 0;display:flex;position:sticky;top:0}.save-status{color:var(--muted);margin-right:auto;font-size:.82rem}.editor-notices:not(:empty){margin:20px 0}.editor-body{max-width:880px}.editor-section{border-bottom:1px solid var(--line);padding:20px 0 35px}.editor-section>h2{margin-bottom:20px;font-size:1.4rem}.editor-section>.field{margin-top:20px}.paragraph-editor{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.mark-controls{flex-wrap:wrap;align-items:end;gap:10px;margin-top:12px;display:flex}.mark-controls>.field{flex:1;min-width:220px}.paragraph-editor details{margin-top:18px}.paragraph-editor summary{cursor:pointer;min-height:44px;font-size:.85rem}.marked-preview{white-space:pre-line;background:var(--paper);padding:20px;line-height:1.9}.marked-preview mark{color:var(--green);background:#e1eccf;border-bottom:2px solid #6a874e}.editor-detail{border-top:1px solid var(--line);padding:13px 0}.editor-detail>summary{cursor:pointer;min-height:44px;padding-top:8px;font-size:1.1rem;font-weight:700;display:list-item}.editor-detail>.field{margin-top:20px}.language-fields{border-top:1px solid var(--line);grid-template-columns:1fr 1.8fr;gap:15px;margin-top:24px;padding-top:20px;display:grid}.language-fields h3{letter-spacing:0;color:var(--muted);grid-column:1/-1;font-size:.9rem}.language-fields[dir=rtl] .field label{text-align:left;direction:ltr}.validation{padding:28px 0}.validation h2{margin-bottom:20px;font-size:1.3rem}.validation-errors{color:#8b3323}.validation li{margin:10px 0}.check-label{align-items:start;gap:12px;margin:20px 0;font-size:.9rem;display:flex}.check-label input{margin-top:4px}.publication>.button{margin-top:18px}.publication>p{color:var(--muted)}@media (width>=1400px){.home-hero{padding-block:55px 75px}.home-image img{height:450px}}@media (width<=1000px){.site-header,.main,.site-footer{width:calc(100% - 48px)}.home-hero{gap:35px}.home-image img{height:365px}.home-copy h1{font-size:2.5rem}.auth-layout{gap:50px;padding:20px 0}.join-layout{gap:60px}.agenda-row{grid-template-columns:50px 1fr;gap:18px}.agenda-actions{grid-column:2;justify-content:start}.lesson-hero{gap:28px}.lesson-hero img{height:220px}.teacher-controls{flex-wrap:wrap}.account-label{display:none}}@media (width<=767px){.site-header,.main,.site-footer{width:calc(100% - 32px)}.site-header{min-height:78px}.site-header nav{gap:10px;font-size:.8rem}.wordmark{font-size:1.4rem}.site-header nav .button{padding-inline:8px}.main{padding-block:25px 50px}.home-hero,.home-bottom,.auth-layout,.join-layout,.lesson-hero{grid-template-columns:1fr;gap:28px}.home-hero{padding-top:12px;padding-bottom:40px}.home-copy h1{max-width:19ch;font-size:2.6rem}.home-copy .lead{max-width:42ch}.home-image{margin-top:20px;margin-left:15px}.home-image img{border-top-left-radius:80px;height:300px}.home-image figcaption{left:-15px}.home-bottom{padding-top:25px}.home-bottom h2{max-width:none}.home-meta{margin-top:24px}.auth-layout{padding:0}.auth-aside{display:none}.auth-form{max-width:520px}.auth-form h1{font-size:2.2rem}.join-layout{margin:10px auto}.join-note{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.join-note .steps{display:none}.join-panel h1{font-size:2.4rem}.page-heading{display:block}.page-heading h1{font-size:2rem}.teacher-controls>.field{width:100%;min-width:0}.create-class{margin-left:0}.create-class-form{display:grid}.agenda-row{gap:14px}.agenda-story h2{font-size:1.2rem}.agenda-story .eyebrow{font-size:.65rem}.agenda-actions{flex-wrap:wrap;gap:5px}.agenda-actions .button{padding-inline:12px;font-size:.8rem}.lesson-top{align-items:start}.lesson-top select{max-width:135px;font-size:.75rem}.lesson-top .greeting{font-size:.8rem}.lesson-hero{gap:20px;margin-top:24px}.lesson-heading h1{font-size:2rem}.lesson-hero img{border-radius:40px 10px 10px;height:170px}.lesson-progress{justify-content:space-between;gap:0;font-size:.64rem;overflow-x:auto}.story-text{font-size:1.13rem;line-height:1.9}.reading-toolbar{align-items:start}.reading-toolbar h2{padding-top:10px}.audio-settings{gap:5px}.audio-settings small{width:100%;margin:4px 0 0}.read-next{display:grid}.read-next .button{justify-self:start}.question-form{padding:22px 18px}.question-form h2{font-size:1.25rem}.question-label .eyebrow{font-size:.65rem}.choice{gap:10px;padding:12px}.choice-row{flex-wrap:wrap}.choice-row>.audio-button{margin-left:35px}.choice{flex-basis:100%}.review-strip{padding:20px 18px}.review-words>div{max-width:100%}.site-footer{gap:15px;font-size:.65rem}.word-dialog{padding:22px}.dialog-top .button{padding-right:0}.word-dialog h2{font-size:1.8rem}.word-definition{font-size:1.12rem}.editor-toolbar{flex-wrap:wrap}.save-status{flex-basis:100%}.editor-toolbar .button{font-size:.8rem}.language-fields{grid-template-columns:1fr}.language-fields h3{grid-column:auto}.mark-controls>.field{flex-basis:100%}.create-class summary{padding-left:0}.window-panel{gap:7px}.window-panel>div:first-child{width:100%}.open-windows{padding:18px}.open-windows .button{padding-inline:8px;font-size:.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.agenda-story{min-width:0}.agenda-detail{max-width:62ch;margin-top:10px;font-size:.85rem}.agenda-detail summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:700;display:list-item}.agenda-detail h3{letter-spacing:0;margin:12px 0 8px;font-size:.88rem}.agenda-detail ul,.agenda-detail ol{gap:9px;margin:8px 0 18px;padding-left:22px;display:grid}.agenda-detail p{font-size:.85rem}[hidden]{display:none!important}body:has(.student-shell){background:#fff}.student-shell{color:#263630;--paper:#fff;--line:#e1e6e2;background:#fff;min-height:100dvh}.student-header{justify-content:space-between;align-items:center;gap:20px;max-width:1440px;min-height:76px;margin:auto;padding:20px 40px;display:flex}.student-header .wordmark{font-size:1.45rem}.student-header .wordmark:before{display:none}.preview-controls{color:var(--muted);align-items:center;gap:20px;font-size:.78rem;display:flex}.student-shell main{padding-bottom:64px}.student-shell .lesson-content{width:100%}.student-shell .lesson-hero{isolation:isolate;border-radius:0;width:min(1440px,100%);height:420px;margin:0 auto 64px;display:block;position:relative;overflow:hidden}.student-shell .lesson-hero img{object-fit:cover;object-position:center 56%;z-index:-2;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.student-shell .lesson-hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#0f2217cc,#0f221738 75%);position:absolute;inset:0}.student-shell .lesson-heading{color:#fff;align-items:end;padding:48px 64px;display:flex;position:absolute;inset:0}.student-shell .lesson-heading h1{text-wrap:balance;letter-spacing:-.04em;text-shadow:0 2px 12px #0003;max-width:18ch;margin:0;font-size:clamp(2.4rem,4.7vw,4.5rem);line-height:1.08}.student-shell .lesson-workspace{width:min(1320px,100% - 80px);margin:0 auto;scroll-margin-top:32px}.student-shell .reading{width:min(100%,850px);max-width:none;margin:0 auto}.student-shell .story-text{white-space:pre-line;max-width:65ch;font-size:1.5rem;line-height:1.85}.student-shell .story-text p{margin:0 0 1.25em}.student-shell .word{font:inherit;line-height:inherit;min-width:0;min-height:0;color:inherit;vertical-align:baseline;touch-action:manipulation;background:0 0;border:0;border-radius:2px;padding:0;text-decoration:none;display:inline}.student-shell .word.new,.student-shell .word.review{text-underline-offset:5px;font-weight:700;-webkit-text-decoration:underline #93af96;text-decoration:underline #93af96;text-decoration-thickness:1.5px}.student-shell .word:hover,.student-shell .word:focus-visible{color:#244c30;background:#edf3ea}.student-shell .word.playing{background:#e1edcf}.student-shell .review-inline{flex-wrap:wrap;align-items:baseline;gap:10px;margin:32px 0;font-size:1rem;display:flex}.student-shell .review-inline>span{color:var(--muted);font-size:.85rem}.student-shell .reading-end{border-top:1px solid var(--line);margin-top:38px;padding-top:24px}.student-shell .activity:empty{display:none}.student-shell .answering .lesson-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:64px;display:grid}.student-shell .answering .reading{width:100%;margin:0}.student-shell .answering .reading-end{display:none}.student-shell .activity{width:100%;max-width:none;margin:0;scroll-margin-top:24px;position:sticky;top:32px}.student-shell .question-form{border:0;border-left:1px solid var(--line);background:0 0;border-radius:0;padding:0 0 0 40px}.student-shell .question-count{color:var(--muted);margin:0 0 16px;font-size:.85rem}.student-shell .question-form h2{letter-spacing:-.02em;margin:0 0 28px;font-size:1.55rem;line-height:1.4}.student-shell .question-form textarea{resize:vertical;background:#fff;min-height:140px;font-size:1.05rem}.student-shell .answer-inputs{border:0;min-width:0;margin:0;padding:0}.student-shell .choices{gap:12px;margin:0 0 16px}.student-shell .choice{background:#fff;border-radius:6px;padding:15px;line-height:1.5}.student-shell .choice:has(input:checked){background:#f1f6ee}.student-shell .question-back{border-top:1px solid var(--line);margin-top:24px;padding-top:14px}.student-shell .question-back .button{padding-left:0}.student-shell .button{border-radius:6px}.student-shell .session-status:not(:empty){max-width:1240px;margin:24px auto;padding:0 40px}.student-shell .hint{background:#f4f6ee;border-radius:6px;padding:20px}.student-shell .hint p{font-size:1rem}.student-entry{width:min(540px,100% - 48px);margin:90px auto 0}.student-entry h1{margin-bottom:32px;font-size:2.2rem;line-height:1.2}.student-shell .finish{text-align:left;border:0;padding:0}.student-shell .finish h1{font-size:clamp(2rem,4vw,3.5rem)}.word-tooltip{z-index:20;color:#263630;pointer-events:auto;background:#fff;border:1px solid #d4ddd4;border-radius:7px;max-width:min(340px,100vw - 16px);padding:12px 16px;font-size:1rem;line-height:1.5;position:fixed;box-shadow:0 5px 22px #213b2421}.word-dialog{background:#fff;border-radius:12px;max-width:580px}.word-dialog .dialog-top h2{font-size:1.8rem}.word-source{color:var(--muted);margin-top:24px;display:block}.entry-link-controls{gap:12px;max-width:500px;margin:16px auto;display:grid}.entry-link-controls .entry-link{width:100%;font-size:.8rem}@media (width>=900px) and (height<=700px){.student-shell .activity{position:static}}@media (width<=899px){.student-header{padding:16px 24px}.preview-controls{gap:10px;font-size:.7rem}.preview-controls .text-link{font-size:.75rem}.student-shell .lesson-hero{height:330px;margin-bottom:36px}.student-shell .lesson-heading{padding:32px}.student-shell .lesson-workspace{width:calc(100% - 48px)}.student-shell .answering .lesson-workspace{display:block}.student-shell .story-text{font-size:1.3rem;line-height:1.85}.student-shell .activity{margin-top:36px;position:static}.student-shell .question-form{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.student-shell .question-form h2{font-size:1.4rem}.student-entry{margin-top:48px}}@media (prefers-reduced-motion:reduce){.student-shell *{scroll-behavior:auto!important;transition:none!important}}@media (width>=900px){.student-shell .answering .lesson-workspace{min-height:calc(100dvh - 64px)}}.student-shell .session-status:not(:empty){z-index:4;background:#fff;padding-block:8px;position:sticky;top:0}
