/* OjToken 单页模板共用样式（与官网首页同一套视觉语言） */
:root{
  --om-ink:#1a2537;--om-navy:#31527f;--om-body:#5d6d86;--om-muted:#7b8798;
  --om-line:#e3eaf4;--om-line-soft:#eef3fa;--om-blue:#3e6be3;--om-blue-soft:#edf2ff;
  --om-sans:"Noto Sans SC","Inter",-apple-system,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;
  --om-mono:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
body{margin:0;background:#f0f4fa;color:var(--om-body);font-family:var(--om-sans);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
body a{color:inherit;text-decoration:none}
body img{max-width:100%;height:auto}
.m-shell{width:min(1200px,calc(100% - 48px));margin-inline:auto}
.m-kicker{display:inline-block;font:11px/1.6 var(--om-mono);letter-spacing:.12em;text-transform:uppercase;color:#5b77a7}

/* header：直接复用官网首页的 .site-header 结构与样式（styles.css + light.css），这里只补吸顶 */
.muban-page .site-header{position:sticky}

/* hero */
.m-hero{background:linear-gradient(135deg,#eef3fd,#f8fbff 60%);border-bottom:1px solid var(--om-line);padding:64px 0 58px}
.m-hero h1{margin:14px 0 16px;font-size:clamp(28px,3.6vw,42px);line-height:1.28;letter-spacing:-.02em;color:#1d2a40}
.m-hero .m-sub{margin:0 0 12px;font-size:16px;color:#3f5573}
.m-hero p.m-lead{margin:0;font-size:14px;line-height:1.95;color:var(--om-body);max-width:760px}
.m-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.m-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:8px;border:1px solid #dce4f4;background:#fff;color:#3f557b;font-size:13px}
.m-btn:hover{border-color:#bdcce6;color:var(--om-blue)}
.m-btn-primary{border-color:transparent;background:linear-gradient(105deg,#4f74f0,#6b5cf0);color:#fff}
.m-btn-primary:hover{color:#fff;background:linear-gradient(105deg,#5f83ff,#7b6bff)}
.m-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px}
.m-stat{background:#fff;border:1px solid var(--om-line);border-radius:10px;padding:16px 18px}
.m-stat b{display:block;font:22px var(--om-mono);color:#2f4f86}
.m-stat span{font-size:12px;color:var(--om-muted)}

/* sections */
.m-section{padding:56px 0}
.m-section.alt{background:#fff;border-block:1px solid var(--om-line)}
.m-heading{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end;margin-bottom:26px}
.m-heading h2{margin:10px 0 0;font-size:clamp(22px,2.6vw,30px);line-height:1.35;letter-spacing:-.02em;color:#1d2a40}
.m-heading p{margin:0;font-size:13px;color:var(--om-body);max-width:460px}
.m-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.m-card{background:#fff;border:1px solid var(--om-line);border-radius:12px;padding:22px 22px 20px}
.m-card h3{margin:0 0 8px;font-size:15px;color:#23324c}
.m-card p{margin:0;font-size:13px;line-height:1.85;color:var(--om-body)}
.m-card .m-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--om-blue-soft);color:#4a68bd;font-size:16px;margin-bottom:14px}
.m-list{margin:0;padding-left:20px;font-size:13.5px;line-height:1.95}
.m-list li{margin-bottom:8px}

/* models */
.m-vendors{display:flex;flex-wrap:wrap;gap:9px}
.m-vendor{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:#4a5f85;background:#fff;border:1px solid var(--om-line);border-radius:20px;padding:6px 14px}.m-vendor-icon{width:16px;height:16px;display:block;flex-shrink:0}
.m-vendor b{color:#2f4f86;font-weight:600}
.m-table-wrap{overflow:auto;border:1px solid var(--om-line);border-radius:12px;background:#fff}
.m-table{width:100%;border-collapse:collapse;font-size:13px;min-width:600px}
.m-table th,.m-table td{padding:14px 16px;text-align:left;border-top:1px solid var(--om-line-soft)}
.m-table th{background:#f8faff;color:#4c5d7c;font-weight:600;border-top:0;white-space:nowrap}
.m-table td code{font:12.5px var(--om-mono);color:#3f5da8}

/* code */
.m-code{background:#0d1c31;border-radius:12px;padding:20px 22px;overflow:auto}
.m-code pre{margin:0;color:#d2e2f8;font:12.5px/1.85 var(--om-mono)}
.m-code .k{color:#8f9dfb}
.m-code .s{color:#7ed8ae}
.m-tabs{display:flex;gap:8px;margin-bottom:12px}
.m-tab{font-size:12px;color:#5d6d86;background:#fff;border:1px solid var(--om-line);border-radius:6px;padding:6px 13px;cursor:pointer}
.m-tab.on{color:#3e6be3;border-color:#c9d8f1;background:var(--om-blue-soft)}

/* steps */
.m-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;counter-reset:step}
.m-step{position:relative;background:#fff;border:1px solid var(--om-line);border-radius:12px;padding:22px}
.m-step:before{counter-increment:step;content:"0" counter(step);display:block;font:12px var(--om-mono);color:#8095c4;margin-bottom:10px}
.m-step h3{margin:0 0 8px;font-size:15px;color:#23324c}
.m-step p{margin:0;font-size:13px;line-height:1.85}

/* faq */
.m-faq{display:flex;flex-direction:column;gap:12px}
.m-faq details{background:#fff;border:1px solid var(--om-line);border-radius:12px;padding:16px 20px}
.m-faq summary{cursor:pointer;font-size:14px;color:#23324c;list-style:none}
.m-faq summary::-webkit-details-marker{display:none}
.m-faq details p{margin:12px 0 0;font-size:13px;line-height:1.9}

/* cta + footer */
.m-cta{background:linear-gradient(115deg,#16233d,#1f3b6b);color:#dbe6ff;padding:52px 0}
.m-cta h2{margin:0 0 12px;font-size:clamp(22px,2.6vw,30px);color:#fff;letter-spacing:-.02em}
.m-cta p{margin:0 0 22px;font-size:13.5px;color:#a8bbdd;max-width:620px}
.m-footer{background:#eef3fa;border-top:1px solid var(--om-line);padding:34px 0 26px;font-size:12.5px;color:var(--om-muted)}
.m-footer a{color:#4f6dbb}
.m-footer-inner{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between}
.m-custom{margin-top:26px;font-size:13px;line-height:1.9;color:var(--om-body)}
.m-custom a{color:var(--om-blue)}
@media(max-width:900px){
  .m-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .m-hero{padding:44px 0 40px}
  .m-section{padding:40px 0}
  .m-shell{width:calc(100% - 36px)}
}
