:root{--green:#287465;--ink:#253b35;--muted:#83918b;--line:#e4e9e5;--bg:#f5f7f4}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:7px;padding:9px 13px;color:inherit}button:hover{background:#eef4f0}button:disabled{opacity:.35;cursor:default}aside{width:232px;position:fixed;inset:0 auto 0 0;background:#edf1eb;border-right:1px solid #dfe5dd;padding:32px 20px;display:flex;flex-direction:column}.brand{text-decoration:none;color:var(--green);display:flex;align-items:center;gap:9px;font-size:28px}.brand span{font-size:9px;letter-spacing:2px}.space{font-size:12px;color:var(--muted);margin:35px 0 14px}.primary{background:var(--green);color:white;border:0}.primary:hover{background:#205f53}.caption{font-size:11px;color:var(--muted);letter-spacing:1px;margin:35px 0 16px}.course{width:100%;text-align:left;background:transparent;border:0;padding:13px 10px;margin:3px 0;line-height:1.6}.course.selected{background:#dce8dd;color:#21634e}.course small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.asidefoot{margin-top:auto;padding:28px 8px 0}.asidefoot b{font-size:13px}.asidefoot p,.asidefoot small{font-size:11px;color:var(--muted);line-height:1.8}.leaf{color:#7c9b72;font-size:36px;margin-bottom:15px}main{margin-left:232px;padding:30px 32px 0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.eyebrow{font-size:10px;letter-spacing:2px;color:#91a097}h1{font-size:23px;margin:9px 0 0;font-weight:600}.actions{display:flex;gap:10px;align-items:center}.avatar{border-radius:50%;background:#e3e9de;padding:10px 13px;margin-left:12px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.chapter,.pageTools{display:flex;align-items:center;gap:9px}select{background:transparent;border:0;color:var(--ink);font-weight:500;max-width:290px;padding:8px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7b9f77}.pill{font-size:10px;border:1px solid #dbe4d8;padding:4px 8px;border-radius:4px;color:#82947c}.pageTools input{width:43px;text-align:center;border:0;background:transparent;color:var(--ink);padding:6px}.pageTools input::-webkit-inner-spin-button{display:none}.pageTools span{color:var(--muted);font-size:12px}.pageTools button{padding:7px 10px}i{display:inline-block;height:18px;border-left:1px solid var(--line);margin:0 8px}.workspace{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;height:calc(100vh - 218px);min-height:490px;box-shadow:0 8px 30px #334b3710}.pane{min-width:0;display:flex;flex-direction:column}.source{border-right:1px solid var(--line);background:#eef0ed}.paneHead{height:57px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:0 20px;background:#fff;border-bottom:1px solid var(--line);font-size:12px}.paneHead b{font-weight:500;margin-left:7px}.paneHead button{border:0;padding:7px;background:transparent;font-size:12px;color:var(--muted)}.paperWrap{padding:30px 24px;overflow:auto;flex:1}.paper{background:#fffef9;box-shadow:0 3px 14px #1b302513;padding:38px 32px;min-height:510px;transform-origin:top left}.slideNo{color:#a5b49b;font:10px monospace;letter-spacing:2px}.paper h2{font-size:24px;margin:24px 0 8px}.paper .subtitle{font-size:11px;color:#7f8b7d;border-bottom:1px solid #dce3d7;padding-bottom:24px}.paper h3{font-size:15px;margin-top:30px}.paper p{font-size:13px;line-height:2;color:#61725e}.formula{background:#eef2df;color:#4f6544;border-left:3px solid #9baa78;padding:20px;text-align:center;font:22px Georgia;margin:24px 0}.truth{width:100%;border-collapse:collapse;font-size:12px;text-align:center}.truth td,.truth th{padding:11px;border-bottom:1px solid #dde4d7}.truth th{background:#eff3ea;font-weight:500}.paper .bottom{border-top:1px solid #dce3d7;margin-top:30px;padding-top:16px;font-size:9px;color:#9ca795;display:flex;justify-content:space-between}canvas{background:white;max-width:none;box-shadow:0 3px 14px #1b302513}.sourceFoot{font-size:10px;color:#8a948b;display:flex;justify-content:space-between;padding:13px 20px;border-top:1px solid #dce2db}.tabs{height:100%;display:flex;gap:24px}.tabs button{border-radius:0;height:100%;padding:0 0 2px}.tabs .active{border-bottom:2px solid var(--green);color:var(--green);font-weight:600}article,#notesPanel{overflow:auto;flex:1;padding:32px 36px;font-size:15px;line-height:1.95}article h2{font-size:26px;line-height:1.5;margin:8px 0 20px;letter-spacing:-.7px}article h3{font-size:16px;margin:27px 0 12px}article p{color:#62716b;margin:10px 0}.summary{background:#eff5ef;border:1px solid #e0eade;border-radius:8px;padding:17px 20px;margin:24px 0}.summary small{color:var(--green);font-size:11px}.summary p{color:#395c4d}.tag{font-size:10px;color:#8b9d8e;letter-spacing:1px}.numbered{display:flex;gap:14px;margin:17px 0}.numbered span{color:#8a9d7f;font:14px Georgia;padding-top:4px}.numbered b{font-size:14px}.numbered p{margin:3px 0;font-size:.92em}.review{border-top:1px dashed #dce4d9;margin-top:26px;padding-top:20px;color:#657a59}.review summary{cursor:pointer}.readingFoot{border-top:1px solid var(--line);padding:15px 20px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#91a08f}.readingFoot button{font-size:11px;border:0;padding:4px;color:var(--green)}footer{display:flex;justify-content:space-between;padding:16px 0;font-size:10px;color:#98a295}footer .dot{margin-right:6px}footer i{height:9px}textarea{width:100%;resize:vertical;min-height:160px;border:1px solid var(--line);border-radius:8px;padding:14px;line-height:1.8;outline-color:var(--green);background:#fafbf8}#notesPanel p{font-size:12px;color:var(--muted)}#notesPanel input{width:100%;padding:12px;border:1px solid var(--line);border-radius:6px;margin-bottom:10px}#annotation{min-height:75px}#saved{color:var(--muted);font-size:10px}.annotation{padding:12px;background:var(--bg);margin:12px 0;border-radius:6px}.annotation blockquote{margin:0;border-left:2px solid #94ad8a;padding-left:10px;color:#829076}.annotation button{font-size:11px}dialog{border:1px solid var(--line);border-radius:12px;padding:30px;max-width:630px;width:90%;color:var(--ink);line-height:1.9}dialog::backdrop{background:#172b2355}dialog pre{background:var(--bg);padding:15px;overflow:auto;font-size:12px}dialog button{margin:6px}#toast{position:fixed;bottom:25px;left:50%;background:#284c40;color:white;padding:10px 20px;border-radius:8px;display:none;font-size:13px}@media(max-width:1050px){aside{width:190px;padding:25px 14px}main{margin-left:190px;padding:25px 18px 0}.pill{display:none}article{padding:24px}.paper{padding:25px 20px}.readingFoot span{display:none}}@media(max-width:750px){aside{position:static;width:100%;padding:15px;display:block}.brand{font-size:23px}.space,.caption,.asidefoot{display:none}aside .primary{position:absolute;right:15px;top:15px}#courses{display:flex;overflow:auto;margin-top:15px}.course{min-width:180px;width:auto}.course small{display:none}main{margin:0;padding:20px 12px}header{gap:10px}.avatar{display:none}h1{font-size:19px}.actions{gap:5px}.actions button{font-size:11px}.toolbar{flex-wrap:wrap;gap:12px}.workspace{height:auto;display:flex;flex-direction:column}.pane{min-height:500px;max-height:700px}.source{border:0;border-bottom:1px solid var(--line)}.paperWrap{max-height:500px}.explanation{height:650px}footer{gap:12px}select{max-width:250px}}

/* A sized stage gives the entire scaled page a real, scrollable footprint. */
.pageStage{position:relative;flex:none;overflow:visible;min-width:1px;min-height:1px}
.paperWrap{min-height:0;min-width:0;overscroll-behavior:contain;overflow:auto;touch-action:pan-x pan-y;scroll-behavior:auto}
.paperWrap.canPan{cursor:grab}.paperWrap.dragging{cursor:grabbing;user-select:none}
.pageStage .paper{position:absolute;left:0;top:0;transform-origin:0 0}
.pageStage canvas:not([hidden]){display:block}
.panHint{font-size:9px;color:#8a978e;font-weight:400;margin-left:12px}
#zoomReset{min-width:47px;font-variant-numeric:tabular-nums}
@media(max-width:1050px){.panHint{display:none}}
@media(min-width:751px){.workspace>.pane{min-height:0}}
#aiPanel{overflow:auto;flex:1;min-height:0;padding:26px 28px;line-height:1.8}.aiIntro{display:flex;justify-content:space-between;align-items:center;gap:8px}.aiIntro h2{font-size:22px;margin:5px 0}.aiIntro button{font-size:11px;padding:7px}.aiMuted{font-size:11px;color:#829185;line-height:1.8}.aiButtons{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.aiButtons button{font-size:12px;padding:8px 10px}.aiCapture{border:1px dashed #d7e1d3;border-radius:8px;background:#f8faf5;padding:10px 12px;margin:18px 0}.aiCapture small{display:block;color:#829185;font-size:10px}#aiImage{max-width:100%;max-height:210px;object-fit:contain;margin:8px 0;background:white}.aiLabel{display:block;font-size:12px;font-weight:500;margin:15px 0 8px}#aiQuestion{min-height:108px}#aiRecognized{min-height:100px}#aiAnswer{min-height:240px}.aiCheck{display:flex;gap:6px;align-items:center;font-size:11px;margin:12px 0;color:#708170}.aiCheck input{accent-color:var(--green)}.aiHistoryHead{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.aiHistoryHead h3{font-size:14px}.aiHistoryHead button{font-size:10px;padding:6px}.aiHistoryItem{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.aiHistoryItem summary{cursor:pointer;color:var(--green)}.aiHistoryItem p{white-space:pre-wrap;overflow-wrap:anywhere}.aiHistoryItem small{font-size:10px;color:#91a08f}.tabs{gap:16px}dialog label{display:block;font-size:12px;margin:8px 0}dialog input{display:block;width:100%;border:1px solid var(--line);padding:10px;border-radius:6px}dialog fieldset{border:1px solid var(--line);border-radius:8px;margin:15px 0}dialog select{width:100%;max-width:none;background:var(--bg);margin-top:6px}#aiSectionBody{min-height:260px}.cropWrap{max-height:55vh;overflow:auto;background:#eef1eb}.cropWrap canvas{width:100%;height:auto;display:block;touch-action:none;cursor:crosshair}#aiStatus{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1050px){.tabs{gap:12px}.paneHead{padding:0 12px}.paneHead button{font-size:11px}}

.answerPreview{overflow-wrap:anywhere;line-height:1.95;font-size:14px;color:#425b50}.answerPreview .readableParagraph{margin:0 0 16px;white-space:pre-wrap}.answerEditor{margin:12px 0;color:#829185;font-size:11px}.answerEditor summary{cursor:pointer}.answerEditor textarea{color:var(--ink);font-size:13px;margin-top:8px}.numbered .readableParagraph{margin:5px 0 12px}.readableParagraph{overflow-wrap:anywhere}.aiHistoryItem .answerPreview p{white-space:normal}
.formula{font:inherit;line-height:1.5;overflow:hidden}.formula .mathParagraph{margin:0}.formula .mathScroll{padding:6px 0}.formula .mathFormulaRow{justify-content:center}.formulaText{font:22px Georgia}
.aiPromptPreferences{margin:12px 0 8px;border:1px solid var(--line);border-radius:8px;background:#fbfcfa;padding:0 12px}.aiPromptPreferences summary{cursor:pointer;padding:9px 0;font-size:11px;color:#62756b}.aiPromptPreferences summary small{margin-left:6px;color:#98a49a;font-size:10px}.aiPromptPreferences[open]{padding-bottom:10px}.aiPromptPreferences .aiLabel{margin:4px 0 7px}.aiPromptPreferences textarea{min-height:76px;resize:vertical;font-size:12px;padding:10px;background:white}.aiPreferenceMeta{display:flex;justify-content:space-between;gap:12px;margin-top:5px}.aiPreferenceMeta small{font-size:10px;line-height:1.6;color:#8b978e}.aiPreferenceMeta small:first-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.sourceTranslation{margin:16px 0 24px;border:1px solid #e2e9e1;border-radius:8px;background:#fbfcfa;color:#50645a}.sourceTranslation>summary{padding:10px 14px;cursor:pointer;color:#557264;font-size:12px;font-weight:500}.sourceTranslation[open]>summary{border-bottom:1px solid #e8ede7}.sourceTranslationBody{padding:12px 16px 4px;font-size:13px;line-height:1.85}.sourceTranslationBody p{margin:0 0 12px;color:#62716b}
