:root{--paper: #fbf8f3;--paper-2: #f2ede4;--card: #ffffff;--ink: #221f2b;--ink-2: #4a4556;--mute: #7c7688;--rule: #ddd5c8;--accent: #3b2f6b;--gold: #a8843a;--hue: var(--accent);--serif: "Noto Serif TC", "Songti TC", serif;--sans: "Noto Sans TC", system-ui, -apple-system, "PingFang TC", "Microsoft JhengHei", sans-serif;--en: "Cormorant Garamond", "Times New Roman", serif;--sym: "Noto Sans Symbols", "Segoe UI Symbol", "Apple Symbols", serif;--wrap: 1120px;--gutter: 16px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.9 var(--sans);overflow-x:hidden}img,svg{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--hue)}.skip{position:absolute;left:-999px;top:0}.skip:focus{left:8px;top:8px;background:var(--ink);color:#fff;padding:6px 12px;z-index:10}.tr-glyph,.bd-table li a span,.ll-sign span,.el-glyph,.column-kicker .glyph,.sc-glyph,.hub-glyph,.zodiac-strip a span,.hub-pager a{font-family:var(--sym);font-variant-emoji:text}.hub-pager a{font-family:var(--sym),var(--serif)}.serif-en{font-family:var(--en);font-style:italic;font-weight:500;letter-spacing:.02em}h1,h2,h3{font-family:var(--serif);font-weight:900;line-height:1.35;letter-spacing:.01em}.google-auto-placed{grid-column:1 / -1;width:100%;clear:both}.mast{border-bottom:3px double var(--ink);background:var(--paper)}.mast-strip{max-width:var(--wrap);margin:0 auto;padding:6px var(--gutter);display:flex;justify-content:space-between;font-size:14px;color:var(--mute);border-bottom:1px solid var(--rule)}.mast-inner{max-width:var(--wrap);margin:0 auto;padding:14px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.brand-mark{width:46px;height:46px;color:var(--accent);flex:none}.brand-text{display:flex;flex-direction:column;line-height:1.2}.brand-zh{font-family:var(--serif);font-weight:900;font-size:28px;letter-spacing:.12em}.brand-tag{font-size:13px;color:var(--mute);letter-spacing:.2em}.mast-nav{display:flex;gap:4px 20px;flex-wrap:wrap;font-size:15px}.mast-nav a{color:var(--ink-2);text-decoration:none;padding:4px 0;border-bottom:1px solid transparent}.mast-nav a:hover{color:var(--accent);border-bottom-color:var(--gold)}main{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}.kicker{display:flex;align-items:center;gap:12px;margin:0;color:var(--gold);font-size:18px}.kicker .rule{flex:1;height:1px;background:var(--rule)}.sec-title{display:flex;align-items:baseline;gap:12px;font-size:26px;margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid var(--ink)}.sec-title .serif-en{order:2;font-size:18px;color:var(--gold);font-weight:500}.sec-dek{color:var(--ink-2);margin:-6px 0 16px;max-width:760px}.front{display:grid;grid-template-columns:76px minmax(0,1fr);gap:36px;padding:32px 0 56px}.front>*{grid-column:auto}.toc-rail{grid-column:1;position:sticky;top:16px;align-self:start;border-right:1px solid var(--rule);padding-right:14px}.toc-rail-title{font-family:var(--serif);font-weight:900;writing-mode:vertical-rl;letter-spacing:.5em;margin:0 auto 12px;font-size:18px}.toc-rail ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.toc-rail a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;text-decoration:none;color:var(--ink-2);border-radius:6px}.toc-rail a:hover{background:var(--paper-2);color:var(--hue)}.tr-glyph{font-size:20px;color:var(--hue);line-height:1}.tr-name{font-size:12px;letter-spacing:.05em}.front-main{grid-column:2;min-width:0;display:flex;flex-direction:column;gap:56px}.cover-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start}.cs-text{grid-column:1}.front-title{font-size:clamp(56px,9vw,104px);margin:8px 0 12px;letter-spacing:.14em;line-height:1.05}.front-dek{font-size:19px;color:var(--ink-2);line-height:2;margin:0;max-width:34em}.birthday{grid-column:2;background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--accent);padding:20px 22px}.birthday h2{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;font-size:22px}.birthday h2 .serif-en{order:2;color:var(--gold);font-size:17px;font-weight:500}.bd-form{display:flex;gap:16px}.bd-form label{display:flex;align-items:center;gap:6px;font-size:15px;color:var(--ink-2)}.bd-form select{font:inherit;padding:4px 8px;border:1px solid var(--rule);background:var(--paper);border-radius:4px}.bd-result{margin:10px 0 12px;font-size:16px;min-height:1.9em}.bd-result a{font-weight:700;text-decoration:none}.bd-table{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;font-size:14px}.bd-table li{display:flex;justify-content:space-between;gap:8px;padding:4px 6px;border-bottom:1px dotted var(--rule)}.bd-table li a{color:var(--ink);text-decoration:none}.bd-table li a span{color:var(--hue);margin-right:4px}.bd-table li .serif-en{color:var(--mute);font-size:15px}.bd-table li.on{background:color-mix(in srgb,var(--hue) 12%,transparent)}.bd-table li.on a{color:var(--hue);font-weight:700}.bd-more{margin:12px 0 0;font-size:14px;color:var(--mute)}.letter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:40px;align-items:start}.letter-card{grid-column:1;background:var(--accent);color:#f4efe6;padding:28px 28px 24px;position:relative}.letter-card:after{content:"";position:absolute;inset:8px;border:1px solid rgba(244,239,230,.3);pointer-events:none}.letter-kicker{display:flex;gap:10px;align-items:baseline;margin:0 0 14px;font-size:15px;letter-spacing:.1em;color:#e3c98f}.letter-kicker .serif-en{font-size:18px}.letter-card blockquote{margin:0;font-family:var(--serif);font-weight:600;font-size:25px;line-height:1.6}.letter-from{text-align:right;margin:10px 0 18px;font-size:14px;opacity:.8}.letter-dek{margin:0;font-size:15px;line-height:1.9;opacity:.92}.letter-list{grid-column:2;min-width:0}.letter-list ol{list-style:none;margin:0;padding:0}.letter-list li a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.letter-list li a:hover .ll-title{color:var(--hue)}.ll-no{grid-column:1;font-size:30px;line-height:1;color:var(--hue);font-weight:600}.ll-body{grid-column:2;display:flex;flex-direction:column;gap:2px;min-width:0}.ll-sign{font-size:13px;color:var(--hue);letter-spacing:.1em}.ll-sign span{margin-right:4px}.ll-title{font-family:var(--serif);font-weight:600;font-size:18px;line-height:1.55}.ll-title strong{font-weight:900;margin-right:6px}.el-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.el-col{min-width:0}.el-col h3{display:flex;flex-direction:column;margin:0 0 8px;font-size:18px;padding-bottom:6px;border-bottom:2px solid var(--ink)}.el-col h3 .serif-en{font-size:15px;color:var(--gold);font-weight:500}.el-col ul{list-style:none;margin:0;padding:0}.el-col li a{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.el-glyph{grid-column:1;grid-row:1 / 3;font-size:32px;line-height:44px;text-align:center;color:var(--hue);background:color-mix(in srgb,var(--hue) 10%,transparent);border-radius:50%;width:44px;height:44px}.el-name{grid-column:2;font-family:var(--serif);font-weight:900;font-size:19px;display:flex;align-items:baseline;gap:8px}.el-name .serif-en{font-size:15px;color:var(--mute);font-weight:500}.el-meta{grid-column:2;display:flex;justify-content:space-between;font-size:13px;color:var(--mute)}.el-col li a:hover .el-name{color:var(--hue)}.k-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.k-list a{display:inline-block;padding:8px 16px;border:1px solid var(--rule);background:var(--card);border-radius:999px;text-decoration:none;color:var(--ink);font-size:15px}.k-list a:hover{border-color:var(--accent);color:var(--accent)}.k-list .k-all a{background:var(--accent);color:#fff;border-color:var(--accent)}.method-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.method-list li{min-width:0;border-top:1px solid var(--rule);padding-top:12px}.method-list .serif-en{display:block;font-size:26px;color:var(--gold);line-height:1}.method-list strong{display:block;font-family:var(--serif);font-size:18px;margin:6px 0 4px}.method-list p{margin:0;font-size:15px;color:var(--ink-2)}.method-more{display:flex;align-items:center;gap:8px;margin:20px 0 0}.method-mark{width:28px;height:28px;color:var(--accent)}.column{padding:28px 0 56px}.column-head{max-width:760px;margin:0 auto;text-align:center}.crumbs{font-size:14px;color:var(--mute);display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.crumbs a{color:var(--mute);text-decoration:none}.crumbs a:hover{color:var(--hue)}.column-kicker{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:18px 0 8px;color:var(--hue);font-size:15px;letter-spacing:.12em}.column-kicker .glyph{font-size:22px}.column-kicker .serif-en{font-size:18px;letter-spacing:.04em}.column-kicker .who{border:1px solid currentColor;padding:0 10px;border-radius:999px;font-size:13px}.column-head h1{font-size:clamp(28px,4.6vw,42px);margin:0 0 16px}.h1-key{display:block;color:var(--hue)}.h1-rest{display:block;font-size:.62em;font-weight:600;color:var(--ink);margin-top:6px}.dek{font-family:var(--serif);font-weight:600;font-size:18px;color:var(--ink-2);line-height:1.9;margin:0 auto 14px;max-width:680px}.byline{font-size:14px;color:var(--mute);display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0;padding-bottom:22px;border-bottom:1px solid var(--rule)}.byline a{color:var(--ink-2)}.cover{margin:26px auto 0;max-width:1040px}.cover img{width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--paper-2)}.column-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;max-width:1040px;margin:32px auto 0}.column-body>.prose{grid-column:1}.column-body>.rail{grid-column:2}.rail-sticky{position:sticky;top:20px;display:flex;flex-direction:column;gap:24px}.prose{min-width:0}.prose>p:first-of-type:first-letter{font-family:var(--serif);font-weight:900;float:left;font-size:3.4em;line-height:1;margin:6px 10px 0 0;color:var(--hue)}.prose h2{font-size:26px;margin:2.2em 0 .8em;padding-top:14px;border-top:1px solid var(--ink);counter-increment:sec}.prose{counter-reset:sec}.prose h2:before{content:counter(sec,decimal-leading-zero);display:block;font-family:var(--en);font-style:italic;font-weight:500;font-size:20px;color:var(--gold)}.prose .letters h2:before,.prose .sources h2:before{content:none}.prose h3{font-size:20px;margin:1.8em 0 .6em;color:var(--ink)}.prose h3:before{content:"";display:inline-block;width:8px;height:8px;background:var(--hue);transform:rotate(45deg);margin:0 10px 3px 0}.prose p{margin:0 0 1.2em}.prose ul,.prose ol{padding-left:1.4em;margin:0 0 1.2em}.prose li{margin:.3em 0}.prose li::marker{color:var(--hue)}.prose strong{font-weight:700;background:linear-gradient(transparent 62%,color-mix(in srgb,var(--hue) 18%,transparent) 62%)}.prose blockquote{margin:1.5em 0;padding:4px 0 4px 20px;border-left:3px solid var(--hue);font-family:var(--serif);font-weight:600;color:var(--ink-2)}.prose img{margin:1.4em auto;border-radius:4px}.table-wrap{overflow-x:auto;margin:0 0 1.4em;-webkit-overflow-scrolling:touch}.prose table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.7;background:var(--card)}.prose th{background:var(--paper-2);font-weight:700;text-align:left;border-bottom:2px solid var(--ink)}.prose th,.prose td{padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top;min-width:5em}.toc{margin:0 0 32px;padding:16px 20px;background:var(--card);border:1px solid var(--rule)}.toc summary{cursor:pointer;font-family:var(--serif);font-weight:900;display:flex;gap:10px;align-items:baseline;list-style:none}.toc summary::-webkit-details-marker{display:none}.toc summary .serif-en{order:2;color:var(--gold);font-weight:500}.toc ol{list-style:none;padding:0;margin:10px 0 0}.toc li a{display:flex;gap:10px;padding:4px 0;text-decoration:none;color:var(--ink-2);font-size:15px}.toc li a:hover{color:var(--hue)}.toc-no{color:var(--gold);flex:none}.letters{margin-top:2.6em}.letters details{border-bottom:1px solid var(--rule);padding:14px 0}.letters summary{cursor:pointer;font-family:var(--serif);font-weight:700;font-size:18px;list-style:none;display:flex;gap:10px}.letters summary::-webkit-details-marker{display:none}.letters details p{margin:10px 0 0;display:flex;gap:10px;color:var(--ink-2)}.qa{flex:none;font-size:22px;line-height:1.3;color:var(--hue);font-weight:600}.qa-a{color:var(--gold)}.sources ol{font-size:14px;color:var(--mute)}.sources a{color:var(--ink-2);word-break:break-all}.editor-note{display:flex;gap:16px;margin-top:2.4em;padding:18px 20px;background:var(--paper-2);border-left:3px solid var(--gold)}.note-mark{width:40px;height:40px;flex:none;color:var(--accent)}.editor-note p{margin:0;font-size:15px;color:var(--ink-2)}.editor-note .note-title{font-family:var(--serif);font-weight:700;color:var(--ink);margin-bottom:4px}.sign-card{background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--hue);padding:18px 18px 14px;text-align:center}.sc-glyph{font-size:52px;line-height:1;color:var(--hue);margin:0}.sc-name{font-family:var(--serif);font-weight:900;font-size:22px;margin:6px 0 10px;display:flex;flex-direction:column}.sc-name .serif-en{font-size:16px;color:var(--mute);font-weight:500}.sign-card dl{margin:0 0 12px;font-size:14px;text-align:left}.sign-card dl div{display:flex;justify-content:space-between;padding:5px 0;border-top:1px dotted var(--rule)}.sign-card dt{color:var(--mute)}.sign-card dd{margin:0}.sc-note{font-size:14px;color:var(--mute)}.sc-link{display:block;font-size:14px;font-weight:700;color:var(--hue);text-decoration:none}.rail-title{display:flex;gap:8px;align-items:baseline;font-family:var(--serif);font-weight:900;margin:0 0 6px;padding-bottom:6px;border-bottom:1px solid var(--ink)}.rail-title .serif-en{order:2;color:var(--gold);font-weight:500}.popular ol{margin:0;padding-left:1.3em;font-size:15px}.popular li{padding:4px 0}.popular li::marker{font-family:var(--en);font-style:italic;color:var(--gold)}.popular a{color:var(--ink-2);text-decoration:none}.popular a:hover{color:var(--hue)}.further{max-width:1040px;margin:48px auto 0}.further-title{display:flex;align-items:baseline;gap:12px;font-size:22px;padding-bottom:8px;border-bottom:1px solid var(--ink);margin:0 0 4px}.further-title .serif-en{order:2;color:var(--gold);font-weight:500;font-size:17px}.further-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.further-list li{min-width:0}.further-list a{display:flex;gap:10px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.further-list strong{font-family:var(--serif);font-weight:600}.further-list a:hover strong{color:var(--hue)}.further-more{text-align:right;margin:12px 0 0;font-size:15px}.who-tag{flex:none;display:inline-block;width:2.2em;text-align:center;font-size:13px;line-height:1.7;border:1px solid var(--hue);color:var(--hue);border-radius:3px}.zodiac-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:1040px;margin:40px auto 0;padding-top:20px;border-top:3px double var(--ink)}.zodiac-strip a{display:inline-flex;gap:4px;align-items:center;padding:4px 12px;border:1px solid var(--rule);border-radius:999px;font-size:14px;text-decoration:none;color:var(--ink-2);background:var(--card)}.zodiac-strip a span{color:var(--hue)}.zodiac-strip a:hover,.zodiac-strip a[aria-current]{border-color:var(--hue);color:var(--hue)}.hub{padding:28px 0 56px}.hub-head{max-width:860px;margin:0 auto 36px}.hub-head .crumbs{justify-content:flex-start}.hub-title{display:flex;align-items:center;gap:20px;margin:18px 0}.hub-glyph{flex:none;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;font-size:56px;color:#fff;background:var(--hue);box-shadow:inset 0 0 0 4px var(--paper),0 0 0 2px var(--hue)}.hub-title .column-kicker{justify-content:flex-start;margin:0 0 4px}.hub-title h1{font-size:clamp(32px,5vw,46px);margin:0}.hub-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 18px;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule)}.hub-facts div{padding:10px 12px;border-right:1px solid var(--rule);min-width:0}.hub-facts div:last-child{border-right:0}.hub-facts dt{font-size:13px;color:var(--mute)}.hub-facts dd{margin:0;font-family:var(--serif);font-weight:700;font-size:18px}.hub-intro{font-size:17px;line-height:2;color:var(--ink-2);margin:0 0 8px}.hub-meta{color:var(--mute);margin:0}.hub-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:32px;max-width:1040px;margin:0 auto}.hub-col{min-width:0}.hub-col h2{display:flex;align-items:center;gap:10px;font-size:21px;margin:0 0 6px;padding-bottom:8px;border-bottom:2px solid var(--hue)}.hub-col h2 small{margin-left:auto;font-family:var(--sans);font-weight:400;font-size:13px;color:var(--mute)}.hub-col ol{list-style:none;margin:0;padding:0}.hub-col li a{display:flex;flex-direction:column;padding:11px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.hub-col li strong{font-family:var(--serif);font-weight:600;font-size:17px;line-height:1.6}.hub-col li a:hover strong{color:var(--hue)}.li-date{font-size:14px;color:var(--mute)}.hub-pager{display:flex;justify-content:space-between;gap:16px;max-width:1040px;margin:40px auto 0}.hub-pager a{display:flex;flex-direction:column;text-decoration:none;color:var(--hue);font-family:var(--serif);font-weight:900;font-size:20px}.hub-pager a:last-child{text-align:right}.hub-pager .serif-en{font-size:15px;color:var(--mute);font-weight:500}.column-page .page-body{max-width:720px;margin:28px auto 0}.column-page .prose>p:first-of-type:first-letter{all:unset}.column-page .prose h2:before{content:none}.notfound{text-align:center;padding:64px 0}.notfound-mark{width:120px;height:120px;margin:0 auto 16px;color:var(--accent)}.notfound .kicker{justify-content:center}.notfound h1{font-size:34px}.foot{margin-top:32px;border-top:3px double var(--ink);background:var(--paper-2)}.foot-inner{max-width:var(--wrap);margin:0 auto;padding:32px var(--gutter) 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:16px 40px}.foot-brand{grid-column:1;display:flex;gap:12px;align-items:center}.foot-mark{width:52px;height:52px;color:var(--accent);flex:none}.foot-name{margin:0;font-family:var(--serif);font-weight:900;font-size:22px;letter-spacing:.12em}.foot-en{margin:0;color:var(--mute)}.foot-note{grid-column:2;margin:0;font-size:14px;color:var(--ink-2)}.foot-nav{grid-column:1 / -1;list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:6px 20px;font-size:14px}.foot-nav a{color:var(--ink-2)}.foot-small{grid-column:1 / -1;margin:0;font-size:13px;color:var(--mute)}@media(max-width:960px){.cover-story,.letter{grid-template-columns:minmax(0,1fr)}.cs-text,.birthday,.letter-card,.letter-list{grid-column:1}.el-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.column-body{grid-template-columns:minmax(0,1fr)}.column-body>.rail{grid-column:1}.rail-sticky{position:static}}@media(max-width:720px){body{font-size:16px}.mast-strip{font-size:13px}.brand-zh{font-size:24px}.brand-mark{width:40px;height:40px}.mast-nav{gap:4px 16px;font-size:14px;width:100%}.front{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:16px}.toc-rail{grid-column:1;position:static;border-right:0;border-bottom:1px solid var(--rule);padding:0 0 8px;overflow-x:auto;scrollbar-width:none}.toc-rail::-webkit-scrollbar{display:none}.bd-table li{flex-direction:column;gap:0}.bd-table li .serif-en{font-size:14px}.toc-rail-title{display:none}.toc-rail ol{flex-direction:row;gap:4px;width:max-content}.toc-rail a{padding:4px 8px}.front-main{grid-column:1;gap:44px}.front-title{letter-spacing:.08em}.front-dek{font-size:17px}.letter-card blockquote{font-size:21px}.el-grid,.method-list,.further-list{grid-template-columns:minmax(0,1fr)}.hub-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-facts div:nth-child(2){border-right:0}.hub-facts div:nth-child(-n+2){border-bottom:1px solid var(--rule)}.hub-glyph{width:72px;height:72px;font-size:40px}.foot-inner{grid-template-columns:minmax(0,1fr)}.foot-brand,.foot-note{grid-column:1}.prose h2{font-size:22px}}
