:root{--bg:#f4f6fa;--panel:#ffffff;--line:#e8edf5;--txt:#0f172a;--dim:#64748b;--pri:#2563eb;--pri2:#0ea5e9;--ok:#16a34a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--txt);font:15px/1.75 "Inter","PingFang SC","Microsoft YaHei",system-ui,sans-serif;min-height:100vh}
a{color:var(--pri);text-decoration:none}
nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:26px;padding:14px 6vw;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.2px;color:var(--txt)}
.mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--pri),var(--pri2));display:grid;place-items:center;color:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 12px rgba(37,99,235,.25)}
.brand small{color:#94a3b8;font-weight:400;font-size:11px;letter-spacing:1.2px}
nav .links{display:flex;gap:22px;font-size:14px}
nav .links a{color:var(--dim)}
nav .links a:hover,nav .links a.on{color:var(--pri)}
nav .cta{margin-left:auto;display:flex;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-radius:8px;border:1px solid #dbe3ee;color:var(--txt);font-size:14px;cursor:pointer;background:#fff;transition:.15s}
.btn:hover{border-color:var(--pri);color:var(--pri)}
.btn.p{background:var(--pri);border-color:var(--pri);color:#fff;font-weight:600;box-shadow:0 4px 12px rgba(37,99,235,.22)}
.wrap{max-width:1180px;margin:0 auto;padding:0 6vw}
section{padding:56px 0}
h1{font-size:clamp(30px,4vw,46px);line-height:1.2;margin:18px 0 14px;letter-spacing:-.4px}
h1 em{font-style:normal;color:var(--pri)}
h2{font-size:clamp(22px,2.4vw,30px);margin:0 0 10px}
h3{font-size:16.5px;margin:0 0 8px}
.lead{color:var(--dim);margin:0 0 28px;max-width:760px}
.tag{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border:1px solid #dbeafe;border-radius:999px;color:var(--pri);font-size:12.5px;background:#eff6ff}
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{padding:22px;border-radius:10px;border:1px solid var(--line);background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.card p{color:var(--dim);margin:0;font-size:14px}
.ico{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;margin-bottom:12px;background:#eff6ff;border:1px solid #dbeafe;color:var(--pri);font-family:ui-monospace,monospace;font-size:12px;font-weight:600}
table{width:100%;border-collapse:collapse;font-size:13.5px;margin:10px 0}
th,td{border-bottom:1px solid #eef2f7;padding:9px 10px;text-align:left}
th{background:#f8fafc;color:#475569;font-weight:600}td{color:#334155}
pre{background:#0f172a;border-radius:10px;padding:16px;overflow:auto;font-family:ui-monospace,monospace;font-size:12.5px;color:#e2e8f0;line-height:1.7}
code{background:#eff6ff;border:1px solid #dbeafe;color:#1e40af;padding:2px 6px;border-radius:6px;font-family:ui-monospace,monospace;font-size:12.5px}
.note{border-left:3px solid var(--pri);padding:10px 14px;background:#f0f7ff;border-radius:0 8px 8px 0;color:#334155;font-size:13.5px;margin:14px 0}
footer{padding:32px 6vw;border-top:1px solid var(--line);color:var(--dim);font-size:13px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;background:#fff}
footer .links{display:flex;gap:20px;margin-left:auto}
footer a{color:var(--dim)}footer a:hover{color:var(--pri)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding:70px 0 40px}
.sub{color:var(--dim);font-size:16px;max-width:620px}
.actions{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}
.metrics{display:flex;gap:38px;margin-top:36px;padding-top:22px;border-top:1px solid var(--line);flex-wrap:wrap}
.metrics b{display:block;font-size:23px;color:var(--pri);font-family:ui-monospace,monospace}
.metrics span{color:var(--dim);font-size:12.5px}
.orb{position:relative;height:360px;border-radius:16px;background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid var(--line);overflow:hidden;display:grid;place-items:center}
.orb:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 90deg,transparent,#dbeafe,transparent 40%);animation:spin 18s linear infinite}
.orb .core{position:relative;width:190px;height:190px;border-radius:50%;background:#fff;border:1px solid #dbeafe;display:grid;place-items:center;box-shadow:0 18px 40px rgba(37,99,235,.14)}
.orb .core span{font-family:ui-monospace,monospace;color:var(--pri);font-size:12px;letter-spacing:1.6px;font-weight:600}
@keyframes spin{to{transform:rotate(360deg)}}
.pagehead{padding:46px 0 6px}
.pagehead h1{font-size:clamp(26px,3.2vw,38px);margin:12px 0 8px}
.crumb{color:#94a3b8;font-size:12.5px;font-family:ui-monospace,monospace;letter-spacing:.4px}
.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}
.badge.b{background:#eff6ff;border-color:#dbeafe;color:var(--pri)}
.badge.w{background:#fffbeb;border-color:#fde68a;color:#92400e}
.timeline{border-left:2px solid #dbeafe;padding-left:22px;margin-top:18px}
.timeline .item{position:relative;padding-bottom:24px}
.timeline .item:before{content:"";position:absolute;left:-29px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--pri)}
.timeline h4{margin:0 0 3px;font-size:15px}.timeline .date{color:#94a3b8;font-size:12.5px;font-family:ui-monospace,monospace}
.timeline p{color:var(--dim);font-size:13.5px;margin:6px 0 0}
@media(max-width:980px){.hero{grid-template-columns:1fr}.orb{display:none}.g4{grid-template-columns:1fr 1fr}.g3{grid-template-columns:1fr 1fr}nav .links{display:none}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}.actions{flex-direction:column;align-items:flex-start}}
