/* =============================================================
   博洋通讯 H5 移动端样式 v2 · 高端数码精品
   设计语言：深色品牌区 + 金色点缀 + 大圆角卡片 + 细腻阴影
   主色 #2563EB ｜ 点缀金 #C8A45C ｜ 背景 #F5F6FA
   ============================================================= */
:root{
  --brand:#2563EB;
  --brand-d:#1D4ED8;
  --brand-ink:#0B1220;
  --gold:#C8A45C;
  --gold-d:#B08D3F;
  --bg:#F5F6FA;
  --card:#FFFFFF;
  --ink:#12141C;
  --ink-2:#4E5568;
  --ink-3:#8A90A0;
  --line:#EEF0F5;
  --price:#E8553F;
  --ok:#10B981;
  --radius:16px;
  --shadow:0 2px 14px rgba(18,24,38,.06);
  --shadow-lg:0 8px 30px rgba(18,24,38,.10);
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{font-size:14px;}
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--ink);line-height:1.5;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;border:0;background:none;}
input,select,textarea{font-family:inherit;font-size:14px;outline:none;color:var(--ink);}
img{display:block;}
.app{max-width:640px;margin:0 auto;min-height:100vh;padding-bottom:78px;background:var(--bg);}

/* ---------- 顶部栏（深色品牌区） ---------- */
.m-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(120deg,#0A0F1E 0%,#12203F 55%,#1D3A7A 100%);box-shadow:0 4px 18px rgba(10,15,30,.22);}
.m-logo{display:flex;align-items:center;gap:9px;color:#fff;flex:1;}
.m-logo-icon{width:32px;height:32px;background:linear-gradient(135deg,#F4E3BC,#C8A45C);color:#7A5C1E;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(200,164,92,.35);}
.m-logo-name{font-size:17px;font-weight:700;letter-spacing:2px;background:linear-gradient(120deg,#fff,#DCE6FF);-webkit-background-clip:text;background-clip:text;color:transparent;}
.m-logo-tag{font-size:10px;opacity:.9;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);padding:2px 8px;border-radius:9px;letter-spacing:1px;color:#E8EEFF;}
.m-header-tel{width:34px;height:34px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;}

/* ---------- 公告栏（毛玻璃金条） ---------- */
.m-notice{display:flex;align-items:center;gap:6px;margin:10px 14px 0;background:linear-gradient(135deg,#FFFBF0,#FBF3DE);color:#8A6A22;font-size:12px;padding:7px 12px;border-radius:12px;border:1px solid #F0E3C0;}
.m-notice-icon{color:var(--gold);flex:0 0 auto;display:flex;}
.m-notice-track{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}

/* ---------- 底部导航（悬浮胶囊） ---------- */
.m-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:0 14px calc(12px + env(safe-area-inset-bottom));max-width:640px;margin:0 auto;pointer-events:none;}
.m-tabbar{display:flex;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:20px;box-shadow:0 8px 30px rgba(10,15,30,.14);border:1px solid rgba(255,255,255,.9);padding:6px 6px;pointer-events:auto;}
.m-tabbar-item{flex:1;text-align:center;color:var(--ink-3);font-size:10px;padding:5px 0 6px;position:relative;border-radius:14px;transition:all .2s;}
.m-tabbar-item .m-tabbar-icon{display:flex;justify-content:center;margin-bottom:1px;transition:transform .2s;}
.m-tabbar-item.active{color:var(--brand);background:linear-gradient(135deg,#EEF4FF,#E4EDFF);font-weight:600;}
.m-tabbar-item.active .m-tabbar-icon{transform:translateY(-1px);}
.m-tabbar-badge{position:absolute;top:0;left:calc(50% + 3px);background:#FF4757;color:#fff;font-size:9px;font-style:normal;padding:0 5px;border-radius:8px;line-height:15px;min-width:15px;box-shadow:0 2px 6px rgba(255,71,87,.4);}

/* ---------- 按钮 ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:14px;font-size:15px;padding:12px 22px;font-weight:600;transition:transform .15s,box-shadow .2s;}
.btn:active{transform:scale(.97);}
.btn-primary{background:linear-gradient(135deg,#2E72FF,#1D4ED8);color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.32);}
.btn-gold{background:linear-gradient(135deg,#D9B878,#B08D3F);color:#fff;box-shadow:0 6px 16px rgba(200,164,92,.35);}
.btn-ghost{background:#fff;color:var(--ink-2);border:1px solid var(--line);}
.btn-ghost.danger{color:#FF4757;border-color:#FDD8D8;background:#FFF7F7;}
.btn-block{display:flex;width:100%;}
.link-btn{color:var(--brand);font-size:13px;padding:2px 4px;}
.link-btn.del{color:#FF4757;}

/* ---------- 区块卡片 ---------- */
.m-sec{background:var(--card);border-radius:var(--radius);margin:12px 14px;padding:14px;box-shadow:var(--shadow);}
.m-sec-head{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 12px;}
.m-sec-head h2{font-size:17px;color:var(--ink);font-weight:700;display:flex;align-items:center;gap:8px;letter-spacing:.3px;}
.m-sec-head h2::before{content:"";width:4px;height:16px;border-radius:2px;background:linear-gradient(180deg,#2E72FF,#1D4ED8);}
.m-sec-head h2.gold::before{background:linear-gradient(180deg,#D9B878,#B08D3F);}
.m-sec-head a{font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:2px;padding:4px 10px;border-radius:20px;background:#F4F6FB;transition:all .2s;}
.m-sec-head a:active{background:#E8EEFF;color:var(--brand);}
.m-alert{background:#FFF5F5;color:#C62828;border:1px solid #FFD6D6;border-radius:12px;margin:10px 14px;padding:10px 12px;font-size:13px;}
.m-alert.ok{background:#F0FDF7;color:#067A4E;border-color:#C4F1DE;}

/* ---------- 商品卡片 ---------- */
.m-goods{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 14px 14px;}
.m-goods-card{background:var(--card);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);transition:transform .18s,box-shadow .2s;}
.m-goods-card:active{transform:scale(.98);box-shadow:var(--shadow-lg);}
.m-goods-media{position:relative;}
.m-goods-img{width:100%;height:140px;object-fit:cover;background:#F2F4F8;}
.m-goods-tag{position:absolute;left:8px;top:8px;background:rgba(10,15,30,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:10px;padding:2px 8px;border-radius:8px;letter-spacing:.5px;}
.m-goods-tag.gold{background:linear-gradient(135deg,rgba(217,184,120,.92),rgba(176,141,63,.92));}
.m-goods-body{padding:10px 12px 12px;}
.m-goods-title{font-size:13px;color:var(--ink);font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;}
.m-goods-sub{font-size:11px;color:var(--ink-3);margin:3px 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.m-goods-price{display:flex;align-items:baseline;gap:6px;}
.m-goods-price b{color:var(--price);font-size:17px;font-weight:700;font-feature-settings:"tnum";}
.m-goods-price s{color:#C3C8D4;font-size:11px;}
.m-tag-install{font-style:normal;font-size:10px;color:#8A6A22;background:#FBF3DE;border:1px solid #F0E3C0;border-radius:6px;padding:1px 5px;margin-left:auto;letter-spacing:.5px;}

/* ---------- 首页 Hero 轮播 ---------- */
.m-hero{position:relative;background:linear-gradient(165deg,#0A0F1E 0%,#101C38 58%,#1B3B86 100%);padding:18px 14px 20px;margin-bottom:-6px;overflow:hidden;}
.m-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.22) 0%,transparent 65%);pointer-events:none;}
.m-hero-title{position:relative;z-index:2;font-size:22px;font-weight:800;color:#fff;letter-spacing:1px;line-height:1.3;}
.m-hero-title em{font-style:normal;background:linear-gradient(120deg,#F4E3BC,#C8A45C);-webkit-background-clip:text;background-clip:text;color:transparent;}
.m-hero-sub{position:relative;z-index:2;font-size:12px;color:rgba(255,255,255,.72);margin:8px 0 14px;letter-spacing:.5px;}
.m-hero-actions{position:relative;z-index:2;display:flex;gap:10px;}
.m-hero-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 0;border-radius:14px;font-size:14px;font-weight:600;transition:transform .15s;}
.m-hero-btn:active{transform:scale(.97);}
.m-hero-btn.sell{background:linear-gradient(135deg,#D9B878,#B08D3F);color:#fff;box-shadow:0 6px 16px rgba(200,164,92,.3);}
.m-hero-btn.buy{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.22);}
.m-hero .m-banner{margin-top:16px;position:relative;z-index:2;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35);}
.m-banner-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-banner-track::-webkit-scrollbar{display:none;}
.m-banner-item{flex:0 0 100%;width:100%;}
.m-banner-track img{flex:0 0 100%;width:100%;height:150px;object-fit:cover;scroll-snap-align:center;}
.m-banner-dots{display:flex;justify-content:center;gap:5px;padding:8px 0 0;}
.m-banner-dots i{width:6px;height:6px;border-radius:3px;background:rgba(255,255,255,.35);transition:all .25s;}
.m-banner-dots i.on{width:18px;background:linear-gradient(90deg,#F4E3BC,#C8A45C);}

/* ---------- 首页快捷入口 ---------- */
.m-quick{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:-8px 14px 0;padding:14px 10px;background:var(--card);border-radius:18px;box-shadow:var(--shadow-lg);}
.m-quick a{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:12px;color:var(--ink-2);font-weight:500;}
.q-ic{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#2E72FF,#1D4ED8);box-shadow:0 5px 12px rgba(37,99,235,.28);}
.q-ic.gold{background:linear-gradient(135deg,#D9B878,#B08D3F);box-shadow:0 5px 12px rgba(200,164,92,.3);}
.q-ic.green{background:linear-gradient(135deg,#34D399,#0EA5A5);box-shadow:0 5px 12px rgba(16,185,129,.28);}
.q-ic.ink{background:linear-gradient(135deg,#334155,#0F172A);box-shadow:0 5px 12px rgba(15,23,42,.28);}

/* ---------- 服务保障条 ---------- */
.m-assure{display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);margin:12px 14px 0;border-radius:14px;padding:11px 6px;box-shadow:var(--shadow);}
.m-assure span{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10px;color:var(--ink-2);text-align:center;}
.m-assure svg{color:var(--ok);}

/* ---------- 门店卡 ---------- */
.m-store{background:linear-gradient(150deg,#0B1220 0%,#16224A 60%,#1F3C86 100%);color:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow-lg);overflow:hidden;position:relative;}
.m-store::after{content:"";position:absolute;left:-40px;bottom:-70px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.2),transparent 70%);}
.m-store-top{display:flex;gap:11px;align-items:center;position:relative;}
.m-store-ic{width:42px;height:42px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#E8EEFF;flex:0 0 auto;}
.m-store b{font-size:15px;letter-spacing:1px;}
.m-store-sub{font-size:12px;opacity:.8;margin-top:2px;}
.m-store-row{display:flex;justify-content:space-between;font-size:12px;opacity:.9;margin-top:14px;position:relative;}
.m-store-row a{display:flex;align-items:center;gap:5px;color:#DCE6FF;}
.m-store-btn{display:flex;align-items:center;justify-content:center;gap:7px;background:linear-gradient(135deg,#D9B878,#B08D3F);color:#fff;border-radius:13px;padding:11px 0;margin-top:14px;font-size:13px;font-weight:700;letter-spacing:1px;position:relative;box-shadow:0 6px 16px rgba(200,164,92,.35);}

/* ---------- 分类横滑 ---------- */
.m-cats{display:flex;gap:14px;overflow-x:auto;padding:14px 14px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-cats::-webkit-scrollbar{display:none;}
.m-cats a{flex:0 0 auto;text-align:center;position:relative;}
.m-cats img{width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 4px 12px rgba(18,24,38,.12);transition:transform .2s;padding:2px;background:linear-gradient(135deg,#F4E3BC,#C8A45C);}
.m-cats a.on img{transform:scale(1.06);}
.m-cats span{display:block;font-size:11px;color:var(--ink-2);margin-top:5px;width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;}
.m-cats a.on span{color:var(--brand);font-weight:700;}
.m-cats-ic{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#EEF4FF,#E2EBFF);color:var(--brand);display:flex;align-items:center;justify-content:center;}

/* ---------- 列表页 ---------- */
.m-filter{position:sticky;top:56px;z-index:40;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:10px 14px;display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);}
.m-filter a{padding:5px 13px;border-radius:12px;font-size:12px;color:var(--ink-2);background:#F2F4F8;white-space:nowrap;transition:all .2s;}
.m-filter a.on{background:var(--brand);color:#fff;font-weight:600;box-shadow:0 4px 10px rgba(37,99,235,.3);}
.m-filter .f-kw{flex:1;display:flex;background:#F2F4F8;border-radius:12px;overflow:hidden;align-items:center;}
.m-filter .f-kw input{border:0;background:transparent;flex:1;padding:7px 12px;font-size:13px;min-width:0;}
.m-filter .f-kw button{color:var(--brand);padding:0 10px;display:flex;align-items:center;}
.m-list-count{padding:12px 16px 2px;font-size:12px;color:var(--ink-3);}
.m-empty{text-align:center;color:var(--ink-3);padding:70px 20px;}
.m-empty p{margin:12px 0 18px;font-size:13px;}
.m-empty .btn{margin-top:8px;}

/* ---------- 商品详情 ---------- */
.m-gallery{background:var(--card);position:relative;}
.m-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-gallery-track::-webkit-scrollbar{display:none;}
.m-gallery-track img{flex:0 0 100%;width:100%;height:300px;object-fit:cover;scroll-snap-align:center;}
.m-gallery-dots{position:absolute;bottom:10px;left:0;right:0;text-align:center;}
.m-gallery-dots i{display:inline-block;width:6px;height:6px;border-radius:3px;background:rgba(255,255,255,.5);margin:0 3px;}
.m-gallery-dots i.on{width:18px;background:#fff;}
.m-info{background:var(--card);padding:16px;margin:12px 14px;border-radius:var(--radius);box-shadow:var(--shadow);}
.m-info h1{font-size:16px;line-height:1.45;color:var(--ink);font-weight:700;}
.m-info-sub{font-size:12px;color:var(--ink-3);margin-top:4px;}
.m-info-price{margin-top:9px;display:flex;align-items:baseline;gap:10px;}
.m-info-price b{font-size:26px;color:var(--price);font-weight:800;font-feature-settings:"tnum";}
.m-info-price s{color:#C3C8D4;font-size:13px;}
.m-info-grade{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--brand);background:linear-gradient(135deg,#EEF4FF,#E4EDFF);padding:4px 11px;border-radius:20px;margin-top:9px;font-weight:500;}
.m-feature-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);margin:0 14px 12px;border-radius:var(--radius);padding:13px 4px;box-shadow:var(--shadow);}
.m-feature-row div{font-size:11px;color:var(--ink-2);text-align:center;}
.m-feature-row .ic{display:flex;justify-content:center;color:var(--brand);margin-bottom:5px;}
.m-install-card{background:linear-gradient(135deg,#FFFBF0,#FDF6E3);border:1px solid #F0E3C0;border-radius:var(--radius);margin:0 14px 12px;padding:13px;display:flex;align-items:center;gap:11px;box-shadow:var(--shadow);}
.m-install-card .ic{color:var(--gold);flex:0 0 auto;display:flex;background:#fff;width:42px;height:42px;border-radius:12px;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(200,164,92,.25);}
.m-install-card b{font-size:14px;color:#7A5C1E;display:block;}
.m-install-card span{font-size:12px;color:#A0863F;}
.m-install-card > a{margin-left:auto;white-space:nowrap;font-size:13px;color:var(--brand);font-weight:600;background:#fff;padding:7px 12px;border-radius:10px;box-shadow:0 3px 10px rgba(18,24,38,.08);}
.m-sec h3{font-size:15px;margin-bottom:12px;display:flex;align-items:center;gap:7px;color:var(--ink);font-weight:700;}
.m-sec h3 .bar{width:4px;height:15px;border-radius:2px;background:linear-gradient(180deg,#2E72FF,#1D4ED8);}
.m-sec h3 .bar.gold{background:linear-gradient(180deg,#D9B878,#B08D3F);}
.m-spec{display:flex;flex-wrap:wrap;gap:8px;}
.m-spec span{background:#F4F6FB;padding:7px 11px;border-radius:10px;font-size:12px;color:var(--ink-2);}
.m-guarantee{list-style:none;}
.m-guarantee li{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink-2);padding:8px 0;}
.m-guarantee .ic{color:var(--ok);flex:0 0 auto;margin-top:1px;display:flex;}
.m-buybar{position:fixed;left:0;right:0;bottom:0;padding:9px 14px calc(9px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;z-index:55;max-width:640px;margin:0 auto;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid rgba(238,240,245,.9);}
.m-buybar .bb-tel{width:42px;height:42px;border-radius:13px;background:#EEF4FF;color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.m-buybar .bb-cart{position:relative;width:42px;height:42px;border-radius:13px;background:#FFF7E6;color:var(--gold);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.m-buybar .bb-cart em{position:absolute;top:-4px;right:-4px;background:#FF4757;color:#fff;font-size:10px;padding:1px 6px;border-radius:9px;font-style:normal;box-shadow:0 2px 6px rgba(255,71,87,.35);}
.m-buybar .bb-install{flex:1;text-align:center;font-size:13px;color:#7A5C1E;background:linear-gradient(135deg,#FFF7E6,#FBEFD2);border-radius:13px;padding:11px 0;font-weight:600;}
.m-buybar .bb-buy{flex:1;text-align:center;font-size:15px;color:#fff;background:linear-gradient(135deg,#2E72FF,#1D4ED8);border-radius:13px;padding:11px 0;font-weight:700;box-shadow:0 5px 14px rgba(37,99,235,.32);}

/* ---------- 登录注册 ---------- */
.m-auth{min-height:100vh;padding-bottom:30px;background:radial-gradient(120% 80% at 50% 0%,#16233F 0%,#0C1426 55%,#0A0F1E 100%);}
.m-auth-head{background:linear-gradient(160deg,#0A0F1E,#1B3B86);padding:34px 24px 44px;color:#fff;position:relative;overflow:hidden;border-radius:0 0 28px 28px;}
.m-auth-head::after{content:"";position:absolute;right:-50px;top:-40px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.25),transparent 65%);}
.m-auth-logo{width:62px;height:62px;margin-bottom:14px;background:linear-gradient(135deg,#F4E3BC,#C8A45C);color:#7A5C1E;border-radius:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(200,164,92,.4);}
.m-auth-head h1{font-size:21px;font-weight:800;letter-spacing:1px;}
.m-auth-head p{font-size:12px;opacity:.78;margin-top:6px;letter-spacing:.5px;}
.m-auth-body{margin:-18px 14px 0;background:var(--card);border-radius:18px;padding:20px 16px;box-shadow:var(--shadow-lg);position:relative;}
.m-form{display:grid;gap:12px;}
.m-field{display:flex;align-items:center;gap:10px;background:#F6F7FA;border:1.5px solid transparent;border-radius:13px;padding:0 14px;height:48px;transition:all .2s;}
.m-field:focus-within{border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.1);}
.m-field .m-field-ic{color:var(--ink-3);display:flex;}
.m-field input{border:0;flex:1;height:100%;background:transparent;}
.m-auth-link{display:flex;justify-content:space-between;font-size:13px;color:var(--brand);margin-top:14px;}

.m-form-noborder{display:flex;flex-direction:column;gap:12px;}
.m-form-noborder .m-input{width:100%;box-sizing:border-box;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:14px;background:#F8FAFD;transition:all .2s;}
.m-form-noborder .m-input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.1);}
.m-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.m-pf-tip{font-size:12px;color:var(--ink-3);margin-top:10px;}

/* ---------- 购物车 ---------- */
.m-cart-list{padding:0 14px 90px;}
.m-cart-item{display:flex;gap:11px;background:var(--card);border-radius:16px;padding:11px;margin-top:12px;box-shadow:var(--shadow);}
.m-cart-img img{width:78px;height:78px;border-radius:12px;object-fit:cover;}
.m-cart-body{flex:1;min-width:0;}
.m-cart-title{font-size:13px;color:var(--ink);font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.m-cart-sub{font-size:14px;color:var(--price);margin:5px 0 9px;font-weight:700;font-feature-settings:"tnum";}
.m-cart-ops{display:flex;align-items:center;justify-content:space-between;}
.m-qty{display:flex;align-items:center;background:#F6F7FA;border-radius:10px;overflow:hidden;}
.m-qty button{width:30px;height:28px;color:var(--ink-2);display:flex;align-items:center;justify-content:center;transition:background .15s;}
.m-qty button:active{background:#E9EBF1;}
.m-qty input{width:36px;height:28px;border:0;text-align:center;font-size:13px;background:transparent;}
.m-cart-del{color:#C3C8D4;display:flex;padding:6px;}
.m-cart-del:active{color:#FF4757;}
.m-cart-bar{position:fixed;left:0;right:0;bottom:0;max-width:640px;margin:0 auto;padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;z-index:55;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);}
.m-cart-total{font-size:13px;color:var(--ink-2);flex:1;}
.m-cart-total b{color:var(--price);font-size:19px;font-weight:800;font-feature-settings:"tnum";}

/* ---------- 结算 ---------- */
.m-co-item{display:flex;gap:11px;align-items:center;padding:8px 0;}
.m-co-item img{width:58px;height:58px;border-radius:11px;object-fit:cover;}
.m-co-info{flex:1;min-width:0;}
.m-co-title{font-size:13px;color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.m-co-sub{font-size:12px;color:var(--ink-3);margin-top:2px;}
.m-co-item > b{color:var(--ink);font-weight:700;font-feature-settings:"tnum";}
.m-co-sum{text-align:right;font-size:13px;color:var(--ink-2);padding-top:10px;border-top:1px dashed var(--line);margin-top:8px;}
.m-co-sum b{color:var(--price);font-size:17px;font-weight:800;font-feature-settings:"tnum";}
.m-radio-row{display:flex;gap:10px;}
.m-radio{flex:1;display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:14px;padding:12px;font-size:13px;cursor:pointer;transition:all .2s;background:#fff;}
.m-radio.on{border-color:var(--brand);background:linear-gradient(135deg,#F5F8FF,#EFF4FF);box-shadow:0 0 0 3px rgba(37,99,235,.08);}
.m-radio input{display:none;}
.m-radio-box{color:var(--brand);display:flex;}
.m-radio-box.gold{color:var(--gold);}
.m-radio em{display:block;font-style:normal;color:var(--ink-3);font-size:11px;margin-top:1px;}
.m-radio b{color:var(--ink);font-weight:600;}
.m-addr-list{display:grid;gap:9px;}
.m-addr-item{display:block;border:1.5px solid var(--line);border-radius:14px;padding:12px;font-size:13px;cursor:pointer;background:#fff;transition:all .2s;}
.m-addr-item.on{border-color:var(--brand);background:linear-gradient(135deg,#F5F8FF,#EFF4FF);}
.m-addr-item input{display:none;}
.m-addr-name{color:var(--ink);font-weight:700;display:block;}
.m-addr-detail{color:var(--ink-3);font-size:12px;display:block;margin-top:2px;}
.m-addr-new{margin-top:11px;}
.m-addr-new summary{color:var(--brand);font-size:13px;cursor:pointer;display:flex;align-items:center;gap:4px;font-weight:600;}
.m-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px;}
.m-input{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:11px 13px;background:#fff;transition:all .2s;}
.m-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(37,99,235,.08);}
.m-input-full{margin-top:10px;}
.m-self-info{font-size:13px;color:var(--ink-2);}
.m-self-row{display:flex;gap:6px;align-items:flex-start;padding:5px 0;color:var(--brand);}
.m-self-row svg{flex:0 0 auto;}
.m-pay-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.m-pay-item{display:flex;align-items:center;gap:9px;border:1.5px solid var(--line);border-radius:14px;padding:12px;font-size:13px;cursor:pointer;background:#fff;transition:all .2s;}
.m-pay-item.on{border-color:var(--brand);background:linear-gradient(135deg,#F5F8FF,#EFF4FF);}
.m-pay-item input{display:none;}
.m-pay-ic{display:flex;}

/* ---------- 收银台 ---------- */
.m-pay{padding:16px 14px;}
.m-pay-head{text-align:center;background:var(--card);border-radius:18px;padding:28px 16px;box-shadow:var(--shadow);}
.m-pay-amount{font-size:34px;font-weight:800;color:var(--ink);display:block;font-feature-settings:"tnum";letter-spacing:-.5px;}
.m-pay-head p{font-size:12px;color:var(--ink-3);margin-top:6px;}
.m-pay-ok{width:84px;height:84px;margin:0 auto 12px;background:linear-gradient(135deg,#34D399,#0EA5A5);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(16,185,129,.35);}
.m-pay-info{background:var(--card);border-radius:16px;margin-top:12px;padding:14px;box-shadow:var(--shadow);}
.m-pay-row{display:flex;justify-content:space-between;padding:7px 0;font-size:13px;color:var(--ink-2);}
.m-pay-row b{color:var(--ink);}
.m-pay-row b.red{color:var(--price);}
.m-pay-methods{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;}
.m-pay-method{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:13px 0;font-size:14px;font-weight:600;transition:all .2s;}
.m-pay-method.on{border-color:var(--brand);background:linear-gradient(135deg,#F5F8FF,#EFF4FF);color:var(--brand);}
.m-pay-tip{font-size:11px;color:var(--ink-3);text-align:center;margin:12px 4px;line-height:1.7;}
.m-qr{text-align:center;margin:10px 0;}
.m-qr img{width:180px;height:180px;object-fit:contain;border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);}
.m-qr p{font-size:12px;color:var(--ink-3);margin-top:6px;}
.m-pay .btn{margin-top:10px;}

/* ---------- 成功页 ---------- */
.m-success{text-align:center;padding:66px 24px;}
.m-success-ic{width:86px;height:86px;margin:0 auto;background:linear-gradient(135deg,#34D399,#0EA5A5);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(16,185,129,.35);animation:pop .4s cubic-bezier(.2,.9,.3,1.2);}
@keyframes pop{from{transform:scale(.6);opacity:0;}to{transform:scale(1);opacity:1;}}
.m-success h2{font-size:19px;margin:16px 0 6px;color:var(--ink);font-weight:800;}
.m-success p{font-size:13px;color:var(--ink-2);}
.m-success-sub{color:var(--ink-3);font-size:12px;}
.m-success-btns{display:flex;gap:10px;justify-content:center;margin-top:24px;}

/* ---------- 回收/分期 ---------- */
.m-hero2{background:linear-gradient(165deg,#0A0F1E 0%,#101C38 55%,#1B3B86 100%);color:#fff;padding:22px 16px;position:relative;overflow:hidden;}
.m-hero2::after{content:"";position:absolute;right:-50px;bottom:-70px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.22),transparent 65%);}
.m-hero2.gold{background:linear-gradient(165deg,#3A2A0A 0%,#6B4E14 60%,#B08D3F 100%);}
.m-hero2.gold::after{background:radial-gradient(circle,rgba(255,230,170,.25),transparent 65%);}
.m-hero2-t{position:relative;z-index:2;font-size:19px;font-weight:800;display:flex;align-items:center;gap:9px;letter-spacing:1px;}
.m-hero2-s{position:relative;z-index:2;font-size:12px;opacity:.82;margin-top:7px;letter-spacing:.5px;}
.m-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.m-type-grid button{border:1.5px solid var(--line);background:var(--card);border-radius:14px;padding:13px 0;font-size:13px;color:var(--ink-2);transition:all .2s;}
.m-type-grid button.on{border-color:var(--brand);color:var(--brand);background:linear-gradient(135deg,#F5F8FF,#EFF4FF);box-shadow:0 0 0 3px rgba(37,99,235,.08);}
.m-type-grid .ic{display:flex;justify-content:center;margin-bottom:5px;}
.m-cond{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.m-cond label{font-size:12px;color:var(--ink-2);}
.m-cond .m-input{margin-top:4px;}
.m-est{background:linear-gradient(135deg,#F5F8FF,#EEF4FF);border:1.5px dashed #C7D8FB;border-radius:14px;padding:14px;text-align:center;}
.m-est-label{font-size:12px;color:var(--ink-2);display:block;}
.m-est b{font-size:24px;color:var(--brand);display:block;margin:5px 0;font-weight:800;font-feature-settings:"tnum";}
.m-est p{font-size:11px;color:var(--ink-3);}
.m-submit-btn{margin:14px 14px 6px;width:calc(100% - 28px);}
.m-warn{border-left:3px solid var(--gold);background:linear-gradient(135deg,#FFFBF0,#FDF6E3);}
.m-warn p{font-size:13px;color:var(--ink-2);line-height:1.8;}

/* ---------- 个人中心 ---------- */
.m-user-top{background:linear-gradient(160deg,#0A0F1E 0%,#12203F 55%,#1B3B86 100%);padding:22px 18px 44px;color:#fff;position:relative;overflow:hidden;border-radius:0 0 26px 26px;}
.m-user-top::after{content:"";position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.25),transparent 65%);}
.m-user-id{display:flex;align-items:center;gap:13px;position:relative;}
.m-user-avatar{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#F4E3BC,#C8A45C);color:#7A5C1E;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(200,164,92,.4);flex:0 0 auto;}
.m-user-id b{font-size:17px;font-weight:800;letter-spacing:.5px;}
.m-user-id span{font-size:11px;opacity:.75;display:block;margin-top:2px;}
.m-user-phone{margin-left:auto;font-size:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);padding:4px 10px;border-radius:10px;letter-spacing:1px;}
.m-order-card{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);margin:-26px 14px 12px;background:var(--card);border-radius:18px;padding:14px 4px;box-shadow:var(--shadow-lg);}
.m-order-card a{text-align:center;font-size:11px;color:var(--ink-2);position:relative;}
.m-order-card svg{color:var(--brand);display:block;margin:0 auto 5px;}
.m-order-card .badge{position:absolute;top:-5px;left:calc(50% + 6px);background:#FF4757;color:#fff;font-size:9px;font-style:normal;padding:0 5px;border-radius:8px;line-height:15px;box-shadow:0 2px 6px rgba(255,71,87,.35);}
.m-user-menu{background:var(--card);border-radius:18px;margin:0 14px 12px;padding:4px 14px;box-shadow:var(--shadow);}
.m-user-menu a{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink);}
.m-user-menu a:last-child{border-bottom:0;}
.m-user-menu .ic{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#2E72FF,#1D4ED8);box-shadow:0 4px 10px rgba(37,99,235,.25);flex:0 0 auto;}
.m-user-menu a:nth-child(2) .ic{background:linear-gradient(135deg,#D9B878,#B08D3F);box-shadow:0 4px 10px rgba(200,164,92,.3);}
.m-user-menu a:nth-child(3) .ic{background:linear-gradient(135deg,#34D399,#0EA5A5);box-shadow:0 4px 10px rgba(16,185,129,.25);}
.m-user-menu a:nth-child(4) .ic{background:linear-gradient(135deg,#6366F1,#4F46E5);box-shadow:0 4px 10px rgba(99,102,241,.25);}
.m-user-menu a:nth-child(5) .ic{background:linear-gradient(135deg,#F87171,#EF4444);box-shadow:0 4px 10px rgba(239,68,68,.25);}
.m-user-menu .cnt{margin-left:auto;font-size:11px;color:var(--ink-3);}
.m-user-menu .chev{margin-left:auto;color:#C3C8D4;display:flex;}
.m-user-help{display:flex;align-items:center;gap:9px;margin:0 14px 12px;background:linear-gradient(135deg,#FFFBF0,#FBF3DE);border:1px solid #F0E3C0;border-radius:16px;padding:13px 14px;font-size:13px;color:#7A5C1E;box-shadow:var(--shadow);}
.m-user-help span{color:var(--gold);display:flex;}
.m-user-help .chev{margin-left:auto;color:#C8A45C;display:flex;}
.m-pf-tip{font-size:12px;color:var(--ink-3);margin:8px 0;}
details.m-addr-new[open] .m-grid2{margin-top:10px;}

/* ---------- 状态条/标签 ---------- */
.st-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 10px;border-radius:10px;font-weight:600;}
.st-badge.pending_pay{background:#FFF7E6;color:#B8860B;}
.st-badge.paid{background:#EEF4FF;color:var(--brand);}
.st-badge.shipped{background:#EEF2FF;color:#4F46E5;}
.st-badge.completed{background:#F0FDF7;color:#067A4E;}
.st-badge.cancelled{background:#F2F3F5;color:var(--ink-3);}
.st-badge.quoting,.st-badge.pending{background:#EEF4FF;color:var(--brand);}
.st-badge.confirmed{background:#F0FDF7;color:#067A4E;}

/* ---------- 个人中心-订单/明细/地址/回收/分期/资料（v2 高级卡片） ---------- */
.m-tabs{display:flex;gap:8px;overflow-x:auto;padding:12px 14px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-tabs::-webkit-scrollbar{display:none;}
.m-tabs a{flex:0 0 auto;padding:6px 15px;border-radius:20px;font-size:13px;color:var(--ink-2);background:var(--card);box-shadow:var(--shadow);transition:all .2s;}
.m-tabs a.on{background:linear-gradient(135deg,#2E72FF,#1D4ED8);color:#fff;font-weight:600;box-shadow:0 5px 12px rgba(37,99,235,.3);}

.m-order{background:var(--card);margin:12px 14px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);}
.m-order-head{display:flex;align-items:center;padding:12px 14px;font-size:12px;color:var(--ink-3);border-bottom:1px solid var(--line);}
.m-order-head .no{font-weight:600;color:var(--ink-2);letter-spacing:.3px;}
.m-order-head .st{margin-left:auto;font-weight:700;font-size:12px;}
.m-order-head .st.cancel{color:var(--ink-3);}
.m-order-head .st.pending_pay{color:#B8860B;}
.m-order-head .st.paid,.m-order-head .st.quoting{color:var(--brand);}
.m-order-head .st.shipped{color:#4F46E5;}
.m-order-head .st.completed,.m-order-head .st.confirmed{color:#067A4E;}
.m-order-items{padding:8px 14px;}
.m-order-item{display:flex;gap:11px;padding:7px 0;align-items:center;}
.m-order-item img{width:58px;height:58px;border-radius:12px;object-fit:cover;box-shadow:var(--shadow);}
.m-order-item .t{font-size:13px;color:var(--ink);font-weight:600;line-height:1.4;}
.m-order-item .p{font-size:12px;color:var(--ink-3);margin-top:2px;}
.m-order-item .pr{margin-left:auto;font-size:14px;color:var(--ink);font-weight:700;font-feature-settings:"tnum";white-space:nowrap;}
.m-order-foot{display:flex;align-items:center;padding:10px 14px 14px;font-size:12px;color:var(--ink-3);border-top:1px solid var(--line);}
.m-order-foot .am{margin-left:auto;font-size:13px;color:var(--ink-2);}
.m-order-foot .am b{color:var(--price);font-weight:800;font-feature-settings:"tnum";}
.m-order-btns{display:flex;gap:8px;margin-left:10px;}
.m-order-btns a{font-size:12px;padding:6px 14px;border-radius:12px;border:1px solid var(--line);color:var(--ink-2);transition:all .2s;}
.m-order-btns a.primary{background:linear-gradient(135deg,#2E72FF,#1D4ED8);border-color:transparent;color:#fff;box-shadow:0 4px 10px rgba(37,99,235,.28);}

.m-od-status{background:linear-gradient(160deg,#0A0F1E 0%,#12203F 55%,#1B3B86 100%);color:#fff;padding:26px 18px;position:relative;overflow:hidden;}
.m-od-status::after{content:"";position:absolute;right:-40px;top:-50px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(200,164,92,.25),transparent 65%);}
.m-od-status h2{font-size:20px;margin:0 0 6px;font-weight:800;letter-spacing:.5px;}
.m-od-status p{font-size:12px;opacity:.82;margin:2px 0;}
.m-od-sec{background:var(--card);margin:12px 14px;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);}
.m-od-sec h3{font-size:15px;margin-bottom:10px;display:flex;gap:7px;align-items:center;color:var(--ink);font-weight:700;}
.m-od-sec h3 .bar{width:4px;height:15px;background:linear-gradient(180deg,#2E72FF,#1D4ED8);border-radius:2px;}
.m-od-row{display:flex;padding:6px 0;font-size:13px;color:var(--ink-2);}
.m-od-row span{color:var(--ink-3);width:76px;flex:0 0 auto;}
.m-od-row b{color:var(--ink);}
.m-od-item{display:flex;gap:11px;padding:7px 0;align-items:center;}
.m-od-item img{width:58px;height:58px;border-radius:12px;object-fit:cover;box-shadow:var(--shadow);}
.m-od-item .t{font-size:13px;color:var(--ink);font-weight:600;}
.m-od-item .pr{margin-left:auto;color:var(--ink);font-weight:700;font-feature-settings:"tnum";}
.m-od-btns{position:sticky;bottom:0;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;gap:10px;max-width:640px;margin:0 auto;}
.m-od-btns a{flex:1;text-align:center;padding:11px 0;border-radius:13px;font-size:14px;font-weight:600;transition:transform .15s;}
.m-od-btns a:active{transform:scale(.98);}

.m-addr-card{background:var(--card);margin:12px 14px;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);}
.m-addr-card .name{font-size:15px;color:var(--ink);font-weight:700;}
.m-addr-card .name em{font-style:normal;font-size:10px;color:var(--gold-d);border:1px solid #E8D9A8;background:#FBF3DE;padding:2px 7px;border-radius:8px;margin-left:6px;letter-spacing:.5px;}
.m-addr-card .det{font-size:13px;color:var(--ink-2);margin:7px 0 11px;line-height:1.6;}
.m-addr-card .ops{display:flex;gap:8px;align-items:center;}
.m-addr-card .ops a{font-size:13px;color:var(--brand);}
.m-addr-card .ops a.del{color:#FF4757;margin-left:auto;}
.m-addr-new{background:var(--card);margin:12px 14px;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);}
.m-addr-new summary{font-size:14px;color:var(--brand);display:flex;align-items:center;gap:6px;cursor:pointer;font-weight:600;}

.m-rc-card{background:var(--card);margin:12px 14px;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);}
.m-rc-head,.m-fq-head{display:flex;align-items:center;font-size:13px;color:var(--ink-2);padding-bottom:9px;border-bottom:1px solid var(--line);margin-bottom:4px;}
.m-rc-head .st,.m-fq-head .st{margin-left:auto;font-weight:700;font-size:12px;}
.m-rc-head .st.pending,.m-fq-head .st.pending{color:#B8860B;}
.m-rc-head .st.quoting,.m-rc-head .st.confirmed,.m-fq-head .st.confirmed{color:var(--brand);}
.m-rc-head .st.completed,.m-fq-head .st.completed{color:#067A4E;}
.m-rc-head .st.cancelled,.m-fq-head .st.cancelled{color:var(--ink-3);}
.m-rc-row,.m-fq-row{display:flex;padding:6px 0;font-size:13px;color:var(--ink-2);}
.m-rc-row span,.m-fq-row span{color:var(--ink-3);width:76px;flex:0 0 auto;}
.m-rc-row b,.m-fq-row b{color:var(--ink);}
.m-rc-row b.quote{color:var(--price);font-weight:800;font-feature-settings:"tnum";}

.m-fq-card{background:linear-gradient(135deg,#FFFBF0,#FDF8EA);border:1px solid #F0E3C0;margin:12px 14px;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);}
.m-fq-head{border-bottom-color:#EFE4C4;}
.m-fq-row span{color:#A0863F;}

.m-pf-sec{background:var(--card);margin:12px 14px;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);}
.m-pf-sec h3{font-size:15px;margin-bottom:12px;display:flex;gap:7px;align-items:center;color:var(--ink);font-weight:700;}
.m-pf-sec h3 .bar{width:4px;height:15px;background:linear-gradient(180deg,#2E72FF,#1D4ED8);border-radius:2px;}

/* ---------- 商品详情（v2） ---------- */
.m-gallery{position:relative;background:var(--card);}
.m-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.m-gallery-track::-webkit-scrollbar{display:none;}
.m-gallery-track img{flex:0 0 100%;width:100%;height:300px;object-fit:cover;scroll-snap-align:center;}
.m-gallery-dots{position:absolute;bottom:10px;left:0;right:0;text-align:center;}
.m-gallery-dots i{display:inline-block;width:6px;height:6px;border-radius:3px;background:rgba(255,255,255,.55);margin:0 3px;transition:all .25s;}
.m-gallery-dots i.on{background:var(--gold);width:18px;}

.m-info{background:var(--card);padding:16px;margin:12px 14px;border-radius:var(--radius);box-shadow:var(--shadow);}
.m-info h1{font-size:17px;line-height:1.45;color:var(--ink);font-weight:700;}
.m-info .m-info-sub{font-size:12px;color:var(--ink-3);margin-top:5px;}
.m-info .m-info-price{margin-top:10px;display:flex;align-items:baseline;gap:10px;}
.m-info .m-info-price b{font-size:26px;color:var(--price);font-weight:800;font-feature-settings:"tnum";}
.m-info .m-info-price s{color:var(--ink-3);font-size:13px;}
.m-info .m-info-grade{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--brand);background:linear-gradient(135deg,#EEF4FF,#E3EDFF);padding:4px 12px;border-radius:14px;margin-top:10px;font-weight:600;}

.m-feature-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);margin:0 14px 12px;border-radius:var(--radius);padding:12px 4px;text-align:center;box-shadow:var(--shadow);}
.m-feature-row div{font-size:11px;color:var(--ink-2);}
.m-feature-row .ic{display:flex;justify-content:center;color:var(--brand);margin-bottom:5px;}

.m-install-card{background:linear-gradient(135deg,#FFFBF0,#FDF6E3);border:1px solid #EFDFB6;border-radius:var(--radius);margin:0 14px 12px;padding:13px 14px;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow);}
.m-install-card .ic{color:#C89B3C;flex:0 0 auto;}
.m-install-card b{font-size:14px;color:#9A6B1F;display:block;font-weight:700;}
.m-install-card span{font-size:12px;color:#B8860B;}
.m-install-card a{margin-left:auto;white-space:nowrap;font-size:13px;color:var(--brand);font-weight:700;}

.m-spec{display:flex;flex-wrap:wrap;gap:8px;}
.m-spec span{background:var(--bg);padding:7px 12px;border-radius:10px;font-size:12px;color:var(--ink-2);border:1px solid var(--line);}
.m-guarantee li{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink-2);padding:8px 0;list-style:none;}
.m-guarantee .ic{color:#0AA061;flex:0 0 auto;margin-top:1px;}

.m-buybar{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:9px 14px calc(9px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;z-index:30;max-width:640px;margin:0 auto;}
.m-buybar .bb-tel{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#EEF4FF,#DFEAFE);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.m-buybar .bb-cart{position:relative;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#FFF6E6,#FDEDCB);color:#C89B3C;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.m-buybar .bb-cart em{position:absolute;top:-3px;right:-3px;background:#FF4757;color:#fff;font-size:10px;padding:1px 6px;border-radius:9px;font-style:normal;}
.m-buybar .bb-install{flex:1;text-align:center;font-size:13px;color:#9A6B1F;background:linear-gradient(135deg,#FFFBF0,#F7EED5);border-radius:23px;padding:11px 0;font-weight:700;border:1px solid #EFDFB6;}
.m-buybar .bb-buy{flex:1;text-align:center;font-size:15px;color:#fff;background:linear-gradient(135deg,#2E72FF,#1D4ED8);border-radius:23px;padding:11px 0;font-weight:700;box-shadow:0 6px 14px rgba(37,99,235,.3);transition:transform .15s;}
.m-buybar .bb-buy:active{transform:scale(.97);}
.m-buybar .bb-cartbtn{flex:0 0 auto;}

/* ---------- Toast ---------- */
.toast{position:fixed;left:50%;top:44%;transform:translate(-50%,-50%);background:rgba(10,15,30,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:13px;padding:11px 20px;border-radius:12px;z-index:999;display:none;max-width:78%;text-align:center;box-shadow:0 10px 26px rgba(0,0,0,.25);}
.toast.show{display:block;animation:toastIn .25s ease;}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,-44%);}to{opacity:1;transform:translate(-50%,-50%);}}
