
:root{--paper:#eef4ef;--paper2:#fffdf2;--ink:#14231e;--muted:#60756d;--line:#bfd0c7;--deep:#12362d;--water:#1f7f93;--brass:#a9792b;--panel:rgba(255,255,255,.78);--display:"Songti SC","Noto Serif CJK SC","STSong",Georgia,serif;--ui:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--ui);color:var(--ink);line-height:1.62;background:linear-gradient(rgba(31,127,147,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(63,122,92,.04) 1px,transparent 1px),var(--paper);background-size:40px 40px}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;display:flex;gap:18px;align-items:center;padding:10px clamp(14px,4vw,54px);background:rgba(238,244,239,.93);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.brand{display:flex;gap:10px;align-items:center}.brand span{display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--deep);border-radius:50%;background:#fff;font-weight:950;box-shadow:5px 5px 0 rgba(31,127,147,.16)}.brand strong{display:block}.brand em{display:block;font-style:normal;color:var(--muted);font-size:12px}.topbar nav{margin-left:auto;display:flex;gap:8px;overflow:auto}.topbar nav a,.button,button{border:1px solid var(--line);background:#fffdf7;padding:8px 12px;border-radius:6px;font-weight:850;box-shadow:3px 3px 0 rgba(169,121,43,.14)}.topbar nav a.active,.button.primary{background:var(--deep);color:#fffdf2}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.58fr);gap:34px;align-items:center;min-height:72vh;padding:54px clamp(18px,5vw,70px)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--water);font-weight:950}h1{font-family:var(--display);font-size:clamp(44px,7vw,86px);line-height:1.03;margin:10px 0 18px;letter-spacing:0}.lead{font-size:19px;color:var(--muted);max-width:780px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-panel,.panel,.card,.entry-card{background:var(--panel);border:1px solid var(--line);box-shadow:9px 9px 0 rgba(18,54,45,.09)}.hero-panel{padding:14px}.hero-panel img{display:block;width:100%;max-height:520px;object-fit:contain;background:#fff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.stats div,.fact{border:1px solid var(--line);background:#f7efd4;padding:10px}.stats strong{display:block;font-size:28px}.stats span,.fact span{display:block;color:var(--muted);font-size:12px}.section{padding:40px clamp(18px,5vw,70px);border-top:1px solid rgba(96,117,109,.24)}.section-head{display:grid;grid-template-columns:240px 1fr;gap:24px;margin-bottom:18px}.section h2,.panel h2{font-family:var(--display);font-size:clamp(25px,3vw,42px);line-height:1.12;margin:0 0 8px}.section-head p,.panel p,.card p,.entry-card p{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}.card{display:block;padding:16px;min-height:160px}.card:hover{transform:translateY(-2px);transition:.18s ease}.card small{color:var(--brass);font-weight:900}.card h3{font-size:23px;line-height:1.15;margin:8px 0}.plate-card img{width:100%;height:190px;object-fit:contain;background:#fff;border:1px solid rgba(191,208,199,.9);margin-bottom:10px}.entry-router{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.entry-card{padding:16px;min-height:155px}.entry-card span{display:block;color:var(--water);font-size:12px;font-weight:950;text-transform:uppercase}.entry-card strong{display:block;font-size:22px;margin:8px 0}.entry-card.primary{background:var(--deep);color:#fffdf2}.entry-card.primary p,.entry-card.primary span{color:#e6d59a}.page-title{padding:42px clamp(18px,5vw,70px) 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}.page-title h1{font-size:clamp(38px,6vw,74px)}.page-title p{color:var(--muted);font-size:18px}.crumb{font-size:13px;color:var(--water);font-weight:900}.style-board{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:18px;padding:0 clamp(18px,5vw,70px) 42px}.panel{padding:18px}.danger li{color:#8a2e20}.term-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.term-chip{display:inline-flex;gap:6px;align-items:baseline;border:1px solid var(--line);background:#f7efd4;padding:7px 10px;border-radius:999px;font-weight:850}.term-chip em{font-style:normal;color:var(--water);font-size:12px}.loose{display:inline-block;margin:4px}.fact-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.visual-panel{display:grid;place-items:center}.plate-full{max-width:100%;max-height:76vh;object-fit:contain;background:#fff;border:1px solid var(--line)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.search{min-width:min(440px,100%);border:1px solid var(--line);background:#fff;padding:12px 14px;border-radius:6px;font:inherit}.hidden{display:none!important}.term-table{width:100%;border-collapse:collapse;background:#fff;font-size:15px}.term-table th,.term-table td{border:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}footer{border-top:1px solid var(--line);padding:24px clamp(18px,5vw,70px);color:var(--muted)}
.detail-board{align-items:start}.detail-panel{display:grid;gap:14px}.reading-card{border:1px solid var(--line);background:rgba(255,253,242,.74);padding:15px}.reading-card h2,.quiz-box h2,.viewer h2{font-size:25px}.reading-card p:first-of-type{margin-top:0}.thesis{border-left:8px solid var(--water);background:#f7efd4}.detail-list{margin:10px 0 0;padding-left:24px}.detail-list li{margin:9px 0}.practice-list li::marker{color:var(--water);font-weight:950}.source-box{background:#eef6ef}.source-caption{margin:2px 0 14px;color:var(--muted);font-size:15px}.source-expansion{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-bottom:14px}.source-expansion-deep{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.source-item{border:1px solid var(--line);background:#fffdf7;padding:12px}.source-item h3{margin:0 0 8px;font-size:18px;line-height:1.2}.source-item p{margin:0;color:var(--muted)}.source-item-deep{background:#f6fbf7}.route-card{background:#e7f0e8}.route-item{position:relative;padding-top:34px}.route-number{position:absolute;top:10px;left:12px;display:grid;place-items:center;width:24px;height:24px;background:var(--water);color:#fff;font-weight:950}.source-meta{display:grid;gap:4px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.source-meta strong{font-size:12px;color:var(--brass)}.source-meta span{color:var(--ink)}.source-meta.caution span{color:#8a2e20}.plate-detail-stack,.visual-stack{display:grid;gap:14px}.visual-stack{position:sticky;top:86px}.plate-callout{background:#e7f0e8}.viewer{border:1px solid var(--line);background:#fffdf2;padding:14px}.viewer-main{margin:0;display:grid;place-items:center;gap:8px}.viewer-main img{width:100%;max-height:520px;object-fit:contain;background:#fff;border:1px solid var(--line)}.viewer-main figcaption{width:100%;color:var(--brass);font-weight:900}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;margin-top:10px}.thumbs button{padding:3px;box-shadow:none;background:#fff}.thumbs img{display:block;width:100%;height:70px;object-fit:contain}.empty-viewer p{color:var(--muted)}.quiz-box{border:2px solid rgba(169,121,43,.36);background:#f7efd4;padding:16px}.quiz-box p{font-size:18px;color:var(--ink)}.answer{display:none;margin-top:12px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted)}.answer.is-open{display:block}.learning-path{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 clamp(18px,5vw,70px) 22px}.reading-card .learning-path{padding:0;grid-template-columns:1fr}.path-button{display:block;border:1px solid var(--line);background:#fffdf7;padding:12px;box-shadow:4px 4px 0 rgba(169,121,43,.12)}.path-button span{display:block;color:var(--water);font-size:12px;font-weight:950}.path-button strong{display:block;line-height:1.25}.path-button.disabled{opacity:.5}
@media(max-width:900px){.hero,.style-board,.page-title,.section-head{grid-template-columns:1fr}.entry-router{grid-template-columns:1fr 1fr}.topbar{align-items:flex-start}.topbar nav{max-width:100%}.visual-stack{position:static}.learning-path{grid-template-columns:1fr}}
@media(max-width:620px){.topbar{padding:6px 8px}.brand strong,.brand em{display:none}.brand span{width:34px;height:34px}.entry-router,.fact-strip{grid-template-columns:1fr}.hero{padding-top:30px}h1{font-size:40px}.topbar nav a,.button,button{padding:7px 8px;font-size:12px}.viewer-main img{max-height:380px}.thumbs{grid-template-columns:repeat(auto-fill,minmax(52px,1fr))}}
