/* style.css —— 朝代编年史共享样式表
 * 说明：本文件由「明朝编年史.html」内联 <style> 区块原样提取（该页内联了完整样式表，
 *       注释中也写明「各朝纸色：与 style.css 同一体系」）。
 *       供 元/唐/宋/清 四个页面通过 <link rel="stylesheet" href="style.css"> 引用。
 *       若你有原始 style.css，直接用你的覆盖本文件即可（静态服务实时读盘，无需重启）。
 */
:root{
  --paper:#F3EFE3; --paper2:#EBE5D3; --paper3:#E2D9C2;
  --ink:#28241A; --ink2:#5A5344; --ink3:#8C8370;
  --zhu:#A32E22; --zhu-deep:#7E231A; --jin:#95762B; --qing:#2F5D6D; --hui:#6B5A63;
  --line:#D9CFB6;
  --barbg:rgba(243,239,227,.92);
  --serif:"Noto Serif SC","Source Han Serif SC","Source Han Serif CN","Songti SC","SimSun",serif;
  --kai:"Kaiti SC","STKaiti","KaiTi","BiauKai","DFKai-SB",var(--serif);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}
::selection{background:rgba(163,46,34,.18)}
a{color:var(--zhu)}
:focus-visible{outline:2px dashed var(--zhu);outline-offset:3px}

