:root{--paper:#f8f6ee;--ink:#253e34;--muted:#70786b;--accent:#c64b32;--line:#d6d9cb;--soft:#eef0e5;--body-size:18px;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px;background:var(--paper)}body{margin:0;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:#f2d9a4;color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.skip-link{position:fixed;left:18px;top:-70px;z-index:100;background:var(--ink);color:white;padding:12px 18px}.skip-link:focus{top:16px}.reading-progress{position:fixed;top:0;height:3px;left:0;right:0;z-index:60;background:transparent}#progress-fill{height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .1s linear}
.cover{max-width:1120px;margin:0 auto;padding:48px 62px 32px}.cover-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;letter-spacing:1.8px;text-transform:uppercase}.cover-meta span:first-child{font-weight:600;color:var(--ink);letter-spacing:4px}.cover-title{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:39px 0 35px}.cover h1{font:600 clamp(68px,8vw,100px)/1.2 var(--serif);letter-spacing:4px;margin:0;white-space:nowrap}.title-dot{color:var(--accent);display:inline-block;transform:translateX(-7px)}.edition{color:var(--accent);font:400 82px/1 Georgia,serif;letter-spacing:-6px;position:relative}.edition span{display:block;font:12px/1 var(--sans);letter-spacing:3px;text-align:right;margin-top:8px;color:var(--muted)}.cover-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--ink);padding-top:18px}.cover-bottom p{font:17px/1.5 var(--serif);letter-spacing:2px;margin:0}.cover-bottom>span{font:13px/1.5 Georgia,serif;color:var(--muted);letter-spacing:1px}
.reading-layout{display:grid;grid-template-columns:174px minmax(0,680px);gap:70px;max-width:1120px;margin:26px auto 0;padding:0 62px 145px}.desktop-toc{position:sticky;top:49px;align-self:start;padding-top:15px}.toc-label{font-size:11px!important;letter-spacing:3px;color:var(--muted);margin-bottom:22px!important}.desktop-toc a{display:flex;gap:12px;font-size:13px;line-height:1.5;text-decoration:none;padding:10px 0;color:var(--muted);transition:color .15s}.desktop-toc a span{font:11px/1.8 Georgia,serif;color:#919a8b}.desktop-toc a:hover,.desktop-toc a[aria-current]{color:var(--accent)}.desktop-toc a[aria-current] span{color:var(--accent)}.toc-foot{display:block;border-top:1px solid var(--line);margin-top:25px;padding-top:18px;font:13px/1.8 var(--serif);letter-spacing:1px;color:var(--muted)}.article{min-width:0}
.article p{font-size:var(--body-size);line-height:2;margin:0 0 19px;overflow-wrap:break-word;text-align:justify}.article p:last-child{margin-bottom:0}.article strong{font-weight:650}.article h2{font:600 30px/1.45 var(--serif);letter-spacing:.5px;margin:0 0 25px}.article h3{font-size:17px;line-height:1.6;font-weight:600;margin:27px 0 10px}.section{padding:41px 0;border-bottom:1px solid var(--line);scroll-margin-top:32px}.section>h2:before{content:attr(data-number);display:none}.section:not(.section-note):before{content:attr(data-chapter);display:block;font:italic 14px/1.4 Georgia,serif;color:var(--accent);margin-bottom:13px}.opening{font-size:13px!important;line-height:1.85!important;color:var(--muted);border-left:2px solid #c2c9b6;padding:1px 0 1px 16px;margin:0 0 35px!important}.section-note{padding:0 0 38px}.section-note h2{font:600 13px/1.5 var(--sans);letter-spacing:2px;color:var(--accent);margin-bottom:19px}.section-note>p:first-of-type{font:600 30px/1.5 var(--serif);margin-bottom:24px}.reflection-body p{font-size:17px;line-height:2.1}.section-welcome h2{font-size:31px}.section-requirements{border-bottom:0;padding-bottom:34px}.requirement{padding:17px 21px;background:var(--soft);border-left:2px solid var(--ink);font-size:17px!important;line-height:1.9!important}.requirement strong{color:var(--accent)}
.question-section{padding:10px 0 42px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.question-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:23px}.small-label{font-size:13px;color:var(--muted)}.name-label{font:600 39px/1.2 Georgia,serif;color:var(--accent)}.thanks{font-size:12px;color:var(--muted);margin-left:auto}.question-art{margin:0 -23px 26px}.question-art a{display:block;transition:opacity .2s}.question-art a:hover{opacity:.96}.question-art img{display:block;width:100%;height:auto}.question-art figcaption{text-align:right;font-size:11px;letter-spacing:.5px;color:var(--muted);padding:10px 0 0}.question-transcript{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:25px}.question-transcript summary{min-height:46px;padding:13px 0;cursor:pointer;font-size:13px;color:var(--muted)}.question-transcript p{font-size:17px;line-height:1.95;margin:0!important;padding:0 0 18px}.introduction{background:#eaf0e3;padding:23px;border-top:2px solid var(--ink)}.intro-line{font-size:17px!important;line-height:1.65!important;text-align:left!important;margin-bottom:16px!important}.intro-line:last-child{margin-bottom:0!important}.copy-intro{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 23px;background:#eaf0e3;border:0;border-top:1px solid #d3ddc8;color:#536a47;font-size:12px;min-height:44px;margin-bottom:19px}.copy-intro:hover{background:#e1e9d8}.copy-intro span{font-size:20px}.deadline{font-size:13px!important;line-height:1.9!important;color:#825540}.section-coach h3{color:#596a82}.rule{border-left:2px solid #bbc8ae;padding-left:17px;margin-top:25px!important}.closing{font:500 23px/1.95 var(--serif)!important;border-top:1px solid var(--ink);margin-top:35px!important;padding-top:28px}.section-community{border-bottom:0;padding-bottom:15px}.article-footer{margin-top:40px;padding-top:26px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px}.article-footer>span{font:600 21px/1.4 var(--serif)}.article-footer p{font:11px/1.5 Georgia,serif!important;letter-spacing:1px;margin:0!important;color:var(--muted)}.article-footer a{margin-left:auto;font-size:12px;color:var(--muted);text-decoration:none;min-height:44px;display:flex;align-items:center}
.reading-tools{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;padding:6px;background:#faf9f3ee;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #daddce;border-radius:100px;box-shadow:0 6px 25px #273c3410;z-index:30;white-space:nowrap}.reading-tools button,.reading-tools a{min-height:42px;padding:0 19px;border:0;background:none;border-radius:50px;text-decoration:none;color:var(--ink);display:flex;justify-content:center;align-items:center;gap:7px;font-size:12px;transition:background .2s}.reading-tools button:hover,.reading-tools a:hover{background:#e8ecdf}.reading-tools button[aria-pressed=true]{background:#e4eada}.font-icon{font:italic 16px/1 Georgia,serif}.reading-tools a span{font-size:18px}.reading-tools #toc-open span{font-size:15px}
.toc-dialog{border:0;background:var(--paper);color:var(--ink);padding:27px;width:min(430px,calc(100vw - 32px));max-height:80dvh;border-radius:4px;box-shadow:0 20px 100px #122b3433}.toc-dialog::backdrop{background:#19382e66;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.dialog-head h2{font:600 24px/1.4 var(--serif);margin:0}.dialog-head button{width:44px;height:44px;font-size:27px;background:none;border:0;color:var(--muted)}.toc-dialog nav{display:grid;padding-top:13px}.toc-dialog a{display:flex;gap:19px;align-items:center;min-height:47px;text-decoration:none;font-size:16px}.toc-dialog a span{font:13px/1.5 Georgia,serif;color:var(--accent)}#toast{position:fixed;left:50%;bottom:100px;transform:translate(-50%,8px);background:var(--ink);color:white;padding:12px 18px;font-size:13px;border-radius:3px;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;white-space:nowrap}#toast.show{opacity:1;transform:translate(-50%,0)}html.large-type{--body-size:21px}.large-type .reflection-body p,.large-type .question-transcript p{font-size:20px}.large-type .intro-line{font-size:19px!important}
@media(min-width:1280px){.cover{padding-top:65px}.reading-layout{gap:84px}.article h2{font-size:33px}}
@media(max-width:900px){.cover{max-width:760px;padding:36px 35px 26px}.cover h1{font-size:70px}.edition{font-size:66px}.cover-title{padding:32px 0}.reading-layout{display:block;max-width:700px;padding:0 35px 135px;margin-top:22px}.desktop-toc{display:none}.question-art{margin-left:-18px;margin-right:-18px}}
@media(max-width:600px){:root{--body-size:17px}.cover{padding:28px 25px 23px}.cover-meta{font-size:10px;letter-spacing:1.5px}.cover-title{padding:30px 0 27px;gap:0}.cover h1{font-size:54px;letter-spacing:1px}.title-dot{display:none}.edition{font-size:55px;letter-spacing:-4px}.edition span{font-size:10px;letter-spacing:2px;margin-top:6px}.cover-bottom{padding-top:15px}.cover-bottom p{font-size:14px;letter-spacing:1px}.cover-bottom>span{font-size:11px;letter-spacing:.3px}.reading-layout{padding:0 25px 135px;margin-top:17px}.opening{font-size:12px!important;padding-left:13px;margin-bottom:31px!important}.article h2,.section-welcome h2{font-size:27px;line-height:1.45;margin-bottom:21px}.section{padding:32px 0}.section-note{padding-top:0;padding-bottom:31px}.section-note h2{font-size:12px;margin-bottom:18px;letter-spacing:1px}.section-note>p:first-of-type{font-size:27px;margin-bottom:21px}.reflection-body p{font-size:16px;line-height:2}.article p{line-height:1.95;margin-bottom:18px}.article h3{font-size:16px}.section:not(.section-note):before{font-size:12px;margin-bottom:12px}.section-requirements{padding-bottom:28px}.requirement{font-size:16px!important;padding:14px 17px}.question-section{padding:9px 0 32px}.question-heading{gap:9px;margin-bottom:17px}.small-label{font-size:11px}.name-label{font-size:34px}.thanks{font-size:11px}.question-art{margin:0 -15px 21px}.question-art figcaption{font-size:10px;padding-top:8px}.question-transcript{margin-bottom:22px}.question-transcript p{font-size:16px}.introduction{padding:20px 17px}.intro-line{font-size:16px!important}.copy-intro{padding-left:17px;padding-right:17px}.deadline{font-size:12px!important}.rule{padding-left:14px;margin-top:21px!important}.closing{font-size:21px!important;line-height:1.9!important;padding-top:25px;margin-top:29px!important}.article-footer{margin-top:29px;gap:14px}.article-footer>span{font-size:19px}.article-footer p{font-size:10px!important}.article-footer a{font-size:11px}.reading-tools{bottom:max(15px,env(safe-area-inset-bottom));padding:4px;border-radius:100px}.reading-tools button,.reading-tools a{font-size:12px;padding:0 17px;min-height:43px}.toc-dialog{margin:auto auto max(88px,calc(env(safe-area-inset-bottom) + 70px));width:calc(100% - 32px);padding:22px;border-radius:12px}.large-type .reflection-body p,.large-type .question-transcript p{font-size:19px}.large-type .requirement{font-size:19px!important}.large-type .intro-line{font-size:18px!important}#toast{bottom:90px}}
@media(max-width:359px){.cover,.reading-layout{padding-left:21px;padding-right:21px}.cover h1{font-size:47px}.edition{font-size:48px}.cover-bottom p{font-size:12px}.cover-bottom>span{font-size:10px}.question-heading{gap:7px}.small-label,.thanks{font-size:10px}.name-label{font-size:31px}.reading-tools button,.reading-tools a{padding:0 13px}.article-footer{gap:10px}.article-footer p{font-size:9px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.reading-tools,.reading-progress,.desktop-toc,.skip-link,.copy-intro,.question-transcript,.question-art figcaption,.article-footer a{display:none!important}.cover{padding:25px 30px}.reading-layout{display:block;margin:0;padding:0 30px}.cover-title{padding:20px 0}.section{break-inside:auto}.section h2,.section h3{break-after:avoid}.question-art{break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
