:root{
  --bg:#080a0f;--bg-card:#0f1219;--bg-el:#171c27;
  --border:rgba(255,255,255,.07);--bh:rgba(255,255,255,.14);
  --t:#e2e5f0;--tm:#8892ab;--td:#5a6480;
  --gpt:#10a37f;--fable:#c084fc;--claude:#d4763b;--gemini:#4285f4;
  --grok:#1d9bf0;--ds:#6366f1;--qwen:#f59e0b;--kimi:#ec4899;
  --glm:#14b8a6;--mini:#a855f7;--mimo:#06b6d4;--ms:#0078d4;
  --acc:#6ee7b7;--acd:rgba(110,231,183,.12);
  --r:14px;--rs:8px;--mono:'SF Mono','Fira Code',monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--t);font-family:-apple-system,'PingFang SC','Noto Sans SC',system-ui,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:rgba(8,10,15,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:0 14px;display:flex;align-items:center;gap:5px;height:48px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent)}
.nav::-webkit-scrollbar{display:none}
.nb{flex-shrink:0;background:none;border:1px solid var(--border);color:var(--tm);padding:5px 11px;border-radius:20px;font-size:11.5px;cursor:pointer;transition:all .2s;white-space:nowrap}
.nb:hover,.nb.on{border-color:var(--acc);color:var(--acc);background:var(--acd)}

