
:root{
  --deep-brown:#3B2F26;--brown-medium:#5C4A3A;--brown-light:#7D6B59;--brown-faint:#9E8E7D;
  --gold:#D6AD60;--gold-ink:#8A6524;--gold-faint:rgba(214,173,96,0.12);--cream:#EFE4C8;--cream-light:#F5EED8;
  --warm-white:#FDFAF3;--border:rgba(168,149,122,0.3);--shadow-soft:rgba(59,47,38,0.06);
  --shadow-med:rgba(59,47,38,0.12);
  --serif:'Playfair Display',Georgia,serif;
  --sans:'Public Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.7;color:var(--deep-brown);background:var(--warm-white);font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
a{color:var(--brown-medium);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--brown-faint);transition:color .15s,text-decoration-color .15s}
a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.article{max-width:760px;margin:0 auto;padding:48px 24px 80px}
@media (min-width:760px){.article{padding:72px 24px 100px}}

.top-cta{margin:-12px 0 28px;padding:14px 18px;background:linear-gradient(90deg,var(--cream-light) 0%,var(--cream) 100%);border:1px solid var(--border);border-radius:6px;font-size:14.5px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.top-cta a{color:var(--deep-brown);text-decoration:none;font-weight:600;letter-spacing:.01em}
.top-cta a:hover{color:var(--gold)}
.top-cta a::after{content:"";display:inline-block}

.article__hero{margin:0 0 28px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--cream-light)}
.article__hero svg{display:block;width:100%;height:auto}

.article__fact-line{font-size:15px;line-height:1.6;padding:14px 18px;margin:0 0 16px;background:rgba(214,173,96,0.07);border-inline-start:3px solid var(--gold);border-radius:2px;color:var(--brown-medium)}
.article__fact-line strong{color:var(--deep-brown);font-weight:600}

.article__scope-note{font-size:14px;line-height:1.6;padding:12px 18px;margin:0 0 32px;background:transparent;border:1px dashed var(--brown-faint);border-radius:2px;color:var(--brown-light);font-style:italic}
.article__scope-note strong{color:var(--brown-medium);font-style:normal;font-weight:600}
.article__scope-note a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint);font-style:normal}
.article__scope-note a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.methodology{margin-top:64px;padding-top:32px;border-top:1px solid var(--border);font-size:14px;color:var(--brown-light)}
.methodology__heading{font-family:var(--serif);font-weight:600;font-size:13px;color:var(--brown-light);text-transform:uppercase;letter-spacing:.16em;margin:0 0 14px}
.methodology__body{line-height:1.7}
.methodology__body p{margin:0 0 .8em}
.methodology__body em{font-style:italic;color:var(--brown-medium)}
.methodology__body a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint)}
.methodology__body a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.breadcrumbs{font-size:13px;color:var(--brown-faint);letter-spacing:.04em;margin-bottom:28px;text-transform:uppercase}
.breadcrumbs a{color:var(--brown-light);text-decoration:none}
.breadcrumbs a:hover{color:var(--gold)}
.breadcrumbs__sep{margin:0 8px;opacity:.5}

.article__kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;margin-bottom:14px}
.article__title{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,1.4rem+2.5vw,3.25rem);line-height:1.15;color:var(--deep-brown);margin:0 0 8px;letter-spacing:-.005em}
.article__title .zh{display:block;font-size:.55em;color:var(--gold-ink);font-weight:500;margin-top:6px;letter-spacing:.02em}

.article__meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 16px}
.article__meta span{display:inline-block;padding:5px 12px;border:1px solid var(--border);border-radius:99px;font-size:12px;letter-spacing:.04em;color:var(--brown-medium);background:var(--cream-light)}

.article__byline{font-size:13px;color:var(--brown-faint);margin:0 0 32px;letter-spacing:.02em}
.article__byline a{color:var(--brown-light);text-decoration:none}
.article__byline a:hover{color:var(--gold)}
.article__byline time{color:var(--brown-light)}

