/* 息票 Coupon · 钞券雕刻凭证设计系统 · 站9 */
:root{
  --paper:#EAE0C8; --bill:#F6EFDD; --bill-2:#F1E7CF;
  --ink:#241408; --ink-2:#4A3A24; --ink-soft:#5A4327;
  --copper:#6E3B1C; --copper-2:#8A5A33; --copper-l:#B98C5A;
  --rule:#D8C7A2; --rule-2:#C9B68C;
  --seal:#B11E33; --seal-d:#8E1024;
  --gold:#C8A24A; --dark:#241408; --dark-2:#2E1B0C; --on-dark:#CBB890;
  --f-engrave:"Playfair Display",Georgia,"Songti SC",serif;
  --f-sans:"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --f-mono:"Spline Sans Mono",ui-monospace,"Cascadia Mono",monospace;
  --wrap:1080px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--f-sans); font-size:17px; line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--wrap); margin:0 auto; padding:0 20px}
a{color:var(--copper); text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; height:auto}
h1,h2,h3,h4{font-family:var(--f-sans); font-weight:900; color:var(--ink); line-height:1.25; letter-spacing:.005em}
.mono{font-family:var(--f-mono)}
.engrave{font-family:var(--f-engrave)}

/* —— guilloché 雕纹 / rosette —— */
.gl{stroke:var(--copper); stroke-width:.6; fill:none; opacity:.65}
.gl--light{stroke:var(--copper-l)}
.gl-band{display:block; width:100%; height:22px}
.rosette{flex:none}

/* —— topbar —— */
.topbar{background:var(--bill); border-bottom:1px solid var(--copper)}
.topbar__in{display:flex; align-items:center; justify-content:space-between; gap:16px; height:54px}
.brand{font-family:var(--f-mono); font-size:17px; font-weight:500; letter-spacing:.06em; color:var(--ink); white-space:nowrap}
.brand b{color:var(--seal); font-weight:500}
.nav{display:flex; gap:18px; font-size:14px; flex-wrap:wrap; justify-content:center}
.nav a{color:var(--ink-soft)}
.tag-unofficial{font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; color:var(--copper); border:1px solid var(--copper-l); padding:3px 8px; white-space:nowrap}
.lang-switch{font-family:var(--f-mono); font-size:11px; letter-spacing:.03em; color:var(--copper); border:1px solid var(--copper-l); padding:3px 7px; border-radius:5px; white-space:nowrap; text-decoration:none; line-height:1.5}
.lang-switch:hover{border-color:var(--copper); background:var(--copper); color:var(--paper)}
.menu-toggle{display:none}

/* —— 凭证票面 —— */
.bill{background:var(--bill); border:2px solid var(--copper); position:relative}
.bill__inner{border:1px solid var(--copper-l); margin:6px; overflow:hidden}
.overline{font-family:var(--f-mono); font-size:11px; letter-spacing:.3em; color:var(--copper); text-transform:uppercase}

/* —— hero 凭证 —— */
.hero{padding:26px 0 6px}
.cert-head{text-align:center; padding:22px 18px 14px}
.cert-emblem{display:flex; align-items:center; justify-content:center; gap:26px; margin-top:12px; flex-wrap:nowrap}
.wordmark{font-family:var(--f-engrave); font-weight:900; font-size:clamp(46px,9vw,76px); color:var(--ink); line-height:.88; letter-spacing:.02em}
.wordmark__sub{font-family:var(--f-engrave); font-style:italic; font-weight:600; font-size:clamp(15px,2.4vw,20px); color:var(--copper); letter-spacing:.12em; margin-top:2px}
.cert-h1{max-width:600px; margin:12px auto 0; font-size:clamp(18px,2.6vw,23px); font-weight:700; color:var(--ink); line-height:1.4; letter-spacing:.01em}
.cert-lede{max-width:540px; margin:10px auto 0; font-size:16px; line-height:1.7; color:var(--ink-soft)}

.serial{font-family:var(--f-mono); font-size:clamp(26px,5vw,34px); font-weight:500; letter-spacing:.14em; color:var(--ink)}

/* —— 通用 section —— */
.section{margin:26px 0}
.section__label{font-family:var(--f-mono); font-size:11px; letter-spacing:.2em; color:var(--copper); margin-bottom:12px}
.panel{background:var(--bill); border:1px solid var(--copper); padding:20px 22px}

/* 票面要素 尺规条 */
.ledger{display:flex; align-items:stretch; text-align:center}
.ledger__cell{flex:1; padding:4px 12px}
.ledger__cell + .ledger__cell{border-left:1px solid var(--copper-l)}
.ledger__big{font-family:var(--f-engrave); font-weight:800; font-size:26px; color:var(--ink)}
.ledger__big.seal-c{color:var(--seal)}
.ledger__sub{font-size:13px; color:var(--ink-soft); margin-top:4px}

