.lesson-reader{grid-template-columns:220px minmax(0,1048px);justify-content:start}.lesson-reader,.reading-row{display:grid;align-items:start;gap:28px}.reading-row{grid-template-columns:minmax(0,760px) 260px}.reading-row>.reading-section{grid-column:1}.section-ox-rail{grid-column:2;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto;overscroll-behavior:contain}.section-ox-rail .side-ox{margin-top:0}.lesson-introduction,.reading-finish{max-width:760px}.lesson-navigation{grid-column:1;grid-row:1;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto;overscroll-behavior:contain}.lesson-navigation h2{margin:0 0 16px;color:#344e3d;font-size:14px}.lesson-navigation ol{display:grid;gap:5px;padding:0;margin:0;list-style:none}.lesson-navigation a{display:flex;gap:10px;padding:10px 8px;border-radius:8px;font-size:13px;line-height:1.6;color:#526053}.lesson-navigation a:hover{background:#eaf0e6;color:#234d36}.lesson-navigation a span{flex-shrink:0;color:#6c826d;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lesson-navigation>p{border-top:1px solid var(--line);margin:16px 0 0;padding-top:16px;color:#647165;font-size:13px;line-height:1.8}.lesson-articles{grid-column:2;grid-row:1;min-width:0;display:grid;gap:24px}.lesson-introduction{border-left:3px solid #507959;padding:8px 20px}.lesson-introduction>span{font-size:12px;font-weight:700;color:#4c6c53}.lesson-introduction p{font-size:16px;line-height:1.8;color:#344538;margin:6px 0 0}.reading-section{scroll-margin-top:24px;padding:32px;border:1px solid #e3e8df;background:white;border-radius:14px;min-width:0}.reading-section:target{border-color:#7a9b81}.reading-section>header{display:flex;align-items:baseline;gap:12px;margin-bottom:22px}.reading-section-number{flex-shrink:0;color:#517459;font-size:18px;line-height:1.2;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.2px}.reading-section h2{margin:0;color:#273b2d;font-size:21px;line-height:1.5;letter-spacing:-.4px}.reading-prose p,.reading-section h2{word-break:keep-all;overflow-wrap:anywhere}.reading-prose p{margin:0 0 18px;color:#3e4a40;font-size:16px;line-height:1.95}.reading-prose p:last-child{margin-bottom:0}.reading-table-scroll{margin-top:24px;overflow-x:auto;border:1px solid #dfe6dc;border-radius:10px}.reading-table{width:100%;min-width:420px;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.8;color:#3e4a40}.reading-table caption{text-align:left;padding:14px 16px;font-weight:700;color:#35543e;background:#f7f9f4}.reading-table td,.reading-table th{padding:14px 16px;vertical-align:top;border-top:1px solid #e4e9e1;word-break:keep-all;overflow-wrap:anywhere}.reading-table thead th{background:#eff4eb;font-weight:700;color:#37503e}.reading-table tbody th{width:25%;font-weight:700;color:#2e4936;background:#fafbf8}.reading-steps{display:grid;gap:12px;list-style:none;padding:0;margin:24px 0 0}.reading-steps>li{display:flex;gap:14px;padding:16px;background:#f7f9f5;border-radius:10px}.reading-steps>li>span{flex-shrink:0;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e5eee0;color:#3e6247;font-size:13px;font-weight:700}.reading-steps h3{margin:0 0 5px;font-size:16px;line-height:1.6;color:#334837}.reading-steps p{margin:0;color:#4e5c4f;font-size:15px;line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}.reading-takeaway{padding:18px 20px;margin-top:24px;border-radius:10px;border-left:3px solid #bc9856;background:#fbf7eb}.reading-takeaway strong{color:#77602f;font-size:13px}.reading-takeaway p{color:#554d3a;font-size:15px;line-height:1.85;margin:6px 0 0;word-break:keep-all;overflow-wrap:anywhere}.reading-example{margin-top:20px;padding:15px 16px;border:1px solid #e4e8e1;border-radius:9px;background:#fafbf8}.reading-example>h3{margin:0 0 7px;font-size:14px;line-height:1.5;color:#526154}.reading-example>p{margin:0;font-size:13px;line-height:1.7;color:#687169;word-break:keep-all;overflow-wrap:anywhere}.reading-example .reading-steps{gap:7px;margin-top:11px}.reading-example .reading-steps>li{gap:9px;padding:9px 10px;border:1px solid #edf0ea;border-radius:7px;background:#fff}.reading-example .reading-steps>li>span{width:20px;height:20px;font-size:10px}.reading-example .reading-steps h3{margin-bottom:2px;font-size:13px;line-height:1.5;color:#526154}.reading-example .reading-steps p{font-size:12px;line-height:1.65;color:#6d766e}.reading-example>.reading-example-conclusion{margin-top:11px;padding-top:10px;border-top:1px dashed #dfe5dc;font-size:12px;font-weight:600;color:#516653}.cafe-diagram{margin:14px 0 0;overflow:hidden;border:1px solid #dfe6dc;border-radius:10px;background:#f4f6f0}.cafe-diagram-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e1e7de;background:#fff}.cafe-diagram-heading>div{display:grid;gap:1px}.cafe-diagram-heading>div>span{color:#879087;font-size:9px;font-weight:700;letter-spacing:.08em}.cafe-diagram-heading strong{color:#35483a;font-size:12px}.cafe-diagram-badge{flex-shrink:0;padding:4px 7px;border-radius:20px;color:#4d7055;background:#e8f0e4;font-size:8px;font-weight:800;letter-spacing:.08em}.cafe-entity-flow{display:grid;grid-template-columns:minmax(120px,1fr) 56px minmax(155px,1.18fr) 56px minmax(120px,1fr);align-items:center;gap:5px;padding:17px 14px}.cafe-entity{min-width:0;overflow:hidden;border:1px solid #dfe5dc;border-radius:9px;background:#fff;box-shadow:0 5px 16px rgba(47,73,54,.05)}.cafe-entity header{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid #edf0ea}.cafe-entity header>span{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;border-radius:8px;background:#e8f0e4;color:#46684e}.cafe-entity header svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cafe-entity header div{display:grid;min-width:0}.cafe-entity header small{color:#9aa29a;font-size:7px;font-weight:800;letter-spacing:.08em}.cafe-entity header strong{color:#35463a;font-size:12px}.cafe-entity dl{margin:0;padding:7px 10px}.cafe-entity dl div{display:flex;justify-content:space-between;gap:6px;padding:3px 0;font-size:9px}.cafe-entity dt{color:#8a938a}.cafe-entity dd{margin:0;color:#4b584e;font-weight:700;text-align:right}.cafe-detail header>span{color:#916e39;background:#f6edd9}.cafe-menu header>span{color:#8e5e4e;background:#f4e8e2}.cafe-detail-rows{display:grid;gap:5px;padding:8px 10px 5px}.cafe-detail-rows div{display:flex;justify-content:space-between;gap:8px;padding:5px 6px;border-radius:5px;color:#5b635b;background:#f7f8f5;font-size:9px}.cafe-detail-rows b{color:#3d6246}.cafe-detail>p{padding:0 10px 8px;color:#949b94;font-size:8px}.cafe-relation{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:3px;color:#66806b}.cafe-relation i{display:block;height:1px;background:#91a493}.cafe-relation i:after{content:"";display:block;width:5px;height:5px;margin:-3px 0 0 auto;border-top:1px solid #91a493;border-right:1px solid #91a493;transform:rotate(45deg)}.cafe-relation>span{font-size:8px;font-weight:800}.cafe-relation small{position:absolute;top:10px;left:50%;color:#98a098;font-size:7px;transform:translateX(-50%)}.cafe-diagram figcaption{display:flex;gap:7px;padding:9px 14px;border-top:1px solid #e1e7de;color:#69736a;background:#edf2e9;font-size:9px;line-height:1.6}.cafe-diagram figcaption b{flex-shrink:0;color:#45644c}.entity-map{margin:24px 0 0;overflow:hidden;border:1px solid #dfe5dc;border-radius:12px;background:#f5f7f2}.entity-map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e0e6dd;background:#fff}.entity-map-heading>div{display:grid;gap:2px}.entity-map-heading>div>span{color:#879087;font-size:9px;font-weight:700;letter-spacing:.08em}.entity-map-heading strong{color:#35483a;font-size:13px}.entity-map-badge{flex-shrink:0;padding:4px 8px;border-radius:20px;color:#785b66;background:#f5e9ed;font-size:8px;font-weight:800;letter-spacing:.08em}.entity-map-body{display:grid;grid-template-columns:185px minmax(0,1fr);align-items:center;gap:22px;padding:22px 20px 24px}.entity-definition{display:flex;align-items:center;gap:12px;padding:16px 14px;border:1px solid #dbe4d8;border-radius:11px;background:#fff;box-shadow:0 7px 20px rgba(47,73,54,.06)}.entity-definition-icon{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:11px;color:#45684d;background:#e7f0e3}.entity-definition-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.entity-definition>div{display:grid;min-width:0}.entity-definition small{color:#98a098;font-size:7px;font-weight:800;letter-spacing:.1em}.entity-definition strong{color:#304b37;font-size:17px}.entity-definition p{margin:3px 0 0;color:#7c857c;font-size:9px;line-height:1.5}.entity-table-wrap{position:relative;min-width:0;padding-top:24px}.entity-instance-table{width:100%;overflow:hidden;border:1px solid #dfe5dc;border-spacing:0;border-radius:9px;background:#fff;color:#4a564c;font-size:10px}.entity-instance-table th{padding:8px 10px;color:#516753;background:#eaf1e6;font-size:9px;text-align:left}.entity-instance-table td{padding:8px 10px;border-top:1px solid #edf0ea}.entity-instance-table td:first-child{display:flex;align-items:center;gap:7px;color:#3e6246}.entity-instance-table b{font-weight:750}.entity-instance-table em{padding:3px 6px;border-radius:20px;color:#796330;background:#f6efd9;font-size:8px;font-style:normal;font-weight:800}.entity-row-number{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#fff;background:#738f76;font-size:8px}.entity-column-label,.entity-row-label{display:flex;align-items:center;gap:7px;color:#768077;font-size:8px;font-weight:700}.entity-column-label{position:absolute;top:0;left:8px}.entity-column-label i{width:27px;height:9px;border-top:1px solid #c297a6;border-left:1px solid #c297a6;border-right:1px solid #c297a6}.entity-row-label{margin:7px 0 0 6px}.entity-row-label i{width:13px;height:13px;border-left:1px solid #78907a;border-bottom:1px solid #78907a}.entity-map figcaption{display:flex;gap:4px;padding:10px 16px;border-top:1px solid #e0e6dd;color:#68726a;background:#edf2e9;font-size:9px;line-height:1.6}.entity-map figcaption b{color:#44644b}.model-figure{margin:24px 0 0;overflow:hidden;border:1px solid #dfe5dc;border-radius:12px;background:#f5f7f2;color:#3f4c42}.model-figure-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e0e6dd;background:#fff}.model-figure-heading>div{display:grid;gap:2px}.model-figure-heading>div>span{color:#879087;font-size:9px;font-weight:700;letter-spacing:.08em}.model-figure-heading strong{color:#35483a;font-size:13px}.model-figure-heading>b{flex-shrink:0;padding:4px 8px;border-radius:20px;color:#785b66;background:#f5e9ed;font-size:8px;letter-spacing:.08em}.model-figure figcaption{display:flex;gap:7px;padding:10px 16px;border-top:1px solid #e0e6dd;color:#68726a;background:#edf2e9;font-size:9px;line-height:1.6}.model-figure figcaption b{flex-shrink:0;color:#44644b}.model-entity-box{min-width:0;overflow:hidden;border:1px solid #dbe3d8;border-radius:9px;background:#fff;box-shadow:0 5px 14px rgba(47,73,54,.05)}.model-entity-box header{display:flex;align-items:center;gap:6px;padding:8px 9px;border-bottom:1px solid #e7ece4;background:#eaf1e6}.model-entity-box header span{padding:2px 4px;border-radius:4px;color:#fff;background:#628069;font-size:7px}.model-entity-box header strong{color:#36503d;font-size:11px}.model-entity-box ul{margin:0;padding:5px 0;list-style:none}.model-entity-box li{display:flex;align-items:center;gap:6px;min-height:23px;padding:3px 8px;font-size:9px}.model-entity-box li b{min-width:28px;color:#8b6546;font-size:7px}.cardinality-list{display:grid;gap:8px;padding:16px}.cardinality-row{display:grid;grid-template-columns:105px minmax(120px,1fr) 105px minmax(135px,.85fr);align-items:center;gap:10px;padding:10px;border:1px solid #e3e8df;border-radius:9px;background:#fff}.cardinality-entity{padding:9px 7px;border:1px solid #dce4d9;border-radius:7px;color:#38513f;background:#f7faf5;font-size:10px;font-weight:750;text-align:center}.cardinality-line{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:5px;color:#4f7056;font-size:8px;font-weight:800}.cardinality-line i{height:2px;background:#77917b}.cardinality-line i:after,.cardinality-line i:before{content:"";display:block;width:6px;height:6px;border:2px solid #77917b;border-radius:50%;background:#fff}.cardinality-line i:before{margin:-4px 0 0 -2px}.cardinality-line i:after{margin:-8px -2px 0 auto}.cardinality-line b{position:absolute;top:8px;left:50%;color:#9a7a85;font-size:7px;transform:translateX(-50%)}.cardinality-row p{margin:0;color:#788178;font-size:9px;line-height:1.5}.identifier-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.identifier-panels>section{padding:12px;border:1px solid #e1e6de;border-radius:10px;background:#fff}.identifier-panel-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.identifier-panel-title strong{color:#3d5844;font-size:11px}.identifier-panel-title span{color:#899188;font-size:8px}.identifier-flow{display:grid;grid-template-columns:1fr 50px 1fr;align-items:center;gap:5px}.identifier-link{display:grid;gap:5px;color:#7d877e;font-size:7px;text-align:center}.identifier-link i{height:2px;background:#6f8d75}.identifier-link.dashed i{height:1px;background:repeating-linear-gradient(90deg,#8b9d8d 0 5px,transparent 5px 9px)}.normalization-body{display:grid;grid-template-columns:minmax(0,1.2fr) 40px minmax(0,1fr);align-items:center;gap:10px;padding:17px 15px}.join-body div>span,.normalization-body section>span,.null-body div>span{display:block;margin-bottom:6px;color:#68766a;font-size:8px;font-weight:800;letter-spacing:.05em}.join-body table,.normalization-before table,.null-body table{width:100%;border:1px solid #dfe5dc;border-spacing:0;overflow:hidden;border-radius:7px;background:#fff;font-size:8px}.join-body td,.join-body th,.normalization-before td,.normalization-before th,.null-body td,.null-body th{padding:6px;border-top:1px solid #edf0ea;text-align:left}.join-body th,.normalization-before th,.null-body th{border-top:0;color:#526554;background:#eaf1e6}.duplicate-cell{background:#f8e7eb}.transitive-cell{background:#f8efd7}.normalization-legend{display:flex;gap:10px;margin-top:6px;color:#7d857d;font-size:7px}.normalization-legend span{display:flex;align-items:center;gap:4px}.normalization-legend i{width:9px;height:9px;border-radius:2px}.normalization-arrow{display:grid;place-items:center;color:#728874}.normalization-arrow span{font-size:7px}.normalization-arrow b{font-size:18px}.normalization-after>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.join-body{grid-template-columns:minmax(0,1fr) 25px minmax(0,.85fr);gap:8px;padding:17px 15px}.join-body,.join-sources{display:grid;align-items:center}.join-sources{grid-template-columns:1fr auto 1fr;gap:7px}.join-sources>b{color:#809083;font-size:15px}.join-arrow{color:#708975;font-size:20px;text-align:center}.repeated-cell{background:#f8e7eb;font-weight:700}.null-body{display:grid;grid-template-columns:.8fr .8fr 1fr;gap:10px;padding:17px 15px}.null-result{padding-left:10px;border-left:1px dashed #b7c4b6}.null-result em{padding:2px 5px;border-radius:4px;color:#98647a;background:#f8e2e9;font-size:8px;font-style:normal;font-weight:800}.reading-code{overflow:auto;margin:24px 0 0;padding:20px;background:#f1f5ef;color:#2e4936;border-radius:10px;font:14px/1.9 ui-monospace,Menlo,monospace}.reading-finish{display:grid;gap:18px;padding:24px;border-radius:12px;background:#edf3e8}.reading-finish h2{margin:0;font-size:18px;color:#304d39}.reading-finish p{font-size:14px;color:#5b6c5d;margin:8px 0 0}.reading-finish>div:last-child{display:flex;flex-wrap:wrap;gap:10px}.reading-finish .button{font-size:14px;padding:12px 18px}.lesson-reader :focus-visible{outline:2px solid #416f50;outline-offset:4px}@media (max-width:1300px){.lesson-reader{grid-template-columns:minmax(0,1fr);gap:22px}.reading-row{grid-template-columns:minmax(0,1fr) 240px;gap:22px}.lesson-introduction,.reading-finish{max-width:none}.lesson-navigation{grid-column:1;grid-row:1;position:static;max-height:none;padding:20px;background:#f0f4ec;border-radius:12px}.lesson-navigation ol{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-navigation>p{display:none}.lesson-articles{grid-column:1;grid-row:2}}@media (max-width:900px){.lesson-reader{grid-template-columns:minmax(0,760px)}.lesson-navigation{grid-column:1;grid-row:1;position:static;padding:20px;background:#f0f4ec;border-radius:12px}.lesson-navigation ol{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-navigation>p{display:none}.reading-row{grid-template-columns:minmax(0,1fr);gap:12px}.section-ox-rail{grid-column:1;position:static;max-height:none}.lesson-articles{grid-column:1;grid-row:2}}@media (max-width:760px){.lesson-reader{gap:20px}.lesson-navigation{padding:16px}.lesson-navigation ol{grid-template-columns:1fr;gap:0}.lesson-navigation a{padding:8px 4px;font-size:14px}.reading-section{padding:24px 18px}.reading-section h2{font-size:19px}.reading-section-number{font-size:17px}.reading-section>header{gap:9px;margin-bottom:18px}.reading-prose p{font-size:16px;line-height:1.9}.reading-table td,.reading-table th{padding:12px}.reading-takeaway{padding:16px}.reading-steps>li{padding:14px;gap:10px}.reading-finish{padding:20px}.cafe-entity-flow{grid-template-columns:1fr;gap:8px;padding:13px}.cafe-relation{grid-template-columns:1fr;grid-template-rows:auto 22px auto;justify-items:center;gap:0}.cafe-relation i{width:1px;height:22px}.cafe-relation i:after{width:5px;height:5px;margin:16px 0 0 -2px;border-top:0;border-bottom:1px solid #91a493;transform:rotate(45deg)}.cafe-relation small{top:23px;left:calc(50% + 17px)}.cafe-diagram figcaption{flex-direction:column;gap:1px}.entity-map-body{grid-template-columns:1fr;gap:16px;padding:16px 13px 18px}.entity-definition{max-width:230px}.entity-instance-table td,.entity-instance-table th{padding:8px 7px}.entity-map figcaption{flex-wrap:wrap}.model-figure-heading{align-items:flex-start}.model-figure figcaption{flex-wrap:wrap}.cardinality-row{grid-template-columns:82px minmax(95px,1fr) 82px;gap:6px}.cardinality-row p{grid-column:1/-1;padding-left:2px}.identifier-panels{grid-template-columns:1fr;padding:13px}.normalization-body{grid-template-columns:1fr;padding:14px 12px}.normalization-arrow{transform:rotate(90deg)}.normalization-after>div{grid-template-columns:repeat(3,minmax(0,1fr))}.join-body{grid-template-columns:1fr;padding:14px 12px}.join-arrow{transform:rotate(90deg)}.null-body{grid-template-columns:1fr 1fr;padding:14px 12px}.null-result{grid-column:1/-1;padding:10px 0 0;border-top:1px dashed #b7c4b6;border-left:0}}.side-ox{margin-top:16px;border:1px solid #dfe6dc;border-radius:10px;background:white;overflow:hidden}.side-ox-tab{width:100%;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"mark title caret" "mark count caret";align-items:center;column-gap:9px;padding:10px 12px;border:0;background:#f7f9f4;color:#344e3d;text-align:left;cursor:pointer;font:inherit}.side-ox-tab:hover{background:#eef3eb}.side-ox.is-open .side-ox-tab{border-bottom:1px solid #e4e9e1}.side-ox-mark{grid-area:mark;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--mint);color:var(--green);font-size:10px;font-weight:800}.side-ox-title{grid-area:title;font-size:13px;font-weight:700}.side-ox-count{grid-area:count;font-size:11px;color:#7a867b;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.side-ox-caret{grid-area:caret;color:#6c826d;font-size:12px}.side-ox-body{padding:12px;display:grid;gap:10px}.side-ox-meta{display:flex;justify-content:space-between;gap:8px;color:#8c9389;font-size:11px}.side-ox-statement{margin:0;color:#2f3b31;font-size:13.5px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere}.side-ox-row{display:grid;grid-template-columns:26px 1fr 1fr 26px;gap:6px;align-items:stretch}.side-ox-nav{border:1px solid var(--line);border-radius:7px;background:white;color:#526c55;font-size:16px;cursor:pointer;padding:0}.side-ox-nav:disabled{opacity:.35;cursor:default}.side-ox-choice{padding:8px 0;border:1px solid #e5eae3;border-radius:8px;background:white;font:20px var(--serif);cursor:pointer}.side-ox-o{color:#567b5b}.side-ox-x{color:#a76b61}.side-ox-choice:hover:not(:disabled){background:#f6f8f5;border-color:#b7c9b4}.side-ox-choice:disabled{cursor:default;opacity:1}.side-ox-choice.is-answer{background:#edf6ec;border-color:#94b797}.side-ox-choice.is-wrong{background:#fbefed;border-color:#d7aaa3}.side-ox-explain{padding:9px 10px;border-radius:8px;font-size:12.5px;line-height:1.7}.side-ox-explain.is-correct{background:#edf6ec;color:#2f4a37}.side-ox-explain.is-wrong{background:#fbefed;color:#6b3a30}.side-ox-explain p{margin:4px 0 0;white-space:pre-line}.reading-section>*+.reading-prose,.reading-section>.reading-prose+.reading-prose{margin-top:18px}.reading-mermaid{position:relative;margin:24px 0 0;padding:36px 20px 20px;border:1px solid #e3e8df;border-radius:14px;background:linear-gradient(160deg,#ffffff,#f4f7f1)}.reading-mermaid-badge{position:absolute;top:12px;right:16px;color:#5c8a4f;font-size:12px;font-weight:800}.reading-mermaid-svg{display:flex;justify-content:center;overflow-x:auto}.reading-mermaid-svg svg{max-width:100%;height:auto}.reading-mermaid-loading{padding:40px 0;text-align:center;color:#8c9389;font-size:13px}.reading-mermaid figcaption{margin-top:14px;color:#5d6a5e;font-size:14px;line-height:1.8;text-align:left}.reading-cards{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.reading-cards li{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 10px 16px;border:1px solid #e3e8df;border-radius:14px;background:white;text-align:center}.reading-card-number{display:grid;place-items:center;width:34px;height:34px;margin-bottom:4px;border-radius:50%;background:#eaf2e6;color:var(--green);font-weight:800}.reading-cards strong{color:#273b2d;font-size:15.5px}.reading-card-sub{color:#7a867b;font-size:13px;line-height:1.5}.reading-card-value{color:#273b2d;font-size:13.5px;font-weight:700}.exam-notes{display:grid;gap:4px;padding:22px 24px;border:1px solid #e3e8df;border-radius:12px;background:#fff}.exam-notes-head h3{margin:4px 0;font-size:17px;color:#263d2e}.exam-notes .reading-prose p{font-size:15px}@media (max-width:760px){.exam-notes{padding:18px 16px}}.lesson-introduction,.lesson-related{max-width:760px}.lesson-related{display:grid;gap:8px;padding:14px 16px;border:1px solid #e3e8df;border-radius:12px;background:#fbfcfa}.lesson-related>span{font-size:12px;font-weight:700;color:#4c6c53}.lesson-related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.lesson-related a{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"part title" "why why";column-gap:8px;row-gap:2px;padding:10px 12px;border:1px solid #e3e8df;border-radius:9px;background:#fff;color:#2f4637}.lesson-related a:hover{border-color:#9fbea6;background:#f3f8f0}.lesson-related b{grid-area:part;font:600 11px ui-monospace,Menlo,monospace;color:#5b7d63;align-self:center}.lesson-related strong{grid-area:title;font-size:14px}.lesson-related small{grid-area:why;font-size:12px;color:#6d786e;line-height:1.5}@media (max-width:1300px){.lesson-introduction,.lesson-related{max-width:none}}.supplement-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:99px;background:#fff1d6;color:#85621a;font-size:11px;font-weight:700;font-style:normal;white-space:nowrap;vertical-align:1px}.lesson-nav-title{min-width:0}.reading-section>header{flex-wrap:wrap}.reading-section.is-supplement{background:#fffdf8;border-style:dashed;border-color:#e6d8b8}.supplement-divider{grid-column:1/-1;margin:8px 0 0;padding:10px 14px;border-radius:10px;background:#fff8ea;color:#6e5520;font-size:13px;line-height:1.6}.supplement-divider .supplement-badge{margin:0 8px 0 0}.lesson-navigation a .lesson-nav-title{flex-shrink:1;color:inherit;font-feature-settings:normal;font-variant-numeric:normal}.reading-flow{margin:24px 0 0;padding:18px 16px;border:2px solid #7fa688;border-radius:14px;background:#f4f9f1;display:grid;gap:12px}.reading-flow-title{font-size:13px;font-weight:800;color:#2e5a3c}.reading-flow-row{display:grid;gap:6px}.reading-flow-label{font-size:12px;font-weight:700;color:#6d786e}.reading-flow-row.is-key .reading-flow-label{color:#2e5a3c}.reading-flow ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;row-gap:8px}.reading-flow li{position:relative;margin-right:17px;display:inline-flex;align-items:center;padding:6px 8px;border-radius:9px;background:#fff;border:1px solid #d6e3d2;font:700 13px ui-monospace,SFMono-Regular,Menlo,monospace;color:#3b4f40}.reading-flow li b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e7f0e3;color:#557a5d;font:700 10px system-ui}.reading-flow-row.is-key li{background:#2f6a43;border-color:#2f6a43;color:#fff}.reading-flow-row.is-key li b{background:rgba(255,255,255,.18);color:#fff}.reading-flow-row.is-key li.is-highlight{background:#fbdde6;border-color:#e7a9bb;color:#8a2443}.reading-flow-row.is-key li.is-highlight b{background:#fff;color:#8a2443}.reading-flow-arrow{position:absolute;right:-14px;color:#7fa688;font:400 15px system-ui}.reading-flow li:last-child{margin-right:0}.reading-flow-caption{margin:2px 0 0;font-size:14px;line-height:1.7;color:#3e4f42}@media (max-width:760px){.reading-flow{padding:14px}.reading-flow li{font-size:12px;padding:6px 8px}}.ox-source-tags{display:inline-flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.ox-source-tag{padding:1px 6px;border-radius:5px;background:#eef2ec;color:#5d6d60;font-size:10px;font-weight:700;white-space:nowrap}.ox-source-tag.is-past{background:#fbf0f2;color:#9c5a6d}.side-ox-reset{justify-self:end;margin-top:2px;padding:5px 10px;border:1px solid #d9e2d5;border-radius:7px;background:#fff;color:#4f7056;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.side-ox-reset:hover{background:#f1f6ee}.reading-data{margin:22px 0 0;display:grid;gap:8px;min-width:0}.reading-data figcaption{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#2f4637}.reading-data figcaption small{margin-left:auto;font-weight:400;color:#8a958a;font-size:12px}.reading-data-badge{padding:2px 7px;border-radius:5px;background:#2f6a43;color:#fff;font:700 10px ui-monospace,Menlo,monospace;letter-spacing:.5px}.reading-data-scroll{overflow-x:auto;max-width:100%;border:1px solid #d9e0d6;border-radius:10px;background:#fff}.reading-data-table{width:100%;border-collapse:collapse;font:13px/1.5 ui-monospace,SF Mono,Menlo,Consolas,monospace}.reading-data-table td,.reading-data-table th{padding:8px 11px;text-align:left;white-space:nowrap;border-bottom:1px solid #edf1ea}.reading-data-table td+td,.reading-data-table th+th{border-left:1px solid #edf1ea}.reading-data-table thead th{background:#f1f5ee;color:#24432f;font-weight:700;font-size:12px;border-bottom:1px solid #d9e0d6}.reading-data-table tbody tr:nth-child(2n) td{background:#fafcf8}.reading-data-table tbody tr:last-child td{border-bottom:0}.reading-data-table tbody tr:hover td{background:#f2f7ef}.reading-data-table .is-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.reading-data-table .is-null{color:#a0a79d;font-style:italic}.reading-data-table .inline-code{background:none;padding:0}@media (max-width:760px){.reading-data-table td,.reading-data-table th{padding:7px 10px;font-size:12.5px}}.reading-data-table td.is-wrap{white-space:normal;word-break:break-all;min-width:9em}.reading-data-table thead th{white-space:normal}.reading-venn{container-type:inline-size;--venn-fill:#b9d9a8;--venn-pale:#eef3f8;--venn-blank:#f1f8ee;margin:24px 0 0;display:grid;gap:12px}.reading-venn-title{padding-left:10px;border-left:4px solid #6aa84f;font-size:15px;font-weight:800;color:#26332a}.reading-venn ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@container (min-width: 720px){.reading-venn ol{grid-template-columns:repeat(4,minmax(0,1fr))}}.reading-venn li{display:grid;justify-items:center;gap:4px;padding:12px 8px 14px;border:1px solid #e3e8e1;border-radius:14px;background:#fff;text-align:center}.reading-venn-svg{width:100%;max-width:200px;height:auto}.reading-venn-svg circle{stroke:#4f7a3d;stroke-width:2}.reading-venn-svg circle.is-muted{stroke:#8aa87c}.reading-venn-svg circle.is-muted:first-of-type{stroke:#7f93ad}.reading-venn-label{font:800 15px system-ui;fill:#26332a;text-anchor:middle}.reading-venn-extra{font:700 13px system-ui;fill:#a0522d;text-anchor:middle}.reading-venn strong{margin-top:4px;font:700 14px ui-monospace,SFMono-Regular,Menlo,monospace;color:#26332a}.reading-venn-formula{font-size:14px;color:#5d6b60}.reading-venn-note{font-size:12.5px;color:#6d786e}.reading-keycards{container-type:inline-size;margin:24px 0 0;display:grid;gap:14px}.reading-keycards figcaption{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:800;color:#26332a}.reading-keycards figcaption span{padding:4px 10px;border-radius:8px;background:#e8eef6;color:#4a5f7d;font-size:12px;font-weight:700}.reading-keycards figcaption span:before{content:"●";margin-right:5px;font-size:8px;vertical-align:2px}.reading-keycards ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.reading-keycards:not(.has-lattice) ol:has(>li:nth-child(4):last-child){grid-template-columns:repeat(2,1fr)}@container (min-width: 720px){.reading-keycards:not(.has-lattice) ol:has(>li:nth-child(4):last-child){grid-template-columns:repeat(4,1fr)}}.reading-keycards li{display:grid;align-content:start;gap:8px;padding:14px;border:1px solid #e3e8e1;border-radius:16px;background:#fff}.reading-keycard-key{display:grid;place-items:center;min-height:78px;padding:8px;border-radius:12px;font:800 clamp(22px,5cqi,30px) ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.5px;overflow-wrap:anywhere;text-align:center}.reading-keycard-key.is-blue{background:#e8eef6;color:#3d5a80}.reading-keycard-key.is-yellow{background:#fdf6e0;color:#7a5c14}.reading-keycard-key.is-green{background:#e6f2e2;color:#3c6b2f}.reading-keycard-key.is-pink{background:#fbe6ec;color:#8a2443}.reading-keycards strong{margin-top:4px;font-size:15px;color:#26332a}.reading-keycards p{margin:0;font-size:13.5px;line-height:1.6;color:#6d786e}.reading-keycards p strong{font-size:inherit;color:#26332a}.reading-keycard-key.has-lattice{min-height:0;padding:10px 8px 6px;gap:2px;font:inherit}.reading-keycard-key.has-lattice>b{font:800 18px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.3px}.reading-lattice{width:100%;max-width:210px;height:auto;color:inherit}.reading-lattice line{stroke:#c9cfc8;stroke-width:1.5;stroke-dasharray:3 3}.reading-lattice line.is-on{stroke:currentColor;stroke-width:2;stroke-dasharray:none}.reading-lattice rect{stroke-width:1.5}.reading-lattice text{font:700 12px ui-monospace,SFMono-Regular,Menlo,monospace;text-anchor:middle}.reading-lattice .is-on rect{fill:currentColor;stroke:currentColor}.reading-lattice .is-on text{fill:#fff}.reading-lattice .is-off rect{fill:#fff;stroke:#c9cfc8;stroke-dasharray:3 2}.reading-lattice .is-off text{fill:#a3aba2;text-decoration:line-through}.reading-keycard-body{display:grid;gap:6px}.reading-keycards.has-lattice ol{grid-template-columns:1fr}.reading-keycards.has-lattice li{grid-template-columns:minmax(170px,210px) 1fr;align-items:center;gap:16px}.reading-keycards.has-lattice .reading-keycard-body strong{margin-top:0;font-size:16px}.reading-keycards.has-lattice .reading-keycard-body p{font-size:14px}@container (max-width: 420px){.reading-keycards.has-lattice li{grid-template-columns:1fr}}.reading-transform{margin:24px 0 0;padding:16px;border:1px solid #e3e8e1;border-radius:14px;background:#fafcf9;display:grid;gap:12px}.reading-transform-title{font-size:14px;font-weight:800;color:#26332a}.reading-transform-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.reading-transform-stage{display:grid;gap:5px}.reading-transform-caption{font-size:11.5px;font-weight:700;color:#6d786e}.reading-transform table{border-collapse:collapse;background:#fff;border:1px solid #dfe5dc;border-radius:8px;overflow:hidden;font:12px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}.reading-transform th{padding:5px 8px;background:#edf3ea;color:#3b5a43;font-weight:700;text-align:left;border-bottom:1px solid #dfe5dc}.reading-transform td{padding:4px 8px;color:#2e3b31;border-top:1px solid #f0f3ee}.reading-transform td.is-num{text-align:right}.reading-transform td.is-null{color:#a3aba2;font-style:italic}.reading-transform td.is-hl{background:#fdf0c8;font-weight:700}.reading-transform td.is-null.is-hl{background:#fbe6ec;color:#8a2443}.reading-transform-arrow{display:grid;justify-items:center;gap:1px;min-width:70px;max-width:96px;text-align:center}.reading-transform-arrow b{font:800 11.5px ui-monospace,SFMono-Regular,Menlo,monospace;color:#1f5fa8}.reading-transform-arrow span{font-size:20px;line-height:1;color:#7fa688}.reading-transform-arrow small{font-size:10.5px;line-height:1.35;color:#6d786e}.reading-transform-note{margin:0;font-size:13px;line-height:1.6;color:#4e5a51}.reading-transform-row{row-gap:14px}.reading-transform-step{display:flex;align-items:center;gap:10px}.reading-table tbody th code{word-break:keep-all;overflow-wrap:normal}