: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}.learn-page .learn-shell{width:min(100% - 2rem,52rem);margin-inline:auto}.learn-stage{grid-template-columns:4.25rem 1fr;align-items:start;gap:.85rem;margin-top:1.75rem;display:grid}.learn-stage--solo{grid-template-columns:1fr}.learn-rail{border:1px solid var(--line);color:#f4f7f5;background:linear-gradient(#2f5d4eeb,#1e3d34f5);border-radius:.85rem;flex-direction:column;gap:.35rem;padding:.55rem .35rem;display:flex;position:sticky;top:4.5rem}.learn-rail__title{text-align:center;font-family:var(--font-sans);letter-spacing:.14em;opacity:.75;margin:0 0 .25rem;font-size:.68rem}.learn-tab{width:100%;color:inherit;cursor:pointer;font-family:var(--font-sans);background:0 0;border:0;border-radius:.55rem 0 0 .55rem;justify-items:center;gap:.15rem;padding:.55rem .2rem;transition:background .2s,color .2s;display:grid}.learn-tab__icon{letter-spacing:.08em;font-size:.95rem;font-weight:600}.learn-tab__label{letter-spacing:.08em;font-size:.72rem}.learn-tab:hover:not(.is-disabled){background:#ffffff1a}.learn-tab.is-active{color:var(--jade-deep);background:#f3f6f4f5;box-shadow:4px 0 #f3f6f4f5}.learn-tab.is-disabled{opacity:.35;cursor:not-allowed}.learn-card{border:1px solid var(--line);background:#ffffffb8;border-radius:.85rem;min-height:16rem;padding:1.25rem 1.35rem 1.6rem}.learn-media-item+.learn-media-item{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.learn-video{aspect-ratio:16/9;background:#111;border-radius:.55rem;margin-top:.35rem;overflow:hidden}.learn-video video{width:100%;height:100%;max-height:none;display:block}.learn-audio{margin:.5rem 0 0}.learn-text-block+.learn-text-block{border-top:1px solid var(--line);margin-top:2.25rem;padding-top:1.5rem}.learn-text-block__title{font-family:var(--font-serif);letter-spacing:.04em;color:var(--ink);margin:0 0 1rem;font-size:1.2rem;font-weight:500}.learn-prose{color:var(--ink-soft);max-width:40rem;font-size:1.08rem;line-height:2}.learn-prose p{text-indent:2em;margin:0 0 1.25rem}.learn-prose p:first-child{text-indent:2em}.learn-listen-dock{z-index:5;border:1px solid var(--line);backdrop-filter:blur(8px);background:#f3f6f4f0;border-radius:.65rem;margin:-.25rem 0 1.25rem;padding:.85rem .9rem .7rem;position:sticky;top:3.9rem;box-shadow:0 8px 24px #1a211e0f}.learn-dock__row{flex-wrap:wrap;align-items:center;gap:.65rem .85rem;display:flex}.learn-dock__label,.learn-dock__pick{font-family:var(--font-sans);color:var(--ink-soft);letter-spacing:.06em;font-size:.82rem}.learn-dock__pick{align-items:center;gap:.4rem;display:inline-flex}.learn-dock__pick select{font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:.35rem;padding:.3rem .45rem}.learn-dock__player{flex:1;min-width:12rem}.learn-dock__player audio{vertical-align:middle;width:100%}.learn-dock__hint{font-family:var(--font-sans);color:var(--ink-soft);margin:.45rem 0 0;font-size:.78rem}.learn-text-flow{min-width:0}@media (width<=720px){.learn-stage{grid-template-columns:1fr;gap:.75rem}.learn-rail{border-radius:.75rem;flex-flow:wrap;align-items:center;gap:.35rem;padding:.45rem;position:static}.learn-rail__title{text-align:left;width:100%;margin:0 0 .15rem .25rem}.learn-tab{border-radius:.5rem;flex:1;min-width:4.5rem;padding:.45rem .35rem}.learn-tab.is-active{box-shadow:none}.learn-card{padding:1rem .95rem 1.25rem}.learn-listen-dock{top:3.5rem}}.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}}
