/* ============================================================
   XRF · xinrongfa.net  ·  前端展示层样式（本路自建）
   设计语言：工厂模具板（Mould Board）—— 工程蓝图网格 + 等宽 SKU 芯片
   与 sendafit.net（东莞瑞达智选）的 WooCommerce 常规网格刻意区分
   ============================================================ */
:root{
  --navy:#1B3C6E;
  --navy-d:#12294C;
  --navy-l:#2C5591;
  --blue:#2E6FB7;
  --pale:#E8F0F9;
  --pale2:#F2F7FC;
  --bg:#F5F7FA;
  --line:#DCE3EC;
  --line2:#EDF1F6;
  --ink:#101C2E;
  --grey:#5A6B80;
  --grey2:#8496AB;
  --ok:#1E7A46;
  --r:10px;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace;
  --sans:"Source Han Sans SC","Noto Sans SC","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:#fff;font-size:15.5px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
.wrap{max-width:1280px;margin:0 auto;padding:0 26px}
.wrap.narrow{max-width:1120px}
h1,h2,h3,h4{font-weight:700;line-height:1.22;letter-spacing:-.011em}
h2{font-size:29px}
h3{font-size:17px}
.eyebrow{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--blue)}
.lede{color:var(--grey);font-size:16px}
.mono{font-family:var(--mono)}

