body{margin:0;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;background:#f4f6f9;color:#24292f;line-height:1.8;}
header{padding:10px 16px;background:#1e3a5f;color:#fff;font-size:15px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;position:sticky;top:0;z-index:10;}
header a{color:#9fc5ff;text-decoration:none;font-size:13px;white-space:nowrap;margin-left:12px;}
.wrap{max-width:880px;margin:0 auto;padding:20px 18px 60px;}
.badges{margin:6px 0 14px;font-size:13px;}
.badges span{display:inline-block;border-radius:4px;padding:1px 8px;margin:0 6px 6px 0;background:#e8f0fe;color:#1e3a5f;}
.badges .hot{background:#fde8e8;color:#c53030;}
h2{border-left:5px solid #1e3a5f;padding-left:10px;font-size:20px;margin:38px 0 14px;}
h3{font-size:16px;margin:26px 0 8px;color:#1e3a5f;}
h4{font-size:14.5px;margin:16px 0 6px;color:#444;}
p{margin:8px 0;}
ul,ol{margin:6px 0;padding-left:24px;}
li{margin:3px 0;}
.box{border-radius:8px;padding:12px 16px;margin:12px 0;font-size:14.5px;}
.box .tag{display:inline-block;font-weight:700;margin-bottom:4px;}
.concept{background:#eef4fb;border-left:4px solid #2b6cb0;}
.concept .tag{color:#2b6cb0;}
.key{background:#f0f9f0;border-left:4px solid #2f855a;}
.key .tag{color:#2f855a;}
.trap{background:#fdf0ef;border-left:4px solid #c53030;}
.trap .tag{color:#c53030;}
.method{background:#fff8e6;border-left:4px solid #b7791f;}
.method .tag{color:#b7791f;}
.norm{background:#f3eefc;border-left:4px solid #6b46c1;}
.norm .tag{color:#6b46c1;}
.eq{font-family:Consolas,"Courier New",monospace;background:#fff;border:1px solid #e2e6ec;border-radius:6px;padding:8px 14px;margin:8px 0;overflow-x:auto;font-size:14.5px;}
table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px;background:#fff;}
th,td{border:1px solid #dde2ea;padding:6px 10px;text-align:left;vertical-align:top;}
th{background:#eef2f7;white-space:nowrap;}
.mapbox{background:#fff;border:1px solid #e2e6ec;border-radius:10px;margin:12px 0;}
.markmap{width:100%;height:70vh;}
.markmap>svg{width:100%;height:100%;}
details{background:#fff;border:1px solid #e2e6ec;border-radius:8px;padding:10px 14px;margin:10px 0;}
summary{cursor:pointer;font-weight:600;color:#1e3a5f;}
.checklist{columns:2;font-size:14px;background:#fff;border:1px solid #e2e6ec;border-radius:8px;padding:14px 18px;}
.checklist li{break-inside:avoid;}
@media(max-width:640px){.checklist{columns:1;}}
.footer{margin-top:36px;font-size:12px;color:#999;}
sub,sup{font-size:75%;}
