
:root{--bg:#f6f4ef;--paper:#fffaf0;--ink:#1d1d1f;--muted:#6b6258;--line:#e6dccb;--gold:#b8872f;--blue:#193b6a;--card:#ffffffcc;--shadow:0 18px 55px rgba(46,34,20,.11);--accent:#b8872f;--soft:#fff4dd}
body.chapter-01{--accent:#b8872f;--soft:#fff4dd}
body.chapter-02{--accent:#6f7d30;--soft:#eef2d7}
body.chapter-03{--accent:#2d8a7e;--soft:#dff1ec}
body.chapter-04{--accent:#315f9c;--soft:#e4ecfb}
body.chapter-05{--accent:#8d55a0;--soft:#f2e1f3}
body.chapter-06{--accent:#b85f42;--soft:#f7e4da}
body.chapter-07{--accent:#4f8445;--soft:#e6f1e2}
body.chapter-08{--accent:#99601f;--soft:#f4e5cf}
body.chapter-09{--accent:#586a2a;--soft:#e8ecd5}
body.chapter-10{--accent:#236f73;--soft:#dcecee}
body.chapter-11{--accent:#4f5ec6;--soft:#e7e9fb}
body.chapter-12{--accent:#a74774;--soft:#f5dfeb}
body.chapter-13{--accent:#a56f2c;--soft:#f4e6d3}
body.chapter-14{--accent:#62823a;--soft:#e7efdc}
body.chapter-15{--accent:#287f63;--soft:#dcefe7}
body.chapter-16{--accent:#2f78a8;--soft:#deedf5}
body.chapter-17{--accent:#7a57b8;--soft:#eee4f8}
body.chapter-18{--accent:#b4523e;--soft:#f4e0da}
body.chapter-19{--accent:#8c6b1f;--soft:#f1e7cd}
body.chapter-20{--accent:#3f8552;--soft:#e0efdf}
body.chapter-21{--accent:#1f7b8a;--soft:#dceff1}
body.chapter-22{--accent:#4169a8;--soft:#e3ebf6}
body.chapter-23{--accent:#8d4d8f;--soft:#f1e1f1}
body.chapter-24{--accent:#bd6540;--soft:#f5e2d7}
body.chapter-25{--accent:#6f7d30;--soft:#eaf0d6}
body.chapter-26{--accent:#2c8a70;--soft:#dff0e9}
body.chapter-27{--accent:#336fa3;--soft:#e0edf6}
body.chapter-28{--accent:#6b5bc2;--soft:#e9e6fa}
body.chapter-29{--accent:#a64d68;--soft:#f3e0e8}
body.chapter-30{--accent:#b07728;--soft:#f5e8d2}
body.chapter-31{--accent:#4f8a45;--soft:#e4f1e1}
body.chapter-32{--accent:#237a68;--soft:#dceee7}
body.chapter-33{--accent:#3b6fd8;--soft:#e4ecfb}
body.chapter-34{--accent:#8055aa;--soft:#ede3f6}
body.chapter-35{--accent:#b85f42;--soft:#f4e2d9}
body.chapter-36{--accent:#8a5a2b;--soft:#f2e4d2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0%,#fff7df 0,#f6f4ef 28%,#eef3f8 100%);color:var(--ink);font:17px/1.82 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}.reading-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--accent),var(--gold),#2d8a7e);z-index:100}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,250,240,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 28px}.brand{font-weight:850;color:var(--blue);text-decoration:none}.brand:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--blue));margin-right:10px}nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}nav a{color:var(--muted);text-decoration:none;font-size:.92rem;font-weight:750}.theme-switcher{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:rgba(255,250,240,.72)}.theme-switcher button{border:0;border-radius:999px;padding:6px 10px;background:transparent;color:var(--muted);font-size:13px;font-weight:850;cursor:pointer}.theme-switcher button.active{background:var(--blue);color:#fff}.hero{max-width:1180px;margin:0 auto;padding:72px 22px 42px}.hero-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#102846,#24507e 68%,#6d4926);color:#fff;border-radius:28px;padding:54px 48px;box-shadow:var(--shadow)}.hero-card:after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;background:radial-gradient(circle,rgba(255,224,155,.26),transparent 60%)}.eyebrow{position:relative;color:#ffe09b;font-weight:850;letter-spacing:.1em;font-size:.76rem;text-transform:uppercase}.hero h1{position:relative;font-size:clamp(2.2rem,5vw,4rem);line-height:1.08;margin:.25em 0 .18em;letter-spacing:-.04em}.lead{position:relative;font-size:clamp(1.05rem,2vw,1.32rem);color:rgba(255,255,255,.82);max-width:780px}.lead.small{color:var(--muted)}.button{position:relative;display:inline-block;padding:12px 18px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid #fff;margin:14px 8px 0 0;background:#fff;color:var(--blue)}.button.secondary{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.35)}.cards{max-width:1180px;margin:0 auto 42px;padding:0 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cards div,.toc-part{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 8px 30px rgba(30,30,30,.05)}.cards div{position:relative;overflow:hidden}.cards div:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--gold),#2d8a7e,var(--blue));opacity:.7}.cards h3,.toc-part h2{margin:0 0 8px;color:var(--blue)}.cards p{margin:0;color:var(--muted)}.toc-page{max-width:1120px;margin:0 auto;padding:48px 22px 72px}.toc-page h1{font-size:clamp(2rem,4vw,3rem);line-height:1.12;color:var(--blue);margin:0 0 12px}.toc-part{margin:18px 0;padding:0;overflow:hidden}.toc-part h2{padding:18px 22px;background:linear-gradient(90deg,#fff7df,#fffaf0);border-bottom:1px solid var(--line)}.toc-link{display:block;text-decoration:none;color:inherit;background:#fff;border-bottom:1px solid var(--line);padding:13px 22px}.toc-link:hover{background:#fff8e8;color:var(--blue)}.layout{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;padding:24px 20px 70px}.sidebar{position:sticky;top:76px;height:calc(100vh - 92px);overflow:auto;background:#fff9;border:1px solid var(--line);border-radius:18px;padding:16px}.sidebar input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:14px;margin:0 0 14px;background:#fff}.side-part{border-top:1px solid var(--line);padding-top:10px;margin-top:10px}.side-part:first-child{border-top:0;margin-top:0;padding-top:0}.side-part-title{font-weight:850;color:var(--gold);font-size:.82rem;letter-spacing:.04em;margin:4px 0 6px}.toc-item{display:block;color:var(--muted);text-decoration:none;padding:7px 8px;border-radius:10px;font-size:.88rem;line-height:1.5;border-left:3px solid transparent}.toc-item.active,.toc-item:hover{background:#f1e7d4;color:var(--blue)}.toc-item.active{border-left-color:var(--accent);font-weight:850}.article{position:relative;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);min-width:0;max-width:900px;overflow:hidden}.article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--accent),transparent 52%,var(--accent));opacity:.6}.chapter-hero{background:linear-gradient(135deg,var(--soft),#fffaf0 72%);border-bottom:1px solid var(--line);padding:42px 46px 34px}.chapter-no{display:inline-flex;color:#fff;background:var(--accent);font-weight:850;border-radius:999px;padding:7px 13px;font-size:13px;letter-spacing:.04em}.chapter-hero h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.18;color:var(--blue);margin:18px 0 10px}.chapter-hero p{margin:0;color:var(--muted);font-weight:750}.article-body{padding:42px 52px}.article-body h2:first-child{display:none}.article h2{margin-top:2.2em;color:color-mix(in srgb,var(--accent),var(--blue) 62%);border-top:1px solid var(--line);padding-top:1.1em}.article h3{color:var(--blue);background:linear-gradient(90deg,var(--soft),transparent 82%);border-left:4px solid var(--accent);padding:8px 0 8px 12px;border-radius:0 14px 14px 0}.article p{margin:0 0 18px;color:#27323f}.article-body>p:first-of-type{font-size:18.5px;line-height:1.76;background:linear-gradient(90deg,var(--soft),#fffaf0);border:1px solid color-mix(in srgb,var(--accent),transparent 70%);border-radius:16px;padding:16px 18px}.article strong{color:var(--accent);font-weight:900}.article ul,.article ol{padding-left:1.35em;margin:18px 0 24px}.article li{margin:.35em 0}.article li::marker{color:var(--accent);font-weight:850}.article blockquote{margin:22px 0;padding:18px 22px;border-left:5px solid var(--accent);background:linear-gradient(90deg,var(--soft),#fffaf0);border-radius:0 14px 14px 0;font-weight:650;color:var(--blue)}.article code{background:#f4eadb;border:1px solid #e6d8c4;border-radius:6px;padding:2px 6px}.article-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;margin:0 52px 36px;border-top:1px solid var(--line);padding-top:20px}.article-nav a{color:var(--blue);text-decoration:none;font-weight:750;background:#fff8e8;border:1px solid var(--line);border-radius:16px;padding:13px 15px}.nav-prev,.nav-next{display:flex;flex-direction:column}.nav-next{text-align:right;align-items:flex-end}.nav-kicker{font-size:12px;color:var(--accent);font-weight:850}.nav-title{font-size:14px;line-height:1.45}.read-tools{position:fixed;right:18px;bottom:18px;z-index:40;display:flex;flex-direction:column;gap:10px}.read-tools button{border:1px solid var(--line);background:rgba(255,250,240,.84);backdrop-filter:blur(14px);color:var(--blue);border-radius:999px;padding:10px 13px;font-weight:850;box-shadow:0 12px 35px rgba(46,34,20,.10);cursor:pointer}body.focus-reading .sidebar{opacity:.25;filter:saturate(.6)}body.focus-reading .sidebar:hover{opacity:1;filter:none}.article.compact .article-body{font-size:16px;line-height:1.7}.article.wide{max-width:1000px}.article.wide .article-body{padding-left:70px;padding-right:70px}
body.theme-gray{--bg:#e7e7e4;--paper:#f3f3f0;--ink:#111;--muted:#555;--line:#c9c9c4;--blue:#111;background:#e7e7e4;color:#111}body.theme-gray .site-header,body.theme-gray .sidebar,body.theme-gray .article,body.theme-gray .toc-part,body.theme-gray .cards div{background:rgba(243,243,240,.94);border-color:#c9c9c4;box-shadow:0 14px 38px rgba(0,0,0,.08)}body.theme-gray .chapter-hero,body.theme-gray .toc-part h2{background:linear-gradient(135deg,#eeeeea,#f8f8f5)}body.theme-gray .article p,body.theme-gray .article li{color:#111}body.theme-gray .article-body>p:first-of-type,body.theme-gray .article blockquote{background:#eeeeea;border-color:#c9c9c4}
body.theme-dark{--bg:#0f1115;--paper:#171a21;--ink:#f3f4f6;--muted:#a5adba;--line:#303642;--blue:#f3f4f6;background:radial-gradient(circle at 20% 0%,rgba(184,131,59,.12),transparent 32%),#0f1115;color:#f3f4f6}body.theme-dark .site-header{background:rgba(18,21,27,.84);border-bottom-color:#303642}body.theme-dark .brand,body.theme-dark nav a,body.theme-dark .article,body.theme-dark .article h1,body.theme-dark .article h2,body.theme-dark .article h3,body.theme-dark .article p,body.theme-dark .article li,body.theme-dark .toc-link,body.theme-dark .toc-page h1,body.theme-dark .cards h3,body.theme-dark .nav-title{color:#f3f4f6}body.theme-dark .sidebar,body.theme-dark .article,body.theme-dark .toc-part,body.theme-dark .cards div{background:rgba(23,26,33,.96);border-color:#303642;box-shadow:0 20px 60px rgba(0,0,0,.32)}body.theme-dark .chapter-hero,body.theme-dark .toc-part h2{background:linear-gradient(135deg,#1e2430,#151820)}body.theme-dark .lead.small,body.theme-dark .cards p,body.theme-dark .chapter-hero p{color:#a5adba}body.theme-dark .article-body>p:first-of-type,body.theme-dark .article blockquote{background:linear-gradient(90deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border-color:#3a4250;color:#f3f4f6}body.theme-dark .sidebar input{background:#11141a;color:#f3f4f6;border-color:#303642}body.theme-dark .theme-switcher{background:rgba(23,26,33,.88);border-color:#303642}body.theme-dark .theme-switcher button{color:#d1d5db}body.theme-dark .theme-switcher button.active{background:#f3f4f6;color:#111827}body.theme-dark .read-tools button{background:rgba(23,26,33,.88);border-color:#303642;color:#f3f4f6}body.theme-dark .button{background:#f3f4f6;color:#111827}body.theme-dark .button.secondary{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.22)}
@media(max-width:900px){body{font-size:16.5px}.site-header{padding:10px 16px;align-items:flex-start;gap:10px}.hero{padding:36px 18px}.hero-card{padding:38px 26px}.cards{grid-template-columns:1fr}.layout{display:block;padding:18px}.sidebar{position:relative;top:auto;height:auto;max-height:390px;margin-bottom:18px}.article{max-width:none}.chapter-hero{padding:32px 24px}.article-body{padding:28px 24px}.article-nav{margin:0 24px 30px;grid-template-columns:1fr}.nav-next{text-align:left;align-items:flex-start}.read-tools{right:12px;bottom:12px;flex-direction:row}.read-tools button{padding:9px 11px;font-size:13px}body.focus-reading .sidebar{opacity:1;filter:none}.article.wide .article-body{padding-left:24px;padding-right:24px}.theme-switcher button{font-size:12px;padding:5px 7px}}


/* v12 default homepage refinement */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) 360px;gap:22px;align-items:stretch}.hero-note{background:rgba(255,250,240,.9);border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 12px 38px rgba(46,34,20,.06);display:flex;flex-direction:column;justify-content:center}.hero-note small{color:var(--gold);font-weight:900;letter-spacing:.08em}.hero-note p{margin:12px 0 0;font-size:20px;line-height:1.72;color:var(--blue);font-weight:750}.home-section{max-width:1180px;margin:0 auto 72px;padding:0 22px}.section-head{margin:16px 0 20px}.eyebrow.dark{color:var(--gold);margin:0 0 8px}.section-head h2{font-size:34px;line-height:1.15;margin:0 0 8px;color:var(--blue);letter-spacing:-.025em}.section-head p{margin:0;color:var(--muted)}.part-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.part-card{display:grid;gap:6px;text-decoration:none;color:inherit;background:rgba(255,250,240,.86);border:1px solid var(--line);border-radius:20px;padding:18px 20px;box-shadow:0 8px 28px rgba(30,30,30,.045)}.part-card:hover{background:#fff8e8;border-color:color-mix(in srgb,var(--gold),var(--line) 45%)}.part-card small{color:var(--gold);font-weight:900}.part-card strong{color:var(--blue);font-size:18px}.part-card span{color:var(--muted);font-size:15px;line-height:1.55}body.theme-gray .hero-note,body.theme-gray .part-card{background:rgba(243,243,240,.94);border-color:#c9c9c4}body.theme-dark .hero-note,body.theme-dark .part-card{background:rgba(23,26,33,.96);border-color:#303642}body.theme-dark .hero-note p,body.theme-dark .section-head h2,body.theme-dark .part-card strong{color:#f3f4f6}body.theme-dark .part-card span,body.theme-dark .section-head p{color:#a5adba}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-note{padding:24px}.part-grid{grid-template-columns:1fr}.section-head h2{font-size:28px}}
