
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"Microsoft YaHei","PingFang SC",sans-serif;background:#f2f6f8;color:#1f2a33;line-height:1.8}
a{color:#0f8c7f;text-decoration:none}
.wrap{max-width:920px;margin:0 auto;padding:0 18px}
header.site{background:linear-gradient(135deg,#0e2a3c,#1b5a7a);color:#fff;padding:44px 0}
header.site .wrap{display:flex;flex-direction:column;gap:6px}
header.site h1{font-size:26px}
header.site p{color:#9fc3d4;font-size:14px}
.part{grid-column:1/-1;margin:22px 0 2px;color:#123a52;font-size:19px;font-weight:700;border-left:5px solid #38d6c4;padding-left:12px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;margin-top:12px}
.card{background:#fff;border-radius:12px;padding:18px;box-shadow:0 2px 10px rgba(18,58,82,.07);transition:all .25s;border-top:4px solid #38d6c4}
.card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(18,58,82,.13)}
.card .no{display:inline-block;background:#e7f7f4;color:#0f8c7f;font-weight:700;border-radius:6px;padding:2px 10px;font-size:13px}
.card h3{margin:8px 0 4px;font-size:16px;color:#123a52}
.card p{font-size:13px;color:#6b8a99}
.back{display:inline-block;margin:18px 0;font-size:14px}
.crumbs{font-size:13px;color:#6b8a99;margin:14px 0}
section.block{background:#fff;border-radius:14px;padding:26px 28px;margin:18px 0;box-shadow:0 2px 10px rgba(18,58,82,.06)}
section.block>h2{font-size:19px;color:#123a52;border-bottom:2px solid #e7f7f4;padding-bottom:10px;margin-bottom:16px}
section.block>h2 .tag{font-size:12px;background:#38d6c4;color:#0e2a3c;border-radius:5px;padding:2px 8px;margin-left:8px;vertical-align:middle}
h3.sub{font-size:16px;color:#0f8c7f;margin:16px 0 8px}
ul.goals{padding-left:22px}
ul.goals li{margin:6px 0}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.kv .box{border-radius:10px;padding:14px 16px}
.kv .k1{background:#e9f1f6;border-left:4px solid #1b5a7a}
.kv .k2{background:#fdf2e4;border-left:4px solid #c77728}
.kv h4{font-size:14px;margin-bottom:6px;color:#123a52}
.kv ul{padding-left:20px;font-size:14px}
.demo-item{border:2px solid #e7f7f4;border-radius:12px;padding:20px;margin:16px 0}
.demo-item h3{color:#123a52;font-size:17px}
.demo-item .desc{color:#6b8a99;font-size:14px;margin:6px 0 12px}
.btn{display:inline-block;background:#0f8c7f;color:#fff;padding:8px 20px;border-radius:8px;font-size:14px;margin-right:10px}
.btn:hover{background:#123a52}
.btn.ghost{background:#fff;color:#0f8c7f;border:2px solid #0f8c7f}
iframe.demo{width:100%;height:420px;border:2px solid #d7e3ea;border-radius:10px;margin:14px 0;background:#fff}
details{margin:12px 0}
details summary{cursor:pointer;color:#0f8c7f;font-size:14px;font-weight:700}
pre.code{background:#123a52;color:#cdeee8;padding:16px;border-radius:10px;overflow:auto;font-family:Consolas,monospace;font-size:13px;line-height:1.6;margin-top:10px;max-height:420px}
table.task{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}
table.task th{background:#123a52;color:#fff;padding:10px;text-align:left}
table.task td{border:1px solid #d7e3ea;padding:9px 10px}
table.task tr:nth-child(even) td{background:#f7fafb}
ol.steps{padding-left:22px}
ol.steps li{margin:8px 0}
footer.site{background:#0e2a3c;color:#7fa8bc;text-align:center;padding:22px;font-size:13px;margin-top:40px}
.quote{background:#e7f7f4;border-left:5px solid #0f8c7f;padding:12px 16px;border-radius:0 10px 10px 0;color:#123a52;font-size:14px;margin:10px 0}
@media(max-width:640px){iframe.demo{height:320px}section.block{padding:18px}}