/* 面额对照 真表格 */
.denom{width:100%; border-collapse:collapse; font-size:15px}
.denom thead td{background:var(--ink); color:var(--bill); font-family:var(--f-mono); font-size:13px; letter-spacing:.04em; padding:9px 12px; text-align:left}
.denom tbody td,.denom tbody td{padding:9px 12px; border-bottom:1px solid var(--rule)}
.denom tbody tr:nth-child(even){background:var(--bill-2)}
.denom td:first-child{font-weight:700}
.denom .src{font-family:var(--f-mono); font-size:11px; color:var(--copper-2); margin-top:8px}

/* 工具凭条 / 文章存根 两栏 */
.cols-2{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.tool-row{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border-bottom:1px dotted var(--rule-2); font-family:var(--f-mono); font-size:15px}
.tool-row:last-child{border-bottom:0}
.tool-row a{color:var(--ink)}
.tool-row .no{color:var(--seal); margin-right:8px}
.tool-row .arr{color:var(--copper)}
.stub-list{border-left:2px dashed var(--copper-l); padding-left:14px}
.stub{padding:9px 0; border-bottom:1px solid var(--rule)}
.stub:last-child{border-bottom:0}
.stub a{font-size:16px; font-weight:700; color:var(--ink)}
.stub__meta{font-family:var(--f-mono); font-size:11px; color:var(--copper-2); margin-top:3px}

/* 风险条款 fine-print(深底) */
.terms{background:var(--dark); color:var(--on-dark); padding:18px 22px}
.terms .overline{color:var(--gold)}
.terms__body{column-count:2; column-gap:26px; font-size:13px; line-height:1.75; margin-top:8px}

/* 信任条 */
.trust{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  border:1px solid var(--copper-l); background:var(--bill); padding:12px 18px; font-family:var(--f-mono); font-size:13px; color:var(--ink-soft)}
.trust b{color:var(--copper); font-weight:500}

/* 厚页脚 宽内链枢纽 */
.site-footer{background:var(--dark); color:var(--on-dark); border-top:2px solid var(--copper); margin-top:30px; padding:26px 0 30px}
.foot-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px}
.foot-col h4{font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; color:var(--gold); font-weight:500; margin:0 0 10px}
.foot-col a{display:block; color:var(--on-dark); font-size:14px; padding:3px 0}
.foot-col a:hover{color:var(--bill)}
.foot-rule{margin:18px 0 12px}
.foot-meta{font-family:var(--f-mono); font-size:11.5px; color:#8A7A5C; line-height:1.7}

/* —— 文章排版 —— */
.article{background:var(--bill); border:1px solid var(--copper); padding:30px clamp(18px,4vw,46px); margin:24px 0}
.article__kicker{font-family:var(--f-mono); font-size:12px; letter-spacing:.12em; color:var(--seal)}
.article h1{font-size:clamp(28px,4.4vw,40px); margin:8px 0 6px}
.article__meta{font-family:var(--f-mono); font-size:12px; color:var(--copper-2); border-bottom:1px solid var(--rule); padding-bottom:14px; margin-bottom:18px}
.article__cover{margin:0 0 22px; border:1px solid var(--copper-l)}
.article__cover img{display:block}
.article p{margin:0 0 16px}
.article h2{font-size:24px; margin:30px 0 12px; padding-top:14px; border-top:2px solid var(--ink)}
.article h3{font-size:19px; margin:22px 0 8px}
.article ul,.article ol{margin:0 0 16px; padding-left:22px}
.article li{margin:5px 0}
.article a{color:var(--copper); text-decoration:underline; text-decoration-color:var(--copper-l)}
blockquote{margin:18px 0; padding:14px 18px; background:var(--bill-2); border-left:3px solid var(--seal); font-size:15.5px; color:var(--ink-2)}
.toc{background:var(--bill-2); border:1px solid var(--rule-2); padding:14px 18px; margin:0 0 22px}
.toc .overline{font-size:10px; margin-bottom:6px}
.toc ol{margin:0; padding-left:20px; font-size:15px}
.toc a{color:var(--ink); text-decoration:none}
.callout{background:var(--dark); color:var(--on-dark); padding:16px 20px; margin:20px 0; font-size:15px; line-height:1.7}
.callout .overline{color:var(--gold); margin-bottom:6px}
.handson{border:1px dashed var(--copper); background:var(--bill-2); padding:16px 20px; margin:20px 0}
.handson .overline{color:var(--copper); margin-bottom:6px}
/* 文内 affiliate 凭条 */
.cta-inline{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  border:2px solid var(--copper); background:var(--bill-2); padding:14px 18px; margin:24px 0}
.cta-inline__txt{font-size:15px; color:var(--ink)}
.cta-inline__txt b{color:var(--seal)}
.cta-inline .serial{font-size:22px}
.cta-note{flex-basis:100%; width:100%; font-size:11.5px; line-height:1.55; color:var(--copper-2); margin-top:10px; border-top:1px dashed var(--rule-2); padding-top:8px}
.cta-note b{color:var(--seal); font-weight:500}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:6px; background:var(--seal); color:var(--bill); font-weight:700;
  padding:11px 18px; text-decoration:none; font-size:15px; min-height:44px; box-sizing:border-box}
