/* A quiet lesson beside the existing solution workspace and journal. */
#lesson-panel{max-width:900px;margin-inline:auto;min-width:0}
#lesson-panel[hidden],.learning-practice-context[hidden]{display:none}
.lesson-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.lesson-heading h2{font-size:32px;font-weight:600;line-height:1.6;margin:4px 0 9px;color:var(--ink)}
.lesson-heading .helper{max-width:580px;margin:0;line-height:1.9}
.lesson-edition{flex-shrink:0;font-size:11px;line-height:1.9;color:var(--muted);border-inline-start:1px solid var(--line);padding-inline-start:16px;margin-top:7px}
.lesson-source,.lesson-local-note{font-size:11px;line-height:1.9;color:var(--muted);margin:12px 0 20px}
.lesson-route{display:flex;gap:4px;background:#eef0e5;border:1px solid var(--line);border-radius:13px;padding:4px;margin:22px 0 10px;max-width:100%}
.lesson-route button{flex:1;min-height:46px;min-width:0;background:transparent;border:0;border-radius:9px;color:var(--muted);font:inherit;font-size:13px;padding:9px 12px;cursor:pointer}
.lesson-route button[aria-current]{color:var(--ink);background:var(--white);box-shadow:0 2px 3px #183f3609;font-weight:500}
#lesson-save-status{font-size:11px;margin-bottom:16px}
.lesson-card{padding:32px;min-width:0;line-height:1.95}
.lesson-card h3{font-weight:500;color:var(--ink);font-size:23px;line-height:1.7;margin:0 0 16px;outline-offset:5px}
.lesson-heading h2:focus,.lesson-card h3:focus,.lesson-example-step h4:focus{outline:none}
.lesson-card h3,.lesson-example-step h4{scroll-margin-top:22px}
.lesson-card h4{font-size:16px;color:var(--ink);font-weight:500;line-height:1.8;margin:10px 0}
.lesson-card p{font-size:15px;line-height:1.95;margin:10px 0}
.lesson-card .lesson-lead{font-size:17px;color:var(--ink);line-height:2}
.lesson-figure{background:#f1f4e9;border-radius:14px;margin:22px 0;padding:16px;text-align:center}
.lesson-figure svg{width:100%;max-width:310px;max-height:225px;display:block;margin-inline:auto;direction:ltr}
.lesson-figure svg text{font:14px Georgia,serif;fill:#49634d}
.lesson-figure figcaption{font-size:11px;color:var(--muted);margin-top:15px}
.lesson-conditions{list-style:decimal;padding-inline-start:26px;margin:15px 0 23px}
.lesson-conditions li{padding-inline-start:7px;padding-block:8px;border-bottom:1px dashed var(--line)}
.lesson-conditions li::marker{font:16px Georgia,serif;color:#7f9975}
.lesson-conditions h4{margin:0 0 4px}
.lesson-conditions .math-reading{font-size:14px;line-height:1.95}
.lesson-conclusion{border-inline-start:3px solid #96aa85;background:#f0f3e9;padding:12px 16px;border-radius:9px;font-size:16px;margin:15px 0}
.lesson-card .lesson-citation{font-size:10px;color:var(--muted);line-height:1.9;margin:12px 0}
.lesson-question{border:0;border-top:1px dashed var(--line);margin:26px 0 22px;padding:21px 0 0;min-width:0}
.lesson-question legend{float:right;width:100%;font-size:16px;font-weight:500;color:var(--ink);margin-bottom:12px;line-height:1.9}
.lesson-question::after{content:'';display:block;clear:both}
.lesson-choices{clear:both;display:grid;gap:8px}
.lesson-choice{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);background:#fcfcf7;border-radius:10px;padding:12px 14px;line-height:1.9;font-size:14px;margin-top:8px;min-height:48px;cursor:pointer}
.lesson-choice:has(input:checked){border-color:#8da083;background:#f0f4e9}
.lesson-choice input{accent-color:var(--ink);width:16px;height:16px;margin-top:7px;flex-shrink:0}
.lesson-choice[data-answer-state="incorrect"]:has(input:checked){border-color:#c68a7e;background:#fbf1ed}
.lesson-choice[data-answer-state="incorrect"] input{accent-color:#8e3b32}
.lesson-choice>span{min-width:0;flex:1}
.lesson-question-stem,.lesson-stem{font-size:16px;background:#f5f6ef;border-radius:10px;padding:14px 17px;clear:both}
.lesson-feedback{clear:both;border-inline-start:2px solid #8da083;background:#f3f5ed;border-radius:9px;padding:12px 15px;margin-top:14px}
.lesson-feedback h4{margin:0 0 6px;font-size:15px}
.lesson-feedback .solution-reading{font-size:14px}
.lesson-feedback .quiet{font-size:12px;color:var(--muted)}
.lesson-feedback .lesson-verdict{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:600;line-height:1.8;margin:0 0 7px;color:#295641}
.lesson-feedback[data-answer-state="incorrect"]{border-color:#c68a7e;background:#fbf1ed}
.lesson-feedback[data-answer-state="incorrect"] .lesson-verdict,.lesson-feedback[data-answer-state="incorrect"] h4{color:#8e3b32}
.lesson-example-step{border-bottom:1px dashed var(--line);padding:14px 0 20px;margin-bottom:8px}
.lesson-example-step h4{font-size:18px;outline-offset:4px}
.lesson-example-step .lesson-example-math{font-size:17px;background:#eef3e7;border:1px solid #dbe5d3;border-radius:12px;padding:14px 16px;margin-block:14px;min-width:0}
.lesson-example-step .lesson-example-body{font-size:15px;line-height:1.95;margin:10px 0}
.lesson-example-step .lesson-why{font-size:13px;color:#64775f;margin:13px 0 0}
.lesson-card .button{margin-top:18px;min-height:49px;font-size:14px;white-space:normal;line-height:1.9}
.lesson-transfer,.lesson-recap{margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}
.lesson-practice-prompts{font-size:14px;line-height:2;padding-inline-start:23px;margin:20px 0}
.lesson-practice-prompts li{padding:4px 0}
.lesson-card .lesson-review-scope{font-size:12px;padding:12px 14px;border-radius:9px;background:#f0f3e9;color:#62785d}
.lesson-practice-state{color:var(--muted);font-size:13px!important}
.lesson-card .text-button{font-size:12px;min-height:44px;cursor:pointer}
.lesson-reflection{display:grid;gap:4px;border:0;padding-top:0}
.lesson-local-note{margin-top:18px}
.learning-practice-context{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dce5d4;background:#eef2e6;border-radius:11px;padding:11px 16px;font-size:12px;color:var(--ink);margin-bottom:20px}
.learning-practice-context button{border:0;background:transparent;font:inherit;color:var(--ink);min-height:40px;cursor:pointer;white-space:nowrap}
.lesson-route button:focus-visible,.lesson-card button:focus-visible,.lesson-choice:has(input:focus-visible){outline:2px solid #517b63;outline-offset:3px}
@media(max-width:760px){.study-nav button{padding-inline:7px;line-height:1.6}.study-nav .count{margin-inline-start:4px}#lesson-panel{width:100%}.lesson-heading h2{font-size:27px}.lesson-edition{font-size:10px;padding-inline-start:10px}.lesson-heading{gap:12px}.lesson-card{padding:22px}.lesson-card h3{font-size:21px}.lesson-card p{font-size:15px}.lesson-card .lesson-lead{font-size:16px}.lesson-route button{font-size:12px;padding-inline:6px}.lesson-choice{padding:11px 12px}.lesson-figure{padding-inline:12px}.lesson-card .button{font-size:13px}.learning-practice-context{font-size:11px;gap:7px;padding:8px 12px}}
@media(max-width:360px){.lesson-edition{display:none}.lesson-card{padding:18px}.lesson-card h3{font-size:20px}.lesson-route button{font-size:11px}.learning-practice-context{flex-wrap:wrap}.lesson-card .lesson-example-math{font-size:16px}}
/* Both theorem lessons share the existing three-stage reading path. */
.lesson-select{display:flex;align-items:center;gap:12px;margin:0 0 18px;color:var(--muted);font-size:13px}
.lesson-select select{min-width:0;flex:1;max-width:410px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font:inherit;padding:10px 13px;min-height:46px}
.lesson-help{border:1px solid var(--line);border-radius:11px;background:#fafbf6;margin:17px 0;padding:0 15px;min-width:0}
.lesson-help>summary{cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:500;color:var(--ink);list-style:none;line-height:1.9;padding-block:8px}
.lesson-help>summary::after{content:'+';font-size:20px;color:#7f9975;flex-shrink:0}
.lesson-help[open]>summary::after{content:'−'}
.lesson-help-body{padding-bottom:12px;min-width:0}
.lesson-help .lesson-question:first-child{margin-top:4px}
.lesson-help .lesson-question{padding-top:12px;margin-bottom:12px}
.lesson-help .lesson-question legend{font-size:15px}
.lesson-help .quiet{font-size:12px;color:var(--muted)}
.lesson-before-step{margin-top:24px;padding-top:14px;border-top:1px solid var(--line)}
.lesson-before-step>h4{font-size:15px;margin:0;color:var(--muted)}
.lesson-before-step .lesson-question{margin-top:6px;border-top:0;padding-top:8px;margin-bottom:10px}
.lesson-before-step>.quiet{font-size:12px;color:var(--muted);margin-bottom:0}
.lesson-mvt-figure h4{font-size:17px;margin:0 0 8px}
.lesson-mvt-figure svg{max-width:400px;max-height:none}
.lesson-graph-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 20px;font-size:12px;color:var(--text);margin-block:9px 13px}
.lesson-graph-legend>span{display:flex;gap:7px;align-items:center}
.lesson-graph-legend i{width:28px;border-top:2px solid #153f36;display:inline-block}
.lesson-graph-legend .legend-secant{border-top:2px dashed #ad7956}
.lesson-card .lesson-graph-instruction{font-size:13px;line-height:1.9;margin:12px 0}
.lesson-graph-position{display:flex;justify-content:space-between;font-size:13px;gap:12px;margin-top:10px;text-align:start}
.lesson-graph-position bdi{font:16px Georgia,serif}
#mvt-position{width:100%;accent-color:var(--ink);min-height:42px;margin:0;cursor:pointer;direction:ltr}
.lesson-graph-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #dce5d4;padding-top:11px;margin-top:7px;font-size:12px}
.lesson-graph-values bdi{display:block;font:19px/1.7 Georgia,serif;color:var(--ink);margin-top:4px}
.lesson-card .lesson-graph-comparison{min-height:49px;font-size:12px;line-height:1.9;margin:12px 0 0;color:#526e4d}
.lesson-select select:focus-visible,.lesson-help summary:focus-visible,#mvt-position:focus-visible{outline:2px solid #517b63;outline-offset:3px}
@media(max-width:380px){.lesson-select{gap:8px}.lesson-select select{font-size:12px;padding-inline:9px}.lesson-help{padding-inline:11px}.lesson-help>summary{font-size:13px}.lesson-help .lesson-choice{padding:9px 10px}.lesson-graph-legend{gap:8px 13px;font-size:11px}.lesson-mvt-figure{padding-inline:12px}}
