:root{color-scheme:dark;--bg:#100d0b;--panel:#19130f;--line:#3b3027;--text:#f5eee3;--muted:#b9a99a;--gold:#e5bf5a;--focus:#ffdc84;font-family:"Noto Sans TC",system-ui,sans-serif;line-height:1.65;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:0}
::selection{background:var(--gold);color:var(--bg)}
a{color:var(--gold);text-underline-offset:.18em;text-decoration-thickness:1px;overflow-wrap:anywhere}
a:hover{color:#ffe397}
.skip:hover{color:var(--bg)}
a:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:3px}
.skip{position:absolute;top:-5rem;left:1rem;background:var(--gold);color:var(--bg);padding:.5rem .8rem;z-index:2}
.skip:focus{top:1rem;color:var(--bg)}
.mast{border-bottom:1px solid var(--line);background:var(--panel)}
.mast-inner,.page,.foot-inner{width:min(100% - 2.5rem,73rem);margin-inline:auto}
.mast-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:5rem}
.brand{font-family:"Noto Serif TC",Georgia,serif;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--text);text-decoration:none;white-space:nowrap}
.brand span{color:var(--gold)}
.mast nav{display:flex;flex-wrap:wrap;gap:.45rem 1.3rem}
.mast nav a{font-weight:600;text-decoration:none}
.page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,16rem);gap:clamp(2rem,6vw,5rem);padding-block:clamp(2.5rem,6vw,5rem) 6rem;align-items:start}
.page-title{grid-column:1/-1;grid-row:1;font-family:"Noto Serif TC",Georgia,serif;font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.18;letter-spacing:-.03em;text-wrap:balance;margin:0}
.article{max-width:75ch;min-width:0;overflow-wrap:anywhere;grid-column:1;grid-row:2}
.article h2{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.3;margin:2.8rem 0 .7rem;scroll-margin-top:2rem;text-wrap:balance;color:var(--gold)}
.article h2:first-of-type{margin-top:2.2rem}
.article p,.article ul,.article ol{margin:.65rem 0 1.15rem}
.article li{padding-left:.2rem;margin:.35rem 0}
.article strong{color:#fff8ed}
.article>p:first-of-type{color:var(--muted);font-size:.96rem}
.article section[lang="zh-Hant"]{border-top:1px solid var(--line);margin-top:3rem}
.toc{position:sticky;top:1.5rem;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:1.15rem 1.35rem;grid-column:2;grid-row:2}
.toc h2{font-size:.9rem;color:var(--muted);margin:0 0 .65rem;font-weight:600}
.toc ul{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}
.toc a{display:block;color:var(--text);text-decoration:none;padding:.18rem 0;line-height:1.35}
.toc a:hover{color:var(--gold)}
.foot{border-top:1px solid var(--line);color:var(--muted)}
.foot-inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-block:1.5rem;font-size:.9rem}
@media(max-width:54rem){.page{display:block}.page-title{margin-bottom:1.5rem}.toc{position:static;margin:0 0 2.2rem}.mast-inner{align-items:flex-start;flex-direction:column;padding-block:1rem;gap:.45rem}}
@media(max-width:35rem){.mast-inner,.page,.foot-inner{width:min(100% - 2rem,73rem)}.page{padding-top:2rem}.toc{padding:1rem}.article h2{margin-top:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
