*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;background:#faf7f1;color:#333;line-height:1.7;max-width:760px;margin:0 auto;padding:16px}
article{background:#fff;border:1px solid #efe6d6;border-radius:12px;padding:20px}
h1{font-size:26px;color:#8a5a2b;margin-bottom:6px}
p.sub{color:#999;font-size:15px;margin-bottom:16px}
h2{font-size:20px;color:#8a5a2b;margin:22px 0 12px;border-bottom:2px solid #f0e6da;padding-bottom:6px}
p{font-size:16px;margin:8px 0;color:#333}
ul.poem-list{list-style:none}
ul.poem-list li{padding:10px 0;border-bottom:1px dashed #eee}
ul.poem-list a{text-decoration:none}
ul.poem-list h3{font-size:17px;color:#8a5a2b;font-weight:600}
ul.poem-list h3:hover{text-decoration:underline}
.poem-meta{font-size:13px;color:#999;margin-top:2px}
.more-note{margin-top:14px;padding:12px;background:#faf7f1;border-radius:8px;font-size:14px;color:#777}
ul.links{list-style:none;padding:0}
ul.links li{display:inline-flex;align-items:center;margin:4px 6px 4px 0}
ul.links a{display:inline-block;background:#f5f1ea;color:#8a5a2b;font-size:15px;padding:4px 12px;border-radius:6px;text-decoration:none}
ul.links .cnt{font-size:12px;color:#aaa;margin-left:4px}
.related{margin-top:24px}
/* 朝代筛选标签 + 排序 */
.poem-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dyn-filter{display:flex;flex-wrap:wrap;gap:6px}
.dyn-tag{display:inline-flex;align-items:center;gap:4px;border:1px solid #e0d0b8;background:#f7f1e7;color:#8a5a2b;font-size:14px;padding:4px 10px;border-radius:16px;cursor:pointer;transition:all .15s}
.dyn-tag:hover{background:#f0e6d6}
.dyn-tag.active{background:#8a5a2b;color:#fff;border-color:#8a5a2b}
.dyn-cnt{font-size:12px;opacity:.8}
.sort-toggle button{border:1px solid #d9cdb4;background:#fff;color:#6b5e51;font-size:14px;padding:5px 12px;border-radius:8px;cursor:pointer;transition:all .15s}
.sort-toggle button:hover{border-color:#8a5a2b;color:#8a5a2b}
.seo-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:2px;font-size:13.5px;line-height:1.6;background:var(--seo-bc-bg,#f6f1e6);border:1px solid var(--seo-bc-bd,#e6d9bf);border-radius:10px;padding:8px 14px;margin:0 0 18px;color:var(--seo-bc-muted,#8a7a62)}
.seo-breadcrumb a{color:var(--seo-bc-link,#8a5a2b);text-decoration:none;font-weight:500}
.seo-breadcrumb a:hover{color:var(--seo-bc-hover,#c0392b);text-decoration:underline}
.seo-breadcrumb .bc-sep{color:var(--seo-bc-sep,#c9b389);font-size:12px;margin:0 5px;font-family:serif}
.seo-breadcrumb .bc-current{color:var(--seo-bc-cur,#3d3327);font-weight:700;max-width:14em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:640px){.seo-breadcrumb{font-size:14px;line-height:1.7;padding:9px 13px;border-radius:8px;margin:0 0 16px}.seo-breadcrumb .bc-sep{font-size:13px;margin:0 6px}.seo-breadcrumb .bc-current{max-width:9em}}
.copybook-card{margin:22px 0;background:linear-gradient(180deg,var(--seo-cb-bg,#fffdf7),var(--seo-cb-bg2,#f8f2e4));border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:12px;padding:18px 16px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.copybook-card .cb-head{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.copybook-card .cb-badge{display:inline-block;background:var(--seo-cb-seal,#8b1a1a);color:#fff;font-size:12px;font-weight:700;padding:2px 9px;border-radius:4px;letter-spacing:3px;flex:none}
.copybook-card .cb-title{font-size:18px;font-weight:700;color:var(--seo-cb-title,#6e4520);margin:0}
.copybook-card .cb-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:2px 0 14px}
.cb-grids{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.cb-group{display:flex;flex-direction:column;gap:6px;align-items:center}
.cb-row{display:flex;gap:8px}
.cb-cell{position:relative;width:var(--seo-cell,72px);height:var(--seo-cell,72px);background-color:var(--seo-cell-bg,#fffefb);background-repeat:no-repeat;background-size:100% 100%;border:2px solid var(--seo-cell-bd,#a98455);border-radius:2px;overflow:hidden;flex:none}
.cb-cell .ch{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:"STKaiti","KaiTi","Noto Serif SC","Songti SC",serif;font-size:calc(var(--seo-cell,72px)*.62);font-weight:700;line-height:1;z-index:1}
.cb-cell.tian{background-image:linear-gradient(to right,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px)),linear-gradient(to bottom,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px))}
.cb-cell.mi{background-image:linear-gradient(to right,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px)),linear-gradient(to bottom,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px)),linear-gradient(45deg,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px)),linear-gradient(-45deg,transparent calc(50% - .75px),var(--seo-cell-guide,#dcc7a5) 50%,transparent calc(50% + .75px))}
.cb-cell .diag{display:none}
.cb-model .ch{color:var(--seo-cb-ink,#2b2620)}
.cb-trace .ch{color:var(--seo-cb-trace,rgba(178,44,32,.34))}
.cb-empty .ch{color:var(--seo-cb-ghost,rgba(122,104,76,.14))}
.cb-legend{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;font-size:12.5px;color:var(--seo-cb-note,#8a7a62);margin-top:12px}
.cb-legend b{color:var(--seo-cb-ink,#2b2620);font-weight:700}
.cb-legend .lg-trace{color:var(--seo-cb-trace2,#b22c20)}
.cb-legend .lg-ghost{color:var(--seo-cb-ghost2,#a08c6e)}
.cb-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px dashed var(--seo-cb-bd,#e0d2b8)}
.cb-cta{display:inline-block;background:var(--seo-cb-btn,#8a5a2b);color:#fff;font-size:15px;font-weight:600;padding:9px 20px;border-radius:8px;text-decoration:none;letter-spacing:1px}
.cb-cta:hover{background:var(--seo-cb-btnh,#7a4a1f)}
.cb-hint{font-size:12px;color:var(--seo-cb-ghost2,#a08c6e)}
@media(max-width:640px){.copybook-card{padding:16px 13px 14px;border-radius:10px;margin:18px 0}.copybook-card .cb-title{font-size:17px;line-height:1.5}.copybook-card .cb-note{font-size:14px;line-height:1.7}.cb-grids{gap:12px}.cb-row{gap:8px}:root{--seo-cell:60px}.cb-cell .ch{font-size:calc(var(--seo-cell)*.62)}.cb-legend{font-size:13.5px;gap:14px}.cb-cta{font-size:15px;padding:10px 18px}.cb-foot{justify-content:center;text-align:center;gap:12px}}
.cb-wx-banner{display:flex;align-items:center;gap:13px;margin:14px 0 2px;padding:11px 14px;background:linear-gradient(135deg,#101d16 0%,#13291d 55%,#0f2418 100%);border:1px solid #1f4230;border-radius:10px}
.cb-qr{flex:0 0 62px;width:62px;height:62px;position:relative;display:block;background:#fff;border-radius:7px;padding:5px;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.cb-qr .qr-dotfield{display:block;width:100%;height:100%;background-image:radial-gradient(#22332b 27%,transparent 29%),radial-gradient(#22332b 27%,transparent 29%);background-size:9px 9px;background-position:0 0,4.5px 4.5px;border-radius:3px}
.cb-qr .qr-c{position:absolute;width:14px;height:14px;border:3px solid #22332b;border-radius:3px;background:#fff}
.cb-qr .qr-c::after{content:"";position:absolute;inset:2px;background:#22332b;border-radius:1px}
.cb-qr .q-tl{top:4px;left:4px}
.cb-qr .q-tr{top:4px;right:4px}
.cb-qr .q-bl{bottom:4px;left:4px}
.cb-wx-text{flex:1;min-width:0;display:block}
.cb-wx-title{display:block;font-size:15px;line-height:1.5;color:#eafff2;font-weight:700;margin:0}
.cb-wx-title::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#07c160;margin-right:7px;vertical-align:1px;box-shadow:0 0 6px rgba(7,193,96,.8)}
.cb-wx-sub{display:block;font-size:12.5px;line-height:1.5;color:rgba(220,244,230,.66);margin:3px 0 0}
@media(max-width:640px){.cb-wx-banner{gap:11px;padding:11px 12px}.cb-qr{flex-basis:54px;width:54px;height:54px}.cb-wx-title{font-size:14.5px;line-height:1.6}.cb-wx-sub{font-size:13px;line-height:1.6}}
.rel-links-card{margin:0 0 22px;background:linear-gradient(180deg,var(--seo-cb-bg,#fffdf7),var(--seo-cb-bg2,#f8f2e4));border:1px solid var(--seo-cb-bd,#e0d2b8);border-left:4px solid var(--seo-cb-seal,#a33c2e);border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.rel-links-card .rl-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:2px}
.rel-links-card .rl-badge{flex:none;display:inline-block;padding:2px 9px;font-size:12px;font-weight:700;letter-spacing:3px;color:#fff;background:var(--seo-cb-seal,#a33c2e);border-radius:4px}
.rel-links-card .rl-title{font-size:16.5px;font-weight:700;color:var(--seo-cb-title,#6e4520);margin:0}
.rel-links-card .rl-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:3px 0 6px}
.rel-links-card .rl-block{margin:11px 0 0}
.rel-links-card .rl-sub{font-size:14px;font-weight:700;color:var(--seo-cb-title,#7a4a22);margin:0 0 8px;padding-left:10px;border-left:3px solid var(--seo-cell-bd,#c79a5e)}
.rel-links-card .rl-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:0;padding:0;list-style:none}
.rel-links-card .rl-chip{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;margin:0;font-size:13.5px;line-height:1.5;color:var(--seo-cb-title,#7a4a22);background:var(--seo-cell-bg,#fffefb);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:10px;text-decoration:none;text-align:center;transition:color .18s,border-color .18s,background .18s,transform .12s,box-shadow .18s;-webkit-tap-highlight-color:transparent;user-select:none}
.rel-links-card .rl-chip:hover{color:var(--seo-cb-btnh,#c0392b);border-color:var(--seo-cb-btnh,#c0392b);background:rgba(178,44,32,.05);text-decoration:none;box-shadow:0 2px 8px -3px rgba(178,44,32,.25)}
.rel-links-card .rl-chip:active{transform:scale(.96);background:rgba(178,44,32,.1);color:var(--seo-cb-btnh,#c0392b)}
.rel-links-card .rl-chip.evo{background:var(--seo-cb-bg,#f6f0e3)}
@media(max-width:640px){.rel-links-card{padding:15px 14px 14px;border-radius:10px}.rel-links-card .rl-title{font-size:16px;line-height:1.5}.rel-links-card .rl-note{font-size:14px;line-height:1.7}.rel-links-card .rl-sub{font-size:14.5px}.rel-links-card .rl-chips{grid-template-columns:repeat(2,1fr);gap:10px}.rel-links-card .rl-chip{font-size:14px;padding:11px 9px;min-height:48px;border-radius:9px}}
.pinyin-audio-card{margin:22px 0;background:linear-gradient(135deg,#fbf7ec,#f6efe0);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.pinyin-audio-card .pa-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.pinyin-audio-card .pa-badge{flex:none;display:inline-block;background:#0a7d43;color:#fff;font-size:12px;font-weight:700;letter-spacing:3px;padding:2px 9px;border-radius:4px}
.pinyin-audio-card .pa-title{font-size:16.5px;font-weight:700;color:#5a3a1a;margin:0}
.pinyin-audio-card .pa-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:2px 0 12px}
.pinyin-audio-card audio{width:100%;height:44px;margin:2px 0 10px}
.pinyin-audio-card audio:focus-visible{outline:2px solid #0a7d43;outline-offset:2px}
.pinyin-audio-card .pa-script{font-size:13.5px;line-height:1.8;color:#6e5c44;background:rgba(255,255,255,.65);border-left:3px solid #0a7d43;border-radius:0 8px 8px 0;padding:8px 12px;margin:0}
.pinyin-audio-card .pa-script b{color:#8b1a1a}
@media(max-width:640px){.pinyin-audio-card{padding:15px 14px 14px}.pinyin-audio-card .pa-title{font-size:16px;line-height:1.5}.pinyin-audio-card .pa-note{font-size:14px;line-height:1.7}.pinyin-audio-card audio{height:42px}.pinyin-audio-card .pa-script{font-size:14px;line-height:1.8}}
.stroke-card{margin:22px 0;background:var(--seo-cb-bg,#fffdf7);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.stroke-card .sc-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.stroke-card .sc-badge{flex:none;display:inline-block;background:#2b4a7a;color:#fff;font-size:12px;font-weight:700;letter-spacing:3px;padding:2px 9px;border-radius:4px}
.stroke-card .sc-title{font-size:16.5px;font-weight:700;color:var(--seo-cb-title,#6e4520);margin:0}
.stroke-card .sc-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:2px 0 12px}
.stroke-anim{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:6px 0 4px}
.stroke-anim .sa-unit{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:5px}
.stroke-anim .sa-cell{position:relative;width:84px;height:84px;background:var(--seo-cell-bg,#fffefb);border:2px solid var(--seo-cell-bd,#a98455);border-radius:4px;overflow:hidden}
.stroke-anim .sa-cell svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.stroke-anim .sa-cell svg .st-path{fill:none;stroke:var(--seo-cb-ink,#2b2620);stroke-width:7px;stroke-linecap:round;stroke-linejoin:round}
.stroke-anim .sa-cell svg .st-guide{fill:none;stroke:var(--seo-cell-guide,#dcc7a5);stroke-width:1.5px}
.stroke-anim .sa-cell svg .st-next{stroke:rgba(178,44,32,.28)}
.stroke-anim .sa-num{font-size:12.5px;color:var(--seo-cb-note,#8a7a62);line-height:1.4;text-align:center}
.stroke-anim .sa-num b{color:var(--seo-cb-title,#7a4a22);font-weight:700}
.stroke-anim .sa-cell.sa-anim .st-path{opacity:0;animation:stStrokeReveal .45s steps(1,end) forwards}
@keyframes stStrokeReveal{to{opacity:1}}
.stroke-steps{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 0;padding:0;list-style:none}
.stroke-steps .ss-chip{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:4px 10px;font-size:13px;line-height:1.5;color:#2b4a7a;background:rgba(43,74,122,.07);border:1px solid rgba(43,74,122,.25);border-radius:999px}
.stroke-steps .ss-chip b{font-weight:700;margin-right:2px}
.stroke-hint{font-size:12px;color:var(--seo-cb-ghost2,#a08c6e);margin:9px 0 0;text-align:center}
/* 尊重用户减速动效偏好：动画替换为静态全显 */
@media(prefers-reduced-motion:reduce){.stroke-anim .sa-anim .st-path{animation:none;opacity:1}}
@media(max-width:640px){.stroke-card{padding:15px 14px 14px}.stroke-card .sc-title{font-size:16px;line-height:1.5}.stroke-card .sc-note{font-size:14px;line-height:1.7}.stroke-anim .sa-cell{width:68px;height:68px}.stroke-anim .sa-cell svg .st-path{stroke-width:9px}.stroke-anim{gap:9px}.stroke-anim .sa-num{font-size:13px;line-height:1.5}.stroke-steps .ss-chip{font-size:13px;min-width:32px}}
.print-sheet{margin:22px 0;background:var(--seo-cb-bg,#fffdf7);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.print-sheet .ps-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.print-sheet .ps-badge{flex:none;display:inline-block;background:#8a5a2b;color:#fff;font-size:12px;font-weight:700;letter-spacing:3px;padding:2px 9px;border-radius:4px}
.print-sheet .ps-title{font-size:16.5px;font-weight:700;color:var(--seo-cb-title,#6e4520);margin:0}
.print-sheet .ps-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:2px 0 12px}
.print-sheet .ps-btn{display:inline-block;background:#8a5a2b;color:#fff;font-size:14.5px;font-weight:600;padding:9px 22px;border-radius:8px;text-decoration:none;letter-spacing:1px;border:none;cursor:pointer}
.print-sheet .ps-btn:hover{background:#7a4a1f}
.print-sheet .ps-btn:active{transform:scale(.97)}
.print-sheet .ps-tips{font-size:12.5px;color:var(--seo-cb-note,#8a7a62);margin:10px 0 0;line-height:1.7}
/* A4 练习排版（屏幕隐藏，打印独占页面） */
.print-practice{display:none}
@media print{
  @page{size:A4 portrait;margin:12mm 10mm}
  body{background:#fff!important}
  body>*{display:none!important}
  body>.print-practice{display:block!important}
  .print-practice{display:block;font-family:"STKaiti","KaiTi","Noto Serif SC","Songti SC",serif;color:#111}
  .pp-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2.5px solid #333;padding-bottom:4mm;margin-bottom:5mm}
  .pp-head h1{font-size:17pt;margin:0;letter-spacing:2px}
  .pp-head .pp-meta{font-size:10.5pt;color:#444;font-family:sans-serif}
  .pp-row{display:flex;flex-wrap:wrap;gap:0;margin-bottom:5mm}
  .pp-unit{flex:0 0 25%;box-sizing:border-box;padding:1.5mm;display:flex;flex-direction:column;align-items:center}
  .pp-py{font-size:12pt;height:7mm;line-height:7mm;font-family:"Songti SC","SimSun",serif;color:#222;letter-spacing:1px}
  .pp-grid{position:relative;width:34mm;height:34mm;border:1.2mm solid #444;box-sizing:border-box;background:#fff}
  /* 田字格：横竖中线 */
  .pp-grid.tian::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:.4mm dashed #999}
  .pp-grid.tian::after{content:"";position:absolute;top:50%;left:0;right:0;border-top:.4mm dashed #999}
  /* 米字格：横竖中线 + 两条对角线 */
  .pp-grid.mi::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:.4mm dashed #999}
  .pp-grid.mi::after{content:"";position:absolute;top:50%;left:0;right:0;border-top:.4mm dashed #999}
  .pp-grid.mi{background-image:linear-gradient(to top right,transparent calc(50% - .4mm),#bbb 50%,transparent calc(50% + .4mm)),linear-gradient(to top left,transparent calc(50% - .4mm),#bbb 50%,transparent calc(50% + .4mm))}
  .pp-grid .pp-char{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:23mm;font-weight:700;color:#111;line-height:1}
  .pp-grid .pp-char.pp-trace{color:rgba(178,44,32,.3)}
  .pp-grid .pp-char.pp-ghost{color:rgba(17,17,17,.12)}
  .pp-grid .pp-step-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
  .pp-count{font-size:9.5pt;color:#555;margin-top:1.5mm;font-family:sans-serif}
  .pp-stroke-line{font-size:10.5pt;color:#333;border-top:1px solid #bbb;margin-top:4mm;padding-top:2mm;font-family:sans-serif}
  .pp-foot{font-size:9.5pt;color:#666;text-align:center;border-top:1px solid #ccc;margin-top:5mm;padding-top:2mm;font-family:sans-serif}
  .print-practice,.print-practice *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media(max-width:640px){.print-sheet .ps-btn{width:100%;text-align:center;font-size:14px;padding:10px 0}.print-sheet{padding:13px 13px 12px}}
.ancient-compare-card{margin:22px 0;background:linear-gradient(180deg,#faf6ee,#f5eee0);border:1px solid #dfd2bc;border-left:4px solid #8a5a2b;border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px rgba(138,90,43,.25)}
.ancient-compare-card .ac-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.ancient-compare-card .ac-badge{flex:none;display:inline-block;background:#8a5a2b;color:#fff;font-size:12px;font-weight:700;letter-spacing:2px;padding:2px 9px;border-radius:4px}
.ancient-compare-card .ac-title{font-size:16.5px;font-weight:700;color:#5a3a1a;margin:0}
.ancient-compare-card .ac-note{font-size:13px;color:#8a7a62;margin:2px 0 14px}
.ancient-compare-card .ac-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 6px}
.ancient-compare-card .ac-col{display:flex;flex-direction:column;align-items:center;background:#fffdf9;border:1px solid #e3d5be;border-radius:10px;padding:12px 8px;text-align:center;box-shadow:0 2px 8px -3px rgba(0,0,0,.06)}
.ancient-compare-card .ac-col-title{font-size:14px;font-weight:700;color:#7a4a22;margin-bottom:2px}
.ancient-compare-card .ac-col-era{font-size:11.5px;color:#9e8a70;margin-bottom:8px}
.ancient-compare-card .ac-figure{width:100%;max-width:140px;height:120px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #eee5d4;border-radius:8px;overflow:hidden;margin:0 auto 8px}
.ancient-compare-card .ac-figure img{max-width:100%;max-height:100%;object-fit:contain;border:none}
.ancient-compare-card .ac-glyph{font-size:42px;font-family:"STKaiti","KaiTi","Noto Serif SC","Songti SC",serif;color:#3a2a1a;line-height:1}
.ancient-compare-card .ac-desc{font-size:12px;color:#665544;line-height:1.5;margin:0}
@media(max-width:640px){
  .ancient-compare-card{padding:13px 12px 12px}
  .ancient-compare-card .ac-grid{gap:8px}
  .ancient-compare-card .ac-figure{height:90px}
  .ancient-compare-card .ac-col-title{font-size:13px}
  .ancient-compare-card .ac-desc{font-size:11px}
}
@keyframes ctaFadeIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ctaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3.5px)}}
@keyframes ctaPulse{0%,100%{box-shadow:0 6px 18px -6px rgba(7,193,96,.6);transform:scale(1)}50%{box-shadow:0 10px 24px -4px rgba(7,193,96,.85);transform:scale(1.01)}}
.page-cta-footer{margin:30px 0 0;padding:24px 20px 26px;background:linear-gradient(135deg,#101d16 0%,#13291d 55%,#0f2418 100%);border-top:3px solid #1f4230;color:#eafff2;animation:ctaFadeIn .8s cubic-bezier(.16,1,.3,1) both,ctaFloat 4s ease-in-out infinite .8s;will-change:transform,opacity}
.pf-inner{display:flex;align-items:center;gap:16px;max-width:820px;margin:0 auto}
.pf-qr{flex:0 0 72px;width:72px;height:72px;position:relative;display:block;background:#fff;border-radius:8px;padding:6px;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.pf-qr .qr-dotfield{display:block;width:100%;height:100%;background-image:radial-gradient(#22332b 27%,transparent 29%),radial-gradient(#22332b 27%,transparent 29%);background-size:9px 9px;background-position:0 0,4.5px 4.5px;border-radius:3px}
.pf-qr .qr-c{position:absolute;width:15px;height:15px;border:3px solid #22332b;border-radius:3px;background:#fff}
.pf-qr .qr-c::after{content:"";position:absolute;inset:2px;background:#22332b;border-radius:1px}
.pf-qr .q-tl{top:5px;left:5px}
.pf-qr .q-tr{top:5px;right:5px}
.pf-qr .q-bl{bottom:5px;left:5px}
.pf-text{flex:1;min-width:0;display:block}
.pf-title{display:block;font-size:16px;line-height:1.5;color:#eafff2;font-weight:700;margin:0}
.pf-title::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#07c160;margin-right:7px;vertical-align:1px;box-shadow:0 0 6px rgba(7,193,96,.8)}
.pf-sub{display:block;font-size:13px;line-height:1.6;color:rgba(220,244,230,.66);margin:5px 0 0}
.pf-open{display:flex;align-items:center;justify-content:center;gap:6px;max-width:820px;margin:16px auto 0;padding:13px 20px;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,#07c160 0%,#06ad56 100%);border-radius:10px;text-decoration:none;box-shadow:0 6px 18px -6px rgba(7,193,96,.6);transition:transform .15s,box-shadow .15s;animation:ctaPulse 2.8s ease-in-out infinite}
.pf-open:hover{transform:translateY(-1px) scale(1.015);box-shadow:0 12px 28px -6px rgba(7,193,96,.85)}
.pf-open .pf-arrow{font-size:18px;line-height:1}
@media(max-width:640px){.page-cta-footer{padding:20px 15px 22px;margin:24px 0 0}.pf-inner{gap:13px}.pf-qr{flex-basis:62px;width:62px;height:62px}.pf-title{font-size:15px;line-height:1.6}.pf-sub{font-size:13px;line-height:1.7}.pf-open{font-size:15px;padding:13px 18px}}
/* ── 页面右下角悬浮小程序码与一键打开小程序浮层（淡入 + 弹性展开） ── */
.floating-miniprogram-widget{position:fixed;right:22px;bottom:26px;z-index:99999;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;animation:fmAppear .6s ease-out .3s both}
@keyframes fmAppear{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.fm-bubble{opacity:0;visibility:hidden;transform:scale(.82) translateY(12px);transform-origin:bottom right;background:#ffffff;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;box-shadow:0 12px 28px -6px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.04);align-items:center;gap:12px;width:224px;transition:opacity .26s ease,visibility .26s,transform .42s cubic-bezier(.34,1.56,.64,1)}
.floating-miniprogram-widget:hover .fm-bubble,.floating-miniprogram-widget:focus-within .fm-bubble{opacity:1;visibility:visible;transform:scale(1) translateY(0)}
.fm-qr{flex:0 0 70px;width:70px;height:70px;position:relative;background:#fff;border-radius:6px;padding:5px;box-shadow:0 0 0 1px #cbd5e1}
.fm-qr .qr-dotfield{display:block;width:100%;height:100%;background-image:radial-gradient(#1e293b 27%,transparent 29%),radial-gradient(#1e293b 27%,transparent 29%);background-size:8px 8px;background-position:0 0,4px 4px;border-radius:2px}
.fm-qr .qr-c{position:absolute;width:14px;height:14px;border:3px solid #1e293b;border-radius:3px;background:#fff}
.fm-qr .qr-c::after{content:"";position:absolute;inset:2px;background:#1e293b;border-radius:1px}
.fm-qr .q-tl{top:4px;left:4px}.fm-qr .q-tr{top:4px;right:4px}.fm-qr .q-bl{bottom:4px;left:4px}
.fm-tip{display:flex;flex-direction:column;gap:3px;text-align:left}
.fm-tip strong{font-size:13.5px;color:#0f172a;font-weight:700;display:flex;align-items:center;gap:5px}
.fm-tip strong::before{content:"";width:6px;height:6px;border-radius:50%;background:#07c160;display:inline-block}
.fm-tip span{font-size:11px;line-height:1.45;color:#64748b}
.fm-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 18px;background:linear-gradient(135deg,#07c160,#059669);color:#ffffff!important;font-size:14px;font-weight:600;border-radius:9999px;text-decoration:none!important;box-shadow:0 6px 18px -4px rgba(7,193,96,.55),0 2px 6px rgba(0,0,0,.08);transition:transform .2s,box-shadow .2s;cursor:pointer}
.fm-btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px -4px rgba(7,193,96,.7)}
.fm-icon{font-size:15px;line-height:1}
@media (max-width:768px){.floating-miniprogram-widget{right:12px;bottom:16px}.fm-btn{padding:8px 14px;font-size:12.5px}}
@media (prefers-reduced-motion:reduce){.floating-miniprogram-widget{animation:none}.fm-bubble{transition:none}}
.char-links-card{margin:0 0 22px;background:linear-gradient(180deg,var(--seo-cb-bg,#fffdf7),var(--seo-cb-bg2,#f8f2e4));border:1px solid var(--seo-cb-bd,#e0d2b8);border-left:4px solid var(--seo-cb-seal,#a33c2e);border-radius:12px;padding:16px 18px 14px;box-shadow:0 6px 20px -10px var(--seo-cb-shadow,rgba(138,90,43,.28))}
.char-links-card .cl-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:2px}
.char-links-card .cl-badge{flex:none;display:inline-block;padding:2px 9px;font-size:12px;font-weight:700;letter-spacing:3px;color:#fff;background:var(--seo-cb-seal,#a33c2e);border-radius:4px}
.char-links-card .cl-title{font-size:16.5px;font-weight:700;color:var(--seo-cb-title,#6e4520);margin:0}
.char-links-card .cl-note{font-size:13px;color:var(--seo-cb-note,#8a7a62);margin:3px 0 6px}
.char-links-card .cl-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;margin:0;padding:0;list-style:none}
.char-links-card .cl-chip{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 10px;font-size:15px;line-height:1.5;color:var(--seo-cb-title,#7a4a22);background:var(--seo-cell-bg,#fffefb);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:10px;text-decoration:none;text-align:center;transition:color .18s,border-color .18s,background .18s,transform .12s}
.char-links-card .cl-chip:hover{color:var(--seo-cb-btnh,#c0392b);border-color:var(--seo-cb-btnh,#c0392b);background:rgba(178,44,32,.05)}
.char-links-card .cl-chip:active{transform:scale(.96)}
.char-pagenav{display:flex;justify-content:space-between;gap:10px;margin:0 0 22px}
.char-pagenav .pn-link{flex:1;display:flex;align-items:center;gap:6px;padding:10px 14px;font-size:14px;color:var(--seo-cb-title,#7a4a22);background:var(--seo-cell-bg,#fffefb);border:1px solid var(--seo-cb-bd,#e0d2b8);border-radius:10px;text-decoration:none;transition:color .18s,border-color .18s,transform .12s}
.char-pagenav .pn-link:hover{color:var(--seo-cb-btnh,#c0392b);border-color:var(--seo-cb-btnh,#c0392b)}
.char-pagenav .pn-next{justify-content:flex-end}
.char-pagenav .pn-disabled{opacity:.4}
.char-pagenav .pn-char{font-size:20px;font-weight:700}
.char-pagenav .pn-arrow{font-size:18px}
@media(max-width:640px){.char-links-card{padding:15px 14px 14px;border-radius:10px}.char-links-card .cl-title{font-size:16px;line-height:1.5}.char-links-card .cl-note{font-size:14px;line-height:1.7}.char-links-card .cl-chips{grid-template-columns:repeat(4,1fr);gap:9px}.char-links-card .cl-chip{font-size:16px;padding:11px 6px;min-height:48px;border-radius:9px}.char-pagenav{gap:9px}.char-pagenav .pn-link{padding:11px 12px;font-size:14px}.char-pagenav .pn-char{font-size:20px}}
