/* ============================================================
 * 前台布局 2/3/4（<html data-layout="1|2|3|4">）—— 只改首页结构和少量全局细节
 * 颜色全部走配色变量，所以任何布局都能配任何配色
 * ========================================================== */
.sec-head.left{text-align:left;margin-left:0}
.sec-head.left p{margin-left:0}
.lay-ico{width:18px;height:18px;border-radius:5px;border:1.5px solid currentColor;display:inline-grid;place-items:center;font-size:.68rem;font-weight:700;flex:none;opacity:.8}
.btn-soft{background:var(--brand-soft);color:var(--brand)}

/* 线路卡片（布局 2/3 共用）*/
.lr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lr-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius,14px);padding:20px;display:grid;gap:6px;min-width:0}
.lr-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.lr-tag{font-size:.72rem;font-weight:700;color:var(--brand);background:var(--brand-soft);border-radius:6px;padding:2px 8px;white-space:nowrap}
.lr-price{font-size:1.5rem;font-weight:800;color:var(--brand)}
.lr-price small{font-size:.8rem;color:var(--muted);font-weight:500}
.lr-sub{font-size:.84rem;color:var(--muted)}

/* 运费估算（布局 2/3 共用）*/
.qc label{display:block;font-size:.8rem;font-weight:600;color:var(--muted);margin:12px 0 6px}
.qc select,.qc input{width:100%}
.qc-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qc-res{margin-top:16px;background:var(--navy);color:var(--on-navy);border-radius:12px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.qc-res small{display:block;font-size:.76rem;color:var(--on-navy-muted)}
.qc-res b{font-size:1.6rem;color:var(--accent)}
.qc-tip{font-size:.76rem;color:var(--faint);margin-top:8px}

/* ---------- 布局 2：查件优先 ---------- */
.h2-hero{background:var(--navy);color:var(--on-navy);text-align:center;padding:64px 0 76px;position:relative;overflow:hidden}
.h2-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.h2-hero .wrap{position:relative}
.h2-hero h1{font-size:clamp(1.7rem,4vw,2.7rem);line-height:1.2;color:#fff;text-wrap:balance}
.h2-hero h1 b{color:var(--accent)}
.h2-hero>.wrap>p{color:var(--on-navy-muted);margin:12px auto 28px;max-width:40em}
.h2-box{max-width:760px;margin:0 auto;background:var(--surface);color:var(--fg);border-radius:14px;padding:10px;text-align:left;box-shadow:0 24px 60px -24px rgba(0,0,0,.55)}
.h2-tabs{display:flex;gap:4px;padding:4px 4px 10px;flex-wrap:wrap}
.h2-tabs button{border:0;background:none;padding:7px 14px;border-radius:8px;font:inherit;font-weight:600;font-size:.9rem;color:var(--muted);cursor:pointer}
.h2-tabs button.on{background:var(--surface-2);color:var(--fg)}
.h2-in{display:flex;gap:8px}
.h2-in input{flex:1;min-width:0;font-size:1.05rem;padding:15px 16px;font-family:Menlo,Consolas,monospace}
.h2-in .btn{padding:0 30px;font-size:1rem}
.h2-tip{font-size:.8rem;color:var(--muted);padding:10px 6px 2px}
.h2-pane .qc{padding:0 6px 6px}
.h2-stats{display:flex;justify-content:center;gap:48px;margin-top:32px;font-size:.84rem;color:var(--on-navy-muted);flex-wrap:wrap}
.h2-stats b{display:block;font-size:1.6rem;color:#fff}
.h2-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.h2-steps>div{padding:20px 18px;border-right:1px solid var(--line);min-width:0}
.h2-steps>div:last-child{border-right:0}
.h2-steps em{font-style:normal;font-family:Menlo,monospace;font-size:.74rem;color:var(--brand);font-weight:700;letter-spacing:.1em}
.h2-steps h4{margin:6px 0 4px;font-size:1rem}
.h2-steps p{font-size:.82rem;color:var(--muted);line-height:1.6}

/* ---------- 布局 3：左右分栏 ---------- */
.h3-hero{padding:56px 0 64px;background:linear-gradient(180deg,var(--surface) 0%,var(--bg) 100%)}
.h3-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.h3-kick{display:inline-block;background:var(--brand-soft);color:var(--brand);font-weight:700;font-size:.82rem;padding:5px 12px;border-radius:999px}
.h3-hero h1{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.25;margin:16px 0 14px;text-wrap:balance}
.h3-hero h1 b{color:var(--brand)}
.h3-hero .lead{color:var(--muted);font-size:1rem;max-width:32em}
.h3-pts{list-style:none;margin:22px 0 26px;padding:0;display:grid;gap:12px}
.h3-pts li{display:grid;grid-template-columns:24px 1fr;column-gap:10px}
.h3-pts li:before{content:"✓";grid-row:span 2;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:.75rem;font-weight:800;margin-top:2px}
.h3-pts b{font-size:.95rem}
.h3-pts span{font-size:.84rem;color:var(--muted)}
.h3-cta{display:flex;gap:10px;flex-wrap:wrap}
.h3-calc{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow-lg)}
.h3-calc h3{font-size:1.15rem}
.h3-calc .sub{font-size:.84rem;color:var(--muted)}
.h3-band{margin-top:24px;background:var(--navy);color:var(--on-navy);border-radius:16px;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.h3-band p{color:var(--on-navy-muted);font-size:.88rem;margin-top:2px}
.h3-track{display:flex;gap:8px;max-width:640px}
.h3-track input{flex:1;min-width:0}

/* ---------- 布局 4：简约卡片 ---------- */
.h4{background:var(--bg)}
.h4-in{max-width:1000px;padding-block:26px 50px;display:grid;gap:18px}
.h4-hello{font-size:1.9rem;font-weight:700;letter-spacing:-.01em}
.h4-hello small{display:block;font-size:.95rem;color:var(--muted);font-weight:500;letter-spacing:0}
.h4-search{background:var(--surface);border-radius:14px;display:flex;align-items:center;gap:10px;padding:6px 16px;color:var(--faint);box-shadow:var(--shadow)}
.h4-search input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;padding:8px 0;font-size:1rem}
.h4-search b{color:var(--brand);cursor:pointer;white-space:nowrap}
.h4-tiles{background:var(--surface);border-radius:20px;padding:20px 12px;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px 4px;box-shadow:var(--shadow)}
.h4-tiles button{border:0;background:none;display:grid;justify-items:center;gap:8px;font:inherit;font-size:.82rem;color:var(--fg);cursor:pointer;padding:0}
.h4-tiles .ic{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;color:#fff}
.h4-tiles .ic svg{width:26px;height:26px}
.h4-notice{background:linear-gradient(140deg,var(--brand),var(--accent-ink,var(--brand)));color:#fff;border-radius:20px;padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.h4-notice p{opacity:.85;font-size:.86rem}
.h4-pill{background:#fff;color:var(--brand);border:0;border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer;flex:none}
.h4-cards{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}
.h4-card{background:var(--surface);border-radius:20px;padding:20px 22px;box-shadow:var(--shadow);min-width:0}
.h4-card h3{font-size:1.05rem;margin-bottom:10px;display:flex;justify-content:space-between;align-items:baseline}
.h4-card h3 a{font-size:.86rem;color:var(--brand);font-weight:500;cursor:pointer}
.h4-li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);cursor:pointer}
.h4-li:first-of-type{border-top:0}
.h4-dot{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}
.h4-li .m{flex:1;min-width:0}
.h4-li .m b{display:block;font-family:Menlo,monospace;font-size:.86rem}
.h4-li .m small{color:var(--muted);font-size:.78rem}
.h4-price{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.h4-price:first-of-type{border-top:0}
.h4-price b{font-size:1.15rem}
.h4-price small{color:var(--muted)}
.h4-empty{color:var(--faint);text-align:center;padding:20px 0;font-size:.9rem}

/* 布局 4：圆角更大、导航更轻；手机底部导航栏 */
:root[data-layout="4"] .nav-links{display:none}
.tabbar{display:none}
@media (max-width:720px){
  :root[data-layout="4"] .hamb{display:none}
  :root[data-layout="4"] body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
  :root[data-layout="4"] .tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(20px);border-top:1px solid var(--line);padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));text-align:center}
  .tabbar a{display:grid;justify-items:center;gap:2px;font-size:.7rem;color:var(--faint);cursor:pointer}
  .tabbar a.on{color:var(--brand)}
  .tabbar svg{width:24px;height:24px}
}
@media (min-width:721px){ :root[data-layout="4"] .nav-links{display:flex} }

@media (max-width:860px){
  .lr-grid{grid-template-columns:minmax(0,1fr)}
  .h2-steps{grid-template-columns:minmax(0,1fr)}.h2-steps>div{border-right:0;border-bottom:1px solid var(--line)}
  .h3-split{grid-template-columns:minmax(0,1fr);gap:28px}
  .h4-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
  .h4-cards{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .h2-hero{padding:40px 0 48px}.h2-in{flex-direction:column}.h2-in .btn{padding:13px}.h2-stats{gap:22px}
  .h3-hero{padding:32px 0 40px}.h4-hello{font-size:1.6rem}.h4-tiles .ic{width:50px;height:50px;border-radius:14px}
  .h3-track{flex-direction:column}
}

/* 手机页头太挤：深浅色切换收进调色板菜单，注册按钮藏起来（登录页里有注册入口）*/
.skin-dark{display:none!important}
@media (max-width:480px){
  #themeBtn{display:none}
  .skin-dark{display:flex!important}
  #navAuth .btn-pri{display:none}
  .nav-act{gap:6px}
  .skin-menu{position:fixed;right:12px;left:auto;top:64px;max-height:calc(100vh - 90px);overflow:auto}
  :root[data-layout="4"] #navAuth{display:none}
}
