
:root{--ink:#172238;--muted:#566278;--blue:#2536cf;--blue2:#edf0ff;--orange:#ad3e12;--line:#d7deea;--paper:#f5f7fc;--white:#fff;--yellow:#ffce54;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:17px;line-height:1.8}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:10px;padding:10px 16px;line-height:1.5;font-weight:600}button:hover{border-color:var(--blue);background:var(--blue2)}button:disabled{cursor:default;opacity:.45}button.primary{background:var(--blue);border-color:var(--blue);color:#fff}button.primary:hover{background:#1b28a7}button[aria-pressed=true]{border-color:var(--blue);background:var(--blue2);color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:4px}:focus-visible{outline:3px solid #ad3e12;outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;left:12px;top:-100px;background:white;padding:12px;z-index:30}.skip:focus{top:12px}.wrap{max-width:1190px;margin:auto;padding:0 32px}header{border-bottom:1px solid var(--line)}.mast{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;font-size:14px}.brand{font-weight:800;letter-spacing:.08em}.brand:before{content:'◇';color:var(--blue);font-size:24px;vertical-align:-2px;margin-right:8px}.status{color:var(--muted)}main{padding:38px 0 65px}.intro{display:grid;grid-template-columns:1.25fr 1fr;gap:44px;align-items:start}.eyebrow{color:var(--blue);font-size:14px;letter-spacing:.12em;font-weight:700;margin:0 0 10px}h1,h2,h3,p{margin-top:0}h1{font-family:"Songti SC","Noto Serif CJK SC","SimSun",serif;font-size:clamp(31px,4.3vw,52px);line-height:1.32;letter-spacing:-.025em;margin:0 0 18px;font-weight:800}h2{font-size:clamp(23px,2.6vw,30px);line-height:1.4;margin-bottom:14px}h3{font-size:19px;line-height:1.5;margin-bottom:12px}p{margin-bottom:16px}.lede{font-size:18px;max-width:33em}.small{font-size:14px;color:var(--muted)}.subtle{color:var(--muted)}.question{background:var(--ink);color:#fff;padding:24px;border-radius:var(--radius);box-shadow:7px 7px 0 #dce2fa}.question h2{font-size:22px}.question .small{color:#c9d2e6}.choices{display:flex;flex-wrap:wrap;gap:10px}.question button{background:transparent;border-color:#aab4c8;color:white;flex:1;min-width:90px}.question button:hover,.question button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.prediction-result{margin:18px 0 0;padding-top:16px;border-top:1px solid #69768b}.pathbar{margin:36px 0 26px;padding:17px 20px;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.paths{display:flex;gap:8px;flex-wrap:wrap}.paths button{font-size:15px}.path-note{font-size:14px;color:var(--muted);margin:0}.layout{display:grid;grid-template-columns:160px minmax(0,1fr);gap:36px}.toc{position:sticky;top:25px;align-self:start;font-size:14px}.toc a{display:block;text-decoration:none;color:var(--muted);padding:8px 0}.toc a:hover{color:var(--blue)}.toc strong{color:var(--ink);display:block;margin-bottom:14px}.toc .reset{padding:8px 10px;margin-top:20px;font-weight:500;font-size:14px}.lesson-section{padding:30px 0 38px;border-bottom:1px solid var(--line)}.lesson-section:first-child{padding-top:2px}.section-label{display:flex;gap:14px;align-items:baseline;margin-bottom:12px;font-size:14px;color:var(--blue);font-weight:700;letter-spacing:.07em}.section-label span{border-top:2px solid var(--blue);padding-top:8px;min-width:32px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fact{border-left:3px solid var(--blue);padding:0 0 0 17px;margin:22px 0}.residue-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.residue-item{text-align:center;background:var(--blue2);padding:12px 4px;border-radius:9px}.residue-item strong{display:block;font-size:25px}.residue-item>span{font-size:14px;color:var(--muted)}.pairs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pair{min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;padding:16px 6px;font-variant-numeric:tabular-nums}.pair strong{font-size:20px}.pair>span{font-size:14px;color:var(--muted)}.pair[aria-pressed=true] span{color:var(--blue)}.feedback{background:var(--blue2);border-radius:10px;padding:14px 17px;margin:14px 0;min-height:72px}.formula{font-family:ui-monospace,"SFMono-Regular",Consolas,"PingFang SC",monospace;font-size:clamp(15px,1.9vw,20px);line-height:1.8;padding:16px 18px;background:#eef1f7;border-radius:10px;overflow-wrap:anywhere;margin:14px 0}.expert{border:1px solid #bac5dd;border-radius:12px;margin-top:20px;background:#fff}.expert summary{padding:16px 18px;cursor:pointer;font-weight:650}.expert>div{padding:0 18px 18px}.expert p:last-child{margin-bottom:0}.counts{font-variant-numeric:tabular-nums}.visual-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:15px}.r-display{font-size:23px;font-weight:750}.r-display strong{font-size:32px;color:var(--blue)}.control-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.control-row button{font-size:14px;padding:8px 13px}.range-wrap{display:flex;align-items:center;gap:15px;margin:15px 0 20px}.range-wrap label{font-size:15px;white-space:nowrap}input[type=range]{width:100%;min-width:80px;accent-color:var(--blue)}.visuals{display:grid;grid-template-columns:.95fr 1.2fr;gap:25px;align-items:center}.cycle{width:100%;height:auto;display:block}.cycle text{font-family:inherit;fill:var(--ink)}.cycle .edge{fill:none;stroke:#aeb9d0;stroke-width:2}.cycle .node{fill:#fff;stroke:var(--blue);stroke-width:2}.cycle .node-num{font-size:23px;font-weight:750}.cycle .node-prob{font-size:13px;fill:var(--muted)}.cycle .cycle-label{font-size:13px;fill:var(--muted)}.chart{padding-top:8px}.bar-chart{height:225px;position:relative;border-bottom:1px solid #8a97b1;margin:0 12px 70px 30px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:end}.gridline{position:absolute;border-top:1px solid #e7eaf0;left:0;right:0;pointer-events:none}.gridline span{position:absolute;left:-38px;top:-14px;font-size:12px;color:var(--muted)}.uniform-line{position:absolute;left:-6px;right:-6px;bottom:50%;border-top:2px dashed var(--orange);z-index:3;pointer-events:none}.uniform-label{font-size:13px;color:var(--orange);margin-left:27px;margin-top:-60px;margin-bottom:34px}.bar-wrap{height:100%;position:relative;display:flex;align-items:flex-end;justify-content:center}.bar{width:100%;max-width:62px;background:var(--blue);border-radius:5px 5px 0 0;position:relative;min-height:0;transition:height .32s ease}.bar.zero{border-top:3px solid #9faabe;background:transparent}.bar.selected{background:var(--orange);outline:2px solid var(--orange);outline-offset:3px}.bar-number{position:absolute;bottom:calc(100% + 5px);width:100%;left:0;text-align:center;font-size:14px;font-weight:700;white-space:nowrap}.bar-label{position:absolute;top:calc(100% + 8px);width:120%;left:-10%;text-align:center;line-height:1.6;font-size:14px;white-space:nowrap}.bar-label strong{display:block}.bar-label small{font-size:12px;color:var(--muted)}.result-line{padding:15px 18px;margin:15px 0 0;border-radius:10px;background:var(--blue2);font-size:16px}.measure{font-size:14px;color:var(--muted);margin:8px 0 0}.legend{font-size:14px;display:flex;gap:20px;flex-wrap:wrap}.legend span:before{content:'';display:inline-block;width:15px;height:11px;background:var(--blue);margin-right:7px;vertical-align:-1px}.legend span:last-child:before{height:0;border-top:2px dashed var(--orange);background:none;vertical-align:4px}.warning{background:#fff5e2;border-left:4px solid #bc6010;padding:18px 20px;border-radius:0 12px 12px 0;margin:22px 0}.warning p:last-child{margin-bottom:0}.limit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.limit-grid .card:first-child{background:var(--blue2);border-color:#bac6fb}.large-math{font-size:30px;font-family:ui-serif,Georgia,serif;font-style:italic;font-weight:650}.tag{display:inline-block;background:#e7ecf6;color:#36445d;padding:3px 9px;border-radius:6px;font-size:13px;margin-bottom:12px}.tour{background:var(--ink);color:#fff;border-radius:var(--radius);padding:23px}.tour .small{color:#c9d2e6}.tour button{border-color:#8996ae}.tour-frame{font-size:21px;min-height:110px;line-height:1.65;margin:18px 0;padding:0 0 0 17px;border-left:3px solid var(--yellow)}.tour-progress{font-size:14px;color:var(--yellow);margin:10px 0}.transcript{margin:18px 0 0;padding-left:23px;font-size:15px}.transcript li{padding:5px 0;color:#d9e1f1}.transcript li.active{color:#fff;font-weight:700}.transfer button{font-size:15px}.transfer .choices{margin:14px 0}.transfer-result{padding:15px 18px;margin-top:15px;background:var(--blue2);border-radius:10px}.model-control{margin-top:20px}.model-control label{display:block;font-weight:650;font-size:15px;margin-bottom:7px}select{width:100%;padding:10px;background:white;border:1px solid var(--line);border-radius:8px;color:var(--ink)}textarea{width:100%;min-height:110px;padding:13px;border:1px solid #aab7d0;border-radius:10px;resize:vertical;color:var(--ink);line-height:1.7;background:white}.teachback-label{display:block;margin:14px 0 9px}.method{display:grid;grid-template-columns:1fr 1fr;gap:16px}.method div{border-top:2px solid var(--line);padding-top:15px}.method h3{color:var(--blue);margin-bottom:7px}.method p{font-size:15px}.claims{padding-left:21px}.claims li{margin:8px 0}.footer{font-size:14px;color:var(--muted);padding-top:27px;display:flex;gap:20px;justify-content:space-between}.nav-link{display:inline-block;margin-top:12px}.no-js{background:#fff5e2;padding:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.fraction{font-variant-numeric:tabular-nums}ul{padding-left:22px}details summary:hover{color:var(--blue)}.check-list{font-size:15px}.check-list strong{color:var(--ink)}
@media(max-width:950px){.wrap{padding:0 25px}.intro{gap:28px;grid-template-columns:1.05fr 1fr}.layout{grid-template-columns:minmax(0,1fr)}.toc{position:static;display:flex;flex-wrap:wrap;gap:4px 20px;border-bottom:1px solid var(--line);padding-bottom:20px}.toc strong{width:100%;margin:0}.toc a{padding:2px 0}.toc .reset{margin:0}.visuals{gap:16px}.cycle{max-height:300px}.pathbar{margin-top:28px}.bar-chart{gap:13px}}
@media(max-width:650px){body{font-size:16px}.wrap{padding:0 19px}.mast{padding:15px 0}.status{font-size:12px}.intro{grid-template-columns:1fr;gap:15px}main{padding-top:27px}h1{font-size:34px}.question{padding:20px}.pathbar{display:block;padding:16px}.path-note{margin-top:12px}.layout{gap:24px}.lesson-section{padding:24px 0 28px}.two,.limit-grid{grid-template-columns:1fr}.pairs{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:18px}.visuals{grid-template-columns:1fr}.cycle{max-width:320px;margin:auto}.bar-chart{height:200px;margin-left:30px;gap:23px}.chart{margin-top:4px}.visual-head{margin-bottom:0}.control-row{gap:6px}.control-row button{padding:9px 11px}.range-wrap{gap:8px}.tour{padding:20px}.tour-frame{font-size:19px;min-height:135px}.method{grid-template-columns:1fr}.footer{display:block}.toc{font-size:13px;gap:7px 17px}.toc .reset{font-size:13px;padding:3px 6px}.formula{font-size:15px;padding:13px}.residue-strip{gap:5px}.legend{gap:10px}.r-display{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{header,.toc,.paths,.control-row,.range-wrap,.choices,.reset,.model-control{display:none!important}.wrap{max-width:none;padding:0}.intro,.layout{display:block}.question{color:#000;background:#fff;border:1px solid #555;box-shadow:none}.lesson-section{break-inside:avoid}.tour{color:#000;background:#fff;border:1px solid #555}.tour .small,.transcript li,.tour-progress{color:#333}.bar{print-color-adjust:exact}.footer{display:block}}

.site-nav{display:flex;gap:20px;flex-wrap:wrap;font-size:14px}.site-nav a{text-decoration:none;color:var(--ink)}.platform-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:35px;padding:8px 0 24px;align-items:end}.platform-intro h1{font-size:clamp(32px,4.1vw,48px)}.platform-note{border-top:3px solid var(--blue);padding-top:13px;font-size:15px}.section-top{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px}.section-top h2{margin-bottom:0}.platform-section{padding:32px 0;border-top:1px solid var(--line)}.featured-topic{display:grid;grid-template-columns:1.35fr .65fr;gap:30px;background:var(--ink);color:white;border-radius:18px;padding:27px}.featured-topic p{color:#d2dcef}.featured-topic .tag{color:var(--ink);background:var(--yellow)}.featured-topic a{color:white}.featured-topic aside{border-left:1px solid #5a6881;padding-left:24px}.paper-card h3{font-size:19px}.paper-card .small{margin-bottom:8px}.paper-card p{font-size:15px}.state-line{font-size:14px;background:var(--blue2);padding:8px 11px;border-radius:7px;margin:12px 0}.status-pending{color:#714118;background:#fff1d9}.link-button{display:inline-block;background:var(--blue);color:white!important;text-decoration:none;padding:9px 16px;border-radius:9px;font-weight:600;font-size:15px}.available-link{font-weight:650}.video-card{display:grid;grid-template-columns:1fr 1.08fr;gap:25px;align-items:center}.video-card video{width:100%;border-radius:12px;display:block;background:var(--ink)}.contents-list{list-style:none;padding:0;margin:0}.contents-list li{display:flex;gap:20px;justify-content:space-between;align-items:baseline;padding:17px 0;border-bottom:1px solid var(--line)}.contents-list li:last-child{border-bottom:none}.contents-list p{margin:5px 0 0;font-size:15px;color:var(--muted)}.contents-list .tag{white-space:nowrap;margin:0}.ref-list{padding-left:24px}.ref-list li{padding:8px 0}.ref-list p{font-size:14px;color:var(--muted);margin:5px 0}.method-doc{max-width:880px}.method-doc section{padding:22px 0;border-bottom:1px solid var(--line)}.method-doc li{margin:9px 0}.method-doc h2{margin-top:16px}.method-doc h3{margin-top:22px}.topic-doc{max-width:900px}.review-note{font-size:15px;border-left:3px solid var(--orange);padding-left:16px;margin:22px 0}.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:23px}
@media(max-width:700px){.platform-intro,.featured-topic,.video-card{grid-template-columns:1fr}.featured-topic{padding:21px;gap:13px}.featured-topic aside{border-left:none;border-top:1px solid #5a6881;padding:16px 0 0}.site-nav{gap:10px 17px}.mast.platform-mast{display:block}.platform-mast .site-nav{margin-top:10px}.section-top{display:block}.section-top p{margin:7px 0 0}.contents-list li{display:block}.contents-list .tag{margin-top:10px}.platform-intro{gap:15px}.platform-section{padding:25px 0}.paper-card h3{font-size:18px;overflow-wrap:anywhere}}

.pair>strong,.pair>span{max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden}

.layout,.layout>*{min-width:0}.residue-item{min-width:0}.residue-item>span{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden}@media(max-width:600px){.residue-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Reading-first visual system. The hero is decorative; article surfaces are plain. */
:root{--paper:#f6f3e9;--white:#fcfaf3;--surface:#fcfaf3;--surface-2:#efeee5;--ink:#29352f;--muted:#60695f;--line:#d6d8cb;--accent:#335943;--blue:#3c56a8;--blue2:#ecefeb;--orange:#9a511f;--yellow:#ded2a9;--feature-bg:#263d30;--feature-ink:#f2f4eb;--formula-bg:#eeeee4;--warning-bg:#f4ead7;--reader-size:1.125rem;--reader-leading:1.9;color-scheme:light}
:root[data-theme=dark]{--paper:#171e1a;--white:#202a23;--surface:#202a23;--surface-2:#29342b;--ink:#e2e7dd;--muted:#b5beb0;--line:#435145;--accent:#a5cfb5;--blue:#92b1ff;--blue2:#29372f;--orange:#f0bc8d;--yellow:#d9c58a;--feature-bg:#24382b;--feature-ink:#e5eddf;--formula-bg:#253129;--warning-bg:#342e22;color-scheme:dark}
html{scroll-padding-top:6rem}body{font-size:var(--reader-size);line-height:var(--reader-leading);background:var(--paper);color:var(--ink)}p,li{line-height:var(--reader-leading)}a{color:var(--accent)}h1,h2,h3,h4{color:var(--ink);text-wrap:pretty}h1{font-size:clamp(2rem,3.5vw,3.35rem);line-height:1.38}h2{font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.5}h3{font-size:1.16em}img,video{max-width:100%}button,select,textarea{background:var(--surface);border-color:var(--line);color:var(--ink)}button:hover,button[aria-pressed=true]{background:var(--surface-2);border-color:var(--accent);color:var(--ink)}button.primary,.link-button{background:var(--accent);border-color:var(--accent);color:var(--paper)!important}button.primary:hover{background:var(--ink);color:var(--paper)}.card,.expert,.pathbar{background:var(--surface);border-color:var(--line)}.small,.subtle,.status,.path-note{color:var(--muted)}.eyebrow,.section-label{color:var(--accent)}.section-label span{border-color:var(--accent)}.fact{border-color:var(--accent)}.question,.tour,.featured-topic{background:var(--feature-bg);color:var(--feature-ink);box-shadow:none}.question h2,.tour h3,.featured-topic h2,.featured-topic h3{color:var(--feature-ink)}.question p.small,.tour p.small,.featured-topic p{color:#d3ddce}.question button{color:var(--feature-ink);background:transparent;border-color:#a1b49f}.question button:hover,.question button[aria-pressed=true]{background:var(--yellow);color:#27352c}.tour .control-row button{background:var(--surface);color:var(--ink)}.tour .transcript li{color:#d3ddce}.tour .transcript li.active{color:#fff}.tour-progress{color:var(--yellow)}.tour-frame{border-color:var(--yellow)}.tag,.residue-item{background:var(--surface-2);color:var(--ink)}.status-pending,.warning{background:var(--warning-bg);color:var(--ink)}.warning{border-color:var(--orange)}.feedback,.result-line,.transfer-result,.state-line{background:var(--surface-2);color:var(--ink)}.measure,.legend,.bar-label small,.bar-number{color:var(--muted)}.uniform-label{color:var(--orange)}.formula{font-size:.96em;line-height:1.9;background:var(--formula-bg);color:var(--ink);max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overflow-wrap:normal;word-break:normal;white-space:nowrap;padding:1rem 1.1rem;border:1px solid var(--line);scrollbar-color:var(--muted) transparent}.formula:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.table-scroll{width:100%;max-width:100%;overflow-x:auto;margin:1.4rem 0;scrollbar-color:var(--muted) transparent}.table-scroll table{border-collapse:collapse;min-width:42rem;width:100%;font-size:.94em}.table-scroll th,.table-scroll td{padding:.7rem 1rem;text-align:left;vertical-align:top;border:1px solid var(--line)}.table-scroll th{background:var(--surface-2)}pre{max-width:100%;overflow:auto;background:var(--formula-bg);padding:1rem}.cycle .node{fill:var(--surface);stroke:var(--blue)}.cycle text{fill:var(--ink)}.cycle .node-prob,.cycle .cycle-label{fill:var(--muted)}.cycle .edge{stroke:var(--muted)}.cycle #arrow path{fill:var(--muted)}.gridline{border-color:var(--line)}#tw-diagram>rect:first-of-type{fill:var(--surface-2);stroke:var(--line)}#tw-grid{stroke:var(--line)}#tw-active{fill:var(--blue);stroke:var(--ink)}#tw-marker{stroke:var(--orange)}#tw-marker-dot{fill:var(--orange)}input[type=range]{accent-color:var(--accent)}.limit-grid .card:first-child{background:var(--surface-2);border-color:var(--line)}.method h3{color:var(--accent)}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .65rem;border:1px solid var(--line);border-radius:999px;font-size:.78rem;color:var(--muted);background:var(--surface)}
/* Navigation and truthful reading controls */
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.brand-row{max-width:1280px;margin:auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:1.4rem}.site-brand{display:flex;align-items:center;gap:.8rem;color:var(--ink);text-decoration:none;flex-shrink:0}.logo-box{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #cfd3cd;border-radius:50%;width:56px;height:56px;padding:3px}.logo-box img{width:48px;height:48px;object-fit:contain;display:block}.brand-name{font-family:"Songti SC","Noto Serif CJK SC","SimSun",serif;font-size:1.22rem;line-height:1.45;font-weight:750}.brand-caption{font-size:.74rem;color:var(--muted);font-weight:400;display:block;letter-spacing:.04em}.header-links{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;align-items:center;font-size:.88rem}.header-links a{color:var(--muted);text-decoration:none;padding:.2rem 0}.header-links a:hover,.header-links a[aria-current=page]{color:var(--ink);text-decoration:underline;text-underline-offset:.45rem}.reader-tools{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line);font-size:.85rem;line-height:1.5}.reader-tools-inner{max-width:1280px;margin:auto;padding:.5rem 2rem;display:flex;align-items:flex-start;gap:.7rem;justify-content:space-between}.reader-tools button,.reader-tools select{font-size:.82rem;min-height:36px;padding:.35rem .7rem;border-radius:7px}.reader-settings{min-width:0}.reader-settings summary{cursor:pointer;list-style:none;padding:.35rem .65rem;border:1px solid var(--line);border-radius:7px;display:inline-block;font-weight:600;background:var(--surface);min-height:36px}.reader-settings summary::-webkit-details-marker{display:none}.reader-settings summary:after{content:' ＋';color:var(--muted)}.reader-settings[open] summary:after{content:' −'}.reader-settings-grid{display:flex;flex-wrap:wrap;gap:.65rem 1.1rem;align-items:end;padding:.9rem 0 .45rem;max-width:850px}.reader-settings label{display:flex;flex-direction:column;gap:.2rem;font-size:.82rem;color:var(--muted)}.reader-tools-side{display:flex;align-items:center;gap:.8rem;flex-shrink:0}.progress-text{color:var(--muted);font-size:.78rem;white-space:nowrap}.reader-storage-note{font-size:.76rem;color:var(--muted);margin:.35rem 0 .1rem;line-height:1.6}.progress-track{position:fixed;top:0;left:0;right:0;height:3px;z-index:50;background:transparent;pointer-events:none}.progress-fill{height:100%;width:0;background:var(--accent)}.resume-banner{max-width:880px;margin:1.2rem auto 0;padding:.9rem 1.1rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.9rem}.resume-banner p{margin:0}.resume-banner button{font-size:.85rem;flex-shrink:0}.reading-shell{max-width:1280px;padding:0 2rem;margin:auto;display:grid;grid-template-columns:196px minmax(0,880px);justify-content:center;gap:2.4rem;align-items:start}.reading-shell main{width:100%;max-width:none;min-width:0;padding:2rem 0 4rem;margin:0}.reading-toc{position:sticky;top:5rem;margin-top:2.2rem;font-size:.82rem;max-height:calc(100vh - 6rem);overflow:auto;padding:0 .5rem 1rem 0;scrollbar-width:thin}.reading-toc summary{font-size:.88rem;font-weight:750;cursor:pointer;margin-bottom:1rem}.reading-toc ol{list-style:none;padding:0;margin:0}.reading-toc li{margin:.5rem 0;line-height:1.7}.reading-toc a{color:var(--muted);text-decoration:none;display:block;border-left:2px solid transparent;padding:.2rem 0 .2rem .7rem}.reading-toc a:hover,.reading-toc a[aria-current=location]{color:var(--ink);border-color:var(--accent)}.reader-main h2{scroll-margin-top:6.3rem}.reader-main section{max-width:100%;min-width:0}.reader-main .breadcrumbs{margin-bottom:1rem}.reader-main .lede{max-width:none;color:var(--muted);font-size:1.05em}.reader-main .expert summary{line-height:1.65}.reader-main .expert>div{min-width:0}.reader-main .two{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-main .card{min-width:0}.source-link-row{display:flex;gap:.6rem;flex-wrap:wrap;margin:.7rem 0}.source-link-row a{font-size:.82rem;text-decoration:none;border:1px solid var(--line);padding:.25rem .65rem;border-radius:7px;background:var(--surface)}.source-link-row a:hover{border-color:var(--accent)}.source-link-row .format-label{font-weight:700;margin-right:.3rem}.note-box{background:var(--surface-2);border-left:3px solid var(--accent);padding:1rem 1.15rem;margin:1.4rem 0;border-radius:0 10px 10px 0}.footnote,.source-note{font-size:.85em;color:var(--muted)}
/* Homepage: one coherent topic, two genuine routes */
.home-main{padding-top:1.6rem;max-width:1280px}.home-hero{position:relative;isolation:isolate;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#f3f0e4;padding:3rem 3.2rem;min-height:365px}.home-hero .hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,244,233,.95) 0%,rgba(247,244,233,.88) 37%,rgba(247,244,233,.2) 67%,transparent);z-index:-1}.home-hero .hero-copy{max-width:640px}.home-hero h1{font-size:clamp(2rem,3.7vw,3.2rem);margin-bottom:1.1rem}.home-hero .lede{font-size:1.05rem;max-width:560px;line-height:1.95;color:#465148}.hero-labels{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem}.hero-labels .pill{background:rgba(252,250,243,.8);color:#405447;border-color:#c5cfbf}.hero-art-note{font-size:.72rem;color:var(--muted);margin:.45rem .4rem 1.6rem;text-align:right}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.6rem 0 1.8rem}.route-card{display:block;position:relative;padding:1.7rem 1.9rem;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--ink);text-decoration:none}.route-card:hover{border-color:var(--accent);background:var(--surface-2)}.route-card .route-kicker{font-size:.78rem;color:var(--accent);font-weight:700;letter-spacing:.1em;margin-bottom:.5rem}.route-card h2{font-size:1.55rem;margin-bottom:.8rem}.route-card p{font-size:.96rem;line-height:1.9;margin-bottom:1.1rem;color:var(--muted)}.route-card .route-action{font-size:.86rem;font-weight:700;text-decoration:underline;text-underline-offset:.4rem}.home-note{font-size:.92rem;color:var(--muted);margin:1.3rem 0}.paper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.paper-card .paper-id{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--line);border-radius:7px;font-family:ui-serif,Georgia,serif;font-weight:700;color:var(--accent);margin-right:.6rem}.paper-card h3{font-size:1.08rem;line-height:1.65;overflow-wrap:anywhere}.paper-card .scope{font-size:.92rem}.paper-order{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;font-size:.92rem;color:var(--muted)}.paper-order b{background:var(--surface-2);color:var(--ink);padding:.15rem .6rem;border-radius:5px}.resource-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.resource-stack .card h3{font-size:1.08rem}.resource-stack .card p{font-size:.92rem}.reference-tools{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;margin:1.2rem 0}.reference-tools label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:var(--muted);flex:1;min-width:180px}.reference-tools input{width:100%;min-width:0;padding:.8rem 1rem;font-size:.95rem;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink)}.reference-tools button{font-size:.85rem;min-height:47px}.reference-count{font-size:.85rem;color:var(--muted);margin:.7rem 0}.reference-items{padding-left:1.5rem}.reference-items>li{border-top:1px solid var(--line);padding:1.1rem .3rem;margin:0;overflow-wrap:anywhere}.reference-items h3{font-size:1rem;margin:.2rem 0 .4rem;line-height:1.65}.reference-items p{font-size:.89rem;margin:.25rem 0;color:var(--muted)}.reference-empty{padding:1.5rem;background:var(--surface-2);border-radius:12px}.site-footer{max-width:1280px;margin:auto;padding:1.8rem 2rem 2.2rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;font-size:.8rem;color:var(--muted)}.site-footer p{margin:0;line-height:1.8}.site-footer a{color:var(--muted)}.site-footer .footer-links{display:flex;gap:1rem;flex-wrap:wrap}.public-boundary{padding:1rem 1.2rem;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:.88rem;background:var(--surface)}.return-top{font-size:.78rem}.home-resume{margin-bottom:1.3rem}.home-resume a{font-size:.9rem;font-weight:650}.home-main .platform-section{padding:2rem 0}.home-main .video-card{grid-template-columns:1.2fr 1fr}.home-main .video-card h3{font-size:1.12rem}.home-main .video-card p{font-size:.94rem}.home-main .video-card .small{font-size:.84rem}.home-main .section-top h2{font-size:1.65rem}.home-main .section-top p{font-size:.84rem}.background-hidden-note{display:none}
:root[data-theme=dark] .home-hero{background:#233128}:root[data-theme=dark] .hero-art{opacity:.15}:root[data-theme=dark] .home-hero:after{background:linear-gradient(90deg,rgba(25,35,28,.65),rgba(25,35,28,.3) 50%,transparent)}:root[data-theme=dark] .home-hero .lede{color:var(--muted)}:root[data-theme=dark] .hero-labels .pill{background:#28362c;color:#ccd9c8;border-color:#586752}:root[data-theme=dark] .logo-box{border-color:#829382}:root[data-theme=dark] .featured-topic a{color:#e7f0e4}
@media(max-width:1000px){.brand-row{align-items:flex-start}.header-links{justify-content:flex-end;max-width:60%}.reading-shell{grid-template-columns:165px minmax(0,1fr);gap:1.6rem;padding:0 1.5rem}.reading-toc{font-size:.77rem}.home-hero{padding:2.3rem 2.2rem}.resource-stack{grid-template-columns:1fr}.resource-stack .card{display:block}}
@media(max-width:760px){.brand-row{padding:.85rem 1.15rem;display:block}.site-brand{width:max-content}.logo-box{width:52px;height:52px}.logo-box img{width:44px;height:44px}.brand-name{font-size:1.14rem}.header-links{max-width:none;justify-content:flex-start;margin-top:.9rem;gap:.45rem 1.1rem;font-size:.8rem}.reader-tools-inner{padding:.5rem 1.1rem;gap:.45rem}.reader-tools-side{gap:.45rem}.reader-tools button{padding:.35rem .55rem}.progress-text{font-size:.72rem}.reader-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.reader-settings-grid select{max-width:100%}.reader-tools-inner:has(.reader-settings[open]){flex-wrap:wrap}.reader-settings[open]{width:100%}.reader-tools-inner:has(.reader-settings[open]) .reader-tools-side{width:100%;justify-content:flex-end}.reading-shell{display:block;padding:0 1.15rem}.reading-shell main{padding-top:1.2rem}.reading-toc{position:static;max-height:none;margin-top:1rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:.85rem}.reading-toc summary{margin-bottom:0}.reading-toc[open] summary,.reading-toc details[open] summary{margin-bottom:.8rem}.reading-toc ol{columns:1}.reading-toc li{break-inside:avoid}.resume-banner{margin:1rem 1.15rem 0;display:block;padding:.85rem 1rem}.resume-banner button{margin-top:.6rem}.home-main{padding:1.15rem 1.15rem 3rem}.home-hero{padding:1.7rem 1.4rem 8rem;min-height:0;border-radius:15px}.home-hero h1{font-size:2rem;line-height:1.45}.home-hero .hero-art{object-position:right bottom;object-fit:cover;opacity:.65}.home-hero:after{background:linear-gradient(180deg,rgba(247,244,233,.98),rgba(247,244,233,.98) 57%,rgba(247,244,233,.7) 80%,rgba(247,244,233,.2))}.home-hero .lede{font-size:.97rem;margin-bottom:0}.hero-art-note{font-size:.7rem;text-align:left;margin:.6rem 0 1rem}.route-grid,.paper-grid{grid-template-columns:1fr}.route-card{padding:1.35rem 1.45rem}.route-card h2{font-size:1.45rem}.route-grid{margin:1rem 0 1.4rem}.home-main .video-card{grid-template-columns:1fr}.home-main .section-top{display:block}.home-main .section-top p{margin:.5rem 0 0}.reader-main .two{grid-template-columns:1fr}.reader-main .formula{font-size:.9em;padding:.8rem}.reader-main h1{font-size:1.9rem}.site-footer{padding:1.4rem 1.15rem;display:block}.site-footer .footer-links{margin-top:.7rem}.reference-tools{align-items:stretch}.reference-tools button{align-self:flex-end}.paper-card{padding:1.2rem}.paper-card .state-line{font-size:.8rem}.home-main .platform-section{padding:1.6rem 0}.home-resume{padding:1rem}.home-note{font-size:.89rem}:root[data-theme=dark] .home-hero:after{background:linear-gradient(180deg,rgba(25,35,28,.98),rgba(25,35,28,.8) 60%,rgba(25,35,28,.4))}:root[data-theme=dark] .home-hero .hero-art{opacity:.16}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.reader-tools,.progress-track,.reading-toc,.resume-banner,.site-header,.site-footer,.home-resume{display:none!important}.reading-shell{display:block;padding:0}.reading-shell main{padding:0}.formula{white-space:normal;overflow:visible}.home-hero .hero-art{display:none}}

/* Transparent vector mark, retaining the supplied silhouette. */
.logo-box{background:transparent;border:0;border-radius:0;padding:0;color:#26333f}.logo-box svg{width:50px;height:50px;display:block}:root[data-theme=dark] .logo-box{color:#f3f0e8;border:0}@media(max-width:760px){.logo-box svg{width:46px;height:46px}}
/* LaTeX layout: locally hosted KaTeX and fonts, with overflow confined to math. */
.formula{font-family:inherit;font-size:1em;white-space:normal;line-height:1.65}.formula .katex-display,.math-block .katex-display{margin:.35em 0;overflow-x:auto;overflow-y:hidden;text-align:left;padding:.15em .12em .4em}.formula .katex-display>.katex,.math-block .katex-display>.katex{text-align:left;white-space:nowrap;min-width:max-content}.katex{font-size:1.08em}.math-block{display:block;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden}.katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:.2em}.katex .base{white-space:nowrap}.bar-label .katex{font-size:1.05em}.bar-label small{display:block;min-height:1.8em}.reader-main .katex-display{font-size:.98em}@media(max-width:760px){.formula{padding:.75rem .55rem}.formula .katex-display{font-size:.92em}}

.route-grid:has(>.route-card:only-child){grid-template-columns:1fr}.route-card:only-child{max-width:none}
/* Topic catalogue, shared reading routes, and outlined SVG lettering. */
.site-brand.brand-art{width:273px;max-width:100%;color:#26333f}.brand-art>svg{display:block;width:100%;height:auto}.brand-art svg title{display:none}:root[data-theme=dark] .brand-art{color:#f3f0e8}.brand-art svg{max-height:52px}.hero-brand{color:var(--ink);margin:0!important;max-width:600px}.hero-brand svg{width:100%;height:auto}.hero-title-small{display:none}.home-hero{display:flex;align-items:center;min-height:305px}.home-hero .hero-copy{width:57%;max-width:620px}.topic-entry{display:grid;grid-template-columns:3.5rem 1fr 2rem;gap:1.3rem;padding:2rem;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);text-decoration:none}.topic-entry:hover{border-color:var(--accent);background:var(--surface-2)}.topic-entry h3{font-size:1.65rem;margin:0 0 .6rem}.topic-entry p{margin:0 0 1rem;color:var(--muted)}.topic-number{font:1.6rem ui-serif,Georgia,serif;color:var(--accent)}.topic-routes{font-size:.88rem;color:var(--muted)}.three-routes{grid-template-columns:repeat(3,minmax(0,1fr))}.three-routes h2{font-size:1.3rem}.three-routes .route-card{padding:1.2rem}.unit-list{margin:1.5rem 0;display:grid;gap:.8rem}.unit-list a{display:flex;gap:1rem;align-items:start;padding:1rem 1.2rem;text-decoration:none;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.unit-list a:hover{border-color:var(--accent)}.unit-list b{font-family:ui-serif,Georgia,serif;color:var(--muted)}.unit-pagination{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.language-switch{border:1px solid var(--line);border-radius:6px;padding:.2rem .55rem!important}.language-unavailable{font-size:.72rem;color:var(--muted)}.lesson-section{padding:.5rem 0 1.3rem}.math-display{max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;padding:.5rem 0}.math-display .katex-display{text-align:left}.math-display .katex-display>.katex{text-align:left}.reader-main p,.reader-main li{overflow-wrap:break-word}.reader-main h1,.reader-main h2,.reader-main h3{overflow-wrap:break-word}.reader-main .katex{overflow-wrap:normal}.reader-main video{width:100%;max-height:480px;background:#111;border-radius:9px}.reading-toc .katex{font-size:1em}.brand-row .header-links{max-width:none}.reader-main section[id],.reader-main h3[id]{scroll-margin-top:6rem}
@media(max-width:1000px){.three-routes{grid-template-columns:1fr}.three-routes .route-card p{margin-bottom:.6rem}}
@media(max-width:760px){.site-brand.brand-art{width:231px}.brand-art svg{max-height:44px}.home-hero{min-height:285px;padding:1.8rem 1.5rem 5.5rem}.home-hero .hero-copy{width:100%;max-width:360px}.hero-title-wide{display:none}.hero-title-small{display:block;max-width:270px}.home-hero .hero-art{opacity:.4}.hero-brand{font-size:2rem}.topic-entry{grid-template-columns:2rem 1fr;gap:1rem;padding:1.25rem}.topic-entry>span:last-child{display:none}.topic-entry h3{font-size:1.5rem}.topic-routes{font-size:.8rem}.topic-number{font-size:1.3rem}.header-links{margin-top:.7rem}.language-unavailable{display:none}}

.home-main .home-resume{padding:.65rem 1rem;margin-bottom:1rem}.home-resume a{font-size:.87rem;line-height:1.5}.home-resume #home-resume-position{font-size:.75rem;line-height:1.3;margin:.15rem 0 0!important}

.interlude-page{max-width:920px;margin:0 auto 2rem}.interlude-page .understanding-interlude{width:100%;max-width:none}.interlude-page .mi-body{margin-top:.4rem}.interlude-page .mi-caption{font-size:max(17px,var(--reader-size));line-height:var(--reader-leading)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.brand-micro-area{display:grid;grid-template-columns:auto auto;align-items:center;gap:0 .6rem;min-width:0;max-width:440px}.brand-micro-area .mm-brand-aside{grid-column:1/-1}.brand-micro-area .mm-controls{justify-self:start}.reader-tools>.mm-theme-aside{max-width:1280px;margin:0 auto;padding:.5rem 2rem}.reader-settings-grid>.mm-controls{align-self:start}.logo-dark-eye{opacity:0;pointer-events:none;transition:none}:root[data-theme="dark"] .logo-dark-eye{opacity:1}@media(max-width:760px){.brand-micro-area{max-width:100%;grid-template-columns:minmax(0,auto) auto;justify-content:start;gap:0 .45rem}.brand-micro-area .mm-controls button{font-size:14px;padding:.4rem .5rem}.reader-tools>.mm-theme-aside{padding:.5rem 1.1rem}}@media(max-width:350px){.brand-micro-area{grid-template-columns:1fr}.brand-micro-area .mm-controls{margin-top:.35rem}}@media(prefers-reduced-motion:reduce){.logo-dark-eye{animation:none!important;transition:none!important}}

.language-picker{display:inline-flex;align-items:center;gap:.55rem;flex-wrap:wrap}.language-current{font-size:.78rem;color:var(--ink);font-weight:650;white-space:nowrap}.header-links .language-switch{font-weight:650}

.mi-hardys-aside{max-width:45rem;margin:1.3rem 0 0;font-size:1rem;line-height:1.9}.mi-hardys-aside blockquote{margin:0 0 1rem;padding:.5rem 0 .5rem 1rem;border-left:2px solid var(--mi-line)}.mi-hardys-aside blockquote p{margin:0 0 .35rem}.mi-hardys-aside footer{font-size:.8rem;color:var(--mi-muted)}.mi-hardys-aside a{color:inherit}.anchor-alias{display:block;scroll-margin-top:6rem}

.unit-group{margin:1.2rem 0 1.8rem}.unit-group h2{font-size:1.1rem;margin:.4rem 0}.unit-group>a{margin:.4rem 0}.unit-list .unit-group{min-width:0}

/* Proof dependencies remain readable at narrow widths and without JavaScript. */
.reading-paths{margin:1.2rem 0 2.4rem;padding:clamp(.85rem,2vw,1.4rem);border:1px solid var(--line);border-radius:16px;background:var(--surface);min-width:0}
.reading-path-shortcuts{display:flex;flex-wrap:wrap;gap:.4rem .75rem;font-size:.86em}.reading-path-shortcuts a{padding:.2rem 0}
.reading-path-note,.reading-stage-note,.reading-stage-next,.reading-branch-label{font-size:.84em;line-height:1.7;color:var(--muted)}
.reading-paths .reading-path-note{margin:.8rem 0 1.2rem}.reading-paper{min-width:0;margin:1.5rem 0}.reading-paper:last-child{margin-bottom:0}.reading-paper>h2{font-size:1.12em;margin:.7rem 0}.reading-paper,.reading-stage{scroll-margin-top:7rem}
.reading-d-stages{display:grid;gap:.65rem;min-width:0}.reading-d-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;align-items:start;min-width:0}
.reading-stage{border:1px solid var(--line);border-radius:11px;background:var(--surface-2);min-width:0;padding:0;margin:0}.reading-stage>summary{cursor:pointer;padding:.75rem .9rem;font-weight:650;line-height:1.6;overflow-wrap:anywhere}.reading-stage>summary small{display:block;margin-left:1.1rem;font-size:.77em;font-weight:400;color:var(--muted)}
.reading-stage[open]>summary{border-bottom:1px solid var(--line)}.reading-stage:target{outline:2px solid var(--accent);outline-offset:3px}.reading-stage>summary:focus-visible,.reading-paths a:focus-visible,.reading-context a:focus-visible,.reading-supplement-nav a:focus-visible,.unit-pagination a:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:3px}
.reading-paths .reading-unit-links{list-style:none;padding:0;margin:.55rem 0;display:grid;gap:.4rem}.reading-stage>.reading-unit-links{padding:0 .6rem}.reading-unit-links li{padding:0;margin:0;min-width:0}.reading-unit-links a{display:block;padding:.65rem .75rem;border:1px solid transparent;border-radius:7px;color:var(--ink);text-decoration:none;line-height:1.6;background:var(--surface);overflow-wrap:anywhere}.reading-unit-links a:hover{border-color:var(--accent)}.reading-unit-links a>span{display:block;font-size:.91em}.reading-unit-links small{display:block;margin-top:.25rem;color:var(--muted);font-size:.73em;line-height:1.55}
.reading-stage .reading-stage-note,.reading-stage .reading-stage-next{padding:0 .9rem;margin:.7rem 0}.reading-d-stages>.reading-branch-label{margin:.15rem 0;padding-left:.6rem;border-left:2px solid var(--accent)}
.reading-context{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.78em;line-height:1.65;color:var(--muted);margin:.5rem 0 1.1rem}.reading-context span{overflow-wrap:anywhere}
.reading-supplement-nav{padding:.85rem 1rem;margin:.8rem 0 1.2rem;border-left:3px solid var(--accent);background:var(--surface-2);font-size:.88em;line-height:1.7}.reading-supplement-nav span{display:block;color:var(--muted);font-size:.9em;margin-top:.25rem}
.unit-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;font-size:.86em}.unit-pagination a{min-width:0;overflow-wrap:anywhere}.unit-pagination a>small{display:block;font-size:.84em;color:var(--muted);margin-bottom:.3rem}.unit-pagination a>span{display:block;line-height:1.65}
@media(max-width:980px){.reading-d-branches{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.reading-paths{padding:.75rem}.reading-stage>summary{padding:.65rem .7rem}.reading-stage>.reading-unit-links{padding:0 .4rem}.reading-unit-links a{padding:.6rem}.unit-pagination{grid-template-columns:minmax(0,1fr);gap:1rem}.reading-context{display:block}.reading-context span{display:block;margin-top:.3rem}}
@media print{.reading-paths{border:0;padding:0}.reading-d-branches{grid-template-columns:minmax(0,1fr)}.reading-stage{break-inside:avoid}}

.selected-square{--sq-ink:var(--ink,#243b40);--sq-line:var(--line,#c5cec5);--sq-row:rgba(189,143,57,.19);--sq-col:rgba(65,131,155,.17);--sq-corner:rgba(128,106,156,.25);margin:2rem 0;padding:clamp(1rem,3vw,1.7rem);border:1px solid var(--sq-line);border-radius:18px;color:var(--sq-ink);background:var(--surface,#faf7ee)}
.selected-square figcaption strong{font-size:1.1em}.selected-square p{line-height:1.75;margin:.65rem 0}.sq-controls{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.sq-controls button{font:inherit;font-size:.9em;color:inherit;background:transparent;border:1px solid var(--sq-line);padding:.45rem .7rem;border-radius:99px;cursor:pointer}.sq-controls button[aria-pressed=true]{background:var(--sq-ink);color:var(--surface,#faf7ee)}.sq-controls button:focus-visible{outline:3px solid #ba9451;outline-offset:3px}.sq-frame{overflow:auto;margin:1.2rem 0}.sq-frame table{border-collapse:separate;border-spacing:6px;width:100%;table-layout:fixed;text-align:center;min-width:18em}.sq-frame th{font-weight:400;padding:.35rem;font-size:.88em}.sq-frame th:first-child{width:12%}.sq-cell{border:1px solid var(--sq-line);border-radius:9px;padding:clamp(.5rem,2vw,1rem) .2rem;transition:background .16s,border-color .16s;position:relative}.sq-cell .katex{font-size:1.12em}.sq-legend{display:flex;flex-wrap:wrap;gap:.65rem 1rem;font-size:.88em;line-height:1.7}.sq-legend > span{padding-left:.65rem;border-left:3px solid;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:.25rem}.sq-row-key{border-color:#b68c3f!important}.sq-col-key{border-color:#49869b!important}.sq-corner-key{border-color:#9273aa!important}.sq-note,.selected-square small{font-size:.85em;opacity:.85}
[data-square][data-mode=both] [data-row="2"],[data-square][data-mode=row] [data-row="2"]{background:var(--sq-row);border-top:3px solid #b68c3f}
[data-square][data-mode=both] [data-col="2"],[data-square][data-mode=col] [data-col="2"]{background:var(--sq-col);border-left:3px solid #49869b}
[data-square][data-mode=both] [data-row="2"][data-col="2"],[data-square][data-mode=corner] [data-row="2"][data-col="2"]{background:var(--sq-corner);outline:2px solid #9273aa;outline-offset:1px}
[data-theme=dark] .selected-square{--sq-ink:var(--ink,#e6e5d9);--sq-line:var(--line,#53635e);background:var(--surface,#202e30)}
@media(prefers-reduced-motion:reduce){.sq-cell{transition:none}}@media print{.sq-controls{display:none}.selected-square{break-inside:avoid;background:white;color:#172b33;--sq-line:#b5beb9}.selected-square .sq-cell{color:#172b33}}
/* Keep mathematical cells centered even when the host article tables align left. */
.selected-square .sq-frame td,.selected-square .sq-frame th{text-align:center}

.three-signs{color:var(--ink,#243b40);background:var(--surface,#faf7ee);border:1px solid var(--line,#c5cec5);border-radius:18px;margin:2rem 0;padding:clamp(1rem,3vw,1.7rem)}.three-signs strong{font-size:1.1em}.three-signs p{line-height:1.75}.sign-controls{display:flex;align-items:end;flex-wrap:wrap;gap:.8rem}.sign-controls label{display:flex;flex-direction:column;gap:.35rem}.sign-controls select,.sign-controls button{font:inherit;font-size:.9em;border:1px solid var(--line,#bdc9bd);background:var(--surface,#faf7ee);color:inherit;border-radius:8px;padding:.45rem .6rem}.sign-controls select:focus-visible,.sign-controls button:focus-visible{outline:3px solid #ba9451;outline-offset:3px}.sign-table-wrap{overflow:auto;margin:1rem 0}.sign-table-wrap table{border-collapse:collapse;width:100%;min-width:15em;text-align:center}.sign-table-wrap td,.sign-table-wrap th{padding:.45rem .6rem;border-bottom:1px solid var(--line,#c5cec5)}.sign-table-wrap th{font-weight:400}.sign-table-wrap tr:not(.excluded){background:rgba(79,134,120,.09)}.sign-table-wrap tr.excluded{color:var(--muted,#566278);text-decoration:line-through;background:transparent}.sign-result{padding:.7rem 1rem;border-left:3px solid #b58d45}.sign-note{font-size:.88em}.three-signs [data-result]{overflow:auto}@media print{.sign-controls{display:none}.three-signs{background:white;color:#243b40;break-inside:avoid}}
/* Explicit alignment and an edge marker keep the selected rows legible across themes. */
.three-signs .sign-table-wrap td,.three-signs .sign-table-wrap th{text-align:center}
.three-signs tbody td:first-child{border-left:3px solid transparent}.three-signs tbody tr:not(.excluded) td:first-child{border-left-color:var(--accent,#426d62)}

.toolbar-language{display:inline-flex;gap:.45rem;align-items:center;white-space:nowrap;font-size:.78rem}.toolbar-language>[aria-current]{color:var(--muted)}.reader-tools-side{flex-wrap:wrap;justify-content:flex-end}@media(max-width:520px){.reader-tools-side .progress-text{display:none}.toolbar-language{font-size:.74rem}.reader-tools-inner{gap:.4rem}}

.reading-art-hero{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--line);border-radius:18px;padding:clamp(1.2rem,3vw,2.2rem)!important;margin:.8rem 0 2rem;background:var(--surface)}
.reading-art-hero .reading-art-picture{position:absolute;inset:0;z-index:-2;display:block}
.reading-art-hero .reading-art-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.reading-art-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--surface) 0%,var(--surface) 38%,transparent 100%);pointer-events:none}
.reading-art-hero>.reading-art-copy{max-width:72%;position:relative}
.reading-art-hero h1{font-size:clamp(1.8rem,3.3vw,2.45rem);line-height:1.35;margin-top:0}
.reading-art-hero .lede{font-size:1.12em;line-height:1.8}
.reading-art-hero p:last-child{margin-bottom:0}
.reading-art-divider{display:block;margin:1rem 0 1.6rem;overflow:hidden;border-radius:12px;max-height:210px;background:var(--surface)}
.reading-art-divider img{display:block;width:100%;height:210px;object-fit:cover;object-position:center 54%}
:root[data-theme=dark] .reading-art-picture img,:root[data-theme=dark] .reading-art-divider img{opacity:.5}
@media(max-width:640px){.reading-art-hero{padding:0!important}.reading-art-hero .reading-art-picture{position:relative;height:165px;z-index:0}.reading-art-hero:before{display:none}.reading-art-hero>.reading-art-copy{max-width:none;padding:1.25rem}.reading-art-hero h1{font-size:1.85rem}.reading-art-divider,.reading-art-divider img{height:140px;max-height:140px}}
@media print{.reading-art-picture,.reading-art-divider{display:none!important}.reading-art-hero{border:0;padding:0!important}.reading-art-hero:before{display:none}.reading-art-hero>.reading-art-copy{max-width:none}}

.game-teaser{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:1.2rem;margin:2rem 0 1rem;padding:1.4rem;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.game-teaser h2{margin:.3rem 0 .8rem}.game-teaser p{margin-bottom:.8rem}.game-teaser .eyebrow{font-size:.82em;letter-spacing:.03em}.game-teaser-bird{width:160px;height:160px;background:url(game/brand/bert-fluffy.png) center/contain no-repeat}.game-teaser .link-button{display:inline-block;text-decoration:none;margin-top:.4rem}@media(max-width:520px){.game-teaser{grid-template-columns:minmax(0,1fr);gap:0}.game-teaser-bird{width:128px;height:128px;margin:auto}}

/* One named, keyboard-focusable scroll region per wrapped display formula. */
.formula > .katex-display,.math-display > .katex-display,.math-block > .katex-display{max-width:none;min-width:max-content;overflow:visible}
/* Keep equation numbers in their own intrinsic-width column inside that region. */
.reader-main :is(.formula,.math-display,.math-block) > .katex-display > .katex > .katex-html:has(> .katex-tag){display:table;min-width:100%}
.reader-main :is(.formula,.math-display,.math-block) > .katex-display > .katex > .katex-html > .katex-tag{display:table-cell;position:static;width:0;padding-left:2em;text-align:right;vertical-align:middle}

/* Reading navigation: modest type enlargement without scaling the article. */
@media screen{
.header-links{font-size:.97rem;line-height:1.6}
.header-links a{display:inline-flex;align-items:center;min-height:36px}
.language-current{font-size:.92rem;line-height:1.6}
.reader-tools{font-size:.94rem}
.reader-tools button,.reader-tools select,.reader-settings label{font-size:.92rem}
.reader-tools button,.reader-tools select,.reader-settings summary{min-height:40px}
.toolbar-language{font-size:.92rem;line-height:1.6}
.toolbar-language .language-switch{display:inline-flex;align-items:center;min-height:36px}
.reading-toc{font-size:.94rem}
.reading-toc summary{font-size:.97rem;line-height:1.6}
.reading-toc a{padding-top:.3rem;padding-bottom:.3rem;overflow-wrap:anywhere}
.breadcrumbs{font-size:.94rem;line-height:1.7}
.source-link-row a{font-size:.9rem;line-height:1.6}
}
@media screen and (max-width:760px){
.header-links{font-size:.97rem;gap:.4rem 1rem}
.reading-toc{font-size:.94rem}
.reader-tools-inner,.reader-tools-side{min-width:0}
.reader-settings-grid>*{max-width:100%}
}
@media screen and (max-width:520px){
.reader-tools-inner{flex-wrap:wrap}
.reader-tools-side{flex:1 1 auto;justify-content:flex-end}
}
@media screen and (max-width:380px){
.reader-tools-side{flex-basis:100%}
}
@media screen and (any-pointer:coarse){
.header-links a,.reader-tools button,.reader-tools select,.reader-settings summary,.toolbar-language .language-switch{min-height:44px}
}

/* Scoped footer component. No dependencies, fixed overlays, or global selectors. */
.understanding-interlude{--mi-paper:#f9f7f0;--mi-card:#fffdf7;--mi-ink:#273b47;--mi-muted:#536871;--mi-line:#c3cecd;--mi-teal:#426366;--mi-gold:#806528;--mi-gold-soft:#eae1c8;--mi-soft:#edf0e9;box-sizing:border-box;max-width:54rem;margin:0;color:var(--mi-ink);font:400 16px/1.65 system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;text-align:left;overflow-wrap:anywhere}
:root[data-theme=dark] .understanding-interlude,.understanding-interlude[data-mi-theme=dark]{--mi-paper:#1b2932;--mi-card:#22343e;--mi-ink:#e7ebe8;--mi-muted:#bdcaca;--mi-line:#536871;--mi-teal:#b6cfca;--mi-gold:#dfc382;--mi-gold-soft:#3a3b31;--mi-soft:#2b3d43;color-scheme:dark}
.understanding-interlude[data-mi-theme=light]{--mi-paper:#f9f7f0;--mi-card:#fffdf7;--mi-ink:#273b47;--mi-muted:#536871;--mi-line:#c3cecd;--mi-teal:#426366;--mi-gold:#806528;--mi-gold-soft:#eae1c8;--mi-soft:#edf0e9;color-scheme:light}
.understanding-interlude *{box-sizing:border-box}
.understanding-interlude [hidden]{display:none!important}
.understanding-interlude summary{display:flex;align-items:center;gap:.7rem;width:fit-content;min-height:44px;max-width:100%;padding:.5rem 0;list-style:none;font-size:16px;font-weight:550;color:var(--mi-teal);cursor:pointer;text-decoration:underline;text-underline-offset:.3em;text-decoration-color:var(--mi-line)}
.understanding-interlude summary::-webkit-details-marker{display:none}
.understanding-interlude .mi-summary-mark{display:inline-block;font-size:20px;line-height:1;text-decoration:none}
.understanding-interlude[open] .mi-summary-mark{transform:rotate(45deg)}
.understanding-interlude .mi-body{margin-top:1rem;border:1px solid var(--mi-line);border-radius:14px;padding:clamp(1rem,4vw,2.5rem);background:var(--mi-paper)}
.understanding-interlude .mi-topline{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--mi-muted);font-size:14px}
.understanding-interlude .mi-topline p{margin:0}
.understanding-interlude .mi-topline>span{color:var(--mi-gold);font-family:ui-monospace,monospace;letter-spacing:.08em}
.understanding-interlude h2{font-size:clamp(1.45rem,3vw,2rem);line-height:1.4;font-weight:550;margin:1rem 0 1.4rem;color:var(--mi-ink)}
.understanding-interlude .mi-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem}
.understanding-interlude button{font:inherit;font-size:14px;line-height:1.45;min-height:44px;max-width:100%;cursor:pointer;white-space:normal;border:1px solid var(--mi-line);border-radius:7px;padding:.6rem .85rem;color:var(--mi-teal);background:transparent}
.understanding-interlude .mi-tabs button[aria-selected=true]{color:var(--mi-ink);background:var(--mi-gold-soft);border-color:var(--mi-gold);font-weight:600}
.understanding-interlude button:hover{background:var(--mi-soft)}
.understanding-interlude :is(button,summary,.mi-panel):focus-visible{outline:3px solid var(--mi-gold);outline-offset:4px}
.understanding-interlude .mi-panel{border-radius:7px;min-width:0}
.understanding-interlude .mi-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.5rem,2vw,1rem);perspective:900px}
.understanding-interlude .mi-card{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.4rem .65rem 1.2rem;border:1px solid var(--mi-line);border-top:3px solid var(--mi-gold);border-radius:9px;background:var(--mi-card);transform-origin:center;backface-visibility:hidden}
.understanding-interlude .mi-letter{font:500 clamp(2.5rem,6vw,4.5rem)/1.05 Georgia,"Times New Roman",serif;color:var(--mi-ink)}
.understanding-interlude .mi-word{font-size:clamp(14px,1.6vw,17px);line-height:1.5;min-height:1.5em;text-align:center;color:var(--mi-teal);max-width:100%}
.understanding-interlude .mi-caption{font-size:17px;line-height:1.8;min-height:3.6em;margin:1.5rem 0 1rem;color:var(--mi-ink);max-width:42rem}
.understanding-interlude .mi-actions{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap;margin-top:1rem}
.understanding-interlude .mi-actions [data-mi-next]{border-color:var(--mi-teal)}
.understanding-interlude .mi-actions [data-mi-close]{border-color:transparent;text-decoration:underline;text-underline-offset:.2em}
.understanding-interlude .mi-hint{font-size:14px;color:var(--mi-muted);margin:1rem 0 0;line-height:1.6}
.understanding-interlude .mi-footnote{font-size:14px;line-height:1.7;margin:1.4rem 0 0;padding-top:1rem;border-top:1px solid var(--mi-line);color:var(--mi-muted)}
@media(max-width:460px){.understanding-interlude .mi-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.understanding-interlude .mi-card{padding:1rem .55rem}.understanding-interlude .mi-letter{font-size:2.7rem}.understanding-interlude .mi-word{font-size:15px}.understanding-interlude .mi-caption{font-size:16px;min-height:0}.understanding-interlude .mi-topline{gap:.4rem}.understanding-interlude .mi-actions{align-items:stretch}.understanding-interlude .mi-actions button{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.understanding-interlude *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.understanding-interlude{display:none!important}}

/* Whole Chinese phrases stay intact instead of forced acronym translations. */
.understanding-interlude .mi-phrase{font-size:clamp(18px,2.2vw,23px);line-height:1.65;font-weight:550;margin:1.5rem 0 .65rem;color:var(--mi-ink)}
.understanding-interlude .mi-phrase+.mi-caption{margin-top:.6rem}

/* Chinese full-phrase states use a compact typographic title, not empty word slots. */
.understanding-interlude .mi-cards--phrase{width:14rem;max-width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;padding:.2rem 0 .75rem;border-bottom:2px solid var(--mi-gold)}
.understanding-interlude .mi-cards--phrase .mi-card{border:0;border-radius:0;padding:.25rem 0;background:transparent;gap:0}
.understanding-interlude .mi-cards--phrase .mi-letter{font-size:2.6rem;color:var(--mi-teal)}
.understanding-interlude .mi-cards--phrase+.mi-phrase{font-size:clamp(22px,3vw,29px);line-height:1.6;margin:1.3rem 0 .6rem;max-width:28em}

/* Load after host styles. Only the added peripheral controls are styled. */
.mm-controls,.mm-brand-aside,.mm-theme-aside{--mm-ink:var(--ink,#273b47);--mm-muted:var(--muted,#536871);--mm-surface:var(--surface,#f9f7f0);--mm-line:var(--line,#c3cecd);--mm-gold:#806528;font:400 14px/1.65 system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--mm-ink);max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
:root[data-theme=dark] :is(.mm-controls,.mm-brand-aside,.mm-theme-aside){--mm-ink:var(--ink,#e7ebe8);--mm-muted:var(--muted,#bdcaca);--mm-surface:var(--surface,#1b2932);--mm-line:var(--line,#536871);--mm-gold:#dfc382}
.mm-controls [hidden],.mm-brand-aside[hidden],.mm-theme-aside[hidden]{display:none!important}
.mm-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.mm-controls button,.mm-theme-aside button{font:inherit;font-size:14px;line-height:1.5;min-height:44px;max-width:100%;padding:.45rem .7rem;border:1px solid var(--mm-line);border-radius:6px;background:transparent;color:var(--mm-ink);cursor:pointer;white-space:normal;box-sizing:border-box}
.mm-controls button:hover,.mm-theme-aside button:hover{background:var(--mm-surface);border-color:var(--mm-gold)}
.mm-controls button:focus-visible,.mm-theme-aside button:focus-visible{outline:3px solid var(--mm-gold);outline-offset:3px}
.mm-controls [aria-pressed=true]{border-color:var(--mm-gold);text-decoration:underline;text-underline-offset:.2em}
.mm-brand-aside{border-left:2px solid var(--mm-gold);padding:.4rem 0 .4rem .8rem;margin:.55rem 0 .25rem;transform-origin:left center}
.mm-theme-aside{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap;border-top:1px solid var(--mm-line);padding:.5rem 0;margin-top:.5rem}
.mm-theme-aside span{flex:1 1 14rem;min-width:0}
.mm-theme-aside button{flex:0 0 auto;padding:.25rem .6rem}
.mm-preference-status{font-size:14px;color:var(--mm-muted);margin:0;width:100%;line-height:1.6}
.mm-preference-status:empty{display:none}
@media(prefers-reduced-motion:reduce){.mm-brand-aside,.mm-theme-aside{animation:none!important;transition:none!important;transform:none!important}}
@media print{.mm-controls,.mm-brand-aside,.mm-theme-aside{display:none!important}}

/* Pointer hover/focus uses the brand itself; coarse pointers keep an icon-only target. */
.mm-brand-trigger{display:none}
.mm-brand-trigger button{min-width:44px;padding:.35rem;white-space:nowrap}
.mm-brand-trigger button>span{font-size:22px;line-height:1}
@media(hover:none),(any-pointer:coarse){.mm-brand-trigger{display:flex}}