.btn:hover{background:var(--seal-d); text-decoration:none}
/* 内容来源(行内,非固定列表) */
.refs{font-size:14px; color:var(--ink-soft); border-top:1px solid var(--rule); margin-top:24px; padding-top:14px}
.refs a{color:var(--copper)}

/* 工具页 */
.tool-app{background:var(--bill); border:1px solid var(--copper); padding:22px; margin:22px 0}
.tool-app label{display:block; font-size:14px; color:var(--ink-soft); margin:14px 0 5px}
.tool-app input,.tool-app select{width:100%; font-family:var(--f-sans); font-size:16px; padding:10px 12px;
  background:#fff; border:1px solid var(--copper-l); color:var(--ink)}
.tool-app .out{font-family:var(--f-engrave); font-weight:800; font-size:34px; color:var(--ink); margin-top:6px}
.tool-app .row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.seg{display:inline-flex; border:1px solid var(--copper); margin-top:6px}
.seg button{font-family:var(--f-sans); font-size:14px; background:none; border:0; padding:8px 14px; cursor:pointer; color:var(--ink-soft)}
.seg button.on{background:var(--copper); color:var(--bill)}

.skip{position:absolute; left:-9999px}
.skip:focus{position:static; display:inline-block; padding:8px; background:var(--seal); color:#fff}

/* —— 移动端 —— */
@media(max-width:760px){
  body{font-size:16px}
  .nav{display:none; position:absolute; top:100%; left:0; right:0; background:var(--bill); border-bottom:1px solid var(--copper); flex-direction:column; padding:10px 20px; z-index:20}
  .nav.open{display:flex}
  .nav a{padding:11px 0; border-bottom:1px solid var(--rule); min-height:44px; display:flex; align-items:center}
  .topbar__in{position:relative; flex-wrap:wrap; height:auto; min-height:54px; padding:6px 0}
  .menu-toggle{display:inline-flex; align-items:center; min-height:44px; font-family:var(--f-mono); font-size:13px; background:none; border:1px solid var(--copper); color:var(--ink); padding:6px 12px; cursor:pointer}
  .tag-unofficial{display:block; order:5; flex-basis:100%; width:100%; text-align:center; border:0; border-top:1px solid var(--rule); margin-top:6px; padding:6px 0 0; color:var(--copper); font-size:11px; letter-spacing:.12em}
  .lang-switch{order:4; font-size:10px; padding:2px 10px; display:inline-flex; align-items:center; min-height:44px}
  .hero{padding:12px 0 4px}
  .cert-head{padding:12px 14px 6px}
  .cert-emblem{gap:13px; margin-top:6px}
  .wordmark{font-size:38px}
  .cert-h1{font-size:15px; line-height:1.28; margin-top:5px}
  .cert-emblem{margin-top:4px}
  .cert-lede{display:none}
  .rosette{width:36px; height:36px}
  .ledger{flex-wrap:wrap}
  .ledger__cell{flex:1 1 50%; padding:10px 8px}
  .ledger__cell + .ledger__cell{border-left:0}
  .ledger__cell:nth-child(3),.ledger__cell:nth-child(4){border-top:1px solid var(--copper-l)}
  .cols-2{grid-template-columns:1fr; gap:14px}
  .terms__body{column-count:1}
  .foot-grid{grid-template-columns:1fr 1fr}
  .denom{font-size:13.5px; display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%}
  .denom thead td,.denom tbody td{padding:7px 8px}
  .tool-app .row{grid-template-columns:1fr}
  /* 移动端触控区:面包屑/目录等导航型链接放大点击目标(内联正文文本链 WCAG 豁免,不强制 44px) */
  .article__kicker a{display:inline-block; padding:8px 4px; margin:-8px 0}
  .toc a{display:inline-block; padding:8px 2px; min-height:24px; line-height:1.5}
  .refs a{display:inline-block; padding:6px 0; line-height:1.6}
}
@media(max-width:380px){
  .wrap{padding:0 14px}
  .foot-grid{grid-template-columns:1fr}
}