.article__lede{font-family:var(--serif);font-weight:500;font-size:clamp(1.25rem,1.05rem+.7vw,1.55rem);line-height:1.45;color:var(--brown-medium);margin:0 0 40px;font-style:italic}
.article__divider{border:none;height:1px;background:var(--border);margin:48px 0}
.article__body{font-size:18px;line-height:1.75}
.article__body p{margin:0 0 1.25em}
.article__body p:last-child{margin-bottom:0}
.article__h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.4rem,1.15rem+1vw,1.85rem);line-height:1.25;color:var(--deep-brown);margin:48px 0 16px;letter-spacing:-.005em}
.article__h2:first-of-type{margin-top:32px}

.quick-facts{margin:0 0 32px;padding:18px 22px;background:var(--cream-light);border-inline-start:3px solid var(--gold);border-radius:2px;font-size:15px}
.quick-facts__heading{font-family:var(--serif);font-weight:600;font-size:14px;color:var(--brown-medium);text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}
.quick-facts__grid{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0}
.quick-facts__grid dt{font-weight:600;color:var(--brown-medium);text-transform:uppercase;letter-spacing:.04em;font-size:12px;align-self:center}
.quick-facts__grid dd{margin:0;color:var(--deep-brown);font-weight:500}
.quick-facts__grid dd .zh-inline{font-family:var(--serif);color:var(--gold-ink);font-weight:600;margin-inline-end:6px}

.article__faq details{border:1px solid var(--border);border-radius:6px;padding:14px 20px;margin-bottom:12px;background:var(--warm-white);transition:border-color .15s}
.article__faq details[open]{border-color:var(--gold-ink)}
.article__faq summary{cursor:pointer;font-family:var(--serif);font-size:17px;font-weight:600;color:var(--deep-brown);list-style:none;position:relative;padding-inline-end:28px}
.article__faq summary::-webkit-details-marker{display:none}
.article__faq summary::after{content:'+';position:absolute;right:0;top:0;font-size:22px;font-weight:400;color:var(--gold);line-height:1;transition:transform .15s}
.article__faq details[open] summary::after{content:'\2212'}
.article__faq .faq-answer{margin:14px 0 4px;font-size:16px;line-height:1.65;color:var(--brown-medium)}
.article__faq .faq-answer p{margin:0 0 .75em}
.article__faq .faq-answer p:last-child{margin-bottom:0}
.article__faq .faq-answer a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint)}
.article__faq .faq-answer a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.further-reading{margin-top:48px;padding:24px 26px;background:var(--warm-white);border:1px solid var(--border);border-radius:6px}
.further-reading__intro{font-size:15px;color:var(--brown-medium);margin:0 0 14px;line-height:1.55}
.further-reading__list{margin:0;padding-inline-start:22px;font-size:15.5px;line-height:1.7}
.further-reading__list li{margin-bottom:8px}
.further-reading__list a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint)}
.further-reading__list a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.cta-block{margin:56px 0 0;padding:36px 32px;background:linear-gradient(180deg,var(--cream-light) 0%,var(--cream) 100%);border-radius:6px;border:1px solid var(--border)}
.cta-block__eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:10px}
.cta-block__title{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.25;color:var(--deep-brown);margin:0 0 12px}
.cta-block__body{font-size:16px;line-height:1.6;color:var(--brown-medium);margin:0 0 22px}
.cta-button{display:inline-block;padding:13px 26px;background:var(--deep-brown);color:var(--warm-white);text-decoration:none;border-radius:3px;font-weight:500;font-size:15px;letter-spacing:.02em;transition:background .15s}
.cta-button:hover{background:#2A211A;color:var(--warm-white)}
.cta-button--outline{background:transparent;color:var(--deep-brown);border:1px solid var(--deep-brown)}
.cta-button--outline:hover{background:var(--deep-brown);color:var(--warm-white)}
.cta-block + .cta-block{margin-top:14px}

.author-bio{margin:56px 0 0;padding:28px 32px;background:var(--warm-white);border:1px solid var(--border);border-radius:6px;display:flex;gap:20px;align-items:flex-start}
.author-bio__avatar{flex-shrink:0;width:64px;height:64px;border-radius:50%;overflow:hidden;border:1px solid var(--border);background:var(--cream-light)}
.author-bio__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.author-bio__content{flex:1;min-width:0}
.author-bio__name{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--deep-brown);margin:0 0 4px;letter-spacing:.005em}
.author-bio__role{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;margin:0 0 12px}
.author-bio__text{font-size:14.5px;line-height:1.65;color:var(--brown-medium);margin:0}
.author-bio__text a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint)}
.author-bio__text a:hover{color:var(--gold);text-decoration-color:var(--gold)}
@media (max-width:520px){.author-bio{flex-direction:column;gap:14px;padding:24px}.author-bio__avatar{width:56px;height:56px}}