/* ---------- 顶栏 ---------- */
#progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--zhu);z-index:60}
.bar{position:fixed;top:0;left:0;right:0;z-index:50;background:var(--barbg);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar-in{max-width:1060px;margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:14px}
.seal{width:34px;height:34px;flex:none;background:var(--zhu);color:#F7F1E1;font-family:var(--kai);font-size:20px;line-height:34px;text-align:center;border-radius:4px;transform:rotate(-4deg);box-shadow:0 1px 3px rgba(60,40,20,.35)}
.seal-sm{font-size:13px;letter-spacing:0}
.brand{font-family:var(--kai);font-weight:700;font-size:17px;letter-spacing:.18em;white-space:nowrap}
.yr{font-family:Georgia,var(--serif);color:var(--ink3);font-size:12px;white-space:nowrap}
.chips{display:flex;gap:4px;overflow-x:auto;margin-left:auto;scrollbar-width:none;padding-bottom:2px;min-width:0;flex:0 1 auto}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;font-family:var(--kai);font-size:13px;letter-spacing:.15em;color:var(--ink2);text-decoration:none;padding:3px 9px;border:1px solid transparent;border-radius:2px}
.chip:hover{color:var(--zhu);border-color:var(--line)}
.chip.on{color:var(--zhu);border-color:var(--zhu);background:rgba(163,46,34,.06)}
.chips-more{flex:none;font-family:var(--kai);font-size:12px;letter-spacing:.08em;color:var(--ink3);background:none;border:1px solid var(--line);border-radius:2px;padding:3px 8px;cursor:pointer;white-space:nowrap}
.chips-more:hover{color:var(--zhu);border-color:var(--zhu)}
.chips-more[hidden]{display:none}
.chips-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(92vw,760px);max-height:62vh;overflow:auto;overscroll-behavior:contain;background:var(--paper);border:1px solid var(--line);border-top:none;box-shadow:0 10px 24px rgba(60,40,20,.18);padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:2px;z-index:55}
.chips-panel[hidden]{display:none}
.chips-panel a{font-family:var(--kai);font-size:13px;letter-spacing:.12em;color:var(--ink2);text-decoration:none;padding:7px 9px;border:1px solid transparent;border-radius:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chips-panel a:hover{color:var(--zhu);border-color:var(--line);background:var(--paper2)}
.chips-panel a.on{color:var(--zhu);border-color:var(--zhu);background:rgba(163,46,34,.06)}
.home-link{flex:none;margin-left:0;font-family:var(--kai);font-size:12px;letter-spacing:.12em;color:var(--ink3);text-decoration:none;padding:3px 8px;border:1px solid var(--line);border-radius:2px;white-space:nowrap}
.home-link:hover{color:var(--zhu);border-color:var(--zhu)}
.pinyin-toggle{flex:none;font-family:var(--kai);font-size:12px;letter-spacing:.1em;color:var(--ink3);background:none;border:1px solid var(--line);border-radius:2px;padding:3px 8px;cursor:pointer;white-space:nowrap}
.pinyin-toggle:hover{color:var(--zhu);border-color:var(--zhu)}
.pinyin-toggle[aria-pressed="true"]{color:var(--zhu);border-color:var(--zhu);background:rgba(163,46,34,.06)}

/* ---------- 生僻字拼音 ---------- */
ruby{ruby-position:over;ruby-align:center}
rt{font-size:max(9px,.52em);color:var(--ink3);font-family:var(--serif);font-weight:400;letter-spacing:0;line-height:1.1}
body.pinyin-off rt{display:none}
@media(max-width:560px){
  .bar-in{gap:8px;padding:10px 14px}
  .yr{display:none}
  .brand{font-size:15px;letter-spacing:.12em}
  .home-link{padding:3px 6px;letter-spacing:.06em}
}

/* ---------- 卷首 ---------- */
.hero{max-width:1060px;margin:0 auto;padding:130px 20px 60px;text-align:center}
.hero-seal{width:76px;height:76px;font-size:46px;line-height:76px;margin:0 auto 30px}
.hero-seal.seal-sm{font-size:28px;letter-spacing:0}
.hero h1{font-family:var(--kai);font-weight:900;font-size:clamp(44px,9vw,86px);letter-spacing:.22em;text-indent:.22em}
.hero .sub{margin-top:14px;font-size:15px;color:var(--ink2);letter-spacing:.35em;text-indent:.35em}
.duet{display:flex;justify-content:center;align-items:stretch;gap:34px;margin-top:44px}
.vq{writing-mode:vertical-rl;font-family:var(--kai);font-size:20px;letter-spacing:.3em;color:var(--ink2);border-top:3px solid var(--zhu);padding-top:12px;min-height:210px}
.vq small{display:block;font-size:11px;color:var(--ink3);letter-spacing:.2em;margin-top:10px}
.stats{display:flex;justify-content:center;gap:44px;flex-wrap:wrap;margin-top:40px}
.stat b{display:block;font-family:Georgia,var(--serif);font-size:34px;font-weight:600;color:var(--zhu)}
.stat span{font-size:13px;color:var(--ink2);letter-spacing:.2em}
.lede{max-width:640px;margin:44px auto 0;text-align:left;color:var(--ink2);font-size:15px}
.lede .legend{margin-top:14px;color:var(--ink3);font-size:13px}

/* ---------- 分卷 ---------- */
main{max-width:1060px;margin:0 auto;padding:0 20px}
.ch{padding:70px 0 10px}
.chh{display:flex;gap:26px;align-items:flex-start}
.mast{flex:none;writing-mode:vertical-rl;font-family:var(--kai);font-size:56px;font-weight:900;letter-spacing:.25em;line-height:1.15;padding:14px 12px;border-right:2px solid var(--currentColor,var(--zhu));user-select:none}
.rh{font-size:13px;color:var(--ink3);letter-spacing:.25em;margin-bottom:6px}
.chh h2{font-family:var(--kai);font-weight:900;font-size:34px;letter-spacing:.12em;line-height:1.3}
.chh h2 small{font-family:Georgia,var(--serif);font-size:15px;font-weight:400;color:var(--ink3);letter-spacing:.08em;margin-left:10px}
.ci{margin-top:10px;color:var(--ink2);font-size:15px;max-width:70ch}
.cf{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}
.cf i{font-style:normal;font-size:12px;color:var(--ink2);border:1px solid var(--line);border-radius:2px;padding:2px 8px;background:var(--paper2)}
.acc-zhu{--currentColor:var(--zhu)} .acc-jin{--currentColor:var(--jin)} .acc-qing{--currentColor:var(--qing)} .acc-hui{--currentColor:var(--hui)}
.ch::before{content:"";display:block;width:46px;height:6px;background:var(--currentColor);margin-bottom:26px}

/* ---------- 本朝图览 ---------- */
.chron-overview{margin:30px 0 0 96px;padding:18px 0 15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.chron-overview-label{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-family:var(--kai);font-size:15px;font-weight:700;letter-spacing:.14em;color:var(--zhu-deep)}
.chron-overview-label span{font-family:var(--serif);font-size:11px;font-weight:400;letter-spacing:.12em;color:var(--ink3)}
.chron-overview-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,2fr);gap:22px;align-items:start}
.chron-portrait{margin:0;min-width:0}
.chron-art{position:relative;overflow:hidden;background:var(--paper2);border:1px solid #C8B78E}
.chron-art img{position:absolute;top:0;max-width:none;height:auto;display:block}
.chron-portrait figcaption{padding:12px 0 0;text-align:center;font-family:var(--kai);font-size:18px;letter-spacing:.1em;line-height:1.45}
.chron-portrait figcaption strong{font-weight:700}
.chron-portrait figcaption span{margin-left:10px;color:var(--ink2);font-size:16px}
.chron-scenes{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin:0;padding:0}
.chron-scenes li{min-width:0}
.chron-scene{display:block;text-decoration:none;color:var(--ink);height:100%}
.chron-scene-caption{padding:8px 2px 0}
.chron-scene-date{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;line-height:1.4;color:var(--zhu-deep)}
.chron-scene-date time{font-family:Georgia,var(--serif);font-size:19px;font-weight:600}
.chron-scene-date .chron-era{font-family:var(--kai);font-size:12px;letter-spacing:.03em}
.chron-scene-date .chron-date-dot{font-size:11px;color:var(--ink3)}
.chron-scene-name{margin-top:3px;font-family:var(--kai);font-size:17px;font-weight:700;line-height:1.45;letter-spacing:.03em}
.chron-scene:hover .chron-art{border-color:var(--zhu)}
.chron-scene:hover .chron-scene-name{color:var(--zhu)}
.chron-source{margin-top:14px;font-size:11px;line-height:1.6;letter-spacing:.06em;color:var(--ink3)}
.ev[id]{scroll-margin-top:88px}
.ev[id]:target .bd h3{color:var(--zhu-deep)}
@media(max-width:860px){
  .chron-overview{margin-left:34px}
  .chron-overview-grid{gap:18px}
  .chron-scenes{gap:16px 12px}
}
@media(max-width:680px){
  .chron-overview-grid{grid-template-columns:1fr;gap:18px}
  .chron-portrait{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:16px}
  .chron-portrait figcaption{padding:0;text-align:left;font-size:21px}
  .chron-portrait figcaption span{display:block;margin:5px 0 0;font-size:16px}
  .chron-overview-label{margin-bottom:14px}
  .chron-scene-name{font-size:16px}
}
@media(max-width:560px){
  .chron-overview{margin-left:0;margin-top:25px}
  .chron-scenes{gap:16px 12px}
  .chron-scene-date time{font-size:18px}
  .chron-scene-date .chron-era{font-size:11px}
  .chron-source{font-size:10px}
}
@media print{.chron-overview{break-inside:avoid}}

/* ---------- 短朝图览 ---------- */
.chron-scenes--three li:last-child{grid-column:1 / -1}
.chron-scenes--two{grid-template-columns:1fr}
.chron-portrait figcaption span{overflow-wrap:anywhere}
.chron-art{isolation:isolate}

/* ---------- 参考样张图览 ---------- */
.chron-scene{border:1px solid #C8B78E;background:var(--paper)}
.chron-scene .chron-art{border:0}
.chron-scene-caption{padding:8px 5px 10px;min-height:72px;text-align:center;background:var(--paper)}
.chron-scene-date{justify-content:center}
.chron-scene-date .chron-era,.chron-scene-name,.chron-portrait figcaption{font-family:var(--serif)}
.chron-scene:hover{border-color:var(--zhu)}
@media(max-width:560px){
  .chron-scene-caption{padding:7px 3px 9px;min-height:68px}
  .chron-scene-name{font-size:14px;letter-spacing:0}
  .chron-scene-date{gap:4px}
}

/* ---------- 条目 ---------- */
.evs{list-style:none;margin:36px 0 0 96px}
.ev{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);break-inside:avoid}
.ev:last-child{border-bottom:none}
.yr2{flex:none;width:70px;text-align:right}
.yr2 .g{display:block;font-family:Georgia,var(--serif);font-size:21px;font-weight:600;color:var(--zhu-deep);line-height:1.2}
.yr2 .e{display:block;margin-top:2px;font-family:var(--kai);font-size:12px;color:var(--ink3);letter-spacing:.06em}
.bd{flex:1}
.bd h3{font-family:var(--kai);font-size:19px;font-weight:700;letter-spacing:.05em;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cat{flex:none;width:19px;height:19px;border-radius:3px;color:#F7F1E1;font-family:var(--kai);font-size:12px;line-height:19px;text-align:center;letter-spacing:0;text-indent:0}
.c-zheng{background:var(--zhu)} .c-jun{background:#3C362A} .c-jing{background:var(--jin)} .c-wen{background:var(--qing)} .c-yi{background:var(--hui)}
.bd p{margin-top:8px;font-size:15.5px;color:#3A352A}
.pi{margin-top:12px;display:flex;gap:10px;align-items:flex-start;background:rgba(163,46,34,.055);border-left:3px solid var(--zhu);padding:8px 14px;border-radius:0 4px 4px 0}
.pi b{flex:none;font-size:11px;color:var(--paper);background:var(--zhu);font-family:var(--kai);font-weight:700;padding:1px 7px;border-radius:2px;letter-spacing:.2em;margin-top:5px}
.pi span{font-family:var(--kai);font-size:16px;color:var(--zhu-deep);line-height:1.75}

/* ---------- 引文 ---------- */
.q{margin:40px 0 0 96px;background:var(--paper2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 26px;break-inside:avoid}
.q p{font-family:var(--kai);font-size:21px;line-height:1.8;letter-spacing:.08em}
.q p::before{content:"「";color:var(--zhu)}
.q p::after{content:"」";color:var(--zhu)}
.q cite{display:block;margin-top:10px;font-style:normal;font-size:12.5px;color:var(--ink3);letter-spacing:.15em}

/* ---------- 卷外 ---------- */
.tail{max-width:1060px;margin:0 auto;padding:70px 20px 90px}
.tail h2{font-family:var(--kai);font-size:30px;font-weight:900;letter-spacing:.1em}
.tail h2::after{content:"";display:block;width:46px;height:6px;background:var(--hui);margin-top:14px}
.ix{width:100%;border-collapse:collapse;margin-top:30px;font-size:14px}
.ix th{font-family:var(--kai);font-weight:700;text-align:left;background:var(--paper3);letter-spacing:.15em;padding:9px 12px;border:1px solid var(--line)}
.ix td{border:1px solid var(--line);padding:8px 12px;vertical-align:top;color:#3A352A}
.ix td.n{font-family:Georgia,var(--serif)}
.ix tr:nth-child(even) td{background:var(--paper2)}
.notes{margin-top:26px;color:var(--ink2);font-size:13px;line-height:2}
#topBtn{position:fixed;right:22px;bottom:26px;width:44px;height:44px;border:none;background:var(--zhu);color:#F7F1E1;font-family:var(--kai);font-size:13px;letter-spacing:.05em;border-radius:4px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s;box-shadow:0 2px 8px rgba(60,40,20,.3)}
#topBtn.show{opacity:.92;pointer-events:auto}

@media (max-width:860px){
  .duet{display:none}
  .mast{font-size:40px;padding:10px 8px}
  .evs,.q{margin-left:34px}
  .yr2{width:52px}
  .yr2 .g{font-size:17px}
  .chh{flex-direction:column}
  .mast{writing-mode:horizontal-tb;font-size:26px;letter-spacing:.4em;padding:6px 10px;border-right:none;border-bottom:2px solid var(--currentColor)}
}
@media (max-width:560px){
  .yr2{display:none}
  .evs,.q{margin-left:0}
  .bd h3 .yy{display:inline;font-family:Georgia,var(--serif);font-weight:600;color:var(--zhu-deep);font-size:15px;margin-right:6px}
  .stats{gap:26px}
}
@media (min-width:561px){ .yy{display:none} }
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{
  .bar,#progress,#topBtn{display:none}
  body{background:#fff}
  .hero{padding-top:20px}
}
/* ---- 朝代切换标签 ---- */
.dtabs{max-width:1060px;margin:0 auto;padding:72px 20px 0;display:flex;justify-content:center;flex-wrap:wrap;font-family:var(--kai)}
.dtabs a{font-size:13px;letter-spacing:.22em;text-indent:.22em;text-decoration:none;color:var(--ink3);padding:2px 12px;border-left:1px solid var(--line)}
.dtabs a:first-child{border-left:none}
.dtabs a:hover{color:var(--zhu)}
.dtabs a.on{color:var(--zhu)}
@media (max-width:760px){.dtabs{padding-top:66px}}
@media print{.dtabs{display:none}}
/* ---- 各朝纸色 ---- */
body.d-pangu,.d-pangu{--paper:#E0DED9;--paper2:#D7D5CF;--paper3:#CBC8C0;--line:#BDB9AF;--barbg:rgba(224,222,217,.92)}
body.d-sanhuang,.d-sanhuang{--paper:#E6E3DC;--paper2:#DEDAD1;--paper3:#D2CDC2;--line:#C4BEB2;--barbg:rgba(230,227,220,.92)}
body.d-wudi,.d-wudi{--paper:#E9E1EC;--paper2:#E0D6E4;--paper3:#D5C9DA;--line:#C6B8CC;--barbg:rgba(233,225,236,.92)}
body.d-xia,.d-xia{--paper:#EEE5D3;--paper2:#E7DCC9;--paper3:#DCCFB8;--line:#D0C1A7;--barbg:rgba(238,229,211,.92)}
body.d-shang,.d-shang{--paper:#DFE6E3;--paper2:#D6DEDA;--paper3:#CAD4D0;--line:#B9C5C0;--barbg:rgba(223,230,227,.92)}
body.d-zhou,.d-zhou{--paper:#E2EAE4;--paper2:#D9E3DD;--paper3:#CEDAD3;--line:#BCCBC3;--barbg:rgba(226,234,228,.92)}
body.d-qin,.d-qin{--paper:#E3E5EA;--paper2:#DADDE4;--paper3:#CFD3DC;--line:#BFC4D0;--barbg:rgba(227,229,234,.92)}
body.d-han,.d-han{--paper:#F0E2D8;--paper2:#E9D8CB;--paper3:#DFC9B8;--line:#D2B9A6;--barbg:rgba(240,226,216,.92)}
body.d-sanguo,.d-sanguo{--paper:#E3E7E8;--paper2:#DAE0E2;--paper3:#CED5D8;--line:#BEC7CB;--barbg:rgba(227,231,232,.92)}
body.d-jin,.d-jin{--paper:#E7E8E2;--paper2:#DFE1DA;--paper3:#D4D7CE;--line:#C4C8BE;--barbg:rgba(231,232,226,.92)}
body.d-nanbei,.d-nanbei{--paper:#EDE5E6;--paper2:#E5DADC;--paper3:#D9CCD0;--line:#CFC0C5;--barbg:rgba(237,229,230,.92)}
body.d-sui,.d-sui{--paper:#EDE7DA;--paper2:#E4DBC9;--paper3:#D8CCB4;--line:#CFC2A6;--barbg:rgba(237,231,218,.92)}
body.d-tang,.d-tang{--paper:#F6EBD4;--paper2:#F0E0BC;--paper3:#E8D4A4;--line:#D8C089;--barbg:rgba(246,235,212,.92)}
body.d-song,.d-song{--paper:#EAF1E7;--paper2:#DDE7DB;--paper3:#CEDBCD;--line:#B9CBBB;--barbg:rgba(234,241,231,.92)}
body.d-yuan,.d-yuan{--paper:#F7E5C4;--paper2:#F1D9AC;--paper3:#E7C68C;--line:#D6B36F;--barbg:rgba(247,229,196,.92)}
body.d-ming,.d-ming{--paper:#F3EFE3;--paper2:#EBE5D3;--paper3:#E2D9C2;--line:#D9CFB6;--barbg:rgba(243,239,227,.92)}
body.d-qing,.d-qing{--paper:#EEF1F4;--paper2:#E0E6EC;--paper3:#D1DAE2;--line:#BDC9D4;--barbg:rgba(238,241,244,.92)}

/* ---------- 章节锚点偏移 ---------- */
/* 防止 sticky 顶栏遮住跳转后的章节标题（原「清朝编年史.html」内联，现统一到本文件） */
.ch{scroll-margin-top:86px}

/* ---------- 总目录页 ---------- */
.index-page{background:var(--paper);min-height:100vh}
.idx-wrap{max-width:1060px;margin:0 auto;padding:70px 20px 80px}
.idx-head{text-align:center;padding:10px 0 40px}
.idx-seal{width:64px;height:64px;font-size:38px;line-height:64px;margin:0 auto 24px}
.idx-kicker{font-size:12px;letter-spacing:.42em;text-indent:.42em;color:var(--ink3)}
.idx-head h1{margin-top:10px;font-family:var(--kai);font-weight:900;font-size:clamp(42px,8vw,72px);letter-spacing:.2em;text-indent:.2em}
.idx-lede{max-width:640px;margin:16px auto 0;color:var(--ink2);font-size:15px;line-height:1.9}
.idx-stats{display:flex;justify-content:center;flex-wrap:wrap;gap:38px;margin-top:30px}
.idx-stats b{display:block;font-family:Georgia,var(--serif);font-size:28px;font-weight:600;color:var(--zhu)}
.idx-stats span{font-size:12px;color:var(--ink3);letter-spacing:.2em}
.idx-grid{max-width:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.dyn-card{position:relative;display:flex;gap:16px;align-items:flex-start;padding:22px 24px 20px;background:var(--paper);border:1px solid var(--line);text-decoration:none;color:var(--ink);box-shadow:0 1px 0 rgba(60,40,20,.04);transition:transform .2s,border-color .2s,box-shadow .2s}
.dyn-card:hover{transform:translateY(-3px);border-color:var(--zhu);box-shadow:0 8px 20px rgba(60,40,20,.1)}
.dyn-seal{flex:none;width:44px;height:44px;background:var(--zhu);color:#F7F1E1;font-family:var(--kai);font-size:24px;line-height:44px;text-align:center;border-radius:4px;transform:rotate(-4deg);box-shadow:0 1px 3px rgba(60,40,20,.35)}
.dyn-seal-sm{font-size:15px;line-height:44px;letter-spacing:0}
.dyn-main{flex:1;min-width:0;display:block}
.dyn-top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.dyn-top b{font-family:var(--kai);font-size:24px;font-weight:900;letter-spacing:.12em}
.dyn-top em{font-style:normal;font-family:Georgia,var(--serif);font-size:12px;color:var(--ink3);letter-spacing:.03em}
.dyn-desc{display:block;margin-top:6px;font-size:13.5px;line-height:1.75;color:var(--ink2)}
.dyn-meta{display:block;margin-top:12px;font-size:11.5px;letter-spacing:.08em;color:var(--ink3)}
.dyn-arrow{flex:none;align-self:center;font-family:Georgia,var(--serif);font-size:18px;color:var(--ink3);transition:transform .2s,color .2s}
.dyn-card:hover .dyn-arrow{color:var(--zhu);transform:translateX(3px)}
.idx-foot{margin-top:46px;padding-top:24px;border-top:1px solid var(--line);text-align:center;font-size:12px;line-height:2;color:var(--ink3)}
.idx-foot a{color:var(--zhu)}
@media(max-width:560px){
  .idx-wrap{padding:46px 16px 60px}
  .idx-grid{grid-template-columns:1fr}
  .idx-stats{gap:24px}
  .dyn-card{padding:18px 16px}
  .dyn-seal{width:38px;height:38px;font-size:21px;line-height:38px}
  .dyn-seal-sm{font-size:13px;line-height:38px}
  .dyn-top b{font-size:21px}
}
@media (prefers-reduced-motion:reduce){.dyn-card,.dyn-arrow{transition:none}}
@media print{.idx-head{padding-top:0}}
