/* All lessons share one reading order; diagrams keep their internal geometry. */
body.lesson-focus{background:#fff;color:#273247}
.lesson-focus .app-header{max-width:920px;margin:auto;padding:max(18px,env(safe-area-inset-top)) 28px 18px;border-bottom:1px solid #eeeaf2;background:#fff;box-shadow:none;position:static;flex-wrap:wrap;height:auto;min-height:78px}
.lesson-focus .app-header .main-nav,.lesson-focus .app-header .install{display:none}
.lesson-focus .app-header .brand{margin-right:auto}
.lesson-focus .app-header .brand img{width:36px;height:36px}
.lesson-focus .app-header .brand small{display:none}
.lesson-focus .app-header .brand span{font-size:17px}
.lesson-focus :is(.bio-page,.scene){width:100%;max-width:816px;min-height:0;margin:auto;padding:32px 28px 72px;background:none;overflow:visible}
.lesson-focus .scene:before{display:none}
.lesson-focus :is(.bio-heading,.scene-top,.atlas-heading){text-align:left;margin:32px 0 36px;padding:0;max-width:none}
.lesson-focus :is(.bio-heading,.scene-top,.atlas-heading) h1{font-size:clamp(30px,4vw,42px);line-height:1.18;letter-spacing:-1.1px;margin:16px 0}
.lesson-focus :is(.bio-heading,.scene-top,.atlas-heading)>p{font-size:17px;line-height:1.8;color:#626879;max-width:66ch}
.lesson-focus .eyebrow{padding:0;background:none;border-radius:0;color:#796991;font-size:11px;letter-spacing:.09em}
.lesson-focus .surface{background:#fff;box-shadow:none;border:1px solid #e7e4ec;border-radius:22px}
.lesson-focus :is(.primary,.bio-controls .primary){min-height:52px;font-size:16px;line-height:1.5;padding:13px 24px;border-radius:18px;box-shadow:0 3px 0 #4f359c;border:1px solid #7655b8;background:#7957bd;white-space:normal;max-width:100%}
.lesson-focus .primary .icon{width:21px;height:21px}
.lesson-focus .quiet{font-size:14px;border-radius:14px;background:#faf9fc;box-shadow:none}
.lesson-focus button+.fine-print{margin-top:14px}
.lesson-focus :is(.bio-topline,.math-time-note){font-size:12px;color:#7a7485}
.lesson-focus :is(.bio-topline,.math-time-note){margin-bottom:20px}
.lesson-focus .math-time-note{text-align:left}
.lesson-outline{border-bottom:1px solid #ece8f1;margin:0 0 30px;padding:0 0 14px;color:#676174}
.lesson-outline>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;cursor:pointer;list-style:none;font-size:13px}
.lesson-outline>summary::-webkit-details-marker{display:none}
.lesson-outline>summary strong{display:block;font-size:15px;color:#504261;margin-top:4px}
.lesson-outline>summary>span:last-child{display:flex;gap:8px;align-items:center;font-size:12px;white-space:nowrap}
.lesson-outline>summary .icon{width:17px;height:17px;transition:transform .18s}
.lesson-outline[open]>summary .icon{transform:rotate(180deg)}
.lesson-outline :is(.bio-steps,.steps){display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:14px 0 0;padding:0}
.lesson-outline :is(.bio-steps,.steps) button{min-height:44px}
.lesson-focus .app-header>.lesson-outline{order:3;flex-basis:100%;margin:0;padding:12px 0 0;border:0}
.lesson-focus :is(.bio-intro,.cells-intro,.math-intro){display:flex;flex-direction:column;align-items:stretch;gap:28px;min-height:0;margin:0;padding:14px 0 28px}
.lesson-focus :is(.bio-intro,.cells-intro,.math-intro) h1{font-size:clamp(34px,5vw,48px);line-height:1.15;letter-spacing:-1.5px;margin:20px 0}
.lesson-focus :is(.bio-intro,.cells-intro,.math-intro) .lead{font-size:21px;line-height:1.65;margin-bottom:20px}
.lesson-focus :is(.bio-intro,.cells-intro,.math-intro) p{max-width:66ch;line-height:1.8}
.lesson-focus :is(.bio-intro-art,.cells-intro-art){height:260px;max-width:380px;width:100%;margin:auto}
.lesson-focus .bio-intro-art>.bio-mira{height:240px}
.lesson-focus :is(.bio-hello,.cells-hello){font-size:13px;padding:12px 18px;bottom:0}
.lesson-focus .math-intro-world{width:100%;aspect-ratio:1.7;border-radius:20px}
.lesson-focus .math-intro-world>img:first-child{border-radius:20px;box-shadow:none;object-fit:contain}
.lesson-focus .math-intro-world>.bio-mira,.lesson-focus .math-intro-world>span{display:none}
.lesson-focus :is(.bio-reading-layout,.bio-two-column,.math-reading-layout,.math-ratio-workspace,.cells-recall,.cells-workspace,.cells-compare-grid,.bio-samples,.question-layout,.explanation-scene,.atlas-layout,.notebook){display:grid;grid-template-columns:minmax(0,1fr);gap:32px;width:100%;max-width:none;align-items:start}
.lesson-focus :is(.bio-reading-layout,.math-reading-layout)>:is(div,aside){display:block}
.lesson-focus :is(.bio-reading-layout,.math-reading-layout)>:is(div,aside)>*+*{margin-top:32px}
.lesson-focus .bio-sample{display:block;padding:28px!important}
.lesson-focus .bio-sample>p{min-height:0}
.lesson-focus .bio-specimen{height:140px;max-width:280px;margin-bottom:24px}
.lesson-focus :is(.bio-reading,.cells-reading){padding:0!important;border:0;background:none}
.lesson-focus .bio-reading>section{padding:12px 0 32px;margin-bottom:24px;gap:18px;border-bottom:1px solid #eeeaf2}
.lesson-focus .bio-reading>section:last-of-type{margin-bottom:0}
.lesson-focus :is(.bio-reading,.cells-reading,.math-article) p{font-size:18px;line-height:1.9;color:#414c60}
.lesson-focus :is(.bio-reading,.cells-reading,.math-article) h2{font-size:26px;line-height:1.35}
.lesson-focus :is(.bio-guide,.explanation-feedback){background:#f7f5fa;border:0;border-radius:18px;padding:16px 20px;margin:32px 0;gap:16px;align-items:center}
.lesson-focus .bio-guide>.bio-mira{width:56px;height:70px;min-width:56px;object-fit:cover;object-position:50% 10%;border-radius:16px;filter:none}
.lesson-focus .bio-guide>div{padding:0;min-width:0}
.lesson-focus .bio-guide strong{font-size:12px;color:#736481}
.lesson-focus .bio-guide p{font-size:15px;line-height:1.8;margin-top:5px}
.lesson-focus :is(.bio-panel,.math-question,.cells-question){padding:28px!important;margin:28px 0}
.lesson-focus :is(.bio-panel,.math-question,.cells-question)>h2{font-size:24px;line-height:1.45;margin-bottom:24px}
.lesson-focus .bio-choice{padding:18px;background:#fff;border-color:#e3dfea;box-shadow:none;border-radius:16px}
.lesson-focus .bio-choice.selected{background:#f2edf9;border-color:#967bbb}
.lesson-focus .bio-choice strong{font-size:16px;line-height:1.65}
.lesson-focus :is(.bio-reading-layout,.bio-two-column,.cells-recall,.cells-workspace) .bio-panel:first-child{margin-top:0}
.lesson-focus .bio-feedback{margin-top:24px;padding:22px;line-height:1.8}
.lesson-focus .lesson-direction{background:#f7f5fa;border:0;border-radius:16px;font-size:14px;padding:18px;margin:24px 0}
.lesson-focus .lesson-next-help{margin:40px 0 0;border:0;border-top:1px solid #eae6ee;border-radius:0;background:none;padding:24px 0 0;box-shadow:none}
.lesson-focus .lesson-next-help.ready{background:none}
.lesson-focus .bio-controls{margin-top:20px;padding-top:0;align-items:center;gap:20px}
.lesson-focus :is(.bio-child-feedback>div,.bio-assessment>div){display:flex;flex-direction:column;align-items:stretch;gap:12px}
.lesson-focus .bio-child-feedback{margin-top:40px;background:#faf9fc}
.lesson-focus .bio-child-feedback fieldset{margin:16px 0}
.lesson-focus .bio-notebook{background:#fffcf7!important;padding:28px!important}
.lesson-focus .bio-notebook textarea{background:#fff}
.lesson-focus .bio-label{margin:28px 0}
.lesson-focus .math-playground{background:#fbfafc;box-shadow:none;border-color:#e9e4ef;margin:0}
.lesson-focus .math-play-top{font-size:13px}
.lesson-focus .math-investigate{margin:40px 0}
.lesson-focus .math-worked{background:#faf8fd}
.lesson-focus .math-article{padding:0!important;border:0;margin:0 0 36px}
.lesson-focus .math-article>p{margin:24px 0}
.lesson-focus .cells-microscope .cells-instruments{display:contents}
.lesson-focus .cells-microscope .cells-samples{grid-row:auto;grid-template-columns:1fr;margin:0}
.lesson-focus .cells-microscope .cells-scope,.lesson-focus .cells-microscope .cells-adjust{grid-row:auto}
.lesson-focus .cells-samples>button{flex-direction:row;text-align:left;min-height:64px;padding:10px 14px}
.lesson-focus .cells-samples small{display:block}
.lesson-focus .cells-samples .icon{position:static}
.lesson-focus .cells-stage{max-height:400px}
.lesson-focus .cells-stage>img{max-height:400px;object-fit:contain}
.lesson-focus .cells-mark-stage{max-width:640px;margin:auto}
.lesson-focus .cells-unknown>img{max-height:420px;object-fit:contain}
.lesson-focus .cells-specimen>img{max-height:320px}
.lesson-focus .cells-instruments{display:block}
.lesson-focus .cells-adjust{margin:0}
.lesson-focus .cells-recall>div{padding:0}
.lesson-focus .cells-scope{box-shadow:none;border-radius:22px}
.lesson-focus .cells-fold{background:#fffcf5!important}
.lesson-focus .cells-checklist{line-height:1.8}
.lesson-focus .arrival{display:flex;flex-direction:column;gap:32px}
.lesson-focus .arrival-world{min-height:0;height:300px;border-radius:24px;background:url('../lake/assets/lake-environment.png') center/cover}
.lesson-focus .arrival-lumi{max-height:230px;width:38%;left:auto;right:15px;top:auto;bottom:0}
.lesson-focus .arrival-copy{display:block;padding:0;margin:0;background:none;box-shadow:none;max-width:none;border-radius:0}
.lesson-focus .arrival-copy h1{font-size:44px;margin:20px 0}
.lesson-focus .arrival-copy h2{font-size:27px;line-height:1.4}
.lesson-focus .arrival-copy .lead{margin:24px 0;font-size:19px}
.lesson-focus .arrival-copy .speech{display:flex;align-items:center;gap:16px;margin:24px 0;padding:16px 20px;background:#f7f5fa;border:0;border-radius:18px;box-shadow:none}
.lesson-focus .arrival-copy .speech .avatar{position:static;width:50px;height:70px;object-fit:contain;clip-path:none;flex-shrink:0}
.lesson-focus .arrival-copy .speech p{font-size:16px;line-height:1.65}
.lesson-focus .arrival-atlas{margin-top:28px}
.lesson-focus .prediction-stage{padding:0;min-height:0;display:block}
.lesson-focus .prediction-lumi{display:none}
.lesson-focus .chambers{width:100%;gap:24px}
.lesson-focus .scene-top .back{position:static;margin-bottom:24px}
.lesson-focus .scene-footer{padding:20px 0 0;align-items:stretch;flex-direction:column}
.lesson-focus .model-note{padding:24px 0;margin:0;font-size:14px;line-height:1.7}
.lesson-focus .experiment-scene{display:block}
.lesson-focus .experiment-world{padding:0;min-height:0;background:none;display:block}
.lesson-focus .experiment-lumi{display:none}
.lesson-focus .experiment-bottom{position:static;display:flex;flex-direction:column;align-items:stretch;gap:20px;margin:24px 0}
.lesson-focus .experiment-panel{padding:0;background:none;display:block}
.lesson-focus .graph-card{box-shadow:none;background:#faf9fc;border:1px solid #e7e4ec;margin:28px 0}
.lesson-focus .question-scene>.back{position:static;margin-bottom:28px}
.lesson-focus .question-card{padding:0;background:none;border:0;box-shadow:none}
.lesson-focus .question-card h1{font-size:38px;margin:20px 0}
.lesson-focus .question-card fieldset{margin:32px 0}
.lesson-focus .question-companion{display:block;margin:0}
.lesson-focus .question-companion>.lumi{display:none}
.lesson-focus .question-companion .hint-area{width:100%;max-width:none;margin:0 0 24px}
.lesson-focus .question-companion>.speech{max-width:none}
.lesson-focus .evidence-mini{margin:24px 0;background:#f7faf8}
.lesson-focus .process-section{padding:0}
.lesson-focus .process-section h1{font-size:38px;margin:28px 0}
.lesson-focus .process-row{grid-template-columns:1fr;padding:24px;gap:20px;background:#faf9fc;margin:24px 0}
.lesson-focus .process-specimen{max-width:260px;margin:auto}
.lesson-focus .explanation-feedback .lumi{width:70px;height:80px}
.lesson-focus .explanation-feedback{height:auto;min-height:0}
.lesson-focus .explanation-feedback .speech{max-width:none;flex:1;background:none;border:0;padding:0;box-shadow:none}
.lesson-focus .article-section{padding:0}
.lesson-focus .article-card{background:#fff;box-shadow:none;border:1px solid #e7e4ec;padding:28px}
.lesson-focus .atlas-companion{display:none}
.lesson-focus .notebook{background:#fffcf7;border:1px solid #e8dfd2;border-radius:24px;padding:28px;min-height:0;box-shadow:none}
.lesson-focus .notebook-page{padding:0}
.lesson-focus .notebook-page+.notebook-page{border-top:1px solid #e8dfd2;padding-top:32px}
.lesson-focus .atlas-bottom{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:24px 0}
.lesson-focus .atlas-stamp{display:none}
@media(max-width:600px){
 .lesson-focus .app-header{padding:max(12px,env(safe-area-inset-top)) 20px 12px;gap:10px}
 .lesson-focus :is(.bio-page,.scene){padding:20px 20px 48px}
 .lesson-focus :is(.bio-heading,.scene-top,.atlas-heading){margin:20px 0 28px}
 .lesson-focus :is(.bio-heading,.scene-top,.atlas-heading)>p{font-size:16px}
 .lesson-focus :is(.bio-reading,.cells-reading,.math-article) p{font-size:17px;line-height:1.85}
 .lesson-focus :is(.bio-panel,.math-question,.cells-question,.bio-sample,.bio-notebook){padding:20px!important}
 .lesson-focus .bio-guide{padding:16px;gap:12px}
 .lesson-focus .bio-guide p{font-size:14px}
 .lesson-focus .bio-guide>.bio-mira{width:44px;min-width:44px;height:60px}
 .lesson-focus .bio-controls{flex-direction:column;align-items:stretch}
 .lesson-focus .bio-controls>span:empty{display:none}
 .lesson-focus .bio-controls>.quiet{align-self:flex-start}
 .lesson-focus .chambers{gap:14px}
 .lesson-focus .notebook{padding:20px}
 .lesson-focus .math-intro-world{aspect-ratio:1.5}
 .lesson-focus .bio-reading>section{display:block}
 .lesson-focus .bio-reading-number{display:block;margin-bottom:14px}
}
@media(prefers-reduced-motion:reduce){.lesson-outline>summary .icon{transition:none}}