.related{margin-top:72px;padding-top:40px;border-top:1px solid var(--border)}
.related__title{font-family:var(--serif);font-weight:600;font-size:13px;color:var(--brown-light);text-transform:uppercase;letter-spacing:.16em;margin:0 0 24px}
.related__grid{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:640px){.related__grid{grid-template-columns:repeat(3,1fr)}}
.related__card{display:block;padding:18px 20px;background:var(--warm-white);border:1px solid var(--border);border-radius:4px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}
.related__card:hover{border-color:var(--gold);box-shadow:0 4px 18px var(--shadow-soft);transform:translateY(-1px)}
.related__card-zh{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--gold-ink);margin-bottom:6px;line-height:1}
.related__card-en{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--deep-brown);line-height:1.25}
.related__card-meta{font-size:13px;color:var(--brown-light);margin-top:4px}

.cc-block{margin:14px 0;padding:18px 22px;background:var(--cream-light);border-inline-start:3px solid var(--gold);border-radius:2px;font-size:16px;line-height:1.65}
.cc-block--clash{border-inline-start-color:#B85C3D}
.cc-block__label{font-family:var(--serif);font-weight:600;font-size:13px;color:var(--brown-medium);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.cc-block p{margin:0}
.cc-block strong{color:var(--gold-ink);font-weight:600}
.cc-block--clash strong{color:#B85C3D}
.cc-block a{color:var(--brown-medium);text-decoration:underline;text-decoration-color:var(--brown-faint)}
.cc-block a:hover{color:var(--gold);text-decoration-color:var(--gold)}

.tengods-table{width:100%;border-collapse:collapse;font-size:15px;margin:18px 0 8px}
.tengods-table th,.tengods-table td{padding:11px 14px;text-align:start;border-bottom:1px solid var(--border)}
.tengods-table th{font-family:var(--sans);font-weight:600;color:var(--brown-medium);font-size:13px;text-transform:uppercase;letter-spacing:.05em;background:var(--cream-light)}
.tengods-table td{color:var(--deep-brown)}
.tengods-table td span[lang="zh-Hant"]{font-family:var(--serif);color:var(--gold-ink);font-weight:600;margin-inline-end:8px}
.tengods-table tr:last-child td{border-bottom:none}
.tengods-table a{color:var(--brown-medium);text-decoration:none}
.tengods-table a:hover{color:var(--gold)}

.all-of-type{margin-top:48px;padding-top:32px;border-top:1px solid var(--border)}
.all-of-type__chips{display:flex;flex-wrap:wrap;gap:8px 10px}
.all-of-type__chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--warm-white);border:1px solid var(--border);border-radius:99px;text-decoration:none;font-size:14px;color:var(--brown-medium);transition:border-color .15s,background .15s,color .15s}
.all-of-type__chip:hover{border-color:var(--gold);background:var(--cream-light);color:var(--deep-brown)}
.all-of-type__chip--current{border-color:var(--gold-ink);background:var(--gold-faint);color:var(--deep-brown);font-weight:500}

.site-footer{margin-top:80px;padding:36px 24px 28px;border-top:1px solid var(--border);background:var(--cream-light);text-align:center;font-size:13px;color:var(--brown-light)}
.site-footer a{color:var(--brown-medium);text-decoration:none}
.site-footer a:hover{color:var(--gold)}
.site-footer__nav{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-bottom:14px}
.site-footer__copy{margin:0;letter-spacing:.02em}
