
:root{
  color-scheme: light;
  --paper:#ffe58a;
  --paper-2:#fff2b8;
  --ink:#211a12;
  --muted:#6d5333;
  --line:rgba(87,58,20,.24);
  --line-strong:rgba(87,58,20,.48);
  --brick:#9a3f24;
  --teal:#12646c;
  --green:#53692f;
  --gold:#d99c18;
  --white:#fff9df;
  --ivory:#fff4c2;
  --shadow:0 24px 70px rgba(96,61,8,.18);
  font-family:"SF Pro Text","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--paper);color:var(--ink);line-height:1.48;letter-spacing:0}
body{
  background:
    radial-gradient(circle at 78% 8%,rgba(255,255,255,.42),transparent 26%),
    linear-gradient(135deg,rgba(255,255,255,.36),transparent 42%),
    repeating-linear-gradient(90deg,rgba(87,58,20,.024) 0 1px,transparent 1px 42px),
    var(--paper);
}
main,.site-footer{position:relative;z-index:1}
.page-ornament{position:absolute;left:0;right:0;top:78px;height:160px;overflow:hidden;pointer-events:none;opacity:.12;z-index:0}
.page-arch-motif{width:100%;height:160px;min-width:900px}
.page-arch-motif rect{fill:none;stroke:var(--brick);stroke-width:2}
.page-arch-motif .ashlar{stroke:none}
.page-arch-motif pattern path{stroke:var(--brick);stroke-width:1;opacity:.4}
.page-arch-motif .arches path,.page-arch-motif .columns path{fill:none;stroke:var(--brick);stroke-width:5;stroke-linecap:square}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.typo,.panel p,.card p,.feature p,.source-box p,.site-footer p,.copyright-box p{
  text-align:justify;
  text-align-last:start;
  text-justify:inter-character;
  -webkit-hyphens:auto;
  hyphens:auto;
  hyphenate-character:"-";
  overflow-wrap:break-word;
  word-break:normal;
}
h1,h2,h3,.brand,.button,.topbar nav a,.term-chip,.fact,.stat{
  text-align:start;
  -webkit-hyphens:none;
  hyphens:none;
}
.wechat-share-thumb{position:absolute;width:1px;height:1px;opacity:.01;pointer-events:none}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(18px,4vw,48px);border-bottom:2px solid rgba(87,58,20,.26);background:rgba(255,231,142,.92);backdrop-filter:blur(16px);overflow:hidden}
.topbar::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;pointer-events:none;opacity:.28;background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(154,63,36,.72) 18px 21px,transparent 21px 40px)}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--ink);font-weight:950;background:var(--white);box-shadow:5px 5px 0 rgba(154,63,36,.22)}
.brand strong{display:block;font-size:15px;line-height:1.2}
.brand em{display:block;color:var(--muted);font-style:normal;font-size:12px}
.topbar nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.topbar nav a,.button,.chip,button{border:1px solid var(--line-strong);background:var(--white);padding:8px 12px;border-radius:4px;font-weight:800;font-size:13px;cursor:pointer;box-shadow:3px 3px 0 rgba(154,63,36,.14)}
.topbar nav a:hover,.button:hover,.chip:hover,button:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-1px)}
.hero{min-height:70vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:40px;align-items:center;padding:68px clamp(18px,5vw,70px) 44px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--brick);font-weight:950}
.hero h1{font-size:clamp(48px,8.5vw,104px);line-height:.98;margin:10px 0 18px;max-width:9ch;text-shadow:5px 5px 0 rgba(255,255,255,.46)}
.hero h1.title-lock{max-width:none;margin:8px 0 8px}
.title-heading{display:flex;align-items:flex-start;gap:13px;min-width:0}
.title-mark{display:grid;place-items:center;flex:0 0 auto;width:48px;height:48px;margin-top:6px;border:2px solid var(--line-strong);background:#fff1ac;box-shadow:5px 5px 0 rgba(154,63,36,.14);font-size:24px}
.title-lock{word-break:keep-all;overflow-wrap:normal;line-break:strict;text-wrap:balance}
.title-lock span{display:block;white-space:nowrap}
.title-subtitle{margin:4px 0 0;color:var(--teal)!important;font-size:clamp(14px,1.8vw,18px);font-weight:850;letter-spacing:0}
.title-meta{margin:8px 0 0;color:#4e3924!important;font-size:15px}
.hero p{font-size:18px;color:#4e3924;max-width:62ch}
.hero-panel{position:relative;background:var(--white);border:2px solid var(--line-strong);box-shadow:var(--shadow);padding:20px}
.hero-panel::before{content:"";position:absolute;inset:8px;pointer-events:none;border:1px solid rgba(154,63,36,.38)}
.hero-panel img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line)}
.hero-art-strip{margin-top:16px;border:1px solid var(--line-strong);background:rgba(255,249,223,.66);padding:8px}
.hero-art-strip svg{width:100%;height:90px}.hero-art-strip svg rect,.hero-art-strip svg path{stroke:var(--brick);fill:none}.hero-art-strip .ashlar{stroke:none}.hero-art-strip pattern path{stroke:var(--brick);opacity:.32}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.stat{border:1px solid var(--line);padding:10px;background:#fff7cc}
.stat strong{display:block;font-size:26px}
.section{padding:30px clamp(18px,5vw,70px)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px}
.section h2,.page-title h1{font-size:clamp(30px,4.4vw,58px);line-height:1.04;margin:0}
.page-title h1.title-lock{font-size:clamp(30px,4.1vw,56px)}
.section p,.page-title p{color:#4e3924}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.search{min-width:min(440px,100%);border:1px solid var(--line-strong);background:var(--white);padding:12px 14px;border-radius:4px;font:inherit}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.card{background:rgba(255,249,223,.94);border:1px solid var(--line-strong);padding:16px;box-shadow:7px 7px 0 rgba(154,63,36,.12);min-height:156px}
.card:hover{transform:translateY(-2px);transition:.18s ease;box-shadow:9px 9px 0 rgba(18,100,108,.16)}
.card small{color:var(--brick);font-weight:900}
.card .emoji{display:inline-grid;place-items:center;width:34px;height:34px;margin-bottom:8px;border:1px solid var(--line-strong);background:#fff1ac;font-size:18px;box-shadow:3px 3px 0 rgba(154,63,36,.12)}
.card h3{font-size:22px;line-height:1.14;margin:7px 0}
.card p{color:#563d25;margin:0}
.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.timeline a{border-left:7px solid var(--teal)}
.page-title{padding:42px clamp(18px,5vw,70px) 18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}
.crumb{font-size:13px;color:var(--muted);font-weight:900}
.style-banner{margin:0 clamp(18px,5vw,70px) 18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.52fr);gap:18px;align-items:stretch}
.banner-card{position:relative;overflow:hidden;background:rgba(255,249,223,.74);border:1px solid var(--line-strong);box-shadow:7px 7px 0 rgba(154,63,36,.12);padding:14px}
.banner-card::after{content:"";position:absolute;inset:auto 0 0 0;height:16px;background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(154,63,36,.35) 18px 21px,transparent 21px 40px)}
.banner-card strong{display:block;font-size:18px;margin-bottom:6px}.banner-card p{margin:0}
.banner-card > .era-arch-motif{width:100%;height:96px;margin-bottom:8px}.banner-card > .era-arch-motif rect,.banner-card > .era-arch-motif path{stroke:var(--brick);fill:none}.banner-card > .era-arch-motif .ashlar{stroke:none}.banner-card > .era-arch-motif pattern path{stroke:var(--brick);opacity:.28}
.concept-diagram{width:100%;height:auto;min-height:170px}
.concept-diagram rect{fill:#fff4be;stroke:var(--line-strong);stroke-width:2}
.concept-diagram .main-node rect{fill:#fff0a3}.concept-diagram .result-node rect{fill:#ffe391}
.concept-diagram text{font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;fill:var(--ink);font-weight:850;font-size:18px}
.concept-diagram .diagram-line{fill:none;stroke:var(--teal);stroke-width:3}.concept-diagram marker path{fill:var(--teal)}
.style-symbol{display:flex;align-items:center;gap:12px}
.style-symbol .big-emoji{display:grid;place-items:center;width:70px;height:70px;border:2px solid var(--line-strong);background:#fff1ac;font-size:34px;box-shadow:5px 5px 0 rgba(18,100,108,.14)}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;padding:0 clamp(18px,5vw,70px) 42px}
.main-article{min-width:0}.sidebox{position:sticky;top:86px;align-self:start;background:var(--white);border:1px solid var(--line-strong);box-shadow:7px 7px 0 rgba(154,63,36,.12);padding:16px}
.style-board{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:18px;padding:0 clamp(18px,5vw,70px) 42px}
.panel{background:rgba(255,249,223,.94);border:1px solid var(--line-strong);box-shadow:7px 7px 0 rgba(154,63,36,.12);padding:16px;min-width:0}
.panel h2,.panel h3{margin:0 0 10px;line-height:1.12}
.compact-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:12px}
.fact-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.fact{background:#fff1ac;border:1px solid var(--line);padding:10px}
.fact span{display:block;color:var(--muted);font-size:12px;font-weight:900}.fact strong{font-size:15px}
.feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.feature{border:1px solid var(--line);background:#fff7c8;padding:10px}
.feature-card-head{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:8px;align-items:center}
.feature-card-head svg{grid-row:1 / span 2;width:34px;height:34px;stroke:var(--teal);fill:none;stroke-width:3}
.feature strong{display:block;margin-bottom:2px;font-size:14px;line-height:1.22}
.feature em,.mini-diagram em,.feature-source{display:block;color:var(--teal);font-style:normal;font-size:11px;font-weight:850;line-height:1.25}
.feature-source{margin:0 0 8px;color:var(--muted)}
.feature-copy,.reading-copy{
  margin:8px 0 0;
  color:#4f3924;
  font-size:13px;
  line-height:1.58;
  text-align:justify;
  text-align-last:start;
  text-justify:inter-character;
  -webkit-hyphens:auto;
  hyphens:auto;
  overflow-wrap:break-word;
}
.reading-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:10px 0 14px}
.reading-card{border:1px solid var(--line);background:#fff8d7;padding:11px}
.reading-card h3{font-size:17px;margin:0 0 6px}
.reading-card p{margin:0;color:#4f3924}
.source-index{border:1px solid var(--line);background:#fff7c8;padding:12px;margin:12px 0}
.source-index-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.source-index-head h2{margin:0}.source-index-head span{color:var(--brick);font-weight:900}
.source-index-table{width:100%;border-collapse:collapse;background:#fffbe2;font-size:13px;margin:8px 0}
.source-index-table th,.source-index-table td{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}
.source-index-table th{width:120px;color:var(--teal)}
.source-index-table td:last-child{width:110px;color:var(--muted);font-weight:850}
.source-phrase-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;list-style:none;margin:10px 0;padding:0}
.source-phrase-list li{border:1px solid rgba(18,100,108,.28);background:#fff1ac;padding:8px}
.source-phrase-list span{display:block;font-weight:900;line-height:1.18}
.source-phrase-list em{display:block;color:var(--teal);font-style:normal;font-size:12px;font-weight:850;line-height:1.25;margin-top:3px}
.source-policy{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.term-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.term-chip{display:inline-flex;align-items:baseline;gap:6px;border:1px solid var(--line-strong);background:#fff1ac;padding:7px 9px;border-radius:999px;font-weight:850}
.term-chip em{font-style:normal;color:var(--teal);font-size:12px}
.term-table{width:100%;border-collapse:collapse;background:var(--white);margin:12px 0;font-size:14px}
.term-table th,.term-table td{border:1px solid var(--line);padding:8px;text-align:left}
.lab{background:#23190f;color:#fff8df;padding:14px;margin:12px 0;border:2px solid #6f421f}
.lab h2,.lab h3{color:#fff;margin-top:0}
.lab button{background:#fff1ac;color:#22180e;border-color:#fff1ac}
.answer{display:none;margin-top:10px;padding:10px;background:#3b2818;border-left:4px solid var(--gold)}
.answer.is-open{display:block}
.visual-stack{display:grid;gap:12px}
.figure-ribbon{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--brick);font-weight:900}.figure-ribbon span{font-size:20px}
.viewer{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px}
.viewer-main{background:var(--white);border:1px solid var(--line);padding:8px;min-height:360px;display:grid;place-items:center}
.viewer-main img{max-height:62vh;object-fit:contain}
.thumbs{display:grid;gap:6px;align-content:start;max-height:62vh;overflow:auto}
.thumbs button{padding:3px;border-radius:4px;background:#fff}
.thumbs img{height:68px;width:100%;object-fit:cover}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.figure{background:var(--white);border:1px solid var(--line);padding:7px}
.figure img{width:100%;height:150px;object-fit:contain;background:#f4eebc}
.figure figcaption{font-size:11px;color:var(--muted);margin-top:5px}
.source-box{max-height:250px;overflow:auto;border:1px solid var(--line);background:#fff7c8;padding:12px;font-size:14px}
.mini-diagram-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
.mini-diagram{border:1px solid var(--line);background:#fff2ac;padding:9px;text-align:center;font-weight:850}.mini-diagram svg{width:100%;height:42px}.mini-diagram path,.mini-diagram line,.mini-diagram circle,.mini-diagram rect,.mini-diagram ellipse,.mini-diagram polyline,.mini-diagram polygon{stroke:var(--teal);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.period-nav{display:flex;justify-content:space-between;gap:12px;margin-top:14px}
.site-footer{border-top:2px solid var(--line-strong);padding:26px clamp(18px,5vw,70px);color:var(--muted);font-size:13px;background:rgba(255,238,164,.7)}
.copyright-box{background:#281b10;color:#fff;padding:18px;border-left:8px solid var(--brick);max-width:980px}
.copyright-box p{color:#fff4c9}.hidden{display:none!important}
@media (max-width:980px){.hero,.style-board,.page-title,.content-layout,.style-banner{grid-template-columns:1fr}.hero{min-height:auto;padding-top:34px}.viewer{grid-template-columns:1fr}.thumbs{grid-template-columns:repeat(4,1fr);max-height:none}.stats,.fact-strip{grid-template-columns:repeat(2,1fr)}.topbar{align-items:flex-start;flex-direction:column}.hero h1{max-width:100%;font-size:50px}.sidebox{position:static}}
@media (max-width:620px){.compact-grid,.feature-list,.fact-strip,.mini-diagram-row{grid-template-columns:1fr}.figure img{height:160px}.page-title{padding-top:30px}.thumbs{grid-template-columns:repeat(3,1fr)}.page-ornament{display:none}.title-mark{width:40px;height:40px;font-size:20px}.hero h1.title-lock{font-size:clamp(48px,15vw,64px)}.page-title h1.title-lock{font-size:clamp(30px,8vw,40px)}}
