:root{
  --paper:#f3efe6; --paper2:#efe9dd; --ink:#26221b; --sub:#6b6353;
  --faint:#9a9079; --hair:#dcd5c5; --accent:#9c3b2e; --accentink:#7a3326;
  --cold:#54606e; --warm:#a96a59;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{background:var(--paper);scroll-behavior:smooth;}
body{
  background:var(--paper);color:var(--ink);
  font-family:"Noto Serif CJK TC","Songti TC","Source Han Serif TC",serif;
  line-height:2.0;font-size:16.5px;-webkit-font-smoothing:antialiased;letter-spacing:.01em;
}
.en,.mono{font-family:"Courier New",ui-monospace,monospace;letter-spacing:.02em;}
.wrap{max-width:760px;margin:0 auto;padding:60px 28px 110px;}
.wrap.wide{max-width:940px;}

/* content page (查證) */
h2{font-size:22px;letter-spacing:.04em;margin:46px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--hair);font-weight:700;}
h3{font-size:17px;letter-spacing:.02em;margin:28px 0 10px;color:var(--accentink);font-weight:700;}
table.fc{width:100%;border-collapse:collapse;font-size:14.5px;margin:6px 0 8px;}
table.fc th,table.fc td{text-align:left;padding:9px 14px;border-bottom:1px solid var(--hair);vertical-align:top;line-height:1.6;}
table.fc thead th{background:#2c2620;color:#efe7d6;font-size:13px;letter-spacing:.1em;border:0;font-weight:600;}
table.fc td.d{white-space:nowrap;color:var(--accentink);font-family:"Courier New",monospace;font-size:13px;}
table.fc tbody tr:nth-child(even){background:rgba(0,0,0,.022);}
blockquote.q{margin:11px 0;padding:8px 0 8px 18px;border-left:3px solid var(--warm);
  font-style:italic;color:var(--accentink);font-size:14.5px;line-height:1.75;}
ul.facts{margin:0 0 14px 0;padding-left:20px;}
ul.facts li{margin-bottom:9px;line-height:1.85;}
.src{font-size:13px;color:var(--sub);margin:5px 0 0;}

/* top bar / nav */
.topbar{max-width:760px;margin:0 auto;padding:24px 28px 0;display:flex;
        justify-content:space-between;align-items:baseline;}
.brand{font-size:13px;letter-spacing:.34em;color:var(--faint);}
nav.tabs{display:flex;gap:4px;}
nav.tabs a{font-size:14px;letter-spacing:.14em;color:var(--sub);text-decoration:none;
           padding:6px 16px;border:1px solid transparent;border-radius:3px;}
nav.tabs a.on{color:var(--accent);border-color:var(--hair);background:var(--paper2);}
nav.tabs a:hover{color:var(--accent);}

/* masthead */
.kick{font-size:12px;letter-spacing:.4em;color:var(--accent);text-align:center;margin:46px 0 14px;}
h1.title{font-size:42px;font-weight:700;line-height:1.3;letter-spacing:.06em;text-align:center;color:#1d1a14;}
.subtitle{text-align:center;font-size:16px;color:var(--sub);margin-top:12px;letter-spacing:.04em;}
.divider{width:46px;height:1px;background:var(--hair);border:0;margin:36px auto 50px;position:relative;}
.divider::after{content:"";position:absolute;top:-2px;left:50%;width:5px;height:5px;
  transform:translateX(-50%) rotate(45deg);background:var(--accent);}

p{margin:0 0 22px;text-align:justify;}
.lead{color:var(--ink);}
.aside{color:var(--sub);font-size:14px;}
.aside a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--hair);padding-bottom:1px;}
.aside a:hover{border-color:var(--accent);}
.pivot{text-align:center;color:var(--accent);font-size:19px;letter-spacing:.06em;margin:44px 0;line-height:1.9;}

.figcap{font-size:11px;letter-spacing:.4em;color:var(--faint);text-align:center;margin:66px 0 34px;}
.figcap::before,.figcap::after{content:"";display:inline-block;width:24px;height:1px;
  background:var(--hair);vertical-align:middle;margin:0 12px;}

/* vertical timeline */
.tl{list-style:none;margin:0 0 0 8px;padding:0;border-left:1.5px solid var(--hair);}
.tl li{position:relative;padding:0 0 34px 34px;}
.tl li:last-child{padding-bottom:4px;}
.tl li::before{content:"";position:absolute;left:-7.5px;top:8px;width:13px;height:13px;border-radius:50%;
  background:var(--paper);border:2px solid var(--accentink);}
.tl li.fact::before{border-color:var(--cold);background:#3f4854;}
.tl .yr{font-size:12.5px;letter-spacing:.16em;color:var(--accent);}
.tl .cut{display:inline-block;background:var(--accentink);color:#f3efe6;font-size:10.5px;
  letter-spacing:.1em;padding:1px 7px;border-radius:2px;margin-left:8px;vertical-align:1px;}
.tl .ev{font-size:16px;color:var(--ink);margin-top:3px;line-height:1.7;}
.tl .ev small{display:block;color:var(--sub);font-size:13px;margin-top:2px;}

/* argument tree frame */
.tree{border:1px solid var(--hair);background:#faf7ef;padding:26px 16px;overflow-x:auto;text-align:center;margin-top:6px;}
.tree .mermaid{margin:0;display:flex;justify-content:center;}
.tree .mermaid svg{max-width:100%;height:auto;display:block;margin:0 auto;}
.treenote{font-size:12.5px;color:var(--faint);text-align:center;margin:16px 0 0;letter-spacing:.05em;}

/* thesis box */
.thesis{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
  padding:26px 0;margin:8px 0 30px;text-align:center;}
.thesis .big{font-size:24px;letter-spacing:.03em;}
.thesis .big .a{color:var(--accent);}
.thesis .eth{font-size:14px;color:var(--sub);margin-top:10px;}

.colophon{margin-top:80px;text-align:center;font-size:11px;letter-spacing:.36em;color:var(--faint);}
.colophon::before{content:"";display:block;width:30px;height:1px;background:var(--hair);margin:0 auto 20px;}

.pagenav{margin-top:78px;border-top:1px solid var(--hair);padding-top:24px;text-align:center;}
.pagenav .lbl{display:block;font-size:11px;letter-spacing:.34em;color:var(--faint);margin-bottom:9px;}
.pagenav a{color:var(--accent);text-decoration:none;letter-spacing:.1em;font-size:16px;
  border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .15s;}
.pagenav a:hover{border-color:var(--accent);}

@media (max-width:560px){
  .wrap{padding:40px 20px 80px;} h1.title{font-size:31px;}
  .topbar{flex-direction:column;gap:12px;}
}
