:root{color-scheme:light;--paper:#fbfcfc;--ink:#20343d;--muted:#64757d;--line:#d9e2e5;--accent:#147d83;--wash:#edf3f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:19px/1.75 Charter,'Bitstream Charter','Iowan Old Style',Georgia,serif}header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);font:14px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--paper)}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}.brand{font-size:17px;font-weight:600;color:var(--ink);text-decoration:none}header nav{display:flex;gap:26px}header nav a{text-decoration:none}.layout{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:210px minmax(0,800px);gap:80px;padding:75px 28px}aside{position:sticky;top:35px;align-self:start;font:13px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;padding-top:20px}aside>a{display:block;padding:9px 0;color:var(--muted);text-decoration:none}aside>a:hover{color:var(--accent)}.aside-title{font-weight:600;display:block;margin-bottom:14px}.save-box{margin-top:40px;padding-top:20px;border-top:1px solid var(--line)}#sync{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:12px}.save-box button{display:block;margin:8px 0;width:100%;text-align:left}button{font:13px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;border:1px solid var(--line);background:white;color:var(--ink);border-radius:5px;padding:10px 14px;cursor:pointer}button:hover{border-color:var(--accent);color:var(--accent)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #58aeb6;outline-offset:4px}[hidden]{display:none!important}main{min-width:0}.byline{font:15px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--muted);margin:0 0 24px}h1{font-size:clamp(58px,6.7vw,88px);line-height:1.04;font-weight:400;letter-spacing:-3.4px;margin:0 0 28px}.dek{font-size:25px;line-height:1.45;max-width:530px}.origin{font:13px/1.65 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--muted);max-width:550px}.hero{margin:45px -28px 65px}svg{width:100%;display:block}svg text{font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;fill:var(--muted)}.ground{stroke:#cad5d9;stroke-width:2}.wheels{fill:none;stroke:#293d45;stroke-width:4}.wheels circle:nth-child(n+3){stroke:#b4c2c7;stroke-width:1}#spoke-lines{stroke:#bac7cb;stroke-width:1}.frame{fill:none;stroke:var(--accent);stroke-width:9;stroke-linejoin:round;stroke-linecap:round}.details{fill:none;stroke:#293d45;stroke-width:8;stroke-linecap:round}.crank{fill:none;stroke:#293d45;stroke-width:3}.force{stroke:var(--accent);stroke-width:2;fill:none}.drag{stroke:#9d6654;stroke-width:2;fill:none}.force text,.drag text{stroke:none}figcaption{font:13px/1.65 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--muted);margin-top:18px}.hero figcaption{max-width:540px;margin:15px auto 0}section{margin:0 0 76px}h2{font-size:38px;line-height:1.2;font-weight:400;letter-spacing:-1px;margin:0 0 28px}p{margin:0 0 24px}article>section>p{max-width:640px}.equation{font-size:24px;text-align:center;padding:25px;border-block:1px solid var(--line);margin:30px 0}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:28px 0;font:15px/1.75 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}summary{padding:18px 0;cursor:pointer;color:var(--accent)}details>div{padding:0 0 20px}details p:last-child{margin-bottom:0}.experiment{margin:36px 0;padding:30px;background:var(--wash);border-radius:9px}.experiment-title{font:600 16px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin-bottom:25px}label{font:14px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;display:flex;justify-content:space-between;align-items:center}output{font-variant-numeric:tabular-nums}input[type=range]{display:block;width:100%;height:36px;accent-color:var(--accent);margin:8px 0 24px;cursor:pointer}.power-display{display:flex;align-items:baseline;gap:12px;margin:22px 0}.power-display strong{font-size:52px;line-height:1.15;font-weight:400;font-variant-numeric:tabular-nums}.power-display span{font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.bars>div{display:grid;grid-template-columns:40px 1fr 60px;gap:12px;align-items:center;font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:14px 0}.bars>div>div{height:9px;background:#dfe8ea;border-radius:3px;overflow:hidden}.bars i{display:block;height:100%;background:var(--accent);transition:width .12s}.bars>div:nth-child(2) i{background:#778a96}.bars>div:nth-child(3) i{background:#ad775d}.bars output{text-align:right}.buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.observation{font:14px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:20px 0 0}.distance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.distance-grid span{font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;display:block}.distance-grid strong{font-weight:400;font-size:30px;font-variant-numeric:tabular-nums}.sources{border-top:1px solid var(--line);padding-top:35px;font:14px/1.8 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.sources h2{font:600 16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:0}.sources ul{padding-left:19px}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--muted)}@media(max-width:900px){.layout{grid-template-columns:1fr;max-width:720px;padding-top:40px;gap:35px}aside{position:static;display:flex;flex-wrap:wrap;gap:4px 18px;border-bottom:1px solid var(--line);padding:0 0 22px}.aside-title{display:none}aside>a{font-size:12px}.save-box{width:100%;margin:12px 0 0;padding:12px 0 0;display:flex;align-items:center;flex-wrap:wrap;gap:7px}#sync{flex-basis:100%;margin:0}.save-box button{width:auto;margin:0;font-size:12px;padding:9px}h1{font-size:64px}.hero{margin-inline:-10px}h2{font-size:33px}}@media(max-width:480px){body{font-size:18px;line-height:1.8}header{height:64px;padding:0 20px}header nav{gap:16px;font-size:12px}.layout{padding:25px 22px;gap:30px}h1{font-size:59px;letter-spacing:-2px}.dek{font-size:23px}.hero{margin-top:28px;margin-bottom:48px}h2{font-size:31px}.experiment{padding:22px 18px;margin-inline:-8px}.distance-grid{gap:8px}.distance-grid strong{font-size:25px}.distance-grid span{font-size:11px}section{margin-bottom:56px}.equation{font-size:21px}svg text{font-size:16px}footer{gap:20px}.hero figcaption{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bars i{transition:none}}
/* lemma shell: a quiet shelf, one illustrated lesson, no dashboard. */
body{padding-bottom:75px}.reading-bar{position:fixed;bottom:0;left:0;right:0;z-index:5;display:flex;justify-content:center;align-items:center;gap:14px;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:rgba(251,252,252,.97);border-top:1px solid var(--line);font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.reading-bar #sync{margin:0;font-size:12px;flex-basis:auto}.reading-bar button{font-size:12px;padding:8px 12px;white-space:nowrap}.library-page{padding-bottom:0}.library-note{color:var(--muted);font-size:13px}.shelf{max-width:1030px;margin:90px auto;padding:0 36px}.shelf h1{font-size:62px;letter-spacing:-2px}.shelf-intro{color:var(--muted);font-size:21px;margin-bottom:60px}.book{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:60px;text-decoration:none;color:var(--ink);padding:30px 0 60px}.book-art{background:#edf3f5;border-radius:50% 50% 12px 12px;padding:45px 5px 20px}.book-art .force,.book-art .drag{display:none}.book-copy h2{font-size:48px;margin:14px 0 22px}.book-copy p{font-size:19px;max-width:300px;color:var(--muted)}.book-subject,#book-progress,.shelf-foot{font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.book-subject{color:var(--muted)}#book-progress{display:inline-block;color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:4px}.book:hover #book-progress{color:var(--ink)}.shelf-foot{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;color:var(--muted)}
@media(max-width:650px){.library-note{font-size:11px}.shelf{margin:45px auto;padding:0 24px}.shelf h1{font-size:48px}.shelf-intro{margin-bottom:20px}.book{grid-template-columns:1fr;gap:30px;padding-top:10px}.book-art{padding:10px 20px;max-width:390px}.book-copy h2{font-size:40px}.shelf-foot{font-size:11px}.reading-bar{gap:8px;flex-wrap:wrap;padding:9px 12px max(9px,env(safe-area-inset-bottom))}.reading-bar #sync{font-size:11px}.layout aside{gap:0 14px;padding-bottom:12px}.layout{gap:25px}h1{font-size:56px}}
:root{--paper:#fbfcfc;--ink:#20343d;--accent:#147d83;--muted:#64757d;--line:#d9e2e5;--wash:#edf3f5}body{padding-bottom:80px}header{padding-inline:max(22px,calc((100vw - 1160px)/2));height:72px}.page{max-width:1000px;margin:65px auto;padding:0 24px}.page h1{font-size:60px}.page>p{color:var(--muted)}.login{max-width:650px;margin:18vh auto;padding:24px}.login h1{font-size:64px}.button{display:inline-block;font:14px system-ui;border:1px solid var(--line);padding:12px 18px;border-radius:5px;text-decoration:none}input[type=search],input[type=text],textarea,select{font:15px/1.5 system-ui;color:var(--ink);background:white;border:1px solid var(--line);border-radius:5px;padding:10px;width:100%}.filters{display:flex;gap:14px;align-items:center;margin:35px 0}.filters input{flex:1}.filters select{width:180px}.lesson-row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:30px 0;border-bottom:1px solid var(--line)}.lesson-row a{text-decoration:none;color:var(--ink)}.lesson-row h2{font-size:34px;margin:0 0 14px}.lesson-row p{font-size:18px;color:var(--muted);margin-bottom:12px}.meta{font:12px/1.6 system-ui;color:var(--muted)}.tag{display:inline-block;margin:0 10px 0 0;font:12px system-ui;color:var(--accent)}.lesson-row button{align-self:center}.empty{padding:40px;color:var(--muted)}.layout{padding-top:50px}.layout article>h1{margin-bottom:20px}.deck{font-size:23px;color:var(--muted)}.reading-block{margin:26px 0;scroll-margin-top:80px}.reading-block h2{margin-top:58px}.block-text{white-space:pre-wrap}.reading-block p{max-width:660px}.component-frame{border:0;width:100%;height:420px;display:block;border-radius:8px;background:var(--wash)}.block-meta{display:flex;gap:16px;align-items:center;margin-top:-10px;font:12px system-ui;color:var(--muted)}.block-meta details{font-size:12px;border:0;margin:0}.block-meta summary{padding:4px 0}.translation{font-size:17px;line-height:1.9;color:#435b64}.sources-list{font:14px/1.8 system-ui;border-top:1px solid var(--line);padding-top:25px;margin-top:60px}.reading-bar{position:fixed;bottom:0;left:0;right:0;z-index:6;background:var(--paper);border-top:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:12px;padding:10px 16px max(10px,env(safe-area-inset-bottom));font:12px system-ui}.reading-bar span{max-width:60vw}.reading-bar button{padding:7px 10px;font-size:12px}.notes{margin-top:60px;border-top:1px solid var(--line);padding-top:30px}.note{font:14px/1.7 system-ui;padding:20px 0;border-bottom:1px solid var(--line)}.note blockquote{margin:8px 0;padding-left:16px;border-left:2px solid #9ac7c9}.note textarea{margin:8px 0}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}button.primary{background:var(--accent);color:white}.note .relocate{color:#8e5037}dialog{border:1px solid var(--line);border-radius:10px;max-width:540px;width:calc(100vw - 32px);padding:28px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#20343d66}dialog h2{font-size:28px}dialog blockquote{font:14px/1.7 system-ui;margin:0 0 20px;max-height:150px;overflow:auto}dialog label{margin-bottom:8px}#selection-tools{position:fixed;bottom:65px;left:50%;transform:translateX(-50%);z-index:9;padding:7px;background:white;border:1px solid var(--line);border-radius:8px;box-shadow:0 3px 20px #20343d20;white-space:nowrap}#notice{position:fixed;right:20px;top:85px;max-width:350px;background:var(--ink);color:white;padding:12px 18px;border-radius:5px;font:13px/1.6 system-ui;z-index:20}.agent{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:20px}.token{overflow-wrap:anywhere;font:13px/1.6 monospace;padding:20px;background:var(--wash)}.settings-section{margin:45px 0}.settings-section h2{font-size:30px}.history{font:13px/1.7 system-ui;margin:20px 0}.history summary{padding:12px 0}.history button{margin:6px}.active-highlight{background:#d9eded}.library-count{font:13px system-ui;color:var(--muted)}.cover{width:140px;height:80px}.a11y-only{position:absolute;width:1px;height:1px;overflow:hidden}
@media(max-width:650px){.page{margin:35px auto}.page h1{font-size:46px}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.filters select{flex:1}.lesson-row h2{font-size:30px}.layout{padding-top:25px}.layout aside{display:none}.layout{display:block}h1{font-size:54px}.reading-block h2{font-size:31px}.reading-bar{flex-wrap:wrap;gap:8px}.reading-bar span{max-width:100%;font-size:11px}#notice{left:20px;max-width:none}.component-frame{border-radius:6px}.login h1{font-size:48px}}
::highlight(reader-notes){background:#d9eded;color:#20343d}
.layout article>h1{max-width:650px;font-size:clamp(52px,6.7vw,82px);line-height:1.08}.reading-block{margin-bottom:30px}.block-meta{margin-top:-8px}.block-meta details summary{color:var(--muted)}
