:root{--ink:#1a211e;--ink-soft:#3a4540;--mist:#dfe8e3;--paper:#f3f6f4;--jade:#2f5d4e;--jade-deep:#1e3d34;--dawn-top:#c5d4ce;--dawn-mid:#e7eeea;--dawn-bottom:#f7f9f8;--line:#1a211e1f;--font-brand:"ZCOOL XiaoWei", "Noto Serif SC", serif;--font-serif:"Noto Serif SC", "Songti SC", serif;--font-sans:"Noto Sans SC", "PingFang SC", sans-serif;--max:72rem;--content:42rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--font-serif);background:radial-gradient(1200px 600px at 80% -10%, #2f5d4e1f, transparent 60%), linear-gradient(180deg, var(--dawn-top) 0%, var(--dawn-mid) 28%, var(--dawn-bottom) 100%);min-height:100vh;margin:0;font-size:1.05rem;line-height:1.85}a{color:var(--jade-deep);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:var(--jade)}img{max-width:100%;display:block}.wrap{width:min(100% - 2rem, var(--max));margin-inline:auto}.content-width{width:min(100% - 2rem, var(--content));margin-inline:auto}.site-header{z-index:20;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#f3f6f4d1;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:3.75rem;display:flex}.brand{font-family:var(--font-brand);letter-spacing:.14em;color:var(--ink);white-space:nowrap;font-size:clamp(1.35rem,2.1vw,1.75rem);text-decoration:none}.brand:hover{color:var(--jade-deep)}.nav{font-family:var(--font-sans);flex-wrap:wrap;gap:.35rem 1.1rem;font-size:.95rem;display:flex}.nav a{color:var(--ink-soft);text-decoration:none;position:relative}.nav a:after{content:"";background:var(--jade);transform-origin:0;width:100%;height:1px;transition:transform .28s;position:absolute;bottom:-.2em;left:0;transform:scaleX(0)}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1)}.nav a[aria-current=page]{color:var(--jade-deep)}.site-footer{border-top:1px solid var(--line);font-family:var(--font-sans);color:var(--ink-soft);margin-top:5rem;padding:2.5rem 0 3rem;font-size:.88rem}.site-footer p{margin:.35rem 0}.hero{isolation:isolate;align-items:end;min-height:min(92vh,52rem);display:grid;position:relative;overflow:hidden}.hero__bg{z-index:-1;background:linear-gradient(#1a211e2e 0%,#1a211e73 55%,#1a211eb8 100%),radial-gradient(80% 50% at 50% 20%,#dfe8e359,#0000 70%),url(/hero-mist.svg) 50%/cover no-repeat,linear-gradient(160deg,#6f8a7f 0%,#2b4038 48%,#1a211e 100%);animation:18s ease-in-out infinite alternate mist-drift;position:absolute;inset:0}@keyframes mist-drift{0%{transform:scale(1.02)translateY(0)}to{transform:scale(1.06)translateY(-1.2%)}}.hero__content{color:#f4f7f5;width:min(100% - 2rem,40rem);margin:0 auto 12vh;animation:.9s both rise}@keyframes rise{0%{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:translateY(0)}}.hero__brand{font-family:var(--font-brand);letter-spacing:.16em;margin:0 0 .6rem;font-size:clamp(2.4rem,7vw,4.4rem);line-height:1.15}.module-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.module-list li{border-bottom:1px solid var(--line)}.module-list a{color:inherit;grid-template-columns:3.2rem 1fr;gap:.85rem 1.1rem;padding:1.35rem .2rem;text-decoration:none;transition:background .2s;display:grid}.module-list a:hover{background:#2f5d4e0d}.module-list__num{font-family:var(--font-sans);color:var(--jade);padding-top:.35rem;font-size:.85rem}.module-list__title{margin:0 0 .3rem;font-size:1.25rem;font-weight:500}.module-list__meta{font-family:var(--font-sans);color:var(--jade);letter-spacing:.06em;margin:0 0 .35rem;font-size:.82rem}.module-list li:not(.is-open) .module-list__meta{color:var(--ink-soft)}.module-list__summary{color:var(--ink-soft);margin:0;font-size:.95rem}.coming-box{border-top:1px solid var(--line);padding:1.5rem 0 2rem}.coming-box__label{font-family:var(--font-sans);letter-spacing:.12em;color:var(--jade);margin:0 0 .75rem;font-size:.82rem}.placeholder-row{color:var(--ink-soft);grid-template-columns:3.2rem 1fr;gap:.85rem 1.1rem;padding:1.2rem .2rem;display:grid}.hero__title{font-family:var(--font-serif);letter-spacing:.06em;margin:0 0 .85rem;font-size:clamp(1.15rem,2.4vw,1.45rem);font-weight:500}.hero__lead{color:#f4f7f5e0;max-width:28rem;margin:0 0 1.75rem;font-size:1rem}.btn{font-family:var(--font-sans);letter-spacing:.04em;color:#f4f7f5;background:#ffffff0f;border:1px solid #f4f7f58c;align-items:center;gap:.5rem;padding:.85rem 1.35rem;font-size:.95rem;text-decoration:none;transition:background .25s,border-color .25s,transform .25s;display:inline-flex}.btn:hover{color:#fff;background:#ffffff24;border-color:#f4f7f5;transform:translateY(-1px)}.btn--solid{background:var(--jade);border-color:var(--jade);color:#f4f7f5}.btn--solid:hover{background:var(--jade-deep);border-color:var(--jade-deep);color:#fff}.section{padding:4.5rem 0 1rem}.section__head{margin-bottom:2rem}.section__head h2{font-family:var(--font-brand);letter-spacing:.1em;margin:0 0 .6rem;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:400}.section__head p{color:var(--ink-soft);max-width:36rem;margin:0}.lesson-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.lesson-list li{border-bottom:1px solid var(--line)}.lesson-list a{color:inherit;grid-template-columns:3.2rem 1fr;gap:.85rem 1.1rem;padding:1.2rem .2rem;text-decoration:none;transition:background .2s;display:grid}.lesson-list a:hover{background:#2f5d4e0d}.lesson-list__num{font-family:var(--font-sans);color:var(--jade);padding-top:.25rem;font-size:.85rem}.lesson-list__title{margin:0 0 .25rem;font-size:1.15rem}.lesson-list__meta{font-family:var(--font-sans);color:var(--ink-soft);margin:0 0 .35rem;font-size:.82rem}.lesson-list__summary{color:var(--ink-soft);margin:0;font-size:.95rem}.page-hero{padding:3.5rem 0 1.5rem;animation:.7s both rise}.page-hero h1{font-family:var(--font-brand);letter-spacing:.1em;margin:0 0 .75rem;font-size:clamp(2rem,4vw,2.8rem);font-weight:400}.page-hero p{color:var(--ink-soft);max-width:38rem;margin:0}.prose{font-size:1.08rem}.prose p{margin:0 0 1.15rem}.prose ul{padding-left:1.2rem}.audio-box{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff59;margin:1.75rem 0 2.25rem;padding:1.1rem 1.2rem}.audio-box__label{font-family:var(--font-sans);color:var(--ink-soft);letter-spacing:.06em;margin:0 0 .65rem;font-size:.82rem}.audio-box audio{width:100%}.audio-box__empty{font-family:var(--font-sans);color:var(--ink-soft);margin:0;font-size:.9rem}.lesson-nav{border-top:1px solid var(--line);font-family:var(--font-sans);justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;font-size:.92rem;display:flex}.lesson-nav a{max-width:45%;text-decoration:none}.lesson-nav span{color:var(--ink-soft);margin-bottom:.2rem;font-size:.78rem;display:block}.group-label{font-family:var(--font-sans);letter-spacing:.14em;color:var(--jade);margin:2.5rem 0 .4rem;font-size:.8rem}.download-table{border-collapse:collapse;width:100%;font-family:var(--font-sans);font-size:.95rem}.download-table th,.download-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.95rem .4rem}.download-table th{color:var(--ink-soft);letter-spacing:.06em;font-size:.82rem;font-weight:500}.note{color:var(--ink-soft);margin-top:1.5rem;padding:1rem 0;font-size:.92rem}@media (width<=720px){.nav{gap:.3rem .85rem;font-size:.88rem}.lesson-list a{grid-template-columns:2.4rem 1fr}.hero{min-height:88vh}}