/* ---------- 顶栏 / 页眉 ---------- */
.topbar{background:var(--navy-d);color:#C6D6EA;font-size:12.5px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:36px;gap:16px}
.topbar b{color:#fff;font-weight:600}
.topbar .sep{color:var(--navy-l);padding:0 8px}
.topbar nav{display:flex;gap:14px;align-items:center}
.topbar nav a:hover{color:#fff}
.lang{display:inline-flex;border:1px solid #35507A;border-radius:6px;overflow:hidden}
.lang a{padding:2px 9px;font-size:11.5px;color:#9FB6D2}
.lang a.on{background:#fff;color:var(--navy);font-weight:700}

header.site{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:70px;gap:24px}
.brand{display:flex;align-items:center;gap:11px;flex:none}
.logo{width:36px;height:36px;background:var(--navy);border-radius:8px;display:grid;place-items:center;color:#fff;font-weight:700;font-size:13px;letter-spacing:.03em}
.brand .nm{font-weight:700;font-size:18px;color:var(--navy);line-height:1}
.brand .sub{font-size:10.5px;color:var(--grey2);letter-spacing:.1em;text-transform:uppercase;line-height:1;margin-top:3px}
nav.main{display:flex;gap:24px;font-size:14.5px;font-weight:500}
nav.main a{color:#26374E;padding:6px 0;border-bottom:2px solid transparent}
nav.main a:hover,nav.main a.on{color:var(--navy);border-bottom-color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14.5px;font-weight:600;border:1.5px solid transparent;transition:.15s}
.btn.primary{background:var(--navy);color:#fff}
.btn.primary:hover{background:var(--navy-d)}
.btn.ghost{border-color:var(--line);background:#fff;color:var(--navy)}
.btn.ghost:hover{border-color:var(--navy)}
.btn.sm{padding:8px 15px;font-size:13.5px;border-radius:7px}

/* ---------- 结构 ---------- */
.sec{padding:70px 0}
.sec.alt{background:var(--bg)}
.sec-head{max-width:760px;margin-bottom:34px}
.sec-head h2{margin-top:10px}
.sec-head p{color:var(--grey);margin-top:12px}

/* ---------- Hero ---------- */
.hero{border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.04fr .96fr;gap:52px;align-items:center;padding-top:56px;padding-bottom:56px}
.hero h1{font-size:42px;color:var(--navy);margin:14px 0 16px}
.hero h1 em{font-style:normal;color:var(--blue)}
.hero .cta{display:flex;gap:12px;margin:26px 0 0;flex-wrap:wrap}
.counter{display:flex;gap:0;margin-top:34px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;max-width:560px;background:#fff}
.counter div{flex:1;padding:14px 16px;border-right:1px solid var(--line2)}
.counter div:last-child{border-right:none}
.counter b{display:block;font-size:24px;color:var(--navy);line-height:1.05;font-variant-numeric:tabular-nums}
.counter span{font-size:11.5px;color:var(--grey2);letter-spacing:.03em}
.hero-art{display:grid;grid-template-columns:2fr 1fr;gap:12px;align-self:center}
.hero-art .cell{border-radius:var(--r);overflow:hidden;background:#fff;aspect-ratio:1/1}
.hero-art .cell img{width:100%;height:100%;object-fit:contain;display:block}
.hero-art .cell:nth-child(1){grid-row:span 2;aspect-ratio:auto}
.hero-art figcaption{position:absolute;left:0;bottom:0;right:0;padding:7px 11px;font-size:11px;color:#fff;background:linear-gradient(to top,rgba(11,24,44,.85),rgba(11,24,44,0));font-family:var(--mono);letter-spacing:.02em}

/* ---------- 新模导轨（最新款在最前） ---------- */
.rail{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--navy)}
.rail .head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px}
.rail .head h3{color:#fff;font-size:15px;letter-spacing:.02em}
.rail .head .hint{color:#8FA9C9;font-size:12.5px}
.rail .track{display:flex;gap:12px;overflow-x:auto;padding:18px 26px 22px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.rail .track::-webkit-scrollbar{height:8px}
.rail .track::-webkit-scrollbar-thumb{background:#3B5B88;border-radius:8px}
.rail .track::-webkit-scrollbar-track{background:#16305A}
.rail a.slot{flex:0 0 168px;scroll-snap-align:start;background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid #2B4C7C}
.rail a.slot:hover{border-color:#fff}
.rail a.slot .ph{aspect-ratio:1/1;background:var(--pale2);overflow:hidden}
.rail a.slot .ph img{width:100%;height:100%;object-fit:cover}
.rail a.slot .tx{padding:9px 10px 11px}
.rail a.slot .tx .m{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:.03em}
.rail a.slot .tx .n{font-size:12px;color:var(--ink);margin-top:3px;line-height:1.35;height:32px;overflow:hidden}
.rail a.slot .tx .s{font-family:var(--mono);font-size:10.5px;color:var(--grey2);margin-top:5px}

/* ---------- 三轴入口 ---------- */
.axes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.axis{border:1px solid var(--line);border-radius:var(--r);padding:22px;background:#fff;display:flex;flex-direction:column;gap:14px;transition:.15s}
.axis:hover{border-color:var(--blue);transform:translateY(-2px)}
.axis .no{font-family:var(--mono);font-size:12px;color:var(--blue);letter-spacing:.08em}
.axis h3{color:var(--navy);font-size:19px}
.axis p{font-size:13.5px;color:var(--grey)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12px;padding:3.5px 9px;border:1px solid var(--line);border-radius:99px;color:#33475F;background:#fff}
.chip:hover{border-color:var(--blue);color:var(--navy)}
.chip b{color:var(--grey2);font-weight:600;font-size:11px}

/* ---------- 分栏特性 ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.split.rev .art{order:2}
.feat-list{margin-top:24px;display:grid;gap:16px}
.feat{display:flex;gap:13px}
.feat .ico{width:36px;height:36px;flex:none;border-radius:8px;background:var(--pale);display:grid;place-items:center;color:var(--navy);font-weight:700;font-size:13px;font-family:var(--mono)}
.feat h3{font-size:15.5px;color:var(--navy)}
.feat p{font-size:13.5px;color:var(--grey);margin-top:2px}
.frame{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--bg);aspect-ratio:4/3}
.frame img{width:100%;height:100%;object-fit:cover}
.frame.tall{aspect-ratio:3/4}

/* ---------- 工厂网格 ---------- */
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:166px 166px;gap:12px}
.fgrid figure{position:relative;margin:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--pale2)}
.fgrid img{width:100%;height:100%;object-fit:cover}
.fgrid figcaption{position:absolute;left:0;right:0;bottom:0;padding:9px 13px;font-size:11.5px;color:#fff;background:linear-gradient(to top,rgba(11,24,44,.86),rgba(11,24,44,0))}
.fgrid .wide{grid-row:span 2}

/* ---------- 表格 ---------- */
table.data{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
table.data th{background:var(--navy);color:#fff;text-align:left;padding:12px 16px;font-weight:600;font-size:13px;letter-spacing:.02em}
table.data td{padding:12px 16px;border-top:1px solid var(--line2);color:#2A3B52;vertical-align:top}
table.data tbody tr:nth-child(even){background:#FAFCFE}
table.data td b{color:var(--navy)}

/* ---------- 页脚 ---------- */
footer.site{background:var(--navy-d);color:#B4C7DF;font-size:13.5px}
footer.site .top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px;padding:52px 0 36px}
footer.site h4{color:#fff;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
footer.site a{display:block;padding:4.5px 0;color:#B4C7DF}
footer.site a:hover{color:#fff}
footer.site .brand{display:block;flex:none}
footer.site .brand .nm{color:#fff;font-size:17px;font-weight:700}
footer.site .brand p{margin-top:10px;line-height:1.7;max-width:300px}
footer.site .bar{border-top:1px solid #29456E;padding:18px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12.5px;color:#8AA2C0}
footer.site .bar nav{display:flex;gap:18px}
footer.site .bar nav a{display:inline;padding:0}

/* ============================================================
   模具板（Mould Board）—— 目录页专用
   ============================================================ */
.board-hero{background:var(--white,#fff);border-bottom:1px solid var(--line);padding:34px 0 0}
.board-hero h1{font-size:33px;color:var(--navy)}
.board-hero .sub{color:var(--grey);margin-top:10px;max-width:720px}

/* 机型导轨 */
.mrail{padding:22px 0 26px;border-bottom:1px solid var(--line);background:#fff}
.mrail .lbl{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.mrail .lbl h4{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey2)}
.mrail .lbl .t{font-size:12.5px;color:var(--grey2)}
.mrail .strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px;scrollbar-width:thin}
.mrail .strip::-webkit-scrollbar{height:7px}
.mrail .strip::-webkit-scrollbar-thumb{background:var(--line);border-radius:7px}
.mtile{flex:0 0 150px;border:1px solid var(--line);border-radius:var(--r);padding:12px;background:#fff;text-align:left;transition:.14s}
.mtile:hover{border-color:var(--blue)}
.mtile.on{border-color:var(--navy);background:var(--pale);box-shadow:inset 0 0 0 1px var(--navy)}
.mtile .g{font-size:10.5px;font-family:var(--mono);color:var(--blue);letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mtile .m{font-size:13.5px;font-weight:700;color:var(--navy);margin-top:6px;line-height:1.32;height:36px;overflow:hidden}
.mtile .c{font-size:11.5px;color:var(--grey2);margin-top:6px}
.mtile .bar{height:3px;border-radius:3px;background:var(--pale);margin-top:9px;overflow:hidden}
.mtile .bar i{display:block;height:100%;background:var(--blue);border-radius:3px}

/* 筛选条 */
.filters{position:sticky;top:70px;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:13px 0}
.filters .row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fgroup{display:flex;align-items:center;gap:7px}
.fgroup>.k{font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--grey2);font-weight:700}
.pill{font-size:13px;padding:6px 12px;border:1px solid var(--line);border-radius:99px;background:#fff;color:#2E3F55;transition:.12s;white-space:nowrap}
.pill:hover{border-color:var(--blue);color:var(--navy)}
.pill.on{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}
.pill i{font-style:normal;opacity:.62;font-size:11.5px;padding-left:4px}
.sw{width:20px;height:20px;border-radius:50%;border:1px solid rgba(0,0,0,.14);display:inline-block;vertical-align:-4px}
.swpill{display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 6px}
.swpill.on .sw{box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--navy)}
.searchbox{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;padding:6px 14px;background:#fff;min-width:230px;flex:1;max-width:330px}
.searchbox input{border:none;outline:none;font-family:inherit;font-size:13.5px;width:100%;color:var(--ink);background:transparent}
.searchbox svg{flex:none;opacity:.5}
.spacer{flex:1}
.meta{display:flex;align-items:center;gap:14px;padding:14px 0;font-size:13px;color:var(--grey);border-bottom:1px solid var(--line2)}
.meta b{color:var(--navy)}
.viewtoggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.viewtoggle button{padding:6px 12px;font-size:12.5px;background:#fff;color:#3A4E66;border:none;border-right:1px solid var(--line)}
.viewtoggle button:last-child{border-right:none}
.viewtoggle button.on{background:var(--navy);color:#fff;font-weight:600}
select.sort{padding:7px 11px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:13px;color:#2E3F55;background:#fff}

/* 板面网格（蓝图底纹） */
.board{padding:24px 0 60px;background-color:#FAFCFE;
  background-image:linear-gradient(var(--line2) 1px,transparent 1px),linear-gradient(90deg,var(--line2) 1px,transparent 1px);
  background-size:26px 26px;background-position:-1px -1px}
.grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.pcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;position:relative;transition:.14s;display:flex;flex-direction:column}
.pcard:hover{border-color:var(--navy);box-shadow:0 6px 18px -10px rgba(16,40,74,.35)}
.pcard .ph{position:relative;aspect-ratio:1/1;background:var(--pale2);overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:cover;transition:.28s}
.pcard:hover .ph img{transform:scale(1.035)}
.pcard .sku{position:absolute;top:8px;left:8px;background:rgba(18,41,76,.9);color:#fff;font-family:var(--mono);font-size:10px;letter-spacing:.03em;padding:3px 7px;border-radius:5px}
.pcard .nc{position:absolute;top:8px;right:8px;background:rgba(255,255,255,.94);color:var(--navy);font-size:10.5px;font-weight:700;padding:3px 7px;border-radius:5px;font-family:var(--mono)}
.pcard .body{padding:11px 12px 13px;display:flex;flex-direction:column;gap:8px;flex:1}
.pcard .tags{display:flex;gap:5px;flex-wrap:nowrap;overflow:hidden}
.tag{font-size:10.5px;padding:2px 7px;border-radius:5px;background:var(--pale);color:var(--navy);font-weight:600;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:none}
.tag.ln{background:#EEF3FA;color:#33527F;flex:0 1 auto}
.pcard h3{font-size:13.5px;line-height:1.35;color:var(--ink);font-weight:600;height:37px;overflow:hidden}
.pcard .dots{display:flex;gap:4px;align-items:center;margin-top:auto;padding-top:4px}
.dot{width:13px;height:13px;border-radius:50%;border:1px solid rgba(0,0,0,.16)}
.dotlbl{font-size:10.5px;color:var(--grey2);margin-left:3px}
.pcard .act{margin-top:8px;padding-top:9px;border-top:1px solid var(--line2);display:flex;align-items:center;justify-content:space-between;font-size:12px}
.pcard .act .q{color:var(--blue);font-weight:600}
.pcard .act .m{font-family:var(--mono);color:var(--grey2);font-size:10.5px}
#empty{padding:80px 20px;text-align:center;color:var(--grey)}
#empty b{display:block;color:var(--navy);font-size:18px;margin-bottom:8px}

/* 列表视图 */
table.board-table{width:100%;border-collapse:collapse;background:#fff;font-size:13px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
table.board-table th{background:var(--navy);color:#fff;text-align:left;padding:10px 12px;font-size:12px;letter-spacing:.03em}
table.board-table td{padding:9px 12px;border-top:1px solid var(--line2);vertical-align:middle}
table.board-table tr:hover td{background:var(--pale2)}
table.board-table .timg{width:44px;height:44px;border-radius:6px;object-fit:cover;border:1px solid var(--line2)}
table.board-table .mono{font-family:var(--mono);font-size:12px;color:var(--navy)}

@media(max-width:1180px){.grid5{grid-template-columns:repeat(4,1fr)}}
@media(max-width:960px){
  .hero .wrap,.split{grid-template-columns:1fr;gap:32px}
  .grid5{grid-template-columns:repeat(3,1fr)}
  .axes{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .fgrid .wide{grid-column:span 2;grid-row:auto;min-height:210px}
  nav.main{display:none}
  footer.site .top{grid-template-columns:1fr 1fr}
  .filters{top:0;position:relative}
}
@media(max-width:640px){
  .grid5{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:29px}
  .board-hero h1{font-size:25px}
}
