:root{--ink:#2f2a24;--muted:#7d7466;--primary:#8a1f1a;--gold:#b8860b;--line:#e8ddc9;--paper:#fdfaf4}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
.topbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px 18px;background:#fffdf8;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:9}
.brand{font-weight:800;letter-spacing:1px;color:var(--primary);font-size:17px}
.topnav{display:flex;gap:14px;font-size:14px;align-items:center;flex-wrap:wrap}
.cta-mini{background:var(--primary);color:#fff!important;padding:5px 12px;border-radius:14px;font-weight:700}
main{max-width:860px;margin:0 auto;padding:20px 18px 60px}
h1{font-size:25px;line-height:1.5;margin:14px 0 12px}
h2{font-size:18px;margin:30px 0 10px;padding-left:10px;border-left:4px solid var(--gold)}
h3{font-size:16px;margin:20px 0 8px}
.lead{color:var(--muted)}
.sym{color:var(--primary);font-size:.9em}
.crumb{font-size:13px;color:var(--muted);margin-bottom:6px}
.crumb i{font-style:normal;color:#c9bfae;margin:0 4px}
.meta{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;margin:8px 0 4px}
.tag{background:#f6f1e7;color:#8a6d3b;border-radius:10px;padding:2px 10px}
.tag.plain{background:#faf7f0;color:var(--muted)}
.tag.ok{background:#e8f5e9;color:#2e7d32}
.tag.warn{background:#fdeceb;color:#c62828}
blockquote{margin:10px 0;padding:12px 16px;background:#fffdf8;border-left:4px solid var(--line);border-radius:0 8px 8px 0;font-size:15px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0}
.cell{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:#fffdf9;border:1px solid var(--line);border-radius:10px}
.cell:hover{border-color:var(--gold);text-decoration:none}
.cell-seq{font-size:11px;color:#b5ada2;font-weight:700}
.cell-sym{font-size:19px;color:var(--primary);line-height:1.1}
.cell-name{font-size:15px;font-weight:800;color:var(--ink)}
.cell-sub{font-size:11px;color:var(--muted)}
.tbl{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0}
.tbl th,.tbl td{border:1px solid var(--line);padding:7px 9px;text-align:left}
.tbl thead th{background:#f8f3e9;font-weight:700;font-size:13px}
.tbl th{background:#fbf8f1;font-weight:600;white-space:nowrap}
.shi{color:#9e2b25}.ying{color:#2e7d32}
.ok{color:#2e7d32}.warn{color:#c62828}
.note{font-size:13px;color:var(--muted);background:#fbf8f1;border-radius:8px;padding:10px 12px}
.fields{display:grid;gap:10px}
.field{background:#fffdf9;border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.field span{display:inline-block;font-size:12px;font-weight:800;color:var(--gold);margin-bottom:2px}
.field p{margin:2px 0 0}
.kw{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted);align-items:center}
.kw span{background:#f6f1e7;color:#8a6d3b;border-radius:10px;padding:2px 10px}
.motto{text-align:center;font-size:16px;font-weight:800;color:var(--primary);background:#fdf7ec;border:1px dashed var(--line);border-radius:10px;padding:12px}
.rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0}
.rel{display:flex;flex-direction:column;gap:3px;padding:10px 14px;background:#fffdf9;border:1px solid var(--line);border-radius:10px}
.rel b{font-size:12px;color:var(--gold)}
.rel span{font-size:16px;font-weight:800}
.rel i{font-style:normal;font-size:12px;color:var(--muted)}
.yiji{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.yj{padding:12px 14px;border-radius:10px}
.yj.yi{background:#f2f9f2;border:1px solid #cfe8cf}
.yj.ji{background:#fdf2f2;border:1px solid #f0d6d6}
.yj b{font-size:13px}
.yj.yi b{color:#2e7d32}.yj.ji b{color:#c62828}
.yj p{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.yj span{background:#fff;border-radius:8px;padding:2px 9px;font-size:13px}
.pos{display:inline-block;background:#f6f1e7;border-radius:8px;padding:2px 10px;margin:3px 6px 3px 0;font-size:13px;color:#8a6d3b}
.links{display:flex;flex-wrap:wrap;gap:10px;font-size:14px}
.links a{background:#fffdf9;border:1px solid var(--line);border-radius:10px;padding:6px 12px}
.palace-row{padding:8px 0;border-bottom:1px dashed var(--line);font-size:14px}
.palace-row a{display:inline-block;margin:3px 8px 3px 0}
.palace-row i{font-style:normal;font-size:11px;color:var(--muted);margin-left:3px}
.pager{display:flex;justify-content:space-between;margin:24px 0 0;font-size:14px}
.app-cta{margin:34px 0 0;padding:16px;border:1px dashed var(--gold);border-radius:12px;background:#fffdf5}
.app-cta-text{font-size:14px;color:#4a3f33;line-height:1.8}
.app-cta-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.btn{display:inline-block;padding:8px 16px;border-radius:18px;border:1px solid var(--line);background:#fff;font-size:14px}
.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff!important;font-weight:700}
footer{max-width:860px;margin:0 auto;padding:22px 18px 40px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
footer .tiny{font-size:11px;color:#a89f92;line-height:1.7}
@media (max-width:560px){h1{font-size:21px}.yiji{grid-template-columns:1fr}.grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