/* HERO */
.hero{padding:52px 20px 36px;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:700px;height:380px;background:radial-gradient(ellipse,rgba(110,231,183,.07) 0%,transparent 70%);pointer-events:none}
.eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);background:var(--acd);border:1px solid rgba(110,231,183,.22);padding:4px 13px;border-radius:20px;margin-bottom:18px}
.hero h1{font-size:clamp(24px,7vw,46px);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:12px}
.hero h1 span{color:var(--acc)}
.hero p{font-size:13.5px;color:var(--tm);max-width:480px;margin:0 auto 22px;line-height:1.75}
.hero-meta{font-size:11px;color:var(--td);font-family:var(--mono);display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.hero-meta span{display:flex;align-items:center;gap:4px}
.live-dot{width:6px;height:6px;border-radius:50%;background:var(--acc);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* LAYOUT */
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
.sec{margin-bottom:52px}
.sh{display:flex;align-items:baseline;gap:10px;margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.sl{font-size:11px;font-family:var(--mono);color:var(--acc);letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}
.sh h2{font-size:18px;font-weight:700;letter-spacing:-.01em}
.sub{font-size:12.5px;font-weight:700;color:var(--tm);margin:16px 0 10px;padding-left:2px}

/* CARDS */
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:11px}
.mc{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:18px;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.mc:hover{border-color:var(--bh);transform:translateY(-1px)}
.mc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--ca,#444)}
.mbadge{display:flex;align-items:center;gap:6px;margin-bottom:9px}
.mdot{width:8px;height:8px;border-radius:50%;background:var(--ca,#444)}
.mmaker{font-size:10.5px;color:var(--td);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em}
.mname{font-size:15.5px;font-weight:800;margin-bottom:3px;letter-spacing:-.01em}
.mver{font-size:10.5px;color:var(--td);font-family:var(--mono);margin-bottom:12px}
.mtags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}
.tag{font-size:10.5px;padding:2px 7px;border-radius:4px;border:1px solid var(--border);color:var(--tm)}
.tag.s{border-color:currentColor;color:var(--ca,#888);background:rgba(128,128,128,.07)}
.mspec{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.sp{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:var(--rs);padding:7px 9px}
.spl{font-size:9.5px;color:var(--td);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}
.spv{font-size:12.5px;font-weight:700;color:var(--t);font-family:var(--mono);white-space:nowrap}
.spv.h{color:var(--ca,#888)}

/* NEW label */
.new-badge{display:inline-block;font-size:9px;font-weight:800;padding:1px 6px;border-radius:4px;background:rgba(110,231,183,.2);border:1px solid rgba(110,231,183,.4);color:var(--acc);text-transform:uppercase;letter-spacing:.06em;vertical-align:middle;margin-left:5px}

/* OSS */
.oss{font-size:10px;padding:1px 6px;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.oss.o{background:rgba(110,231,183,.1);color:#6ee7b7;border:1px solid rgba(110,231,183,.22)}
.oss.c{background:rgba(148,163,184,.07);color:#64748b;border:1px solid rgba(100,116,139,.18)}

/* BENCH */
.blist{display:flex;flex-direction:column;gap:9px}
.bi{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--rs);padding:14px 15px}
.biname{font-size:13px;font-weight:700;margin-bottom:3px}
.bidesc{font-size:11px;color:var(--td);margin-bottom:10px}
.brows{display:flex;flex-direction:column;gap:5px}
.br{display:grid;grid-template-columns:148px 1fr 64px;align-items:center;gap:9px}
.brn{font-size:11.5px;color:var(--tm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--mono)}
.bw{background:rgba(255,255,255,.05);border-radius:3px;height:6px;overflow:hidden}
.bb{height:100%;border-radius:3px;background:var(--bc,#444);transition:width .9s cubic-bezier(.16,1,.3,1)}
.bpct{font-size:11.5px;font-family:var(--mono);text-align:right;color:var(--tm);font-weight:700;white-space:nowrap}
.bpct.top{color:var(--acc)}
.bpct.new{color:var(--fable)}

/* TABLE */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--r);background:var(--bg-card)}
table{width:100%;min-width:600px;border-collapse:collapse}
thead tr{border-bottom:1px solid var(--border)}
th{padding:11px 13px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--td);text-align:left;white-space:nowrap}
th:first-child{width:110px}
td{padding:10px 13px;font-size:12.5px;border-bottom:1px solid var(--border);vertical-align:middle}
tr:last-child td{border-bottom:none}
tbody tr:hover{background:rgba(255,255,255,.02)}
.fn{font-weight:700;color:var(--t);font-size:12.5px;white-space:nowrap}
.fsub{font-size:10.5px;color:var(--td);margin-top:2px}
.cv{font-family:var(--mono);font-size:11.5px;white-space:nowrap}
.cg{color:#6ee7b7}.co{color:#fcd34d}.cr{color:#f87171}.cn{color:var(--td)}
.ck{color:#6ee7b7}.cx{color:#f87171}.cp{color:#fcd34d}

/* PRICE */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:9px}
.pc{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:16px;position:relative}
.pc.ft{border-color:var(--acc);background:linear-gradient(135deg,rgba(110,231,183,.05) 0%,var(--bg-card) 60%)}
.pc.hot{border-color:var(--fable);background:linear-gradient(135deg,rgba(192,132,252,.06) 0%,var(--bg-card) 60%)}
.pfbadge{position:absolute;top:10px;right:10px;font-size:9px;padding:2px 7px;border-radius:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.pfbadge.acc{background:var(--acd);border:1px solid rgba(110,231,183,.3);color:var(--acc)}
.pfbadge.fable{background:rgba(192,132,252,.15);border:1px solid rgba(192,132,252,.35);color:var(--fable)}
.pmaker{font-size:10px;color:var(--td);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}
.pmodel{font-size:13.5px;font-weight:800;margin-bottom:10px}
.pr{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;border-top:1px solid var(--border);font-size:11.5px}
.pr:first-of-type{border-top:none}
.pk{color:var(--td)}
.pv{font-family:var(--mono);font-weight:700;white-space:nowrap}
.pv.c{color:#6ee7b7}.pv.m{color:#fcd34d}.pv.p{color:#f87171}

/* TIER */
.tw2{display:flex;flex-direction:column;gap:8px}
.tr2{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--rs)}
.tl{flex-shrink:0;font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:5px;letter-spacing:.04em;white-space:nowrap;min-width:66px;text-align:center}
.tl.t1{background:rgba(110,231,183,.13);color:#6ee7b7;border:1px solid rgba(110,231,183,.28)}
.tl.t2{background:rgba(252,211,77,.1);color:#fcd34d;border:1px solid rgba(252,211,77,.22)}
.tl.t3{background:rgba(100,116,139,.1);color:#64748b;border:1px solid rgba(100,116,139,.22)}
.tcs{display:flex;flex-wrap:wrap;gap:7px}
.tc{display:flex;flex-direction:column;align-items:center;gap:1px;background:rgba(255,255,255,.03);border:1px solid var(--c,#444);border-radius:7px;padding:5px 11px;font-size:12.5px;font-weight:700;color:var(--c,#888)}
.tc small{font-size:9.5px;color:var(--td);font-weight:400}

/* ARENA */
.alist{display:flex;flex-direction:column;gap:7px}
.ai2{display:grid;grid-template-columns:30px 1fr 170px;align-items:center;gap:11px;padding:9px 13px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--rs)}
.arank{font-size:11.5px;font-weight:800;font-family:var(--mono);color:var(--td);text-align:center}
.abw{background:rgba(255,255,255,.05);border-radius:4px;height:7px;overflow:hidden}
.abf{height:100%;border-radius:4px;transition:width .9s ease}
.ainfo{display:flex;flex-direction:column;gap:2px}
.aname{font-size:12.5px;font-weight:700}
.aelo{font-size:10.5px;color:var(--td);font-family:var(--mono)}

/* TRAFFIC */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.tcard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:14px;text-align:center}
.tcard.ft{border-color:var(--acc);background:linear-gradient(135deg,rgba(110,231,183,.05) 0%,var(--bg-card) 60%)}
.tname{font-size:12.5px;font-weight:700;margin-bottom:5px}
.tval{font-size:20px;font-weight:800;letter-spacing:-.02em}
.tval span{font-size:10.5px;color:var(--td);font-weight:400;display:block}
.tshare{font-size:10.5px;color:var(--td);margin:3px 0}
.tgrow{font-size:11.5px;font-weight:700;font-family:var(--mono)}
.tyoy{font-size:10.5px;color:var(--acc);margin-top:3px;font-weight:700}

/* REVIEW */
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px}
.rc{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:14px}
.rmodel{font-size:13.5px;font-weight:800;margin-bottom:4px}
.rstars{font-size:11.5px;color:#fcd34d;margin-bottom:7px}
.rstars span{color:var(--tm)}
.rtext{font-size:11.5px;color:var(--tm);line-height:1.65;margin-bottom:6px;font-style:italic}
.rsrc{font-size:10px;color:var(--td)}

/* INSIGHTS */
.ilist{display:flex;flex-direction:column;gap:9px}
.ins{display:flex;gap:13px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--rs);padding:13px 15px;align-items:flex-start}
.inum{flex-shrink:0;width:26px;height:26px;background:var(--acd);border:1px solid rgba(110,231,183,.22);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:800;color:var(--acc);font-family:var(--mono)}
.ititle{font-size:12.5px;font-weight:700;margin-bottom:3px}
.itext{font-size:12px;color:var(--tm);line-height:1.65}

/* USECASE */
.ugrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px}
.uc{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:16px}
.uico{font-size:22px;margin-bottom:8px}
.utitle{font-size:13.5px;font-weight:700;margin-bottom:5px}
.uwinner{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:20px;margin-bottom:7px}
.udesc{font-size:11.5px;color:var(--tm);line-height:1.65}

/* ROUTE */
.rcards{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.rcard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:13px}
.rlabel{font-size:11.5px;font-weight:700;margin-bottom:10px;color:var(--tm)}
.rflow{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.rnode{background:rgba(255,255,255,.04);border:1px solid var(--nc,#444);border-radius:7px;padding:6px 9px;font-size:10.5px;font-weight:700;color:var(--nc,#888);text-align:center;line-height:1.4}
.rnode small{font-weight:400;color:var(--td);display:block}
.rarr{color:var(--td);font-size:13px}
.rsaving{margin-top:9px;font-size:10.5px;color:var(--acc);font-family:var(--mono);background:var(--acd);padding:4px 9px;border-radius:5px;display:inline-block}

/* COST LIST */
.clist{display:flex;flex-direction:column;gap:7px}
.ci{display:grid;grid-template-columns:160px 1fr 110px;align-items:center;gap:11px}
.cm{font-size:11.5px;color:var(--tm);font-family:var(--mono)}
.cw{background:rgba(255,255,255,.05);border-radius:3px;height:6px;overflow:hidden}
.cb{height:100%;border-radius:3px;min-width:3px;transition:width .9s cubic-bezier(.16,1,.3,1)}
.cv2{font-family:var(--mono);font-size:11.5px;font-weight:700;text-align:right}
.cv2.c{color:#6ee7b7}.cv2.m{color:#fcd34d}.cv2.p{color:#f87171}

/* QUAD+RADAR */
.canwrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:14px;overflow:hidden}
.canwrap canvas{width:100%!important;height:auto!important}

/* QR */
.qr{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:16px}
.qrt{font-size:12.5px;font-weight:700;margin-bottom:12px;color:var(--tm)}
.qrlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:7px}
.qri{display:flex;align-items:center;gap:7px;padding:6px 9px;background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:7px}
.qrtag{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;white-space:nowrap;flex-shrink:0}
.qrval{font-size:11.5px;font-weight:600;color:var(--t)}

/* COMMUNITY BOX */
.cbox{background:rgba(110,231,183,.04);border:1px solid rgba(110,231,183,.14);border-radius:var(--rs);padding:13px 14px}
.cbt{font-size:12.5px;font-weight:700;color:var(--acc);margin-bottom:5px}
.cbtx{font-size:12px;color:var(--tm);line-height:1.7}

/* DECISION */
.dtree{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:18px 15px;margin-bottom:14px}
.droot{text-align:center;font-size:14px;font-weight:800;color:var(--acc);padding:9px;border:1px solid rgba(110,231,183,.28);border-radius:var(--rs);background:var(--acd);margin-bottom:18px}
.dbranches{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:9px}
.dbranch{background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:var(--rs);padding:11px}
.dq{font-size:11.5px;font-weight:700;color:var(--t);margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid var(--border)}
.dch{display:flex;flex-direction:column;gap:6px}
.dl{background:rgba(255,255,255,.03);border:1px solid var(--lc,#444);border-radius:7px;padding:7px 9px}
.dlt{font-size:11.5px;font-weight:700;color:var(--lc,#888);margin-bottom:2px}
.dls{font-size:9.5px;color:var(--td);line-height:1.5}

/* FOOTER */
.footer{margin-top:56px;padding:26px 16px;border-top:1px solid var(--border);text-align:center;font-size:11.5px;color:var(--td);line-height:1.85}

/* FILTER BAR */
.fbar{position:sticky;top:48px;z-index:99;background:rgba(8,10,15,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:9px 14px 8px;transition:padding .2s}
.fbar-row{display:flex;align-items:center;gap:8px}
.fbar-icon{font-size:12px;flex-shrink:0;opacity:.5}
.fchips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1;padding-bottom:1px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent)}
.fchips::-webkit-scrollbar{display:none}
.fchip{flex-shrink:0;background:none;border:1px solid var(--border);color:var(--tm);padding:4px 11px;border-radius:16px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;font-family:var(--mono)}
.fchip:hover{border-color:var(--fc,var(--acc));color:var(--fc,var(--acc))}
.fchip.sel{background:rgba(110,231,183,.16);border-color:var(--fc,var(--acc));color:var(--fc,var(--acc));font-weight:700}
.fchip.sel::before{content:'✓ ';font-size:9px}
.fclear{flex-shrink:0;background:none;border:1px solid var(--border);color:var(--td);padding:4px 10px;border-radius:16px;font-size:10.5px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s,color .2s,border-color .2s;white-space:nowrap}
.fclear.show{opacity:1;pointer-events:auto}
.fclear:hover{color:#f87171;border-color:rgba(248,113,113,.4)}
.fbar-hint{font-size:10.5px;color:var(--td);margin-top:6px;padding-left:21px;transition:opacity .2s}
.fbar-hint.active{color:var(--acc)}

/* FILTER MODE: 内容淡化与高亮 */
body.filtering [data-m],body.filtering .mc,body.filtering .br,body.filtering tr,body.filtering .pc,body.filtering .ai2,body.filtering .dl,body.filtering .uc,body.filtering .rc{
  transition:opacity .25s,filter .25s
}
body.filtering .mc:not(.fmatch),
body.filtering .br:not(.fmatch),
body.filtering tbody tr:not(.fmatch),
body.filtering .pc:not(.fmatch),
body.filtering .ai2:not(.fmatch),
body.filtering .dl:not(.fmatch),
body.filtering .uc:not(.fmatch),
body.filtering .rc:not(.fmatch){
  opacity:.16;filter:saturate(.3)
}
.fmatch{position:relative}
body.filtering .mc.fmatch{outline:1.5px solid var(--acc);outline-offset:-1px}
body.filtering .pc.fmatch{outline:1.5px solid var(--acc);outline-offset:-1px}
body.filtering .br.fmatch .bw{outline:1px solid var(--acc);outline-offset:1px;border-radius:4px}
body.filtering tbody tr.fmatch{background:rgba(110,231,183,.05)}
body.filtering tbody tr.fmatch td:first-child{box-shadow:inset 2px 0 0 var(--acc)}
body.filtering .uc.fmatch,body.filtering .rc.fmatch,body.filtering .ai2.fmatch,body.filtering .dl.fmatch{outline:1.5px solid var(--acc);outline-offset:-1px}
/* 没有任何匹配项的 section 整体收起留白，避免一堵空墙 */
body.filtering .sec.fempty{opacity:.35}
body.filtering .sec.fempty .mgrid,body.filtering .sec.fempty .blist,body.filtering .sec.fempty .pgrid{opacity:.16}

/* MOBILE */
@media(max-width:480px){
  .mgrid{grid-template-columns:1fr}
  .pgrid{grid-template-columns:1fr}
  .ugrid{grid-template-columns:1fr 1fr}
  .rcards{grid-template-columns:1fr}
  .tgrid{grid-template-columns:1fr}
  .rgrid{grid-template-columns:1fr}
  .br{grid-template-columns:108px 1fr 58px;gap:6px}
  .bpct{font-size:11px}
  .ai2{grid-template-columns:24px 1fr 110px}
  .ci{grid-template-columns:120px 1fr 90px;gap:7px}
  .dbranches{grid-template-columns:1fr 1fr}
  .fbar{padding:8px 12px 7px}
  .fbar-hint{display:none}
  .fchip{padding:4px 9px;font-size:10.5px}
}
@media(max-width:360px){
  .ugrid{grid-template-columns:1fr}
  .dbranches{grid-template-columns:1fr}
}
@keyframes fi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.sec{animation:fi .4s ease both}