.lesson-shell{--lesson-bg:var(--background);--lesson-fg:var(--foreground);--lesson-muted:var(--muted);--lesson-accent:var(--accent);--lesson-line:var(--line);--lesson-surface:var(--surface);background:var(--lesson-bg);width:min(100% - 40px,790px);color:var(--lesson-fg);font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;box-sizing:border-box;margin-inline:auto;font-size:17px;line-height:1.72}.lesson-shell a{color:var(--lesson-accent);text-underline-offset:.2em;text-decoration-thickness:.08em}.lesson-shell a:hover{text-decoration-thickness:.14em}.lesson-shell a:focus-visible,.lesson-shell button:focus-visible,.lesson-shell summary:focus-visible,.lesson-shell input:focus-visible{outline:3px solid var(--lesson-accent);outline-offset:4px}.lesson-shell .lesson-header{border-bottom:1px solid var(--lesson-line);padding-block:28px 34px}.lesson-shell .lesson-header nav{margin-bottom:34px;font-size:.9rem;font-weight:650}.lesson-shell .lesson-kicker{color:var(--lesson-accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:750}.lesson-shell h1,.lesson-shell h2,.lesson-shell h3{color:var(--lesson-fg);text-wrap:balance;line-height:1.2}.lesson-shell h1{letter-spacing:-.055em;max-width:15ch;margin:0;font-size:clamp(2.4rem,7vw,4.4rem);font-weight:620}.lesson-shell h2{letter-spacing:-.035em;margin:2.5em 0 .65em;font-size:clamp(1.55rem,4vw,2rem)}.lesson-shell h3{margin:1.8em 0 .5em;font-size:1.2rem}.lesson-shell .lesson-deck{max-width:66ch;color:var(--lesson-muted);margin:20px 0 0;font-size:1.14rem;line-height:1.65}.lesson-shell .lesson-meta{color:var(--lesson-muted);margin:16px 0 0;font-size:.85rem}.lesson-shell main{padding-block:28px 48px}.lesson-shell p,.lesson-shell ul,.lesson-shell ol,.lesson-shell dl,.lesson-shell figure{max-width:72ch}.lesson-shell li+li{margin-top:.45em}.lesson-shell .outcome,.lesson-shell .example,.lesson-shell .reflection{border-left:3px solid var(--lesson-accent);background:var(--lesson-surface);margin-block:24px;padding:20px 23px}.lesson-shell .outcome>:first-child,.lesson-shell .example>:first-child,.lesson-shell .reflection>:first-child{margin-top:0}.lesson-shell .outcome>:last-child,.lesson-shell .example>:last-child,.lesson-shell .reflection>:last-child{margin-bottom:0}.lesson-shell .diagram{border:1px solid var(--lesson-line);border-radius:12px;margin-block:24px;padding:18px}.lesson-shell .diagram ol{grid-template-columns:repeat(auto-fit,minmax(min(100%,135px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.lesson-shell .diagram li{border:1px solid var(--lesson-line);background:var(--lesson-surface);text-align:center;border-radius:8px;min-width:0;padding:10px 12px;font-size:.88rem;font-weight:650}.lesson-shell pre{border:1px solid var(--lesson-line);background:var(--lesson-surface);max-width:100%;color:var(--lesson-fg);tab-size:4;border-radius:10px;margin:20px 0;padding:18px;font:500 .84rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.lesson-shell code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.lesson-shell :not(pre)>code{background:var(--lesson-surface);border-radius:4px;padding:.08em .32em}.lesson-shell table{border-collapse:collapse;text-align:left;width:100%;margin-block:20px;font-size:.93rem}.lesson-shell caption{text-align:left;padding:0 0 10px;font-weight:700}.lesson-shell th,.lesson-shell td{border-bottom:1px solid var(--lesson-line);vertical-align:top;padding:10px 12px}.lesson-shell th{font-size:.82rem}.lesson-shell .quiz{border:1px solid var(--lesson-line);border-radius:12px;margin-block:32px;padding:22px}.lesson-shell .quiz legend{padding-inline:6px;font-weight:700}.lesson-shell .quiz label{cursor:pointer;align-items:flex-start;gap:10px;padding:8px 4px;display:flex}.lesson-shell .quiz input{width:1.1rem;height:1.1rem;accent-color:var(--lesson-accent);flex:none;margin-top:.3em}.lesson-shell .quiz button{border:1px solid var(--lesson-accent);background:var(--lesson-accent);color:#fff;font:inherit;cursor:pointer;border-radius:7px;margin-top:12px;padding:9px 14px;font-size:.9rem;font-weight:700}.lesson-shell .quiz button:hover{filter:brightness(.9)}.lesson-shell .quiz-feedback{min-height:1.7em;margin:12px 0 0;font-weight:650}.lesson-shell .quiz-feedback[data-correct=true]{color:var(--lesson-accent)}.lesson-shell .quiz-feedback[data-correct=false]{color:#8b2e38}:root[data-theme=midnight] .lesson-shell .quiz button{color:#111a29}:root[data-theme=midnight] .lesson-shell .quiz-feedback[data-correct=false]{color:#ffafb4}.lesson-shell .source{border:1px solid var(--lesson-line);border-radius:10px;padding:16px 18px}.lesson-shell .lesson-nav{border-top:1px solid var(--lesson-line);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:20px;font-size:.93rem;font-weight:700;display:flex}.lesson-shell .lesson-footer{color:var(--lesson-muted);padding-block:0 40px;font-size:.85rem}.lesson-shell .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:560px){.lesson-shell{width:min(100% - 30px,790px);font-size:16px}.lesson-shell .lesson-header{padding-block:18px 28px}.lesson-shell .lesson-header nav{margin-bottom:26px}.lesson-shell .outcome,.lesson-shell .example,.lesson-shell .reflection,.lesson-shell .quiz{padding:17px}.lesson-shell th,.lesson-shell td{padding:9px 8px}}@media (prefers-reduced-motion:reduce){.lesson-shell,.lesson-shell *,.lesson-shell :before,.lesson-shell :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.lesson-shell{width:100%;font-size:12pt}.lesson-shell .lesson-header{padding-top:0}.lesson-shell .lesson-header nav,.lesson-shell .quiz button{display:none}.lesson-shell a{color:inherit}.lesson-shell pre{white-space:pre-wrap;overflow-wrap:anywhere}}
