.lesson-blocks{--gutter: 28px;max-width:760px;margin:0 auto;padding:0 var(--gutter)}.lesson-blocks .block{margin-bottom:56px;position:relative}.lesson-blocks .block:last-child{margin-bottom:0}.lesson-blocks .tone-coral{--tone: var(--coral-text);--tone-soft: var(--cream-dark)}.lesson-blocks .tone-teal{--tone: var(--teal);--tone-soft: var(--cream-dark)}.lesson-blocks .tone-purple{--tone: var(--purple);--tone-soft: var(--cream)}.lesson-blocks .tone-gold{--tone: var(--amber);--tone-soft: var(--cream-dark)}.lesson-blocks .tone-green{--tone: var(--success);--tone-soft: var(--cream-dark)}.lesson-blocks .tone-ink{--tone: var(--ink-mid);--tone-soft: var(--cream-dark)}.lesson-blocks .lesson-index{position:sticky;top:var(--chrome-top, var(--nav-h, 64px));z-index:6;margin:0 calc(-1 * var(--gutter)) 26px;background:var(--cream);transition:top .24s ease}.lesson-blocks .ix-pills{display:flex;align-items:stretch;gap:2px;padding:0 max(6px,calc(var(--gutter) - 12px));overflow-x:auto;scrollbar-width:none}.lesson-blocks .ix-pills::-webkit-scrollbar{display:none}.lesson-blocks .ix-pill{position:relative;flex:1 1 0;min-width:58px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 4px 8px;border:0;border-radius:var(--radius-panel);background:none;font-family:var(--font-body);text-decoration:none;color:var(--ink-mid);cursor:pointer;transition:background .18s ease,color .18s ease}.lesson-blocks .ix-icon{font-size:var(--text-base);line-height:1.15}.lesson-blocks .ix-name{font-size:var(--text-xs);font-weight:600;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lesson-blocks .ix-pill.is-here{background:var(--tone-soft);color:var(--tone)}.lesson-blocks .ix-pill:hover:not(.is-here){background:var(--cream-dark)}.lesson-blocks .ix-tick{position:absolute;right:8px;top:6px;width:12px;height:12px;border-radius:50%;opacity:0;background:var(--success)}.lesson-blocks .ix-pill.is-done .ix-tick{opacity:1}.lesson-blocks .ix-pill.is-done .ix-tick:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:var(--surface);font-size:var(--text-xs);font-weight:700}.lesson-blocks .ix-pill.is-locked{color:var(--ink-soft)}.lesson-blocks .ix-pill.is-locked .ix-icon{filter:grayscale(1);opacity:.55}.lesson-blocks .ix-lock{position:absolute;right:7px;top:6px;width:11px;height:11px}.lesson-blocks .ix-lock svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .ix-pill.is-asked{background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-text)}.lesson-blocks .ix-track{display:block;height:2px;background:var(--border)}.lesson-blocks .ix-track>span{display:block;height:100%;width:0;background:var(--success);transition:width .3s ease}.lesson-blocks .ix-resume{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:8px 12px;border-radius:var(--radius-panel);background:var(--surface);border:1px dashed var(--teal);font-size:var(--text-sm);color:var(--ink)}.lesson-blocks .resume-restart{margin-left:auto;border:none;background:none;padding:0;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--teal);text-decoration:underline;text-underline-offset:3px;cursor:pointer}@media(min-width:560px){.lesson-blocks .ix-pill{flex-direction:row;gap:7px;padding:10px 14px}.lesson-blocks .ix-name{font-size:var(--text-sm)}.lesson-blocks .ix-tick,.lesson-blocks .ix-lock{position:relative;inset:auto}.lesson-blocks .ix-lock{width:12px;height:12px}}.lesson-blocks .chapter{scroll-margin-top:80px}.lesson-blocks.has-map:not(.is-accordion) .chapter+.chapter{margin-top:56px;padding-top:40px;border-top:1px solid var(--border)}.lesson-blocks .chapter[hidden]{display:none}.lesson-blocks .chapter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:22px;padding-bottom:10px;border-bottom:1px solid var(--border)}.lesson-blocks .ch-head-text{min-width:0}.lesson-blocks .ch-marks{display:flex;align-items:center;gap:6px;flex:0 0 auto}.lesson-blocks .chapter-head h2{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:var(--text-title);line-height:1.2;margin:2px 0 4px;color:var(--ink)}.lesson-blocks .chapter-icon{font-size:.9em}.lesson-blocks .chapter-blurb{margin:0;font-size:var(--text-sm);color:var(--ink-mid)}.lesson-blocks.is-accordion .chapter-head h2{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lesson-blocks.is-accordion .chapter-head{margin-bottom:20px;padding-bottom:0;border-bottom:0}.lesson-blocks.is-accordion .chapter-blurb{font-size:var(--text-sm);line-height:1.55;color:var(--ink-mid)}.lesson-blocks .chapter-foot{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin-top:44px;padding-top:24px;border-top:1px solid var(--border)}.lesson-blocks .ch-prev,.lesson-blocks .ch-next{display:grid;gap:1px;flex:1 1 140px;padding:11px 16px;border-radius:var(--radius-panel);font-family:var(--font-body);text-align:left;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.lesson-blocks .ch-prev{border:1px solid var(--border);background:var(--surface);color:var(--ink-mid)}.lesson-blocks .ch-next{border:1px solid var(--tone);background:var(--tone);color:var(--surface);text-align:right}.lesson-blocks .ch-next.is-last{background:var(--success);border-color:var(--success)}.lesson-blocks .ch-prev:hover,.lesson-blocks .ch-next:hover{transform:translateY(-1px);box-shadow:none}.lesson-blocks .ch-dir{font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.8}.lesson-blocks .ch-name{font-family:var(--font-display);font-size:var(--text-base);font-weight:600}.lesson-blocks .depth-chip{display:inline-flex;align-items:center;gap:5px;margin:0 0 8px;padding:3px 11px 3px 8px;border-radius:var(--radius-pill);background:var(--teal);color:var(--surface);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em}.lesson-blocks .depth-icon{display:inline-flex;flex:none;width:1.05em;height:1.05em}.lesson-blocks .depth-icon svg{width:100%;height:100%;display:block}.lesson-blocks .depth-chip .depth-icon{width:13px;height:13px}.lesson-blocks .depth-pick{margin:0 0 34px;padding:14px 16px 12px;border:1px solid var(--border);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--teal) 8%,transparent)}.lesson-blocks .dp-label{margin:0 0 9px;font-family:var(--font-hand);font-size:var(--text-lg);line-height:1.2;color:var(--teal)}.lesson-blocks .dp-rungs{display:flex;gap:8px;flex-wrap:wrap}.lesson-blocks .dp-rung{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1 1 0;min-width:72px;padding:9px 6px 8px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);color:var(--ink-mid);font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;line-height:1.2;cursor:pointer;transition:border-color .18s,color .18s,background .18s}.lesson-blocks .dp-rung .depth-icon{width:24px;height:24px}.lesson-blocks .dp-rung:hover{border-color:var(--teal);color:var(--teal)}.lesson-blocks .dp-rung.is-on{border-color:var(--teal);background:var(--teal);color:var(--surface)}.lesson-blocks .dp-said{margin:9px 0 0;font-size:var(--text-sm);line-height:1.5;color:var(--ink-mid)}.lesson-blocks .chapter-body>[hidden]{display:none!important}.lesson-blocks .ch-further{margin-top:46px;padding-top:30px;border-top:1px solid var(--border)}.lesson-blocks .further-head{display:flex;align-items:center;gap:9px;margin:0 0 26px;font-family:var(--font-display);font-size:var(--text-lg);color:var(--teal)}.lesson-blocks .further-head .depth-icon{width:22px;height:22px}@media(max-width:480px){.lesson-blocks .dp-rung{min-width:0;font-size:var(--text-xs);padding:8px 4px 7px}.lesson-blocks .dp-rung .depth-icon{width:21px;height:21px}}.lesson-blocks .block.card{padding:30px 30px 34px;border-radius:var(--radius-panel);background:var(--surface);border:1px solid var(--border);box-shadow:none}.lesson-blocks [hidden]{display:none!important}.lesson-blocks .rich h2,.lesson-blocks .checklist h2,.lesson-blocks .steps h2,.lesson-blocks .hotspot h2,.lesson-blocks .compare h2,.lesson-blocks .video h2,.lesson-blocks .download h2,.lesson-blocks .gallery h2{font-family:var(--font-display);font-size:var(--text-title);color:var(--ink);line-height:1.25;margin-bottom:16px}.lesson-blocks .steps h2,.lesson-blocks .hotspot h2{margin-bottom:14px}.lesson-blocks .checklist h2,.lesson-blocks .gallery h2{margin-bottom:18px}.lesson-blocks .steps .intro,.lesson-blocks .hotspot .intro{font-size:var(--text-base);line-height:1.8;color:var(--ink-mid);margin-bottom:22px}.lesson-blocks .steps .intro{margin-bottom:24px}.lesson-blocks .compare .caption,.lesson-blocks .video .caption{margin-top:14px;font-size:var(--text-sm);line-height:1.7;color:var(--ink-mid)}.lesson-blocks .prose p{font-size:var(--text-base);line-height:1.85;color:var(--ink-mid);margin-bottom:18px}.lesson-blocks .prose p:last-child{margin-bottom:0}.lesson-blocks .prose h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin:26px 0 12px}.lesson-blocks .prose ul{margin:0 0 18px 20px}.lesson-blocks .prose li{font-size:var(--text-base);line-height:1.8;color:var(--ink-mid);margin-bottom:8px}.lesson-blocks .prose strong{color:var(--ink);font-weight:600}.lesson-blocks .prose em{font-style:italic}.lesson-blocks .prose a{color:var(--teal);border-bottom:1px solid color-mix(in srgb,var(--teal) 40%,transparent)}.lesson-blocks .prose a:hover{border-bottom-color:var(--teal)}.lesson-blocks .callout{display:flex;gap:16px;padding:20px 22px;border-radius:var(--radius-panel);background:linear-gradient(135deg,var(--surface) 0%,var(--cream-dark) 100%);border:1px solid var(--border);border-left-width:4px}.lesson-blocks .callout.tone-idea{border-left-color:var(--purple)}.lesson-blocks .callout.tone-science{border-left-color:var(--teal)}.lesson-blocks .callout.tone-tip{border-left-color:var(--coral)}.lesson-blocks .callout.tone-safety{border-left-color:var(--amber)}.lesson-blocks .callout .icon{font-size:var(--text-xl);line-height:1.4;flex:0 0 auto}.lesson-blocks .callout>div>strong{display:block;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:6px}.lesson-blocks .callout p strong{color:var(--ink);font-weight:600}.lesson-blocks .callout p{margin:0;font-size:var(--text-base);line-height:1.75;color:var(--ink-mid)}.lesson-blocks .callout a{display:inline-block;margin-top:12px;font-family:var(--font-hand);font-size:var(--text-lg);color:var(--teal);border-bottom:2px solid transparent}.lesson-blocks .callout a:hover{border-bottom-color:var(--teal)}.lesson-blocks .checklist ul{list-style:none;margin:0;padding:0}.lesson-blocks .checklist li{border-bottom:1px solid var(--border)}.lesson-blocks .checklist li:last-child{border-bottom:0}.lesson-blocks .checklist label{display:flex;align-items:flex-start;gap:14px;padding:15px 4px;cursor:pointer}.lesson-blocks .checklist input{width:22px;height:22px;margin-top:1px;flex:0 0 22px;accent-color:var(--teal);cursor:pointer}.lesson-blocks .checklist span{font-size:var(--text-base);line-height:1.6;color:var(--ink);transition:color .2s,text-decoration-color .2s}.lesson-blocks .checklist li.is-done span{color:var(--ink-mid);text-decoration:line-through;text-decoration-color:var(--border)}.lesson-blocks .tip{display:flex;gap:10px;margin-top:18px;padding:14px 16px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--coral) 8%,transparent);font-family:var(--font-hand);font-size:var(--text-lg);line-height:1.5;color:var(--danger)}.lesson-blocks .tip-mark{flex:0 0 auto}.lesson-blocks .tip-body{min-width:0}.lesson-blocks .as-mark{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:5px;border:1.5px solid color-mix(in srgb,var(--as-tint) 35%,transparent);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--as-tint) 7%,transparent);color:var(--as-tint);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease}.lesson-blocks .as-mark:hover{background:color-mix(in srgb,var(--as-tint) 14%,transparent);border-color:var(--as-tint)}.lesson-blocks .as-mark svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .as-word{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(min-width:641px){.lesson-blocks .as-mark{padding:5px 12px 5px 9px}.lesson-blocks .as-word{position:static;width:auto;height:auto;clip-path:none;overflow:visible}}.lesson-blocks .as-mark.tone-purple{--as-tint: var(--purple)}.lesson-blocks .as-mark.tone-slate{--as-tint: var(--ink-mid)}.lesson-blocks .as-mark.tone-gold{--as-tint: var(--amber)}.lesson-blocks .as-sheet{position:fixed;inset:0;z-index:300}.lesson-blocks .as-sheet[hidden]{display:none}.lesson-blocks .as-sheet.tone-purple{--as-tint: var(--purple)}.lesson-blocks .as-sheet.tone-slate{--as-tint: var(--ink-mid)}.lesson-blocks .as-sheet.tone-gold{--as-tint: var(--amber)}.lesson-blocks .as-scrim{position:absolute;inset:0;background:color-mix(in srgb,var(--ground-dark) 40%,transparent)}.lesson-blocks .as-box{position:absolute;left:50%;bottom:0;transform:translate(-50%);width:min(620px,100%);max-height:min(86vh,780px);overflow-y:auto;padding:0 18px 22px;border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--cream);box-shadow:none}@media(min-width:700px){.lesson-blocks .as-box{top:50%;bottom:auto;transform:translate(-50%,-50%);border-radius:var(--radius-panel)}}.lesson-blocks .as-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:10px;padding:16px 0 12px;background:var(--cream);border-bottom:1px solid var(--border)}.lesson-blocks .as-head strong{flex:1;min-width:0;font-family:var(--font-display);font-size:var(--text-base);color:var(--ink)}.lesson-blocks .as-back,.lesson-blocks .as-close{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-mid);font-family:var(--font-body);font-size:var(--text-sm);padding:5px 11px;cursor:pointer}.lesson-blocks .as-close{font-size:var(--text-lg);line-height:1;padding:3px 10px 5px}.lesson-blocks .as-back:hover,.lesson-blocks .as-close:hover{border-color:var(--as-tint);color:var(--as-tint)}.lesson-blocks .as-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}.lesson-blocks .as-list[hidden]{display:none}.lesson-blocks .as-pick{display:block;width:100%;text-align:left;padding:13px 15px;border:1px solid var(--border);border-left:4px solid color-mix(in srgb,var(--as-tint) 45%,transparent);border-radius:var(--radius-panel);background:var(--surface);cursor:pointer}.lesson-blocks .as-pick:hover{border-left-color:var(--as-tint)}.lesson-blocks .as-pick-name{display:block;font-family:var(--font-display);font-size:var(--text-base);color:var(--ink)}.lesson-blocks .as-pick-meta{display:block;margin-top:2px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--as-tint)}.lesson-blocks .as-pick-blurb{display:block;margin-top:5px;font-size:var(--text-sm);line-height:1.55;color:var(--ink-mid)}.lesson-blocks .as-detail .technique,.lesson-blocks .as-detail .philosophy{margin:14px 0 0}.lesson-blocks .as-detail[hidden]{display:none}.lesson-blocks .as-detail .technique>h3,.lesson-blocks .as-detail .philosophy>h3{display:none}.lesson-blocks .as-detail .quiz>.kicker{display:none}.lesson-blocks .as-detail .quiz{margin:14px 0 0}.lesson-blocks .technique{margin:26px 0;padding:20px 22px;border-radius:var(--radius-panel);border:1.5px solid color-mix(in srgb,var(--purple) 40%,transparent);border-left-width:5px;background:color-mix(in srgb,var(--purple) 8%,transparent)}.lesson-blocks .technique .tq-kicker{display:flex;align-items:center;gap:7px;margin:0 0 4px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--purple)}.lesson-blocks .technique .tq-mark svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .technique h3{margin:0;font-family:var(--font-display);font-size:var(--text-xl);line-height:1.25;color:var(--ink)}.lesson-blocks .technique .tq-media{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}.lesson-blocks .technique .tq-media span{padding:2px 9px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--purple) 16%,transparent);font-family:var(--font-body);font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks .technique .tq-note{margin:12px 0 0;font-family:var(--font-hand);font-size:var(--text-lg);line-height:1.45;color:var(--ink-mid)}.lesson-blocks .technique .tq-body{margin:14px 0 0;display:grid;gap:2px 14px}.lesson-blocks .technique .tq-body dt{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mid);margin-top:10px}.lesson-blocks .technique .tq-body dd{margin:0;font-size:var(--text-base);line-height:1.65;color:var(--ink-mid)}.lesson-blocks .technique .tq-watch{margin:16px 0 0;padding:11px 13px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid color-mix(in srgb,var(--purple) 16%,transparent);font-size:var(--text-sm);line-height:1.6;color:var(--ink-mid)}.lesson-blocks .technique .tq-watch strong:first-child{color:var(--purple);letter-spacing:.02em}@media(min-width:700px){.lesson-blocks .technique .tq-body{grid-template-columns:auto 1fr}.lesson-blocks .technique .tq-body dt{margin-top:0}.lesson-blocks .technique .tq-body dt:not(:first-of-type),.lesson-blocks .technique .tq-body dd:not(:first-of-type){margin-top:8px}}.lesson-blocks .philosophy{margin:26px 0;padding:20px 22px;border-radius:var(--radius-panel);border:1.5px solid color-mix(in srgb,var(--ink-mid) 40%,transparent);border-left-width:5px;background:color-mix(in srgb,var(--ink-mid) 8%,transparent)}.lesson-blocks .philosophy .ph-kicker{display:flex;align-items:center;gap:7px;margin:0 0 4px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mid)}.lesson-blocks .philosophy .ph-mark svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .philosophy h3{margin:0 0 10px;font-family:var(--font-display);font-size:var(--text-xl);line-height:1.25;color:var(--ink)}.lesson-blocks .philosophy .prose>*:first-child{margin-top:0}.lesson-blocks .philosophy .prose>*:last-child{margin-bottom:0}.lesson-blocks .steps .rail{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--border)}.lesson-blocks .steps .dots{display:flex;gap:8px;flex-wrap:wrap}.lesson-blocks .steps .dot{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);color:var(--ink-mid);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .18s}.lesson-blocks .steps .dot:hover{transform:translateY(-1px);border-color:var(--teal)}.lesson-blocks .steps .dot.is-done{background:var(--cream-dark);border-color:var(--border)}.lesson-blocks .steps .dot.is-current{background:var(--teal);border-color:var(--teal);color:var(--surface)}.lesson-blocks .steps .progress{font-family:var(--font-hand);font-size:var(--text-lg);color:var(--teal)}.lesson-blocks .steps .list{list-style:none;margin:0;padding:0}.lesson-blocks .steps .step{margin-bottom:40px}.lesson-blocks .steps .step:last-child{margin-bottom:0}.lesson-blocks .steps .step-head{display:flex;align-items:baseline;gap:14px;margin-bottom:14px}.lesson-blocks .steps .num{font-family:var(--font-display);font-size:var(--text-title);line-height:1;color:var(--coral-text);flex:0 0 auto}.lesson-blocks .steps .step h3{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);line-height:1.3}.lesson-blocks .steps .step img{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:var(--radius-panel);margin-bottom:16px;background:var(--cream);border:1px solid var(--border)}.lesson-blocks .steps .body{font-size:var(--text-base);line-height:1.85;color:var(--ink-mid)}.lesson-blocks .steps .mins{display:inline-block;margin-top:12px;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mid);background:var(--cream-dark);padding:5px 11px;border-radius:var(--radius-panel)}.lesson-blocks .checklist .mat-note{color:var(--ink-mid);font-size:.92em}.lesson-blocks .steps .shots,.lesson-blocks .th-sheet .shots{display:flex;gap:12px;margin-top:18px;padding-bottom:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;max-width:100%}.lesson-blocks .steps .shots:focus-visible,.lesson-blocks .th-sheet .shots:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:var(--radius-panel)}.lesson-blocks .steps .shot,.lesson-blocks .th-sheet .shot{flex:0 0 72%;margin:0;position:relative;scroll-snap-align:start}.lesson-blocks .steps .shots .shot img,.lesson-blocks .th-sheet .shots .shot img{display:block;width:100%;height:260px;object-fit:contain;margin:0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--cream)}.lesson-blocks .steps .shot-n{position:absolute;top:8px;left:8px;z-index:1;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--ground-dark) 70%,transparent);color:var(--surface);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;line-height:22px;text-align:center}.lesson-blocks .steps .shot figcaption,.lesson-blocks .th-sheet .shot figcaption{margin-top:7px;font-size:var(--text-sm);line-height:1.5;color:var(--ink-mid)}@media(min-width:781px){.lesson-blocks .steps .shot,.lesson-blocks .th-sheet .shot{flex-basis:260px}}.lesson-blocks .steps.is-walkthrough .step{display:none;margin-bottom:0}.lesson-blocks .steps.is-walkthrough .step.is-current{display:block}.lesson-blocks .steps .step-nav{display:flex;gap:12px;justify-content:space-between;margin-top:30px;padding-top:22px;border-top:1px solid var(--border)}.lesson-blocks .references .intro{font-size:var(--text-base);color:var(--ink-mid);line-height:1.7;margin-bottom:16px}.lesson-blocks .references .ref-list{display:flex;flex-direction:column;gap:10px}.lesson-blocks .references .ref{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:13px 16px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.lesson-blocks .references a.ref:hover{border-color:var(--teal);transform:translateY(-1px);box-shadow:none}.lesson-blocks .references .ref-text{min-width:0}.lesson-blocks .references .ref-text>strong{display:block;font-size:var(--text-base);color:var(--ink);line-height:1.4}.lesson-blocks .references a.ref:hover .ref-text>strong{color:var(--teal)}.lesson-blocks .references .ref-note{display:block;margin-top:2px;font-size:var(--text-sm);line-height:1.55;color:var(--ink-mid)}.lesson-blocks .references .ref-domain{flex:0 0 auto;font-size:var(--text-xs);color:var(--teal);white-space:nowrap}.lesson-blocks .quiz{padding:26px 24px;border-radius:var(--radius-panel);background:var(--cream-dark);border:1px solid var(--border)}.lesson-blocks .quiz .question{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.4;color:var(--ink);margin:8px 0 20px}.lesson-blocks .quiz .options{list-style:none;margin:0;padding:0}.lesson-blocks .quiz .options li{margin-bottom:10px}.lesson-blocks .quiz .options li:last-child{margin-bottom:0}.lesson-blocks .quiz .option{display:block;width:100%;text-align:left;padding:15px 18px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);font-family:var(--font-body);font-size:var(--text-base);color:var(--ink);cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.lesson-blocks .quiz .option:hover{border-color:var(--teal);transform:translateY(-1px)}.lesson-blocks .quiz .option.is-right{border-color:var(--success);background:color-mix(in srgb,var(--success) 8%,transparent)}.lesson-blocks .quiz .option.is-wrong{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,transparent)}.lesson-blocks .quiz .feedback{display:none;margin:10px 4px 0;padding-left:14px;border-left:3px solid var(--teal);font-size:var(--text-base);line-height:1.7;color:var(--ink-mid)}.lesson-blocks .quiz .feedback.is-open{display:block}.lesson-blocks .quiz:not(.is-interactive) .feedback{display:block}.lesson-blocks .hotspot .frame{position:relative;border-radius:var(--radius-panel);overflow:hidden;line-height:0}.lesson-blocks .hotspot .frame img{width:100%;height:auto}.lesson-blocks .hotspot .pin{position:absolute;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:2px solid var(--surface);background:color-mix(in srgb,var(--teal) 90%,transparent);color:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:none;transition:transform .18s,background .18s}.lesson-blocks .hotspot .pin:hover{transform:scale(1.12)}.lesson-blocks .hotspot .pin.is-open{background:var(--coral-dark);transform:scale(1.18)}.lesson-blocks .hotspot:not(.is-interactive) .pin{display:none}.lesson-blocks .hotspot .panels{margin-top:18px}.lesson-blocks .hotspot .panel{display:flex;gap:14px;padding:16px 18px;border-radius:var(--radius-panel);border:1px solid var(--border);background:var(--surface);margin-bottom:10px}.lesson-blocks .hotspot .panel:last-child{margin-bottom:0}.lesson-blocks .hotspot .badge{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:var(--cream-dark);font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;color:var(--teal)}.lesson-blocks .hotspot .panel>div>strong{display:block;font-family:var(--font-body);font-size:var(--text-base);color:var(--ink);margin-bottom:5px}.lesson-blocks .hotspot .panel p{margin:0;font-size:var(--text-base);line-height:1.75;color:var(--ink-mid)}.lesson-blocks .hotspot.is-interactive .panel{display:none}.lesson-blocks .hotspot.is-interactive .panel.is-open{display:flex}.lesson-blocks .hotspot.is-interactive .panel.is-open .badge{background:var(--coral-dark);color:var(--surface)}.lesson-blocks .compare .frame{position:relative;border-radius:var(--radius-panel);overflow:hidden;line-height:0}.lesson-blocks .compare .frame img{width:100%;display:block}.lesson-blocks .compare .frame .after{position:absolute;inset:0;height:100%;object-fit:cover}.lesson-blocks .compare .frame .before{position:relative;z-index:1;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}.lesson-blocks .compare .handle{position:absolute;top:0;bottom:0;left:var(--pos);z-index:2;width:2px;margin-left:-1px;background:var(--surface);box-shadow:none}.lesson-blocks .compare .handle:after{content:"";position:absolute;top:50%;left:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:var(--surface);box-shadow:none}.lesson-blocks .compare .frame-tag{position:absolute;bottom:14px;z-index:3;padding:5px 12px;border-radius:var(--radius-panel);background:color-mix(in srgb,var(--ground-dark) 70%,transparent);color:var(--surface);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase}.lesson-blocks .compare .tag-before{left:14px}.lesson-blocks .compare .tag-after{right:14px}.lesson-blocks .compare .frame input[type=range]{position:absolute;inset:0;z-index:4;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:none}.lesson-blocks .video .frame{position:relative;aspect-ratio:16 / 9;border-radius:var(--radius-panel);overflow:hidden;background:var(--ground-dark)}.lesson-blocks .video .frame img,.lesson-blocks .video .frame>iframe,.lesson-blocks .video .frame>video{width:100%;height:100%;border:0;object-fit:cover;display:block}.lesson-blocks .video .placeholder{position:absolute;inset:0;background:radial-gradient(80% 70% at 50% 40%,var(--shyam) 0%,var(--ground-dark) 70%)}.lesson-blocks .video .play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;border:0;background:color-mix(in srgb,var(--ground-dark) 40%,transparent);color:var(--surface);cursor:pointer;transition:background .2s}.lesson-blocks .video .play:hover{background:color-mix(in srgb,var(--ground-dark) 40%,transparent)}.lesson-blocks .video .triangle{width:0;height:0;border-style:solid;border-width:15px 0 15px 25px;border-color:transparent transparent transparent var(--surface);filter:drop-shadow(0 2px 8px color-mix(in srgb,var(--ground-dark) 40%,transparent))}.lesson-blocks .video .play-label{font-family:var(--font-display);font-size:var(--text-lg);padding:0 20px;text-align:center}.lesson-blocks .video .privacy-note{font-family:var(--font-body);font-size:var(--text-xs);color:color-mix(in srgb,var(--surface) 70%,transparent);padding:0 20px;text-align:center}.lesson-blocks .download .card{display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:var(--radius-panel);border:1.5px dashed var(--border);background:var(--surface);transition:border-color .2s,transform .2s,box-shadow .2s}.lesson-blocks .download a.card:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:none}.lesson-blocks .download .icon{font-size:var(--text-xl);flex:0 0 auto}.lesson-blocks .download .text{flex:1}.lesson-blocks .download .text>strong{display:block;font-family:var(--font-body);font-size:var(--text-base);color:var(--ink)}.lesson-blocks .download .desc{display:block;margin-top:3px;font-size:var(--text-sm);line-height:1.6;color:var(--ink-mid)}.lesson-blocks .download .cta{font-family:var(--font-hand);font-size:var(--text-lg);color:var(--teal);flex:0 0 auto}.lesson-blocks .gallery .grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.lesson-blocks .gallery .count-1{grid-template-columns:1fr}.lesson-blocks .gallery figure{margin:0}.lesson-blocks .gallery figure img{width:100%;border-radius:var(--radius-panel);display:block}.lesson-blocks .gallery figcaption{margin-top:9px;font-size:var(--text-sm);line-height:1.65;color:var(--ink-mid)}.lesson-blocks .sim{display:block;--accent: #7ec0dd;--accent-strong: var(--teal)}.lesson-blocks .sim-heading{font-family:var(--font-display);font-size:var(--text-title);color:var(--ink);line-height:1.25;margin-bottom:14px}.lesson-blocks .sim-intro{font-size:var(--text-base);color:var(--ink-mid);line-height:1.7;margin-bottom:20px}.lesson-blocks .sim-caption{font-size:var(--text-sm);color:var(--ink-mid);line-height:1.7;margin-top:18px;padding-left:14px;border-left:3px solid var(--border)}.lesson-blocks .sim .slider-wrap{display:block;margin:22px 0 6px}.lesson-blocks .sim .slider-label{display:block;font-family:var(--font-hand);font-size:var(--text-lg);color:var(--teal);margin-bottom:6px}.lesson-blocks .sim input[type=range]{width:100%;height:34px;accent-color:var(--teal);touch-action:none}.lesson-blocks aurora-colors .stage{display:flex;gap:10px;align-items:stretch}.lesson-blocks aurora-colors .sky{position:relative;flex:1;height:340px;border-radius:var(--radius-panel);overflow:hidden;background:radial-gradient(120% 90% at 50% 100%,#142046,#0b1023 60%,#070a17);--o-colour: #3ddc84;--n-colour: #8b5cf6;--o-strength: 1;--n-strength: .5;--core: 50%}.lesson-blocks aurora-colors .curtain{position:absolute;inset:0;background:radial-gradient(60% 42% at 50% var(--core),color-mix(in srgb,var(--o-colour) 85%,transparent) 0%,transparent 70%),radial-gradient(85% 55% at 50% calc(var(--core) + 16%),color-mix(in srgb,var(--n-colour) 65%,transparent) 0%,transparent 72%);opacity:calc(.35 + (var(--o-strength) * .4) + (var(--n-strength) * .25));filter:blur(14px);transition:opacity .25s ease,background .25s ease}.lesson-blocks aurora-colors .stars{position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 18% 22%,var(--surface) 50%,transparent 50%),radial-gradient(1.5px 1.5px at 72% 14%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 44% 34%,var(--surface) 50%,transparent 50%),radial-gradient(1.5px 1.5px at 86% 42%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 28% 52%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 62% 62%,var(--surface) 50%,transparent 50%),radial-gradient(1.5px 1.5px at 8% 40%,var(--surface) 50%,transparent 50%);opacity:.7}.lesson-blocks aurora-colors .ground{position:absolute;left:0;right:0;bottom:0;height:22%;background:#05070f;clip-path:polygon(0 42%,12% 30%,24% 46%,38% 26%,52% 44%,66% 28%,80% 44%,92% 32%,100% 46%,100% 100%,0 100%)}.lesson-blocks aurora-colors .readout{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:var(--radius-sm);background:#0508129e;backdrop-filter:blur(6px)}.lesson-blocks aurora-colors .readout .alt{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8}.lesson-blocks aurora-colors .readout .colour-name{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.1;color:var(--surface)}.lesson-blocks aurora-colors .ruler{position:relative;width:46px;flex:0 0 46px;font-family:var(--font-body);font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks aurora-colors .ruler span{position:absolute;right:0;bottom:calc(((var(--at) - 50) / 350) * 100%);transform:translateY(50%);padding-left:8px;border-left:6px solid var(--border)}.lesson-blocks aurora-colors .ruler em{position:absolute;top:-4px;right:0;font-style:normal;font-weight:600;color:var(--ink)}.lesson-blocks aurora-colors .gases{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.lesson-blocks aurora-colors .gas{border:1px solid var(--border);border-radius:var(--radius-panel);padding:14px 16px;background:var(--surface);transition:border-color .2s,box-shadow .2s}.lesson-blocks aurora-colors .gas.is-lead{border-color:var(--teal);box-shadow:0 2px 14px #1a6b8a1f}.lesson-blocks aurora-colors .gas-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.lesson-blocks aurora-colors .symbol{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;font-family:var(--font-body);font-weight:700;font-size:var(--text-base);color:var(--surface);transition:background .25s,opacity .25s}.lesson-blocks aurora-colors .gas-head strong{display:block;font-family:var(--font-body);font-size:var(--text-base);color:var(--ink)}.lesson-blocks aurora-colors .gas-state{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-mid)}.lesson-blocks aurora-colors .gas-note{font-size:var(--text-sm);line-height:1.65;color:var(--ink-mid);margin:0}.lesson-blocks aurora-magnetosphere .stage{position:relative;border-radius:var(--radius-panel);overflow:hidden;background:radial-gradient(90% 120% at 78% 50%,#16244d,#0a0f22 60%,#070a17)}.lesson-blocks aurora-magnetosphere svg{display:block;width:100%;height:auto}.lesson-blocks aurora-magnetosphere .lbl{font-family:var(--font-body);font-size:var(--text-xs);fill:#fff9}.lesson-blocks aurora-magnetosphere .sun-lbl{font-size:var(--text-xs);fill:#ffd166}.lesson-blocks aurora-magnetosphere .eq-lbl{text-anchor:middle;font-size:var(--text-xs);fill:#ffffff6b}.lesson-blocks aurora-magnetosphere .city-lbl{text-anchor:end;font-size:var(--text-xs);fill:#ffffff80;transition:fill .25s}.lesson-blocks aurora-magnetosphere [data-seattle] circle{fill:#ffffff59;transition:fill .25s}.lesson-blocks aurora-magnetosphere [data-seattle].is-near circle{fill:#ffd166}.lesson-blocks aurora-magnetosphere [data-seattle].is-near .city-lbl{fill:#ffe6a6}.lesson-blocks aurora-magnetosphere [data-seattle].is-lit circle{fill:#3ddc84}.lesson-blocks aurora-magnetosphere [data-seattle].is-lit .city-lbl{fill:#b6f5c8;font-weight:600}.lesson-blocks aurora-magnetosphere [data-wind],.lesson-blocks aurora-magnetosphere [data-gust],.lesson-blocks aurora-magnetosphere [data-funnel],.lesson-blocks aurora-magnetosphere [data-oval],.lesson-blocks aurora-magnetosphere [data-oval-red],.lesson-blocks aurora-magnetosphere [data-wash]{transition:opacity .3s ease,stroke-width .3s ease}.lesson-blocks aurora-magnetosphere [data-wind] path,.lesson-blocks aurora-magnetosphere [data-gust] path,.lesson-blocks aurora-magnetosphere [data-funnel] path{stroke-dasharray:5 13;animation:sa-flow var(--speed, 2s) linear infinite}.lesson-blocks aurora-magnetosphere [data-funnel] path{stroke-dasharray:3 10}@keyframes sa-flow{to{stroke-dashoffset:-36}}@media(prefers-reduced-motion:reduce){.lesson-blocks aurora-magnetosphere [data-wind] path,.lesson-blocks aurora-magnetosphere [data-gust] path,.lesson-blocks aurora-magnetosphere [data-funnel] path{animation:none}}.lesson-blocks aurora-magnetosphere .storm-chip{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:9px;padding:7px 12px;border-radius:var(--radius-pill);background:#0508128c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.lesson-blocks aurora-magnetosphere .bars{display:flex;align-items:flex-end;gap:3px;height:14px}.lesson-blocks aurora-magnetosphere .bars i{width:3px;border-radius:var(--radius-sm);background:#ffffff38;transition:background .25s,height .25s}.lesson-blocks aurora-magnetosphere .bars i:nth-child(1){height:5px}.lesson-blocks aurora-magnetosphere .bars i:nth-child(2){height:7px}.lesson-blocks aurora-magnetosphere .bars i:nth-child(3){height:9px}.lesson-blocks aurora-magnetosphere .bars i:nth-child(4){height:11.5px}.lesson-blocks aurora-magnetosphere .bars i:nth-child(5){height:14px}.lesson-blocks aurora-magnetosphere .bars i.is-on{background:var(--accent)}.lesson-blocks aurora-magnetosphere .chip-name{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;color:#ffffffe6;white-space:nowrap}.lesson-blocks aurora-magnetosphere input[type=range]{accent-color:var(--coral)}.lesson-blocks aurora-magnetosphere .ticks{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mid);margin-top:-4px}.lesson-blocks aurora-magnetosphere .verdict{margin-top:16px;padding:16px 18px;border-radius:var(--radius-panel);border:1px solid var(--border);border-left:4px solid var(--accent-strong);background:var(--surface);transition:border-color .3s ease}.lesson-blocks aurora-magnetosphere .verdict strong{display:block;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:6px}.lesson-blocks aurora-magnetosphere .verdict p{margin:0;font-size:var(--text-sm);line-height:1.7;color:var(--ink-mid)}@media(max-width:640px){.lesson-blocks{--gutter: 20px}.lesson-blocks .block{margin-bottom:42px}.lesson-blocks .block.card{padding:22px 20px 26px;margin-left:-20px;margin-right:-20px;border-radius:var(--radius-panel)}.lesson-blocks .steps .dot{width:30px;height:30px;font-size:var(--text-xs)}.lesson-blocks .steps .step-nav button{flex:1}.lesson-blocks .download .cta{display:none}.lesson-blocks aurora-colors .sky{height:280px}.lesson-blocks aurora-colors .gases{grid-template-columns:1fr}.lesson-blocks aurora-colors .readout .colour-name{font-size:var(--text-xl)}.lesson-blocks aurora-magnetosphere .storm-chip{top:8px;right:8px;padding:6px 10px;gap:7px}.lesson-blocks aurora-magnetosphere .chip-name{font-size:var(--text-xs)}}.lesson-blocks :is(moon-phases,radial-symmetry,metamorphosis-timeline,scale-armour,rocky-vs-giant,shape-finder,speleothem-drip,nebula-colours,salmon-run,refraction-caustics,glow-lab,feather-view,atmospheric-perspective) .verdict{margin-top:16px;padding:14px 16px;border-radius:var(--radius-panel);border:1px solid var(--border);background:var(--cream)}.lesson-blocks :is(moon-phases,scale-armour,speleothem-drip,nebula-colours,salmon-run,refraction-caustics,glow-lab,feather-view,atmospheric-perspective,shape-finder) .verdict strong{display:block;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:4px}.lesson-blocks :is(moon-phases,radial-symmetry,metamorphosis-timeline,scale-armour,rocky-vs-giant,shape-finder,speleothem-drip,nebula-colours,salmon-run,refraction-caustics,glow-lab,feather-view,atmospheric-perspective) .verdict p{margin:0;font-size:var(--text-sm);line-height:1.7;color:var(--ink-mid)}.lesson-blocks :is(moon-phases,scale-armour,shape-finder,speleothem-drip,salmon-run,refraction-caustics,glow-lab,atmospheric-perspective) .ticks{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mid);margin-top:-4px}.lesson-blocks moon-phases .sky-wrap{border-radius:var(--radius-panel);overflow:hidden;box-shadow:inset 0 0 0 1px #070a172e}.lesson-blocks moon-phases [data-sky]{display:block;width:100%;height:auto}.lesson-blocks moon-phases .sky-stars circle{fill:var(--surface)}.lesson-blocks moon-phases .sky-ground{fill:#16241f}.lesson-blocks moon-phases .sky-dir{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.12em;fill:#ffffff8c}.lesson-blocks moon-phases .sky-track{fill:none;stroke-width:2;stroke-linecap:round;stroke-dasharray:2 7}.lesson-blocks moon-phases .sky-track.is-sun{stroke:#ffd682bf}.lesson-blocks moon-phases .sky-track.is-moon{stroke:#d6e2ff99}.lesson-blocks moon-phases .sun-disc{fill:#ffe9a3}.lesson-blocks moon-phases .sun-glow{fill:#ffd66638}.lesson-blocks moon-phases .moon-lit{fill:#f6f1e2}.lesson-blocks moon-phases .moon-body{fill:#181e348c}.lesson-blocks moon-phases .sky-moon.is-solar .moon-body{fill:#0d1120}.lesson-blocks moon-phases .sky-moon.is-lunar .moon-lit{fill:#a8482c;opacity:1}.lesson-blocks moon-phases :is([data-sun],[data-moon]){transition:transform .12s linear}.lesson-blocks moon-phases .sky-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.lesson-blocks moon-phases .sky-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 11px;border-radius:var(--radius-pill);background:var(--cream-dark, #F2EBE0);font-size:var(--text-sm);line-height:1.5;color:var(--ink);font-variant-numeric:tabular-nums}.lesson-blocks moon-phases .sky-chip i{font-style:normal;font-size:var(--text-sm)}.lesson-blocks moon-phases .sky-chip.is-when{min-width:188px}.lesson-blocks moon-phases .sky-chip.is-phase{background:#1a6b8a1a;color:var(--teal);font-weight:600}.lesson-blocks moon-phases .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lesson-blocks moon-phases .sky-controls{display:grid;gap:10px;margin-top:12px}.lesson-blocks moon-phases .sky-where{display:flex;flex-wrap:wrap;gap:8px}.lesson-blocks moon-phases .sky-place{padding:7px 14px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-mid);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.lesson-blocks moon-phases .sky-place:hover{border-color:var(--teal);color:var(--teal)}.lesson-blocks moon-phases .sky-place.is-on{background:var(--teal);border-color:var(--teal);color:var(--surface)}.lesson-blocks moon-phases .sky-run{display:flex;align-items:center;gap:12px}.lesson-blocks moon-phases .sky-run .slider-wrap{flex:1 1 auto;min-width:0}.lesson-blocks moon-phases .sky-pick{flex:none}.lesson-blocks moon-phases .sky-pick select{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink);cursor:pointer}.lesson-blocks moon-phases .sky-pick select:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-color:var(--teal)}.lesson-blocks moon-phases .sky-play{flex:none;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--teal);border-radius:50%;background:var(--surface);font-size:var(--text-sm);color:var(--teal);cursor:pointer;transition:background .2s ease,color .2s ease}.lesson-blocks moon-phases .sky-play:hover,.lesson-blocks moon-phases .sky-play[aria-pressed=true]{background:var(--teal);color:var(--surface)}.lesson-blocks moon-tonight .ph-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fffc}.lesson-blocks moon-tonight .ph-star.s1{top:12%;left:14%}.lesson-blocks moon-tonight .ph-star.s2{top:22%;right:12%;opacity:.6}.lesson-blocks moon-tonight .ph-star.s3{bottom:16%;left:22%;opacity:.7}.lesson-blocks moon-tonight .ph-star.s4{bottom:24%;right:20%}.lesson-blocks moon-tonight .ph-star.s5{top:48%;left:8%;opacity:.5}.lesson-blocks moon-tonight .ph-star.s6{top:8%;left:55%;opacity:.65}.lesson-blocks moon-tonight .disc-dark{fill:#1a2033}.lesson-blocks moon-tonight .disc-lit{fill:#f6f1e2}.lesson-blocks moon-tonight .disc-rim{fill:none;stroke:#d2dcff47}.lesson-blocks moon-tonight .phase-kicker{display:block;font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mid)}.lesson-blocks moon-tonight .mt-card{display:flex;gap:16px;align-items:stretch}.lesson-blocks moon-tonight .mt-night{position:relative;flex:0 0 190px;display:grid;place-items:center;padding:16px 10px 26px;border-radius:var(--radius-panel);background:radial-gradient(120% 140% at 50% 0%,#16223f,#0b1023 60%,#070a17);overflow:hidden}.lesson-blocks moon-tonight [data-mt-disc]{width:128px;height:128px}.lesson-blocks moon-tonight .mt-age{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-family:var(--font-hand);font-size:var(--text-base);color:#8ecae6}.lesson-blocks moon-tonight .mt-read{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px}.lesson-blocks moon-tonight [data-mt-name]{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.15;color:var(--ink)}.lesson-blocks moon-tonight .mt-sky{font-size:var(--text-sm);line-height:1.6;color:var(--ink-mid)}.lesson-blocks moon-tonight .mt-times{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:8px 0 0}.lesson-blocks moon-tonight .mt-time{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.lesson-blocks moon-tonight .mt-time dt{font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks moon-tonight .mt-time dd{margin:0;font-family:var(--font-display);font-size:var(--text-base);color:var(--ink);white-space:nowrap}.lesson-blocks moon-tonight .mt-week{margin-top:14px}.lesson-blocks moon-tonight .mt-week-title{font-size:var(--text-xs);color:var(--ink-mid);margin:0 0 6px}.lesson-blocks moon-tonight .mt-week-rows{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.lesson-blocks moon-tonight .mt-day{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:center}.lesson-blocks moon-tonight .mt-day svg{width:30px;height:30px;background:#0b1023;border-radius:50%}.lesson-blocks moon-tonight .mt-day .d{font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks moon-tonight .mt-day .t{font-size:var(--text-xs);font-weight:600;color:var(--ink);white-space:nowrap}.lesson-blocks moon-tonight .mt-loc{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;margin-top:12px}.lesson-blocks moon-tonight .mt-place{font-size:var(--text-sm);font-weight:600;color:var(--ink)}.lesson-blocks moon-tonight .mt-note{flex-basis:100%;font-size:var(--text-xs);color:var(--ink-mid);opacity:.85}.lesson-blocks moon-tonight .mt-noscript{font-size:var(--text-sm);color:var(--ink-mid)}.lesson-blocks moon-tonight.is-hidden [data-mt-disc]{opacity:.8}.lesson-blocks radial-symmetry .pad-stage{position:relative;aspect-ratio:1;max-width:440px;margin:0 auto;border-radius:50%;overflow:hidden;background:radial-gradient(90% 90% at 50% 40%,#12354a,#0c2233 62%,#081826)}.lesson-blocks radial-symmetry .pad-guide,.lesson-blocks radial-symmetry [data-pad]{position:absolute;inset:0;width:100%;height:100%}.lesson-blocks radial-symmetry [data-pad]{touch-action:none;cursor:crosshair}.lesson-blocks radial-symmetry .pad-rim{fill:none;stroke:#ffffff38;stroke-width:.7}.lesson-blocks radial-symmetry .pad-wedge{fill:#ffffff17}.lesson-blocks radial-symmetry .pad-spokes line{stroke:#ffffff24;stroke-width:.5}.lesson-blocks radial-symmetry .pad-eye{fill:#ffffff73}.lesson-blocks radial-symmetry .pad-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:16px}.lesson-blocks radial-symmetry .pad-colours{display:flex;gap:10px}.lesson-blocks radial-symmetry .swatch{width:34px;height:34px;border-radius:50%;border:none;background:var(--c);cursor:pointer;transition:transform .15s}.lesson-blocks radial-symmetry .swatch.is-on{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--c);transform:scale(1.06)}.lesson-blocks radial-symmetry .pad-btn{padding:8px 16px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--ink-mid);cursor:pointer}.lesson-blocks radial-symmetry .pad-btn:hover{border-color:var(--teal);color:var(--teal)}.lesson-blocks radial-symmetry .pad-status{margin-top:14px;text-align:center;font-family:var(--font-hand);font-size:var(--text-lg);color:var(--teal)}.lesson-blocks metamorphosis-timeline .stage{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:center}.lesson-blocks metamorphosis-timeline .mm-frame{position:relative;aspect-ratio:4 / 3;border-radius:var(--radius-panel);border:1px solid var(--border);overflow:hidden;background:linear-gradient(#eaf4f7,#f7f2e6)}.lesson-blocks metamorphosis-timeline .mm-scene{position:absolute;inset:0;width:100%;height:100%;transition:opacity .18s linear}.lesson-blocks metamorphosis-timeline .mm-sky circle{fill:#ffd166;opacity:.8}.lesson-blocks metamorphosis-timeline .mm-stem{stroke:#7a5b3a;stroke-width:3;fill:none}.lesson-blocks metamorphosis-timeline .mm-leaf{fill:#6a9e58}.lesson-blocks metamorphosis-timeline .mm-vein{stroke:#4c7a3e;stroke-width:1.4;fill:none}.lesson-blocks metamorphosis-timeline .mm-eggs ellipse{fill:#f2e2a0;stroke:#d9bc6a;stroke-width:.8}.lesson-blocks metamorphosis-timeline .mm-grub circle{fill:#e8d9a8;stroke:#c9b075;stroke-width:1}.lesson-blocks metamorphosis-timeline .mm-grub .mm-grub-head{fill:#b98b4e}.lesson-blocks metamorphosis-timeline .mm-grub-legs line{stroke:#8a6a3d;stroke-width:1.6}.lesson-blocks metamorphosis-timeline .mm-silk{stroke:#9a9a90;stroke-width:1}.lesson-blocks metamorphosis-timeline .mm-pupa{fill:#c9963f;stroke:#a97a2e;stroke-width:1.4}.lesson-blocks metamorphosis-timeline .mm-pupa-lines{stroke:#a97a2e;stroke-width:1.1;fill:none}.lesson-blocks metamorphosis-timeline .mm-ground{fill:#d9c9a8}.lesson-blocks metamorphosis-timeline .mm-legs path{stroke:#1c2f38;stroke-width:2.4;fill:none;stroke-linecap:round}.lesson-blocks metamorphosis-timeline .mm-elytra{fill:var(--teal);stroke:#12333f;stroke-width:2}.lesson-blocks metamorphosis-timeline .mm-elytra-split{stroke:#12333f;stroke-width:1.6}.lesson-blocks metamorphosis-timeline .mm-dot{fill:#7fc4d8}.lesson-blocks metamorphosis-timeline .mm-pronotum{fill:#164c5e}.lesson-blocks metamorphosis-timeline .mm-head{fill:#10333f}.lesson-blocks metamorphosis-timeline .mm-antennae{stroke:#10333f;stroke-width:1.8;fill:none;stroke-linecap:round}.lesson-blocks metamorphosis-timeline .mm-card strong{display:block;font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);margin-bottom:8px}.lesson-blocks metamorphosis-timeline .mm-card p{margin:0;font-size:var(--text-base);line-height:1.75;color:var(--ink-mid)}.lesson-blocks metamorphosis-timeline .mm-marks{position:relative;height:30px;margin-top:8px}.lesson-blocks metamorphosis-timeline .mm-mark{position:absolute;left:var(--at);transform:translate(-50%);padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--ink-mid);cursor:pointer;white-space:nowrap}.lesson-blocks metamorphosis-timeline .mm-mark:first-child{transform:translate(0)}.lesson-blocks metamorphosis-timeline .mm-mark:last-child{transform:translate(-100%)}.lesson-blocks metamorphosis-timeline .mm-mark.is-current{background:var(--teal);border-color:var(--teal);color:var(--surface)}.lesson-blocks scale-armour [data-wall]{display:block;width:100%;height:auto;border-radius:var(--radius-panel)}.lesson-blocks scale-armour .sa-sky{fill:#e4eef2}.lesson-blocks scale-armour .sa-row{fill:url(#sa-scale-fill);stroke:#f2edd8;stroke-width:1.6;paint-order:stroke;transition:transform .12s linear;filter:drop-shadow(0 3px 2px rgba(20,40,16,.4))}.lesson-blocks scale-armour .sa-wet .pool{fill:#5e9fc4;opacity:0;transition:opacity .4s ease,transform .4s ease;transform-origin:center}.lesson-blocks scale-armour .sa-wet .shine{fill:#ffffffbf;opacity:0;transition:opacity .4s ease}.lesson-blocks scale-armour.is-leaky .sa-wet .pool{opacity:.8;transform:scale(1.12,1.3)}.lesson-blocks scale-armour.is-leaky .sa-wet .shine{opacity:1}.lesson-blocks scale-armour.is-partial .sa-wet .pool{opacity:.38}.lesson-blocks scale-armour .sa-droplet{fill:#6fb7d8;stroke:#ffffff80;stroke-width:.8}.lesson-blocks scale-armour .sa-drop{animation:armour-fall 1.6s var(--d) linear infinite}@keyframes armour-fall{0%{transform:translate(var(--x),-14px);opacity:0}12%{opacity:1}58%{transform:translate(var(--x),86px);opacity:1}66%{transform:translate(var(--x),94px) scale(1.15,.7);opacity:0}to{transform:translate(var(--x),94px);opacity:0}}.lesson-blocks scale-armour .sa-run{opacity:0}.lesson-blocks scale-armour.is-sealed .sa-run{animation:armour-runoff 2.2s var(--d) linear infinite}@keyframes armour-runoff{0%{transform:translate(var(--x),96px) scale(.8);opacity:0}10%{transform:translate(var(--x),104px) scale(1);opacity:1}62%{transform:translate(calc(var(--x) + 14px),300px) scale(1.05,1.2);opacity:1}84%{transform:translate(calc(var(--x) + 34px),372px) scaleY(1.25);opacity:.9}to{transform:translate(calc(var(--x) + 44px),396px);opacity:0}}.lesson-blocks scale-armour.is-partial .sa-run{animation:armour-runoff 2.6s var(--d) linear infinite}.lesson-blocks scale-armour .sa-seep{opacity:0}.lesson-blocks scale-armour.is-leaky .sa-seep{animation:armour-seep 2s var(--d) linear infinite}@keyframes armour-seep{0%{transform:translate(var(--x),96px) scale(.9);opacity:0}12%{opacity:1}55%{transform:translate(var(--x),250px);opacity:1}80%{transform:translate(var(--x),322px);opacity:1}92%{transform:translate(var(--x),330px) scale(1.6,.5);opacity:.7}to{transform:translate(var(--x),332px);opacity:0}}.lesson-blocks rocky-vs-giant .pf-spot{display:flex;gap:20px;align-items:center;padding:18px;border-radius:var(--radius-panel);border:1px solid var(--border);background:radial-gradient(120% 140% at 20% 0%,#14203c,#0b1023 60%,#070a17)}.lesson-blocks rocky-vs-giant .pf-current{flex:0 0 128px;min-height:150px}.lesson-blocks rocky-vs-giant .pf-card{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0}.lesson-blocks rocky-vs-giant .pf-card svg{width:112px;height:auto}.lesson-blocks rocky-vs-giant .pf-card figcaption{font-family:var(--font-display);font-size:var(--text-lg);color:var(--surface)}.lesson-blocks rocky-vs-giant .pf-card.is-right{animation:planet-pop .5s ease}.lesson-blocks rocky-vs-giant .pf-card.is-shake{animation:planet-shake .45s ease}@keyframes planet-pop{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes planet-shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}55%{transform:translate(6px)}80%{transform:translate(-3px)}}.lesson-blocks rocky-vs-giant .pf-ask{flex:1;min-width:0}.lesson-blocks rocky-vs-giant .pf-hint{min-height:44px;margin:0 0 12px;font-size:var(--text-base);line-height:1.6;color:#e6eef4}.lesson-blocks rocky-vs-giant .pf-answers{display:flex;gap:10px}.lesson-blocks rocky-vs-giant .pf-answer{flex:1;padding:12px 14px;border-radius:var(--radius-pill);border:2px solid #8ecae6;background:transparent;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:#cfe8f3;cursor:pointer;transition:background .2s,color .2s}.lesson-blocks rocky-vs-giant .pf-answer:hover{background:#8ecae629}.lesson-blocks rocky-vs-giant .pf-progress{margin:10px 0 0;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:#e6eef499}.lesson-blocks rocky-vs-giant .pf-table.is-done .pf-spot{display:none}.lesson-blocks rocky-vs-giant .pf-shelves{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.lesson-blocks rocky-vs-giant .pf-shelf{border:1px solid var(--border);border-radius:var(--radius-panel);padding:12px 14px;background:var(--cream)}.lesson-blocks rocky-vs-giant .pf-shelf h3{font-family:var(--font-display);font-size:var(--text-base);color:var(--ink);margin-bottom:8px}.lesson-blocks rocky-vs-giant .pf-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;min-height:56px}.lesson-blocks rocky-vs-giant .pf-row .pf-card svg{width:var(--chip)}.lesson-blocks rocky-vs-giant .pf-row .pf-card figcaption{font-family:var(--font-body);font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks rocky-vs-giant .pf-verdict{margin-top:14px;padding:16px 18px;border-radius:var(--radius-panel);border:1px solid var(--border);background:var(--cream)}.lesson-blocks rocky-vs-giant .pf-verdict strong{display:block;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:6px}.lesson-blocks rocky-vs-giant .pf-verdict p{margin:0 0 10px;font-size:var(--text-sm);line-height:1.7;color:var(--ink-mid)}.lesson-blocks rocky-vs-giant .pf-scale-note{font-style:italic;font-size:var(--text-sm)}.lesson-blocks rocky-vs-giant .pf-again{padding:10px 20px;border-radius:var(--radius-pill);border:none;background:var(--teal);color:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;cursor:pointer}.lesson-blocks shape-finder .sf-scene{position:relative;border-radius:var(--radius-panel);overflow:hidden}.lesson-blocks shape-finder .sf-scene img{display:block;width:100%;filter:blur(calc(var(--squint) * 6px)) saturate(calc(1 - var(--squint) * .45));transition:filter .12s linear}.lesson-blocks shape-finder .sf-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.lesson-blocks shape-finder .sf-shape{pointer-events:auto;cursor:pointer;opacity:var(--squint);stroke-width:.45;stroke-dasharray:1.8 1.2;transition:opacity .12s linear}.lesson-blocks shape-finder .sf-tri{fill:#d4643a47;stroke:var(--coral)}.lesson-blocks shape-finder .sf-rect{fill:#6b5ca547;stroke:var(--purple)}.lesson-blocks shape-finder .sf-circle{fill:#1a6b8a42;stroke:var(--teal)}.lesson-blocks shape-finder .sf-shape.is-found{stroke-dasharray:none;stroke-width:.7;opacity:max(var(--squint),.55)}.lesson-blocks shape-finder .sf-count{display:inline-block;margin-top:8px;padding:4px 12px;border-radius:var(--radius-pill);background:#1a6b8a1a;font-size:var(--text-xs);color:var(--teal)}.lesson-blocks speleothem-drip [data-cave]{display:block;width:100%;height:auto;border-radius:var(--radius-panel)}.lesson-blocks speleothem-drip .sp-stone{fill:#cbb391;stroke:#a8906e;stroke-width:1}.lesson-blocks speleothem-drip .sp-mite{fill:#c2a67f}.lesson-blocks speleothem-drip .sp-drop{fill:#9fd4ef;animation:cave-drip 1.7s var(--d) linear infinite}@keyframes cave-drip{0%{transform:translateY(0);opacity:0}14%{opacity:1}80%{transform:translateY(var(--fall));opacity:1}90%{transform:translateY(var(--fall)) scale(1.6,.5);opacity:0}to{transform:translateY(var(--fall));opacity:0}}.lesson-blocks speleothem-drip .sp-mnemonic{font-family:var(--font-hand);font-size:var(--text-base);fill:#cdb9e0}.lesson-blocks speleothem-drip .sp-sparkle path{fill:#ffe9a3;transform-box:fill-box;transform-origin:center;animation:cave-sparkle 1.6s ease infinite alternate}@keyframes cave-sparkle{0%{transform:scale(.85);opacity:.7}to{transform:scale(1.15);opacity:1}}.lesson-blocks nebula-colours .nb-space{position:relative;aspect-ratio:16 / 9;border-radius:var(--radius-panel);overflow:hidden;background:radial-gradient(120% 140% at 50% 40%,#101530,#0a0e1f 65%,#06081a)}.lesson-blocks nebula-colours .nb-gas{position:absolute;inset:-12%;filter:blur(18px);mix-blend-mode:screen;transition:opacity .25s ease}.lesson-blocks nebula-colours .nb-h{opacity:var(--h);background:radial-gradient(42% 40% at 32% 42%,rgba(255,95,138,.85),transparent 70%),radial-gradient(30% 34% at 58% 62%,rgba(255,95,138,.5),transparent 70%)}.lesson-blocks nebula-colours .nb-he{opacity:var(--he);background:radial-gradient(40% 42% at 64% 36%,rgba(79,125,255,.8),transparent 70%),radial-gradient(26% 28% at 38% 68%,rgba(79,125,255,.45),transparent 70%)}.lesson-blocks nebula-colours .nb-o{opacity:var(--o);background:radial-gradient(34% 36% at 50% 32%,rgba(55,217,154,.75),transparent 70%),radial-gradient(24% 26% at 70% 60%,rgba(55,217,154,.4),transparent 70%)}.lesson-blocks nebula-colours .nb-d{opacity:var(--d);background:radial-gradient(50% 36% at 46% 76%,rgba(242,161,60,.7),transparent 72%),radial-gradient(30% 26% at 20% 58%,rgba(201,120,40,.45),transparent 70%)}.lesson-blocks nebula-colours .nb-stars{position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 12% 24%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 32% 68%,var(--surface) 50%,transparent 50%),radial-gradient(1.5px 1.5px at 54% 18%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 70% 46%,var(--surface) 50%,transparent 50%),radial-gradient(1.5px 1.5px at 84% 74%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 22% 86%,var(--surface) 50%,transparent 50%),radial-gradient(1px 1px at 92% 22%,var(--surface) 50%,transparent 50%);opacity:.8}.lesson-blocks nebula-colours .nb-newstar{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--surface);box-shadow:0 0 10px 3px #ffffffb3;animation:nb-twinkle 2.6s ease infinite alternate}.lesson-blocks nebula-colours .nb-newstar:last-child{animation-delay:1.1s}@keyframes nb-twinkle{0%{transform:scale(.8);opacity:.7}to{transform:scale(1.2);opacity:1}}.lesson-blocks nebula-colours .nb-mixers{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin-top:18px}.lesson-blocks nebula-colours .nb-mixer{display:block}.lesson-blocks nebula-colours .nb-name{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--ink);margin-bottom:2px}.lesson-blocks nebula-colours .nb-swatch{width:13px;height:13px;border-radius:50%}.lesson-blocks nebula-colours .nb-key-h .nb-swatch{background:#ff5f8a}.lesson-blocks nebula-colours .nb-key-he .nb-swatch{background:#4f7dff}.lesson-blocks nebula-colours .nb-key-o .nb-swatch{background:#37d99a}.lesson-blocks nebula-colours .nb-key-d .nb-swatch{background:#f2a13c}.lesson-blocks nebula-colours .nb-mixer input[type=range]{width:100%;height:30px}.lesson-blocks salmon-run [data-river]{display:block;width:100%;height:auto;border-radius:var(--radius-panel)}.lesson-blocks salmon-run .sr-falls line{stroke:#eaf6fb;stroke-width:4;stroke-linecap:round;opacity:.85}.lesson-blocks salmon-run .sr-waves path{stroke:#ffffff8c;stroke-width:2;fill:none}.lesson-blocks salmon-run .sr-forest path{fill:#1f4230;transition:fill .8s ease,filter .8s ease}.lesson-blocks salmon-run .sr-forest.is-fed path{fill:#2f7a46;filter:drop-shadow(0 0 5px rgba(140,225,160,.55))}.lesson-blocks salmon-run .sr-bear ellipse,.lesson-blocks salmon-run .sr-bear circle,.lesson-blocks salmon-run .sr-bear rect{fill:#4a3a2e}.lesson-blocks salmon-run .sr-gravel circle{fill:#b9a88c}.lesson-blocks salmon-run .sr-nutrients circle{fill:#9fe6b0;animation:nutrient-rise 2s var(--d) ease-in-out infinite alternate}@keyframes nutrient-rise{0%{transform:translateY(6px);opacity:.25}to{transform:translateY(-8px);opacity:1}}.lesson-blocks salmon-run [data-salmon]{transition:transform .1s linear}.lesson-blocks salmon-run .sr-eye{fill:#16262e}.lesson-blocks salmon-run .sr-card{margin-top:14px}.lesson-blocks salmon-run .sr-card strong{display:block;font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:4px}.lesson-blocks salmon-run .sr-card p{margin:0;font-size:var(--text-sm);line-height:1.7;color:var(--ink-mid)}.lesson-blocks refraction-caustics [data-tank]{display:block;width:100%;height:auto;border-radius:var(--radius-panel)}.lesson-blocks refraction-caustics .rc-sand{fill:#e8d3a8}.lesson-blocks refraction-caustics .rc-weed path{stroke:#3f7a4e;stroke-width:3;fill:none;stroke-linecap:round}.lesson-blocks refraction-caustics .rc-star path{fill:var(--coral);stroke:#a84a2c;stroke-width:1.5}.lesson-blocks refraction-caustics .rc-water{fill:#1a6b8a4d}.lesson-blocks refraction-caustics .rc-surface{stroke:#bfe4ef;stroke-width:2.5;fill:none}.lesson-blocks refraction-caustics .rc-rays polyline{stroke:#ffe89680;stroke-width:1.6;fill:none}.lesson-blocks refraction-caustics .rc-spots ellipse{fill:#ffeeaa38}.lesson-blocks refraction-caustics .rc-scroll{animation:caustics-drift 7s linear infinite}@keyframes caustics-drift{to{transform:translate(-160px)}}.lesson-blocks glow-lab .gl-pick{display:flex;gap:8px;margin-bottom:12px}.lesson-blocks glow-lab .gl-tab{padding:8px 18px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--ink-mid);cursor:pointer}.lesson-blocks glow-lab .gl-tab.is-on{background:#14202c;border-color:#14202c;color:#cfe8f3}.lesson-blocks glow-lab .gl-stage{position:relative;aspect-ratio:16 / 9;border-radius:var(--radius-panel);overflow:hidden}.lesson-blocks glow-lab .gl-scene{position:absolute;inset:0;opacity:0;transition:opacity .4s ease}.lesson-blocks glow-lab .gl-stage.is-sea .gl-sea,.lesson-blocks glow-lab .gl-stage.is-meadow .gl-meadow{opacity:1}.lesson-blocks glow-lab .gl-scene svg{width:100%;height:100%}.lesson-blocks glow-lab .gl-sea{background:linear-gradient(#07131f,#03202e 60%,#041b26)}.lesson-blocks glow-lab .gl-bell{fill:#8cb4dc4d;stroke:#bedcfa80;stroke-width:1.5}.lesson-blocks glow-lab .gl-tentacles path{stroke:#bedcfa73;stroke-width:2;fill:none;stroke-linecap:round}.lesson-blocks glow-lab .gl-bell-glow{fill:#6fd8e8;filter:blur(22px)}.lesson-blocks glow-lab .gl-plankton circle{fill:#8ff0d8}.lesson-blocks glow-lab .gl-glow{opacity:calc(var(--mix) * (1 - var(--ambient)));transition:opacity .7s ease}.lesson-blocks glow-lab .gl-meadow{background:linear-gradient(#1c2033,#2c2a3e 55%,#1d2426)}.lesson-blocks glow-lab .gl-moon{position:absolute;top:12%;left:10%;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f6f1e2,#cfc7ae);opacity:.85}.lesson-blocks glow-lab .gl-grass{position:absolute;left:0;right:0;bottom:0;height:26%}.lesson-blocks glow-lab .gl-grass path{fill:#10241c}.lesson-blocks glow-lab .gl-fly{position:absolute;width:5px;height:5px;border-radius:50%;background:#ffe98a;box-shadow:0 0 12px 4px #ffe98aa6;opacity:calc(var(--mix) * (1 - var(--ambient)));transition:opacity .7s ease}.lesson-blocks glow-lab .gl-stage.is-mixing .gl-fly{animation:fly-blink 1.9s var(--d) infinite}@keyframes fly-blink{0%,52%,to{filter:brightness(.3)}18%,34%{filter:brightness(1.5)}}.lesson-blocks glow-lab .gl-wash{position:absolute;inset:0;background:#eef6fb;opacity:calc(var(--ambient) * .92);transition:opacity .3s ease;pointer-events:none}.lesson-blocks glow-lab .gl-mix{display:block;margin:14px auto 0;padding:14px 26px;border-radius:var(--radius-pill);border:2px solid var(--teal);background:var(--surface);font-family:var(--font-body);font-size:var(--text-base);font-weight:600;color:var(--teal);cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;transition:background .2s,color .2s,box-shadow .2s}.lesson-blocks glow-lab .gl-stage.is-mixing~* .gl-mix,.lesson-blocks glow-lab .gl-mix:active{background:var(--teal);color:var(--surface);box-shadow:0 0 18px #6fd8e88c}.lesson-blocks feather-view .fv-scene{max-width:460px;margin:0 auto}.lesson-blocks feather-view .fv-scene svg{width:100%;height:auto}.lesson-blocks feather-view .fv-arc{fill:none;stroke:var(--line);stroke-width:1.2;stroke-dasharray:3 5}.lesson-blocks feather-view .fv-lamp circle{fill:#f4c95d}.lesson-blocks feather-view .fv-beams path{stroke:#e0ac33;stroke-width:2.2;stroke-linecap:round}.lesson-blocks feather-view .fv-in{stroke:#eecb7a;stroke-width:3;stroke-linecap:round;stroke-dasharray:7 5}.lesson-blocks feather-view .fv-out{stroke:var(--seen);stroke-width:5;stroke-linecap:round;transition:stroke .08s linear}.lesson-blocks feather-view .fv-eye{transform:translate(calc(170px + 128px*sin(calc(var(--arc) * 1deg))),calc(168px - (128px*cos(calc(var(--arc) * 1deg))))) rotate(calc(var(--arc) * 1deg))}.lesson-blocks feather-view .fv-lid{fill:var(--surface);stroke:var(--ink);stroke-width:1.6}.lesson-blocks feather-view .fv-iris{fill:var(--seen);transition:fill .08s linear}.lesson-blocks feather-view .fv-pupil{fill:var(--ink)}.lesson-blocks feather-view .fv-tag{text-anchor:middle;font-family:var(--font-body);font-size:var(--text-xs);fill:var(--ink-mid)}.lesson-blocks feather-view .fv-vane{fill:#3d4a55}.lesson-blocks feather-view .fv-sheen{fill:none;stroke:var(--seen);stroke-width:3;stroke-linecap:round;opacity:.9;transition:stroke .08s linear}.lesson-blocks feather-view .fv-shaft{stroke:#f5efdf;stroke-width:2.2;stroke-linecap:round}.lesson-blocks feather-view .fv-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:460px;margin:16px auto 0}.lesson-blocks feather-view .fv-chip{margin:0;text-align:center}.lesson-blocks feather-view .fv-swatch{display:block;height:40px;border-radius:var(--radius-sm);border:1px solid var(--line)}.lesson-blocks feather-view .is-live .fv-swatch{background:var(--seen);transition:background .08s linear}.lesson-blocks feather-view .is-pigment .fv-swatch{background:#8f6b49}.lesson-blocks feather-view .fv-chip figcaption{margin-top:5px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;line-height:1.35;color:var(--ink)}.lesson-blocks feather-view .fv-chip figcaption span{display:block;font-weight:400;font-size:var(--text-xs);color:var(--ink-mid)}.lesson-blocks feather-view .fv-read{margin:0 0 4px;font-family:var(--font-body);font-size:var(--text-base)}.lesson-blocks feather-view .fv-read b{color:var(--seen);filter:brightness(.72)}.lesson-blocks feather-view .fv-read span{color:var(--ink-mid);font-size:var(--text-sm)}.lesson-blocks feather-view .fv-zoom{display:flex;align-items:center;gap:14px;max-width:460px;margin:18px auto 0}.lesson-blocks feather-view .fv-zoom svg{width:120px;flex:0 0 120px}.lesson-blocks feather-view .fv-zoom rect{fill:#cfe4ee;stroke:#8fb8cc;stroke-width:.8}.lesson-blocks feather-view .fv-ray{stroke:#e8b23a;stroke-width:2;fill:none}.lesson-blocks feather-view .fv-ray2{stroke:#d4885e}.lesson-blocks feather-view .fv-zoom span{font-size:var(--text-sm);font-style:italic;line-height:1.6;color:var(--ink-mid)}.lesson-blocks atmospheric-perspective [data-scene]{display:block;width:100%;height:auto;border-radius:var(--radius-panel)}.lesson-blocks atmospheric-perspective .ap-sun{fill:#f6c453;opacity:.9}.lesson-blocks atmospheric-perspective [data-far-group]{filter:blur(var(--soft));transition:filter .15s linear}.lesson-blocks atmospheric-perspective [data-far]{transition:fill .15s linear}.lesson-blocks atmospheric-perspective .ap-tree{fill:#1f4230}.lesson-blocks atmospheric-perspective .ap-trunk{fill:#5a4632}.lesson-blocks atmospheric-perspective .ap-verdict{display:flex;align-items:center;gap:14px}.lesson-blocks atmospheric-perspective .ap-chip{flex:0 0 46px;width:46px;height:46px;border-radius:var(--radius-panel);background:var(--mix);border:3px solid var(--surface);box-shadow:0 1px 8px #2a24202e;transition:background .15s linear}@media(prefers-reduced-motion:reduce){.lesson-blocks scale-armour .sa-drop,.lesson-blocks scale-armour .sa-run,.lesson-blocks scale-armour .sa-seep,.lesson-blocks speleothem-drip .sp-drop,.lesson-blocks speleothem-drip .sp-sparkle path,.lesson-blocks nebula-colours .nb-newstar,.lesson-blocks salmon-run .sr-nutrients circle,.lesson-blocks refraction-caustics .rc-scroll,.lesson-blocks glow-lab .gl-fly{animation:none}}@media(max-width:640px){.lesson-blocks moon-phases .sky-dir{font-size:var(--text-sm)}.lesson-blocks moon-phases .sky-place{padding:6px 12px;font-size:var(--text-xs)}.lesson-blocks moon-phases .sky-chip{padding:3px 9px;font-size:var(--text-xs)}.lesson-blocks moon-phases .sky-chip.is-when{min-width:172px}.lesson-blocks moon-phases .sky-run{flex-wrap:wrap}.lesson-blocks moon-phases .sky-pick{flex:1 1 100%}.lesson-blocks moon-phases .sky-pick select{width:100%}.lesson-blocks moon-tonight .mt-card{flex-direction:column}.lesson-blocks moon-tonight .mt-night{flex-basis:auto}.lesson-blocks moon-tonight .mt-week-rows{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.lesson-blocks moon-tonight .mt-day .t{font-size:var(--text-xs)}.lesson-blocks moon-tonight .mt-day .d{font-size:var(--text-xs)}.lesson-blocks metamorphosis-timeline .stage{grid-template-columns:1fr}.lesson-blocks metamorphosis-timeline .mm-marks{height:26px}.lesson-blocks metamorphosis-timeline .mm-mark{font-size:var(--text-xs);padding:3px 8px}.lesson-blocks rocky-vs-giant .pf-spot{flex-direction:column;gap:12px;text-align:center}.lesson-blocks rocky-vs-giant .pf-hint{min-height:0}.lesson-blocks rocky-vs-giant .pf-shelves{grid-template-columns:1fr}.lesson-blocks nebula-colours .nb-mixers{grid-template-columns:1fr}.lesson-blocks feather-view .fv-zoom{flex-direction:column;text-align:center}.lesson-blocks feather-view .fv-chips{grid-template-columns:repeat(2,1fr)}}.lesson-blocks .portfolio{margin:4px 0 8px}.lesson-blocks .pf-grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.lesson-blocks .pf-piece{margin:0}.lesson-blocks .pf-frame{position:relative;border-radius:var(--radius-panel);overflow:hidden;background:var(--cream-dark);border:1px solid var(--border)}.lesson-blocks .pf-frame img{display:block;width:100%;height:auto}.lesson-blocks .pf-shared{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--teal) 90%,transparent);color:var(--surface);font-size:var(--text-xs);font-weight:600}.lesson-blocks .pf-shared svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .pf-piece figcaption{padding:10px 2px 0}.lesson-blocks .pf-caption{margin:0;font-size:var(--text-sm);line-height:1.55;color:var(--ink)}.lesson-blocks .pf-by{margin:3px 0 0;font-family:var(--font-hand);font-size:var(--text-base);color:var(--ink-mid)}.lesson-blocks .pf-note{margin:10px 0 0;padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--teal) 8%,transparent);font-family:var(--font-hand);font-size:var(--text-lg);line-height:1.45;color:var(--teal-dark)}.lesson-blocks .pf-note-who{display:block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.09em;text-transform:uppercase;opacity:.7;margin-bottom:2px}.lesson-blocks .pf-tools{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.lesson-blocks .pf-empty{margin:0;padding:26px 22px;border:1.5px dashed var(--border);border-radius:var(--radius-panel);text-align:center;color:var(--ink-mid);font-size:var(--text-base);line-height:1.6}.lesson-blocks .pf-lesson{margin:0 0 34px}.lesson-blocks .pf-lesson-name{margin:0 0 12px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mid)}.lesson-blocks .pf-add{margin-top:22px}.lesson-blocks .pf-add-which{display:block;max-width:320px;margin-bottom:12px}.lesson-blocks .pf-add-btn>span{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:var(--radius-pill);border:1.5px solid var(--teal);background:var(--surface);color:var(--teal);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;cursor:pointer}.lesson-blocks .pf-add-btn:hover>span{background:color-mix(in srgb,var(--teal) 8%,transparent)}.lesson-blocks .pf-add-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lesson-blocks .pf-add-note{margin:10px 0 0;font-size:var(--text-sm);line-height:1.6;color:var(--ink-mid);max-width:46ch}.lesson-blocks.is-editable .block,.lesson-blocks.is-editable .as-detail{position:relative}.lesson-blocks .edit-tools{float:right;margin:0 0 6px 12px;z-index:2;display:flex;align-items:center;gap:4px;opacity:.75;transition:opacity .15s ease}.lesson-blocks .block:hover>.edit-tools,.lesson-blocks .as-detail:hover>.edit-tools,.lesson-blocks .edit-tools:focus-within{opacity:1}@media(hover:none){.lesson-blocks .edit-tools{opacity:1}}.lesson-blocks .edit-tools+*{width:100%}@media(hover:none){.lesson-blocks .edit-pencil,.lesson-blocks .edit-more{opacity:1}}.edit-menu{position:fixed;z-index:400;max-height:min(70vh,520px);overflow-y:auto;padding:6px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-float);font-family:var(--font-body)}.edit-menu .em-group{padding:4px 0}.edit-menu .em-group+.em-group{border-top:1px solid var(--border)}.edit-menu .em-label{display:block;padding:6px 12px 4px;font-size:var(--text-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-mid)}.edit-menu .em-item{display:block;width:100%;padding:8px 12px;border:0;border-radius:var(--radius-sm);background:none;text-align:left;font-family:inherit;color:var(--ink);cursor:pointer}.edit-menu .em-item:hover:not(:disabled){background:color-mix(in srgb,var(--teal) 8%,transparent)}.edit-menu .em-item:disabled{opacity:.38;cursor:default}.edit-menu .em-item.is-on{background:color-mix(in srgb,var(--teal) 16%,transparent)}.edit-menu .em-what{display:block;font-size:var(--text-sm);font-weight:600}.edit-menu .em-why{display:block;max-width:34ch;margin-top:2px;font-size:var(--text-xs);line-height:1.45;color:var(--ink-mid)}.edit-menu .em-danger .em-what{color:var(--danger)}.edit-menu .em-danger:hover{background:color-mix(in srgb,var(--danger) 8%,transparent)}.edit-menu .em-field{display:grid;gap:4px;padding:6px 12px}.edit-menu .em-field>span:first-child{font-size:var(--text-xs);font-weight:600;color:var(--ink-mid)}.edit-menu .em-field input[type=text]{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);color:var(--ink);background:var(--surface)}.edit-menu .em-actions{padding:8px 12px 4px}.edit-menu .em-icons{display:flex;flex-wrap:wrap;gap:4px}.edit-menu .em-ic{width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-base);line-height:1;cursor:pointer}.edit-menu .em-ic.is-on{border-color:var(--teal);outline:2px solid var(--teal);outline-offset:-2px}.edit-menu .em-tones{display:flex;gap:6px}.edit-menu .em-tone{width:22px;height:22px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer}.edit-menu .em-tone.tone-coral{background:var(--coral)}.edit-menu .em-tone.tone-teal{background:var(--teal)}.edit-menu .em-tone.tone-purple{background:var(--purple)}.edit-menu .em-tone.tone-gold{background:var(--amber)}.edit-menu .em-tone.tone-green{background:var(--success)}.edit-menu .em-tone.tone-ink{background:var(--ink-mid)}.edit-menu .em-tone.is-on{border-color:var(--ink)}.lesson-blocks .edit-add{margin:26px 0 8px}.lesson-blocks .edit-add-btn{display:flex;align-items:center;gap:8px;width:100%;padding:11px 14px;border:1px dashed var(--border);border-radius:var(--radius-panel);background:none;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--ink-mid);cursor:pointer}.lesson-blocks .edit-add-btn:hover{border-color:var(--teal);border-style:solid;color:var(--teal);background:color-mix(in srgb,var(--teal) 8%,transparent)}.lesson-blocks .edit-add-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.lesson-blocks .edit-tools-stop{float:none;margin:0 0 0 auto;align-self:center}.lesson-blocks .prose.is-typing{outline:2px solid var(--teal);outline-offset:10px;border-radius:var(--radius-sm);background:var(--surface)}.lesson-blocks .prose.is-typing:focus{outline-color:var(--teal)}.lesson-blocks .edit-form{margin:14px 0 0;padding:16px 18px;border:1px solid var(--border);border-left:3px solid var(--teal);border-radius:var(--radius-panel);background:var(--surface)}.lesson-blocks .edit-form .stack{display:grid;gap:12px}.lesson-blocks .edit-form .field{display:grid;gap:5px}.lesson-blocks .edit-form .field>span{font-size:var(--text-xs);font-weight:600;color:var(--ink-mid)}.lesson-blocks .edit-form .field em{font-weight:400;font-style:normal;opacity:.8}.lesson-blocks .edit-form input[type=text],.lesson-blocks .edit-form textarea,.lesson-blocks .edit-form select{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink);background:var(--surface)}.lesson-blocks .edit-form textarea{min-height:130px;line-height:1.6;resize:vertical}.lesson-blocks .edit-bar{position:sticky;bottom:12px;z-index:3;display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-float)}.lesson-blocks .edit-say{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-mid)}.lesson-blocks .block.is-editing,.lesson-blocks .as-detail.is-editing{outline:2px solid var(--teal);outline-offset:10px;border-radius:var(--radius-sm)}.lesson-blocks .ip-field{border-radius:var(--radius-sm);text-decoration:underline dotted var(--teal);text-underline-offset:4px;transition:background .12s ease,box-shadow .12s ease}.lesson-blocks .ip-field:hover{background:color-mix(in srgb,var(--teal) 8%,transparent)}.lesson-blocks .ip-field:focus{outline:2px solid var(--teal);outline-offset:3px;background:var(--surface);box-shadow:var(--shadow-float)}.lesson-blocks .ip-field.is-blank{color:var(--ink-mid);font-style:italic;opacity:.75}.lesson-blocks .is-editing .step,.lesson-blocks .is-editing .options>li,.lesson-blocks .is-editing .checklist li,.lesson-blocks .is-editing .panel{position:relative;padding-right:96px}.lesson-blocks .ip-tools{position:absolute;top:2px;right:2px;z-index:2;display:flex;gap:4px}.lesson-blocks .ip-btn{width:26px;height:26px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-family:var(--font-body);font-size:var(--text-sm);line-height:1;color:var(--ink-mid);cursor:pointer}.lesson-blocks .ip-btn:hover{border-color:var(--teal);color:var(--teal)}.lesson-blocks .ip-btn:disabled{opacity:.35;cursor:default}.lesson-blocks .ip-btn:disabled:hover{border-color:var(--border);color:var(--ink-mid)}.lesson-blocks .ip-btn.ip-del:hover{border-color:var(--danger);color:var(--danger)}.lesson-blocks .ip-add{display:block;width:100%;margin:10px 0 0;padding:9px 12px;border:1.5px dashed color-mix(in srgb,var(--teal) 40%,transparent);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--teal);cursor:pointer}.lesson-blocks .ip-add:hover{border-style:solid;background:color-mix(in srgb,var(--teal) 8%,transparent)}.lesson-blocks .ip-correct{margin:6px 0 0;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--ink-mid);cursor:pointer}.lesson-blocks .ip-correct.is-on{border-color:var(--success);background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success)}.lesson-blocks .ip-warn{margin:8px 0 0;font-family:var(--font-body);font-size:var(--text-xs);color:var(--danger)}.lesson-blocks .ip-locked>label>span{opacity:.6}.lesson-blocks .ip-note{margin:0 0 10px;font-family:var(--font-body);font-size:var(--text-xs);line-height:1.45;color:var(--ink-mid)}.lesson-blocks .ip-more{display:inline-block;margin:10px 0 0;padding:5px 11px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-family:var(--font-body);font-size:var(--text-xs);color:var(--ink-mid);cursor:pointer}.lesson-blocks .ip-more:hover{border-color:var(--teal);color:var(--teal)}.lesson-blocks .ip-panel{display:grid;gap:10px;margin:10px 0 0;padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--teal);border-radius:var(--radius-sm);background:var(--surface)}.lesson-blocks .ip-panel .field{display:grid;gap:5px}.lesson-blocks .ip-panel .field>span{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--ink-mid)}.lesson-blocks .ip-panel .field em{font-weight:400;font-style:normal;opacity:.8}.lesson-blocks .ip-panel input,.lesson-blocks .ip-panel textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink);background:var(--surface)}.lesson-blocks .ip-panel textarea{line-height:1.5;resize:vertical}.lesson-blocks .is-editing .hotspot .pin{display:block}.lesson-blocks .is-editing .hotspot .panel{display:flex}.lesson-blocks .ip-draggable{cursor:crosshair}.lesson-blocks .ip-draggable .pin{cursor:grab;touch-action:none}.lesson-blocks .ip-draggable .pin.is-moving{cursor:grabbing;transform:scale(1.15)}.lesson-blocks .edit-rest-why{margin:0 0 12px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--ink-mid)}@media(max-width:640px){.lesson-blocks .is-editing .step,.lesson-blocks .is-editing .options>li,.lesson-blocks .is-editing .checklist li,.lesson-blocks .is-editing .panel{padding-right:0;padding-top:32px}.lesson-blocks .ip-tools{top:0;right:0}}.staff-bar{position:fixed;left:14px;bottom:14px;z-index:40;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;width:auto;max-width:calc(100vw - 84px);padding:6px 8px 6px 12px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-float)}.staff-what{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-mid)}.staff-bar [hidden]{display:none!important}.staff-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);flex:none}.staff-bar:not(.is-editing) .staff-dot{background:transparent;outline:1.5px solid var(--border);outline-offset:-1.5px}.staff-bar.is-sending .staff-dot{background:var(--teal);box-shadow:var(--shadow-float)}.staff-bar svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.staff-bar .mini{flex:none}.lesson-blocks .as-themes .th-intro{font-size:var(--text-base);line-height:1.8;color:var(--ink-mid);margin-bottom:18px}.lesson-blocks .th-grid{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:1fr}@media(min-width:641px){.lesson-blocks .th-grid{grid-template-columns:1fr 1fr}}.lesson-blocks .th-card{display:flex;align-items:center;gap:13px;width:100%;padding:10px;text-align:left;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--cream);cursor:pointer}.lesson-blocks .th-card:hover{border-color:var(--teal)}.lesson-blocks .th-card:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.lesson-blocks .th-card .th-shot{flex:0 0 62px;height:62px;border-radius:var(--radius-sm);overflow:hidden;background:var(--cream-dark)}.lesson-blocks .th-card .th-shot img{width:62px;height:62px;object-fit:cover;display:block}.lesson-blocks .th-text{display:flex;flex-direction:column;gap:2px;min-width:0}.lesson-blocks .th-name{font-family:var(--font-body);font-size:var(--text-base);font-weight:700;color:var(--ink);line-height:1.3}.lesson-blocks .th-blurb{font-size:var(--text-sm);line-height:1.45;color:var(--ink-mid);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-blocks .th-n{font-size:var(--text-xs);font-weight:600;color:var(--teal)}.lesson-blocks .th-sheet{position:fixed;inset:0;z-index:300;--as-tint: var(--teal)}.lesson-blocks .th-sheet[hidden]{display:none}.lesson-blocks .th-scrim{position:absolute;inset:0;background:color-mix(in srgb,var(--ground-dark) 40%,transparent)}.lesson-blocks .th-box{position:absolute;left:50%;bottom:0;transform:translate(-50%);width:min(620px,100%);max-height:min(86vh,780px);overflow-y:auto;padding:0 18px 22px;border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--cream);box-shadow:var(--shadow-float)}@media(min-width:700px){.lesson-blocks .th-box{top:50%;bottom:auto;transform:translate(-50%,-50%);border-radius:var(--radius-panel)}}.lesson-blocks .th-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:10px;padding:16px 0 12px;background:var(--cream);border-bottom:1px solid var(--border)}.lesson-blocks .th-head strong{flex:1;font-family:var(--font-display);font-size:var(--text-lg);line-height:1.3;color:var(--ink)}.lesson-blocks .th-body{font-size:var(--text-base);line-height:1.75;color:var(--ink-mid);margin:14px 0 4px}.lesson-blocks .th-detail[hidden]{display:none}.lesson-page .lesson-hero{position:relative;height:clamp(230px,34vh,340px);overflow:hidden}.lesson-page .lesson-hero img{width:100%;height:100%;object-fit:cover}.lesson-page .lesson-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--ground-dark) 16%,transparent),color-mix(in srgb,var(--ground-dark) 8%,transparent) 40%,color-mix(in srgb,var(--ground-dark) 70%,transparent))}.lesson-page .lesson-hero-text{position:absolute;left:0;right:0;bottom:0;max-width:var(--max);margin:0 auto;padding:0 28px 62px}.lesson-page .crumb{font-family:var(--font-hand);font-size:var(--text-lg);color:color-mix(in srgb,var(--surface) 90%,transparent);display:inline-block;margin-bottom:4px}.lesson-page .crumb:hover{color:var(--surface)}.lesson-page .lesson-hero-text h1{font-family:var(--font-display);font-size:var(--text-section);color:var(--surface);line-height:1.08;margin-bottom:10px;text-shadow:0 2px 18px color-mix(in srgb,var(--ground-dark) 40%,transparent)}.lesson-page .edit-tools{display:flex;align-items:center;gap:4px;opacity:.75;transition:opacity .15s ease}.lesson-page .edit-tools:focus-within{opacity:1}@media(hover:none){.lesson-page .edit-tools{opacity:1}}.lesson-page .edit-pencil,.lesson-page .edit-more{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--teal);cursor:pointer;transition:color .15s ease,border-color .15s ease,box-shadow .15s ease}.lesson-page .edit-pencil:hover,.lesson-page .edit-more:hover,.lesson-page .edit-more[aria-expanded=true]{border-color:var(--teal);box-shadow:none}.lesson-page .edit-pencil svg,.lesson-page .edit-more svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lesson-page .edit-more svg circle{fill:currentColor;stroke:none}.lesson-page .lesson-hero .edit-tools{position:absolute;top:12px;right:12px;z-index:3;filter:drop-shadow(0 2px 8px color-mix(in srgb,var(--ground-dark) 40%,transparent))}.lesson-page .brief-objective{margin:0 0 14px;font-family:var(--font-display);font-size:var(--text-lg);font-style:italic;line-height:1.55;color:var(--ink)}.lesson-page .brief-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid var(--border)}.lesson-page .brief-fact{display:flex;align-items:baseline;gap:6px}.lesson-page .brief-fact+.brief-fact{padding-left:14px;border-left:1px solid var(--border)}.lesson-page .brief-fact dt{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-mid);opacity:.6;white-space:nowrap}.lesson-page .brief-fact dd{margin:0;font-size:var(--text-sm);line-height:1.45;color:var(--ink-mid)}.lesson-page .lesson-footer-space{height:96px}@media(max-width:640px){.lesson-page .lesson-hero{height:clamp(215px,27vh,270px)}.lesson-page .lesson-hero-text{padding:0 20px 48px}.lesson-page .brief-meta{gap:5px 14px;margin-bottom:22px;padding-bottom:15px}.lesson-page .brief-fact+.brief-fact{padding-left:0;border-left:none}}.lesson-page .lesson-locked{max-width:620px;margin:0 auto;padding:34px 28px 40px;text-align:center}.lesson-page .locked-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;padding:6px 15px 6px 12px;border-radius:var(--radius-pill);background:var(--cream-dark);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mid)}.lesson-page .locked-pad{font-size:var(--text-sm)}.lesson-page .lesson-locked h2{margin:0 0 20px;font-family:var(--font-display);font-size:var(--text-title);line-height:1.25;color:var(--ink)}.lesson-page .locked-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 26px;margin:0 0 22px;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.lesson-page .locked-facts dt{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mid);opacity:.6}.lesson-page .locked-facts dd{margin:2px 0 0;font-family:var(--font-display);font-size:var(--text-base);color:var(--ink)}.lesson-page .locked-say{margin:0 0 26px;font-size:var(--text-base);line-height:1.7;color:var(--ink-mid)}.lesson-page .locked-free{margin:26px 0 0;font-family:var(--font-hand);font-size:var(--text-lg);line-height:1.5;color:var(--ink-mid)}.lesson-page .locked-free a{color:var(--teal)}
