/* 椰影海岸族 hny · 母版底座（base + shop，字号归一） */
/* ===== 商城母版 · 基础样式（换肤改这里 + theme_css 变量） ===== */
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--font);font-size:14px;line-height:1.6;color:#2b2f36;background:#f4f6f9;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--c-main)}
img{max-width:100%;display:block;border:0}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4{margin:0;font-weight:700;line-height:1.35}
p{margin:0 0 8px}
input,select,textarea,button{font-family:inherit;font-size:14px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 16px}
.mono{font-family:ui-monospace,Consolas,monospace;font-size:13px}
.off{color:#98a0aa;font-style:normal}
.tag{display:inline-block;margin-left:6px;padding:0 5px;border-radius:3px;background:var(--c-accent);color:#fff;font-size:13px;font-style:normal;vertical-align:2px}

/* 按钮 */
.btn-main,.btn-ghost,.btn-line{display:inline-flex;align-items:center;justify-content:center;gap:6px;
  height:38px;padding:0 20px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;
  font-size:14px;font-weight:600;transition:.18s;background:none}
.btn-main{background:var(--c-main);color:#fff}
.btn-main:hover{background:var(--c-deep);color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.16);color:#fff}
.btn-line{border-color:#cfd6e0;color:#39414d;background:#fff}
.btn-line:hover{border-color:var(--c-main);color:var(--c-main)}
.btn-lg{height:44px;padding:0 28px;font-size:16px}
.link-del{border:0;background:none;color:#8b939f;cursor:pointer;padding:0;font-size:13px}
.link-del:hover{color:#d64541}

/* 顶栏 */
.topbar{background:#20252d;color:#b9c0ca;font-size:13px}
.tb-in{display:flex;justify-content:space-between;align-items:center;height:34px}
.tb-r{display:flex;gap:16px}
.tb-r a:hover{color:#fff}

/* 头部 */
.site-head{background:#fff;border-bottom:1px solid #eef1f5}
.head-in{display:flex;align-items:center;gap:24px;height:86px}
.brand{font-size:20px;font-weight:800;letter-spacing:-.3px;color:var(--c-deep);white-space:nowrap;max-width:44%}
.brand:hover{color:var(--c-main)}
.head-search{flex:1;display:flex;max-width:560px;height:42px;border:2px solid var(--c-main);border-radius:var(--radius);overflow:hidden}
.head-search input{flex:1;border:0;outline:0;padding:0 14px;font-size:14px;background:#fff}
.head-search button{width:88px;border:0;background:var(--c-main);color:#fff;font-weight:600;cursor:pointer}
.head-search button:hover{background:var(--c-deep)}
.head-cart{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border:1px solid #e2e7ee;border-radius:var(--radius);color:#3a424e;white-space:nowrap}
.head-cart b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;
  border-radius:10px;background:var(--c-accent);color:#fff;font-size:13px}
.head-cart:hover{border-color:var(--c-main);color:var(--c-main)}

/* 导航 */
.site-nav{background:#fff;border-bottom:2px solid var(--c-main);position:sticky;top:0;z-index:50}
.nav-in{display:flex;align-items:center;gap:4px;height:46px;overflow-x:auto;scrollbar-width:none}
.nav-in::-webkit-scrollbar{display:none}
.nav-in a{padding:0 14px;height:46px;line-height:46px;font-size:14px;color:#3a424e;white-space:nowrap}
.nav-in a:hover{color:var(--c-main)}
.nav-in a.on{color:var(--c-main);font-weight:700;box-shadow:inset 0 -2px 0 var(--c-accent)}
.nav-all{background:var(--c-main);color:#fff !important;font-weight:600;border-radius:0}

/* 商品网格 */
.goods-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.gcard{background:#fff;border-radius:var(--radius);overflow:hidden;transition:.18s;border:1px solid #eef1f5}
.gcard:hover{box-shadow:0 8px 22px rgba(20,35,60,.10);transform:translateY(-2px)}
.gc-img{display:block;aspect-ratio:1/1;background:#f7f8fa;overflow:hidden}
.gc-img img{width:100%;height:100%;object-fit:cover}
.gc-body{padding:10px 12px 12px}
.gc-body h3{font-size:14px;font-weight:500;line-height:1.5;height:41px;overflow:hidden}
.gc-body h3 a{display:block}
.gc-sub{color:#8b939f;font-size:13px;height:19px;overflow:hidden;margin:2px 0 6px}
.gc-foot{display:flex;align-items:baseline;justify-content:space-between}
.price{color:#e0453b;font-size:16px;font-weight:700}
.gc-sales{color:#98a0aa;font-size:13px}
.gc-store{font-size:13px;color:#98a0aa;margin:6px 0 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.gc-store a:hover{color:var(--c-main)}

/* 区块标题 */
.sec{padding:28px 0}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
.sec-h h2{font-size:20px;color:#1d2430;position:relative;padding-left:12px}
.sec-h h2::before{content:"";position:absolute;left:0;top:5px;width:4px;height:18px;background:var(--c-main);border-radius:2px}
.sec-h p{font-size:13px;color:#8b939f;margin:0}
.sec-h .more{font-size:13px;color:#8b939f}
.sec-h .more:hover{color:var(--c-main)}

/* 空态 / 提示 */
.empty{padding:60px 20px;text-align:center;color:#8b939f;background:#fff;border-radius:var(--radius);margin:16px 0}
.empty h1{font-size:31px;color:#c9d0da;margin-bottom:8px}
.form-err,.flash.err{background:#fff2f0;border:1px solid #ffd6d0;color:#c0392b;padding:10px 14px;border-radius:6px;margin:0 0 14px}
.form-ok,.flash.ok{background:#eefaf2;border:1px solid #cdead8;color:#1c7a45;padding:10px 14px;border-radius:6px;margin:0 0 14px}
.hint{color:#8b939f;font-size:13px;margin:8px 0 0}
.crumbs{font-size:13px;color:#98a0aa;padding:14px 0}
.crumbs i{font-style:normal;margin:0 6px;color:#c6ccd4}

/* 分页 */
.pager{display:flex;justify-content:center;align-items:center;gap:6px;padding:26px 0 6px;flex-wrap:wrap}
.pager a,.pager span{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #e2e7ee;border-radius:6px;background:#fff;font-size:13px;color:#4a525e}
.pager a:hover{border-color:var(--c-main);color:var(--c-main)}
.pager .cur{background:var(--c-main);border-color:var(--c-main);color:#fff}
.pager .total{border:0;background:none;color:#98a0aa;margin-left:8px}
.pager .gap{border:0;background:none;color:#98a0aa}

/* 表格 */
.dtable{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.dtable th,.dtable td{padding:11px 10px;border-bottom:1px solid #eff2f6;text-align:left;vertical-align:middle}
.dtable th{background:#f8fafc;color:#69737f;font-weight:600;font-size:13px}
.dtable tr:hover td{background:#fcfdff}
.d-goods{display:flex;align-items:center;gap:10px}
.d-goods img{width:44px;height:44px;object-fit:cover;border-radius:4px}
.ops{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.ops a,.ops button{border:0;background:none;color:var(--c-main);cursor:pointer;font-size:13px;padding:0}
.ops a:hover,.ops button:hover{text-decoration:underline}

/* 表单 */
.fld-row{display:flex;gap:14px;flex-wrap:wrap}
.fld-row label{flex:1;min-width:180px}
label{display:block;font-size:13px;color:#5c6572;margin-bottom:12px}
label i{color:#e0453b;font-style:normal}
label input,label select,label textarea{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid #dbe1ea;
  border-radius:6px;outline:0;background:#fff;color:#2b2f36;transition:.16s}
label input:focus,label select:focus,label textarea:focus{border-color:var(--c-main);box-shadow:0 0 0 3px rgba(27,75,143,.08)}
label textarea{resize:vertical;line-height:1.7}
.fld-full{display:block}
.agree-row{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#5c6572;line-height:1.7}
.agree-row input{width:auto;margin:3px 0 0}
.agree-row a{color:var(--c-main)}

/* 页脚 */
.site-foot{margin-top:40px;background:#20252d;color:#98a1ad;font-size:13px}
.foot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:30px;padding:36px 0 26px}
.f-name{color:#fff;font-size:16px;font-weight:700;margin-bottom:12px}
.f-line{margin:0 0 6px;line-height:1.8}
.f-note{color:#7d8694;font-size:13px;margin-top:12px;max-width:520px}
.f-h{color:#fff;font-size:14px;font-weight:600;margin-bottom:12px}
.f-links a{display:block;margin-bottom:8px;color:#98a1ad}
.f-links a:hover{color:#fff}
.foot-bot{border-top:1px solid #2c323c;padding:14px 0;font-size:13px}
.foot-bot .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.foot-bot a:hover{color:#fff}

/* 响应式 */
@media (max-width:1200px){.goods-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:980px){
  .head-in{height:auto;flex-wrap:wrap;gap:12px;padding:14px 0}
  .brand{max-width:100%;font-size:20px}
  .head-search{order:3;max-width:none;flex-basis:100%}
  .goods-grid{grid-template-columns:repeat(3,1fr)}
  .foot-top{grid-template-columns:1fr;gap:20px}
}
@media (max-width:640px){
  .goods-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .sec-h h2{font-size:20px}
  .site-nav{position:static}
  .nav-in a{padding:0 10px;font-size:14px}
  .price{font-size:16px}
  .tb-l{display:none}
}


/* 母版商城组件（shop） */
/* ===== 商城母版 · 页面样式（首页 / 列表 / 详情 / 会员 / 商家 / 信息） ===== */

/* ---------- 首页 Hero ---------- */
.hero{padding:16px 0 0}
.hero-in{display:grid;grid-template-columns:214px 1fr;gap:14px}
.hero-side{background:#fff;border-radius:var(--radius);padding:8px 0 10px;border:1px solid #eef1f5}
.hs-h{margin:0;padding:8px 16px 10px;font-size:13px;font-weight:700;color:#fff;background:var(--c-main);border-radius:var(--radius) var(--radius) 0 0;margin:-8px 0 6px}
.hero-side li a{display:flex;justify-content:space-between;align-items:center;padding:7px 16px;font-size:14px;color:#3f4753}
.hero-side li a:hover{background:#f4f7fb;color:var(--c-main)}
.hero-side li a i{color:#c6ccd4;font-style:normal}
.hero-main{display:flex;flex-direction:column;gap:12px;min-width:0}
.hero-banner{position:relative;height:340px;border-radius:var(--radius);overflow:hidden;background:#eef2f7}
.hero-banner img{width:100%;height:100%;object-fit:cover}
.hb-mask{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,34,.72) 0%,rgba(12,20,34,.42) 46%,rgba(12,20,34,.06) 100%)}
.hb-txt{position:absolute;left:44px;top:50%;transform:translateY(-50%);color:#fff;max-width:560px}
.hb-txt h1{font-size:31px;letter-spacing:-.5px;margin-bottom:10px;text-shadow:0 2px 12px rgba(0,0,0,.24)}
.hb-txt p{font-size:16px;color:rgba(255,255,255,.9);margin-bottom:20px}
.hb-acts{display:flex;gap:12px}
.hero-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.tile{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:14px 16px;transition:.16s}
.tile:hover{border-color:var(--c-main);box-shadow:0 6px 18px rgba(20,35,60,.08)}
.tile b{display:block;font-size:14px;color:#1d2430;margin-bottom:3px}
.tile span{font-size:13px;color:#8b939f}

/* ---------- 服务承诺 ---------- */
.promise{margin-top:14px}
.promise-in{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:16px}
.promise-in div{border-right:1px solid #f0f3f7;padding-right:12px}
.promise-in div:last-child{border:0}
.promise-in b{display:block;font-size:14px;color:#1d2430;margin-bottom:3px}
.promise-in span{font-size:13px;color:#8b939f}

/* 楼层商品网格：桌面 5 列，随断点收敛（原缺失导致手机端撑破 835px） */
.floor .goods-grid{grid-template-columns:repeat(5,1fr);gap:14px}
.sec-store{background:#fff;border-top:1px solid #eef1f5;border-bottom:1px solid #eef1f5}
.store-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.scard{display:block;padding:16px;border:1px solid #eef1f5;border-radius:var(--radius);background:#fff;transition:.16s}
.scard:hover{border-color:var(--c-main);box-shadow:0 6px 18px rgba(20,35,60,.08)}
.scard b{display:block;font-size:14px;color:#1d2430;margin-bottom:6px}
.scard span{display:block;font-size:13px;color:#8b939f;height:38px;overflow:hidden;line-height:1.55}
.scard i{display:block;margin-top:8px;font-size:13px;color:var(--c-main);font-style:normal}

.sec-info{background:#fff;border-bottom:1px solid #eef1f5}
.info-list li a{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px dashed #eef1f5;font-size:14px}
.info-list li:last-child a{border-bottom:0}
.info-list li a:hover .il-title{color:var(--c-main)}
.il-cate{flex:0 0 auto;padding:1px 8px;border-radius:3px;background:var(--c-bg2);color:var(--c-deep);font-size:13px}
.il-title{flex:1;min-width:0;color:#2b2f36;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.il-meta{flex:0 0 auto;color:#98a0aa;font-size:13px}

.cta-join{background:linear-gradient(120deg,var(--c-deep),var(--c-main));color:#fff;margin-top:6px}
.cta-in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px 0}
.cta-in h2{font-size:31px;margin-bottom:8px}
.cta-in p{color:rgba(255,255,255,.86);margin:0;max-width:640px}
.cta-join .btn-main{background:#fff;color:var(--c-main)}
.cta-join .btn-main:hover{background:#f2f5fa;color:var(--c-deep)}

/* ---------- 分类页 ---------- */
.cate-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:14px 0 4px}
.cate-tabs a{padding:7px 14px;border:1px solid #e2e7ee;border-radius:20px;background:#fff;font-size:13px;color:#4a525e}
.cate-tabs a:hover{border-color:var(--c-main);color:var(--c-main)}
.cate-tabs a.on{background:var(--c-main);border-color:var(--c-main);color:#fff}
.sort-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 0 16px;color:#69737f;font-size:13px}
.sorts{display:flex;gap:14px}
.sorts a{color:#5c6572}
.sorts a.on{color:var(--c-main);font-weight:700}
.sorts a:hover{color:var(--c-main)}

/* ---------- 详情页 ---------- */
.detail-box{display:grid;grid-template-columns:440px 1fr;gap:30px;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px;margin-bottom:16px}
.d-main{aspect-ratio:1/1;background:#f7f8fa;border-radius:var(--radius);overflow:hidden}
.d-main img{width:100%;height:100%;object-fit:cover}
.d-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.d-thumb{width:64px;height:64px;padding:0;border:2px solid #eef1f5;border-radius:6px;background:none;cursor:pointer;overflow:hidden}
.d-thumb.on{border-color:var(--c-main)}
.d-thumb img{width:100%;height:100%;object-fit:cover}
.d-info h1{font-size:20px;line-height:1.45;margin-bottom:8px}
.d-sub{color:#8b939f;font-size:13px;margin-bottom:16px}
.d-price{background:linear-gradient(90deg,#fdf6f5,#fafbfd);border-radius:var(--radius);padding:14px 16px;margin-bottom:18px;display:flex;align-items:baseline;gap:10px}
.p-now{font-size:31px;font-weight:800;color:#e0453b}
.p-old{color:#a8b0ba;text-decoration:line-through;font-size:13px}
.p-unit{color:#8b939f;font-size:13px}
.d-meta{display:grid;grid-template-columns:58px 1fr;gap:8px 12px;font-size:13px;margin:0 0 18px}
.d-meta dt{color:#98a0aa}
.d-meta dd{margin:0;color:#39414d}
.d-tags span{display:inline-block;margin:0 6px 4px 0;padding:1px 8px;border:1px solid #e2e7ee;border-radius:3px;font-size:13px;color:#69737f}
.d-buy{border-top:1px solid #eff2f6;padding-top:18px}
.num-box{display:inline-flex;align-items:center;margin-top:6px;border:1px solid #dbe1ea;border-radius:6px;overflow:hidden}
.num-box button{width:34px;height:36px;border:0;background:#f7f9fc;cursor:pointer;font-size:16px;color:#5c6572}
.num-box input{width:56px;height:36px;border:0;border-left:1px solid #dbe1ea;border-right:1px solid #dbe1ea;text-align:center;outline:0}
.d-acts{display:flex;gap:12px;margin-top:16px}
.d-acts .btn-ghost{border-color:var(--c-main);color:var(--c-main)}
.d-acts .btn-ghost:hover{background:#f2f6fc;color:var(--c-deep)}
.d-flash{margin-top:12px;color:#1c7a45;font-size:13px}
.d-store{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:12px 14px;background:#f8fafc;border-radius:var(--radius)}
.ds-l b{display:block;font-size:14px}
.ds-l span{font-size:13px;color:#8b939f}
.d-body{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:0 0 24px;margin-bottom:8px}
.d-tabs{border-bottom:1px solid #eff2f6;padding:0 24px}
.d-tabs span{display:inline-block;padding:14px 0;font-size:16px;font-weight:700;color:var(--c-main);box-shadow:inset 0 -2px 0 var(--c-main)}
.d-content{padding:20px 24px 0;font-size:14px;line-height:1.9;color:#39414d;overflow:hidden}
.d-content img{margin:0 auto 8px;max-width:100%;height:auto}

/* ---------- 购物车 / 结算 / 支付 ---------- */
.cart-box{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:8px 18px 18px}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{text-align:left;font-size:13px;color:#69737f;font-weight:600;padding:12px 8px;border-bottom:1px solid #eff2f6}
.cart-table td{padding:14px 8px;border-bottom:1px solid #f3f5f8;vertical-align:middle}
.ct-goods{display:flex;gap:12px;align-items:center}
.ct-goods img{width:64px;height:64px;object-fit:cover;border-radius:6px}
.ct-store{display:block;font-size:13px;color:#98a0aa}
.ct-numf input{width:64px;padding:6px;border:1px solid #dbe1ea;border-radius:5px;text-align:center}
.ct-sub{color:#e0453b;font-weight:700}
.cart-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 8px 0;flex-wrap:wrap}
.cf-total{font-size:14px;color:#5c6572}
.cf-total b{font-size:31px;color:#e0453b}
.cf-acts{display:flex;gap:12px;align-items:center}
.checkout-box{display:grid;grid-template-columns:1fr;gap:16px}
.co-form{display:flex;flex-direction:column;gap:16px}
.co-block{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:20px 22px}
.co-block h3{font-size:16px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #eff2f6}
.co-table{width:100%;border-collapse:collapse;font-size:14px}
.co-table td{padding:10px 8px;border-bottom:1px solid #f3f5f8}
.co-store td{background:#f8fafc;font-size:13px;color:#69737f}
.co-g{display:flex;align-items:center;gap:10px}
.co-g img{width:44px;height:44px;object-fit:cover;border-radius:4px}
.co-sub{color:#e0453b;font-weight:600}
.co-total{margin:16px 0;font-size:14px}
.co-total b{font-size:31px;color:#e0453b}
.co-total span{color:#98a0aa;font-size:13px;margin-left:6px}
.pay-box{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px}
.pay-no{color:#8b939f;font-size:13px}
.pay-amount{font-size:44px;font-weight:800;color:#e0453b;margin:6px 0 16px}
.pay-items li{font-size:13px;color:#5c6572;padding:6px 0;border-bottom:1px dashed #eff2f6}
.pay-bal{margin-top:14px;font-size:14px}
.pay-way{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid #e2e7ee;border-radius:6px;margin-bottom:10px;cursor:pointer}
.pay-way input{width:auto;margin:0}
.pay-way span{color:#8b939f;font-size:13px}
.pay-qr{margin:10px 0 16px;padding:14px;background:#f8fafc;border-radius:6px;text-align:center}
.pay-qr img{max-width:180px;margin:0 auto 8px}
.pay-qr p{font-size:13px;color:#69737f;margin:0}
.pay-tip{font-size:13px;color:#98a0aa;margin-top:14px}

/* ---------- 登录 / 注册 ---------- */
.auth-box{display:grid;grid-template-columns:1.15fr .85fr;gap:0;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);overflow:hidden;margin:20px 0;max-width:960px}
.auth-l{padding:36px 40px}
.auth-l h2{font-size:20px;margin-bottom:6px}
.auth-l>p{color:#8b939f;font-size:13px;margin-bottom:20px}
.auth-form{max-width:380px}
.cap-row{display:flex;gap:10px;margin-top:6px}
.cap-row input{flex:1;margin-top:0 !important}
.cap-row img{height:42px;width:108px;border:1px solid #dbe1ea;border-radius:6px;cursor:pointer;object-fit:cover}
.auth-form button{width:100%;margin-top:6px}
.auth-alt{font-size:13px;color:#8b939f;margin-top:16px}
.auth-alt a,.auth-r a{color:var(--c-main)}
.auth-r{background:linear-gradient(160deg,var(--c-deep),var(--c-main));color:#fff;padding:36px 32px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.auth-r b{font-size:16px}
.auth-r p,.auth-r li{font-size:13px;color:rgba(255,255,255,.88);line-height:1.9}
.auth-r ul{list-style:disc;padding-left:18px}
.auth-r .btn-ghost{align-self:flex-start;margin-top:8px}

/* ---------- 商家入驻 ---------- */
.join-hero{background:linear-gradient(120deg,var(--c-deep),var(--c-main));color:#fff;border-radius:var(--radius);padding:40px 44px;margin:16px 0}
.join-hero h1{font-size:31px;margin-bottom:10px}
.join-hero p{color:rgba(255,255,255,.88);max-width:820px;margin:0;line-height:1.85}
.join-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.join-steps div{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:16px 18px}
.join-steps b{display:block;font-size:20px;color:var(--c-main);margin-bottom:4px}
.join-steps span{font-size:13px;color:#5c6572}
.join-main{display:grid;grid-template-columns:1fr 320px;gap:18px}
.join-form-box{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px 26px}
.join-form-box h2{font-size:20px;margin-bottom:18px}
.join-side{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:20px 22px}
.join-side h3{font-size:14px;margin:0 0 10px}
.join-side ul{list-style:disc;padding-left:18px;margin-bottom:18px}
.join-side li{font-size:13px;color:#5c6572;line-height:1.9}
.join-note{font-size:13px;color:#98a0aa;margin:0}
.join-tip{font-size:14px;color:#5c6572;margin-bottom:14px}

/* ---------- 信息发布 ---------- */
.info-head{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px 26px;margin:16px 0}
.info-head h1{font-size:31px;margin-bottom:6px}
.info-head p{margin:0;color:#8b939f;font-size:13px;max-width:720px}
.info-layout{display:grid;grid-template-columns:1fr 300px;gap:18px}
.info-main{min-width:0}
.info-feed{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);overflow:hidden}
.info-feed li{display:flex;gap:16px;padding:16px 18px;border-bottom:1px solid #f3f5f8}
.info-feed li:last-child{border-bottom:0}
.if-cover{flex:0 0 150px;height:104px;border-radius:6px;overflow:hidden;background:#f4f6f9;display:flex;align-items:center;justify-content:center}
.if-cover img{width:100%;height:100%;object-fit:cover}
.if-noimg{color:#c6ccd4;font-size:13px}
.if-body{min-width:0;flex:1}
.if-body h3{font-size:16px;font-weight:600;margin-bottom:6px;line-height:1.5}
.if-body h3 a:hover{color:var(--c-main)}
.if-top{display:inline-block;margin-right:6px;padding:0 5px;background:var(--c-accent);color:#fff;border-radius:3px;font-size:13px;font-style:normal;vertical-align:2px}
.if-body>p{color:#8b939f;font-size:13px;margin-bottom:8px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.if-meta{font-size:13px;color:#98a0aa;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.if-meta i{font-style:normal;color:#d3d8df}
.if-cate{padding:0 6px;border-radius:3px;background:var(--c-bg2);color:var(--c-deep);font-size:13px}
.info-side{display:flex;flex-direction:column;gap:14px}
.is-card{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:16px 18px}
.is-card h3{font-size:14px;margin:0 0 10px}
.is-card ul{list-style:disc;padding-left:16px}
.is-card li{font-size:13px;color:#5c6572;line-height:1.9}
.is-card p{font-size:13px;color:#5c6572;line-height:1.8}
.is-card .btn-main,.is-card .btn-line{height:34px;padding:0 16px;font-size:13px;margin-top:6px}
.is-top li{padding:6px 0;border-bottom:1px dashed #eff2f6;font-size:13px}
.is-top li:last-child{border-bottom:0}
.is-top li a:hover{color:var(--c-main)}
.info-detail{display:grid;grid-template-columns:1fr 300px;gap:18px;padding-bottom:10px}
.idt-main{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:26px 30px}
.idt-main h1{font-size:31px;line-height:1.45;margin-bottom:12px}
.idt-meta{font-size:13px;color:#98a0aa;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid #f0f3f7}
.idt-cover{margin:18px 0;border-radius:6px;overflow:hidden}
.idt-content{font-size:14px;line-height:1.95;color:#39414d;padding:14px 0}
.idt-content img{margin:0 auto 10px;max-width:100%;height:auto}
.idt-note{margin-top:16px;padding:14px 16px;background:#f8fafc;border-left:3px solid var(--c-main);border-radius:0 6px 6px 0}
.idt-note b{font-size:13px}
.idt-note p{font-size:13px;color:#69737f;margin:6px 0 0;line-height:1.8}
.idt-side{display:flex;flex-direction:column;gap:14px}
.idt-contact{font-size:13px;margin:0 0 6px}
.idt-tip{font-size:13px;color:#98a0aa;margin:10px 0 0}
.pub-box{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px 26px;max-width:960px}
.pub-tip{font-size:13px;color:#98a0aa;line-height:1.8;margin:6px 0 16px}

/* ---------- 关于 / 联系 ---------- */
.about-hero{background:linear-gradient(120deg,var(--c-deep),var(--c-main));color:#fff;border-radius:var(--radius);padding:40px 44px;margin:16px 0 18px}
.about-hero h1{font-size:31px;margin-bottom:12px}
.about-hero p{color:rgba(255,255,255,.9);line-height:1.9;max-width:900px;margin:0}
.about-sec{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:24px 26px;margin-bottom:16px}
.about-sec h2{font-size:20px;margin-bottom:16px}
.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.about-grid b{display:block;font-size:14px;margin-bottom:6px}
.about-grid p{font-size:13px;color:#69737f;line-height:1.85;margin:0}
.about-table{width:100%;border-collapse:collapse;font-size:14px}
.about-table th{width:140px;text-align:left;color:#8b939f;font-weight:400;padding:10px 0;vertical-align:top}
.about-table td{padding:10px 0;color:#39414d;border-bottom:1px solid #f3f5f8}
.about-links{display:flex;flex-wrap:wrap;gap:10px}
.about-links a{padding:7px 14px;border:1px solid #e2e7ee;border-radius:20px;font-size:13px;color:#4a525e}
.about-links a:hover{border-color:var(--c-main);color:var(--c-main)}
.contact-box{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}
.contact-l,.contact-r{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:26px 28px}
.contact-l h1,.contact-r h2{font-size:20px;margin-bottom:16px}
.contact-dl{display:grid;grid-template-columns:80px 1fr;gap:10px;font-size:14px;margin:0 0 14px}
.contact-dl dt{color:#8b939f}
.contact-dl dd{margin:0;color:#39414d}
.contact-note{font-size:13px;color:#98a0aa;line-height:1.85;margin:0}
.contact-form{max-width:420px}

/* ---------- 会员中心 / 商家中心 ---------- */
.dash{display:grid;grid-template-columns:210px 1fr;gap:18px;padding:18px 0 10px;align-items:start}
.dash-side{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:16px 0;position:sticky;top:56px}
.ds-user{padding:0 18px 14px;border-bottom:1px solid #f0f3f7;margin:0 0 10px}
.ds-user b{display:block;font-size:14px}
.ds-user span{font-size:13px;color:#98a0aa}
.dash-nav a{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;font-size:14px;color:#4a525e}
.dash-nav a:hover{background:#f4f7fb;color:var(--c-main)}
.dash-nav a.on{background:var(--c-bg2);color:var(--c-main);font-weight:700;box-shadow:inset 3px 0 0 var(--c-main)}
.dot-ok,.dot-wait{font-style:normal;font-size:13px;padding:0 5px;border-radius:3px}
.dot-ok{background:#eefaf2;color:#1c7a45}
.dot-wait{background:#fff6e8;color:#b9760f}
.ds-cta{display:block;margin:12px 14px 0;text-align:center;padding:9px 0;background:var(--c-main);color:#fff;border-radius:6px;font-size:13px}
.ds-cta:hover{background:var(--c-deep);color:#fff}
.dash-main{min-width:0;display:flex;flex-direction:column;gap:16px}
.dash-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.dcard{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:16px 18px}
.dcard b{display:block;font-size:20px;color:var(--c-deep);letter-spacing:-.5px}
.dcard span{font-size:13px;color:#8b939f}
.dash-block{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:18px 20px 22px}
.db-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.db-h h2{font-size:16px}
.db-h>a{font-size:13px;color:#98a0aa}
.db-h>a:hover{color:var(--c-main)}
.db-empty{font-size:13px;color:#8b939f;margin:8px 0;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.dash-form{max-width:560px}
.dash-form .fld-row{display:flex;gap:12px}
.ost{display:inline-block;padding:1px 8px;border-radius:3px;font-size:13px}
.st-wait{background:#fff6e8;color:#b9760f}
.st-pay{background:#eef3fd;color:#2b5cab}
.st-sent{background:#eefaf2;color:#1c7a45}
.st-done{background:#f1f3f6;color:#5c6572}
.st-cancel{background:#f7f7f8;color:#98a0aa}
.order-state{background:#f8fafc;border-radius:var(--radius);padding:16px 18px;margin-bottom:16px}
.os-now{font-size:20px;font-weight:700;margin:0 0 6px}
.os-no{font-size:13px;color:#8b939f;margin:0}
.os-acts{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.order-total{margin:14px 0;font-size:14px}
.order-total b{font-size:20px;color:#e0453b}
.order-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:12px;padding-top:14px;border-top:1px solid #f0f3f7}
.order-info b{font-size:13px;color:#98a0aa;font-weight:400}
.order-info p{margin:4px 0 0;font-size:14px;color:#39414d;line-height:1.8}
.db-search{display:flex;gap:10px;margin-bottom:12px}
.db-search input{flex:1;max-width:280px;padding:8px 12px;border:1px solid #dbe1ea;border-radius:6px;outline:0}
.goods-form label,.form2 label{font-size:13px}
.form2{max-width:900px}

/* 搜索 */
.search-head{background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:22px 24px;margin:16px 0}
.search-head form{display:flex;gap:10px;max-width:640px}
.search-head input{flex:1;padding:11px 14px;border:1px solid #dbe1ea;border-radius:6px;outline:0}
.sh-tip{font-size:13px;color:#8b939f;margin:12px 0 0}
.store-grid-lg{grid-template-columns:repeat(3,1fr)}

@media (max-width:1200px){
  .hero-in{grid-template-columns:190px 1fr}
  .floor .goods-grid{grid-template-columns:repeat(4,1fr)}
  .detail-box{grid-template-columns:380px 1fr}
  .dash-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
  .hero-in{grid-template-columns:1fr}
  .hero-side{display:none}
  .hero-banner{height:260px}
  .hb-txt{left:24px;right:24px}
  .hb-txt h1{font-size:31px}
  .promise-in{grid-template-columns:repeat(2,1fr);gap:14px}
  .promise-in div{border-right:0}
  .store-grid,.store-grid-lg{grid-template-columns:repeat(2,1fr)}
  .detail-box{grid-template-columns:1fr;gap:18px}
  .pay-box,.auth-box,.contact-box,.join-main,.info-layout,.info-detail,.about-grid{grid-template-columns:1fr}
  .dash{grid-template-columns:1fr}
  .dash-side{position:static}
  .join-steps{grid-template-columns:repeat(2,1fr)}
  .cta-in{flex-direction:column;align-items:flex-start}
}
@media (max-width:640px){
  .info-list li a{flex-wrap:wrap;gap:6px}
  .il-cate{order:1}
  .il-title{order:2;flex:1 1 calc(100% - 90px);white-space:normal;display:-webkit-box;
    -webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5}
  .il-meta{order:3;flex-basis:100%;font-size:13px}
  .gc-store{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .hero-banner{height:200px}
  .hb-txt h1{font-size:20px}
  .hb-txt p{font-size:13px}
  .hero-tiles{grid-template-columns:1fr}
  .if-cover{flex:0 0 96px;height:76px}
  .info-feed li{padding:12px}
  .join-hero,.about-hero{padding:26px 22px}
  .join-hero h1,.about-hero h1{font-size:20px}
  .cart-table thead{display:none}
  .cart-table tr{display:flex;flex-wrap:wrap;border-bottom:1px solid #f0f3f7;padding:10px 0}
  .cart-table td{border:0;padding:6px 4px}
  .ct-goods{flex-basis:100%}
}

/* ---------- 充值中心 ---------- */
.recharge-pay{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}
.rp-no{font-size:13px;color:#8b939f;margin:0 0 6px}
.rp-amt{font-size:31px;font-weight:800;color:#e0453b;margin:0 0 12px}
.rp-tip{font-size:13px;color:#5c6572;line-height:1.85;margin:0}
.rp-r{text-align:center;background:#f8fafc;border-radius:8px;padding:18px}
.rp-r img{width:200px;height:200px;object-fit:contain;margin:0 auto 8px;border-radius:6px}
.rp-scan{font-size:13px;color:#69737f;margin:0}
.rp-na{font-size:13px;color:#98a0aa;margin:60px 0}
.recharge-form{max-width:520px}
.rf-label{font-size:13px;color:#5c6572;margin:0 0 10px}
.rf-quick{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.rf-btn{padding:10px 20px;border:1px solid #dbe1ea;border-radius:6px;background:#fff;font-size:14px;color:#39414d}
.rf-btn:hover{border-color:var(--c-main);color:var(--c-main)}
.rf-btn.on{background:var(--c-main);border-color:var(--c-main);color:#fff;font-weight:600}
.rf-input{display:block;font-size:13px;color:#5c6572;margin-bottom:16px}
.rf-input input{margin-top:6px;width:100%;max-width:240px;padding:10px 12px;border:1px solid #dbe1ea;border-radius:6px;outline:0}
.pay-recharge{margin-left:10px;font-size:13px;color:#e0453b}
.pay-recharge:hover{text-decoration:underline}
@media (max-width:640px){.recharge-pay{grid-template-columns:1fr}}

/* ---------- 楼层网格断点（放在文件末尾确保覆盖前面的 @media 规则） ---------- */
@media (max-width:1200px){.floor .goods-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:980px){.floor .goods-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.floor .goods-grid{grid-template-columns:repeat(2,1fr);gap:10px}}

/* ---------- 顶部导航：窄屏由外层容器横向滚动（避免 835px 撑破整页） ---------- */
.nav-in{min-width:0}
.site-nav{overflow:hidden}
@media (max-width:980px){
  .site-nav .wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-right:0}
  .site-nav .wrap::-webkit-scrollbar{height:0}
  .nav-in{width:max-content;min-width:100%;max-width:none;overflow:visible;padding-right:16px}
}

/* ---------- 我的订单列表 ---------- */
.tab-n{display:inline-block;margin-left:5px;padding:0 5px;border-radius:8px;background:#e0453b;color:#fff;
  font-size:13px;font-style:normal;line-height:16px;vertical-align:1px}
.ord-list{display:flex;flex-direction:column;gap:14px;margin-top:16px}
.ord-card{border:1px solid #e6ebf1;border-radius:8px;overflow:hidden;background:#fff}
.oc-head{display:flex;align-items:center;gap:16px;padding:11px 16px;background:#f8fafc;
  border-bottom:1px solid #eef2f6;font-size:13px;color:#6b7580}
.oc-head .mono{color:#39414d;font-weight:600}
.oc-time{margin-left:auto}
.oc-body{display:flex;gap:20px;padding:14px 16px;align-items:center}
.oc-goods{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0}
.oc-g{display:flex;align-items:center;gap:10px;min-width:0;color:inherit}
.oc-g img{width:56px;height:56px;object-fit:cover;border-radius:5px;flex:0 0 56px}
.oc-gname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#2b2f36}
.oc-gnum{font-size:13px;color:#8b939f;flex:0 0 auto}
.oc-sum{flex:0 0 132px;text-align:right}
.oc-total{font-size:13px;color:#6b7580;margin:0 0 4px}
.oc-total b{font-size:16px;color:#e0453b}
.oc-pay{font-size:13px;color:#98a0aa;margin:0}
.oc-foot{display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:10px 16px;
  border-top:1px solid #eef2f6}
.oc-tip{font-size:13px;color:#8b939f;margin-right:auto}
.btn-mini{display:inline-block;padding:6px 14px;border:1px solid #dbe1ea;border-radius:5px;
  font-size:13px;color:#39414d;background:#fff;cursor:pointer}
.btn-mini:hover{border-color:var(--c-main);color:var(--c-main)}
.btn-mini.main{background:var(--c-main);border-color:var(--c-main);color:#fff}
.btn-mini.main:hover{opacity:.9;color:#fff}
.ost.st-audit{background:#fff4e5;color:#c46a00}
.db-sub{font-size:13px;color:#8b939f}
@media (max-width:640px){
  .oc-body{flex-direction:column;align-items:stretch;gap:12px}
  .oc-sum{text-align:left;flex:0 0 auto}
  .oc-head{flex-wrap:wrap;gap:8px}
  .oc-time{margin-left:0}
}

/* ===== 信息发布（ICP 规范）补充样式 ===== */
.info-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:12px 16px;margin-bottom:14px}
.info-filter .if-search{display:flex;gap:8px;flex:1;min-width:260px}
.info-filter .if-search input{flex:1;height:38px;padding:0 12px;border:1px solid #e2e7ee;border-radius:6px;font-size:13px}
.info-filter label{display:flex;align-items:center;gap:6px;font-size:13px;color:#78818e}
.info-filter select{height:34px;border:1px solid #e2e7ee;border-radius:6px;padding:0 8px;font-size:13px;background:#fff;color:#3c4450}
.info-filter .btn-main{height:38px;padding:0 20px}
.if-reset{font-size:13px;color:#98a0aa;text-decoration:underline}
.if-result{font-size:13px;color:#78818e;margin:0 0 10px}
.if-result b{color:var(--c-main)}
.if-noimg.if-svc{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,var(--c-bg2),#fff);color:var(--c-deep);font-size:13px;letter-spacing:1px}
.is-contact .idt-contact{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#69737f;padding:6px 0;border-bottom:1px dashed #f0f3f7;margin:0}
.is-contact .idt-contact:last-of-type{border-bottom:0}
.is-contact .idt-contact b{color:#2f3742;font-weight:600;text-align:right}
.img-viewer{position:fixed;inset:0;z-index:9999;background:rgba(16,20,28,.88);display:flex;align-items:center;justify-content:center;cursor:zoom-out}
.img-viewer img{max-width:92vw;max-height:92vh;border-radius:4px;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.img-viewer .iv-close{position:absolute;top:18px;right:26px;color:#fff;font-size:44px;line-height:1;opacity:.8}
#idtContent img{cursor:zoom-in}
.fld-count{display:block;text-align:right;font-size:13px;color:#a6adb7;margin-top:4px}
.fld-count b{color:var(--c-main)}
.fld-help{display:block;font-size:13px;color:#a6adb7;margin-top:4px;line-height:1.7}
.fld-label{display:block;font-size:13px;color:#5b6472;margin-bottom:6px}
.fld-label i{color:#d9453d;font-style:normal}
.ed-wrap{border:1px solid #e2e7ee;border-radius:8px;overflow:hidden;background:#fff}
.ed-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:8px 10px;background:#fafbfd;border-bottom:1px solid #eef1f5}
.ed-toolbar button{min-width:34px;height:30px;padding:0 8px;border:1px solid #e2e7ee;background:#fff;border-radius:5px;font-size:13px;color:#4a525e;cursor:pointer}
.ed-toolbar button:hover{border-color:var(--c-main);color:var(--c-main)}
.ed-body{min-height:260px;max-height:560px;overflow:auto;padding:14px 16px;font-size:14px;line-height:1.9;color:#39414d;outline:none}
.ed-body:empty::before{content:attr(data-placeholder);color:#b3bac4;font-size:13px}
.ed-body img{max-width:100%;height:auto;margin:8px 0;border-radius:4px}
.ed-body h3{font-size:16px;margin:14px 0 8px}
.ed-body h4{font-size:14px;margin:12px 0 6px}
.ed-body blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #dfe4ec;background:#f8fafc;color:#5b6472}
.pub-actions{display:flex;align-items:center;gap:12px;margin-top:8px}
.pub-back{margin-left:auto;font-size:13px;color:#8b939f}
.pub-form .fld-row{display:flex;gap:14px}
.pub-form .fld-row>label{flex:1}
.pub-form label{display:block;font-size:13px;color:#5b6472;margin-bottom:14px}
.pub-form label>i{color:#d9453d;font-style:normal}
.pub-form input[type=text],.pub-form input[type=datetime-local],.pub-form select{width:100%;height:38px;margin-top:6px;padding:0 10px;border:1px solid #e2e7ee;border-radius:6px;font-size:13px;color:#39414d}
.pub-form .fld-full{display:block}
.form-err{background:#fdf1f0;border:1px solid #f6d5d2;color:#c0392b;font-size:13px;border-radius:6px;padding:10px 14px;margin:0 0 16px}
.form-ok{background:#eef8f1;border:1px solid #cfe9d8;color:#1e7a45;font-size:13px;border-radius:6px;padding:10px 14px;margin:0 0 16px}
.mi-stats{font-size:13px;color:#8b939f;margin:0 0 12px}
.mi-table td{vertical-align:top}
.mi-cell{display:flex;gap:12px;align-items:flex-start;min-width:320px}
.mi-thumb{flex:0 0 84px;width:84px;height:64px;border-radius:5px;overflow:hidden;background:#f4f6f9;display:flex;align-items:center;justify-content:center}
.mi-thumb img{width:100%;height:100%;object-fit:cover}
.mi-title{font-size:14px;color:#2f3742;line-height:1.55;margin:0 0 4px}
.mi-sub{font-size:13px;color:#9aa2ad;margin:0}
.mi-rej{font-size:13px;color:#c0392b;margin:4px 0 0}
.mi-date{font-size:13px;color:#9aa2ad;font-style:normal}
.mi-none{font-size:13px;color:#b3bac4}
.ist{display:inline-block;padding:1px 8px;border-radius:10px;font-size:13px;line-height:19px;white-space:nowrap}
.ist.is-draft{background:#f1f3f6;color:#78818e}
.ist.is-wait{background:#fdf3e3;color:#b9761a}
.ist.is-ok{background:#eaf6ee;color:#1e7a45}
.ist.is-rej{background:#fdecea;color:#c0392b}
.ist.is-off{background:#eef0f3;color:#8b939f}
@media (max-width:1200px){.pub-form .fld-row{flex-direction:column;gap:0}.mi-cell{min-width:0}}
/* 修正：hidden 属性优先于 display:flex，避免灯箱默认显示遮罩 */
.img-viewer[hidden]{display:none!important}
/* 详情正文图片：限宽居中，避免整屏长条 */
.idt-content img{max-width:720px;display:block;margin:12px auto}
/* 筛选条：标签不换行 */
.info-filter label{white-space:nowrap}
.info-filter select{min-width:104px}
@media (max-width:1200px){.info-filter{gap:8px}.info-filter .if-search{min-width:100%}}
/* 服务类无图占位：更克制的卡片，不用大面积色块 */
.if-noimg.if-svc{background:#f7f9fc;border:1px dashed #dfe6ef;color:#8d97a6;font-size:13px;border-radius:6px}

/* 发布页顶部留白，避免紧贴吸顶导航 */
.pub-page{padding-top:18px}

.info-filter label{flex:0 0 auto}
.info-filter label>span{white-space:nowrap;flex:0 0 auto;color:#78818e}

/* 详情正文排版（标题/列表/表格，服务类信息用） */
.idt-content h3{font-size:16px;margin:20px 0 10px;padding-left:10px;border-left:3px solid var(--c-main);line-height:1.4}
.idt-content h4{font-size:16px;margin:16px 0 8px}
.idt-content p{margin:0 0 12px}
.idt-content ul,.idt-content ol{margin:0 0 12px;padding-left:22px}
.idt-content ul li{list-style:disc;margin:4px 0}
.idt-content ol li{list-style:decimal;margin:4px 0}
.idt-content table{width:100%;border-collapse:collapse;margin:10px 0 16px}
.idt-content th,.idt-content td{border:1px solid #e6ebf2;padding:8px 12px;font-size:14px;text-align:left;vertical-align:top;line-height:1.7}
.idt-content th{background:#f6f8fb;color:#4a525e;width:112px;font-weight:600;white-space:nowrap}
.idt-content blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #dfe4ec;background:#f8fafc;color:#5b6472}
/* 服务类封面卡：完整显示，不裁切 */
.if-cover img.svc-cover{object-fit:contain;background:#fff}

/* ---------- 信息频道快捷条（商城 ↔ 信息发布 导航互通） ---------- */
.info-strip{background:#f5f9fa;border-bottom:1px solid #e7eef1}
.info-strip .is-in{display:flex;align-items:center;gap:16px;height:36px;font-size:13px;
  overflow-x:auto;overflow-y:hidden;white-space:nowrap;-webkit-overflow-scrolling:touch}
.info-strip .is-in::-webkit-scrollbar{height:0}
.info-strip .is-tag{flex:0 0 auto;background:var(--c-main);color:#fff;border-radius:3px;
  padding:2px 8px;font-size:13px;letter-spacing:.5px}
.info-strip a{flex:0 0 auto;color:#54636f}
.info-strip a:hover{color:var(--c-main)}
.info-strip .is-r{margin-left:auto;flex:0 0 auto}
.info-strip .is-r a{color:var(--c-accent);font-weight:600}
@media (max-width:640px){
  .info-strip .is-in{gap:12px;height:34px;padding-right:14px}
  .info-strip .is-r{display:none}
}

/* 支付结果页（支付宝同步跳回） */
.pay-result{max-width:560px;margin:24px auto 40px;background:#fff;border:1px solid #eef1f5;border-radius:var(--radius);padding:32px 24px;text-align:center}
.pay-result .pr-ico{width:52px;height:52px;line-height:52px;border-radius:50%;margin:0 auto 14px;background:#e8f5ec;color:#1f8a4c;font-size:31px;font-weight:700}
.pay-result .pr-ico.pr-warn{background:#fdf1e6;color:#b5651d}
.pay-result .pr-t{font-size:16px;font-weight:600;margin:0 0 8px}
.pay-result .pr-s{color:#69737f;font-size:14px;line-height:1.8;margin:0 0 20px}
.pay-result .pr-act{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:0}
@media (max-width:640px){
  .pay-result{margin:14px auto 28px;padding:24px 16px;border-radius:6px}
  .pay-result .pr-act .btn-main,.pay-result .pr-act .btn-line{flex:1 1 auto;text-align:center}
}

/* ---------- 会员中心表格：390 窄屏不撑破页面 ---------- */
@media (max-width:640px){
  .dtable{font-size:13px;table-layout:fixed}
  .dtable th,.dtable td{padding:9px 6px;word-break:break-all}
  .dtable .mono,.dtable a{white-space:normal;word-break:break-all}
}

/* ---------- 手机端商品标题/副标题两行截断（不切半行） ---------- */
@media (max-width:640px){
  .gc-body h3{height:auto!important;display:-webkit-box;-webkit-box-orient:vertical;
    -webkit-line-clamp:2;overflow:hidden;line-height:1.45;font-size:13px}
  .gc-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
}




/* ============================================================
   ft · 奉天商埠族（辽宁立安堂 / fengtianliantang.com）
   本站唯一 CSS：母版 base + shop 打底 + 本站骨架覆盖
   结构手势：细顶条 / 报头（双线票框）/ 铺位索引表 / 错位招幌图 /
             告示栏（深墨块）/ 商号名录墙 / 双线分类楼层
   ============================================================ */

/* ---------- 设计令牌 ---------- */
html:root{
  --c-main:#22262b; --c-deep:#15181c; --c-accent:#9a2f22;
  --c-bg:#fbf7ec; --c-bg2:#efe7d6; --wrap:1600px; --radius:0;
  --font:-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
  --ft-ink:#1b1f24; --ft-ink2:#2b3138; --ft-paper:#fbf7ec; --ft-paper2:#f1ead9;
  --ft-copper:#96683c; --ft-copper-l:#b98a56; --ft-red:#9a2f22;
  --ft-line:#d6cbb2; --ft-line2:#c3b697; --ft-mute:#75705f;
  --ft-serif:"Songti SC","SimSun","Noto Serif SC","Source Han Serif SC",serif;
}
body{background:var(--ft-paper);color:var(--ft-ink);font-size:14px}
a:hover{color:var(--ft-copper)}
h1,h2,h3,h4{letter-spacing:0}
.wrap{width:auto!important;max-width:var(--wrap);padding:0 40px;margin:0 auto}
.ft-main{max-width:var(--wrap);margin:0 auto;padding:0 40px 48px}
@media(max-width:1400px){.wrap,.ft-main{padding-left:24px;padding-right:24px}}

/* ---------- 通用按钮 ---------- */
.ft-btn{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 26px;
  font-size:14px;border:1px solid transparent;transition:.18s;white-space:nowrap}
.ft-btn-ink{background:var(--ft-ink);color:#fff}
.ft-btn-ink:hover{background:var(--ft-red);color:#fff}
.ft-btn-line{border-color:var(--ft-line2);color:var(--ft-ink)}
.ft-btn-line:hover{border-color:var(--ft-ink);color:var(--ft-ink)}

/* ---------- 页头 ---------- */
.ft-head{background:var(--ft-paper)}
.ft-strip{background:var(--ft-ink);color:#b6ae9b;font-size:12.5px;letter-spacing:.3px}
.ft-strip-in{max-width:var(--wrap);margin:0 auto;padding:0 40px;height:32px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.ft-strip-r{display:flex;align-items:center;gap:16px;white-space:nowrap}
.ft-strip-r a:hover{color:#fff}
.ft-cart{display:inline-flex;align-items:center;gap:5px}
.ft-cart i{display:inline-block;min-width:16px;height:16px;line-height:16px;text-align:center;
  background:var(--ft-red);color:#fff;font-size:11px;font-style:normal;padding:0 4px}

.ft-mast{border-bottom:1px solid var(--ft-line)}
.ft-mast-in{max-width:var(--wrap);margin:0 auto;padding:30px 40px 26px;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,440px) auto;align-items:center;gap:40px}
.ft-logo{font-family:var(--ft-serif);font-size:30px;font-weight:700;color:var(--ft-ink);
  line-height:1.15;letter-spacing:1px;display:block}
.ft-logo em{display:block;margin-top:7px;font-family:var(--font);font-size:11.5px;font-style:normal;
  font-weight:400;color:var(--ft-mute);letter-spacing:4px;text-transform:uppercase}
.ft-search{display:flex;align-items:center;border-bottom:2px solid var(--ft-ink)}
.ft-search input{flex:1;border:0;background:transparent;outline:0;padding:9px 2px;font-size:14px;color:var(--ft-ink)}
.ft-search input::placeholder{color:#a8a08d}
.ft-search button{border:0;background:transparent;color:var(--ft-ink);font-size:13px;
  font-weight:700;letter-spacing:1px;padding:0 4px;cursor:pointer}
.ft-search button:hover{color:var(--ft-red)}
.ft-mast-r{display:flex;align-items:center;gap:12px}
.ft-join{display:inline-flex;align-items:center;height:42px;padding:0 22px;background:var(--ft-ink);
  color:#fff;font-size:14px;letter-spacing:.5px}
.ft-join:hover{background:var(--ft-red);color:#fff}
.ft-mer{display:inline-flex;align-items:center;height:42px;padding:0 18px;border:1px solid var(--ft-line2);
  color:var(--ft-ink2);font-size:13.5px}
.ft-mer:hover{border-color:var(--ft-ink);color:var(--ft-ink)}

.ft-nav{border-top:1px solid var(--ft-line);border-bottom:3px double var(--ft-ink);background:var(--ft-paper2)}
.ft-nav-in{max-width:var(--wrap);margin:0 auto;padding:0 40px;display:flex;align-items:center;overflow-x:auto}
.ft-nav-in a{padding:14px 17px;font-size:14px;color:var(--ft-ink2);white-space:nowrap;
  border-bottom:2px solid transparent;margin-bottom:-1px;letter-spacing:.3px}
.ft-nav-in a:first-child{padding-left:0;font-weight:700}
.ft-nav-in a:hover{color:var(--ft-red)}
.ft-nav-in a.on{color:var(--ft-red);border-bottom-color:var(--ft-red)}

.ft-infobar{background:#fffdf6;border-bottom:1px solid var(--ft-line)}
.ft-infobar-in{max-width:var(--wrap);margin:0 auto;padding:9px 40px;display:flex;align-items:center;
  gap:16px;font-size:13px;color:var(--ft-mute);overflow-x:auto;white-space:nowrap}
.ft-infobar-in b{color:#fff;background:var(--ft-copper);font-weight:400;padding:2px 9px;letter-spacing:1px}
.ft-infobar-in a{color:var(--ft-ink2)}
.ft-infobar-in a:hover{color:var(--ft-red)}
.ft-infobar-r{margin-left:auto}
.ft-infobar-r a{color:var(--ft-red)}

/* ---------- 首屏 ---------- */
.ft-hero{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;padding:52px 0 44px;align-items:center;
  border-bottom:1px solid var(--ft-line)}
.ft-kick{font-size:12.5px;letter-spacing:2px;color:var(--ft-copper);margin:0 0 18px}
.ft-hero-l h1{font-family:var(--ft-serif);font-size:56px;line-height:1.24;font-weight:700;
  color:var(--ft-ink);margin:0 0 22px;letter-spacing:1px}
.ft-dek{font-size:14.5px;line-height:2;color:#4d4a3f;max-width:560px;margin:0 0 26px}
.ft-hero-btn{display:flex;gap:14px;margin-bottom:34px}
.ft-hero-num{display:flex;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--ft-line)}
.ft-hero-num li{padding:16px 30px 0 0;margin-right:30px;border-right:1px solid var(--ft-line)}
.ft-hero-num li:last-child{border-right:0;margin-right:0;padding-right:0}
.ft-hero-num b{display:block;font-family:var(--ft-serif);font-size:28px;color:var(--ft-ink);line-height:1.1}
.ft-hero-num span{font-size:12.5px;color:var(--ft-mute);letter-spacing:1px}

.ft-hero-r{position:relative;display:flex;align-items:center;justify-content:flex-end}
.ft-ticket{width:100%;background:#fffdf6;border:1px solid var(--ft-ink);padding:22px 24px 20px;position:relative}
.ft-ticket::before{content:"";position:absolute;inset:7px;border:1px solid var(--ft-line2);pointer-events:none}
.ft-ticket-h{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 18px;
  font-size:11.5px;letter-spacing:3px;color:var(--ft-copper)}
.ft-ticket-h span{letter-spacing:3px}
.ft-ticket-h i{font-style:normal;font-family:ui-monospace,Consolas,monospace;letter-spacing:1px}
.ft-ticket-imgs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.ft-ticket-imgs a{display:block;border:1px solid var(--ft-line);background:#f4efe3}
.ft-ticket-imgs img{width:100%;aspect-ratio:1/1;object-fit:cover}
.ft-ticket-cats{margin:0;padding:0;list-style:none;border-top:1px solid var(--ft-line)}
.ft-ticket-cats li{display:flex;align-items:baseline;gap:10px;padding:11px 0;border-bottom:1px solid var(--ft-line)}
.ft-ticket-cats a{font-family:var(--ft-serif);font-size:18px;color:var(--ft-ink);letter-spacing:1px}
.ft-ticket-cats a:hover{color:var(--ft-red)}
.ft-ticket-cats em{flex:1;border-bottom:1px dotted var(--ft-line2);transform:translateY(-4px)}
.ft-ticket-cats i{font-size:12px;font-style:normal;color:var(--ft-mute);white-space:nowrap}
.ft-ticket-foot{margin:16px 0 12px;font-size:12.5px;color:var(--ft-mute);letter-spacing:.5px}
.ft-ticket-foot b{font-family:var(--ft-serif);font-size:16px;color:var(--ft-red);margin:0 4px}
.ft-ticket-a{display:block;text-align:center;border:1px solid var(--ft-line2);padding:9px 0;
  font-size:13px;color:var(--ft-ink2)}
.ft-ticket-a:hover{border-color:var(--ft-ink);color:var(--ft-red)}

/* ---------- 铺位索引表 ---------- */
.ft-index{padding:44px 0 8px}
.ft-index-h{display:flex;align-items:baseline;gap:22px;margin-bottom:16px}
.ft-index-h h2{font-family:var(--ft-serif);font-size:24px;margin:0;letter-spacing:1px}
.ft-index-h p{margin:0;font-size:13px;color:var(--ft-mute)}
.ft-index-tb{width:100%;border-collapse:collapse;border-top:2px solid var(--ft-ink)}
.ft-index-tb th{font-size:12px;font-weight:400;color:var(--ft-mute);letter-spacing:2px;
  text-align:left;padding:10px 12px;border-bottom:1px solid var(--ft-line)}
.ft-index-tb td{padding:15px 12px;border-bottom:1px solid var(--ft-line);font-size:14.5px}
.ft-index-tb tr:hover td{background:#fffdf6}
.ft-no{font-family:ui-monospace,Consolas,monospace;color:var(--ft-copper);width:76px;font-size:13px}
.ft-nm a{font-family:var(--ft-serif);font-size:18px;color:var(--ft-ink)}
.ft-nm a:hover{color:var(--ft-red)}
.ft-ct{color:var(--ft-mute);width:150px;font-size:13.5px}
.ft-go{width:110px;text-align:right}
.ft-go a{font-size:13px;color:var(--ft-copper)}

/* ---------- 区块通用 ---------- */
.ft-sec,.ft-floor{padding:40px 0 6px}
.ft-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  border-bottom:2px solid var(--ft-ink);padding-bottom:11px;margin-bottom:24px}
.ft-sec-h h2{font-family:var(--ft-serif);font-size:24px;margin:0;letter-spacing:1px;color:var(--ft-ink)}
.ft-sec-h h2 em{font-family:ui-monospace,Consolas,monospace;font-size:13px;font-style:normal;
  color:var(--ft-copper);margin-right:12px;letter-spacing:1px}
.ft-sec-h a{font-size:13px;color:var(--ft-mute)}
.ft-sec-h a:hover{color:var(--ft-red)}

/* ---------- 商品票框 ---------- */
.goods-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.ft-grid{margin-bottom:6px}
.gcard{background:#fffdf6;border:1px solid var(--ft-line);border-radius:0;display:flex;
  flex-direction:column;transition:.2s;position:relative}
.gcard:hover{border-color:var(--ft-ink);box-shadow:0 10px 24px rgba(60,50,30,.10);transform:none}
.gcard::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--ft-copper);opacity:0;transition:.2s}
.gcard:hover::after{opacity:1}
.gcard .gc-img{display:block;height:224px;overflow:hidden;background:#f4efe3;border-bottom:1px solid var(--ft-line)}
.gcard .gc-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gcard:hover .gc-img img{transform:scale(1.03)}
.gc-body{padding:13px 14px 15px;display:flex;flex-direction:column;flex:1}
.gc-body h3{font-size:13.5px;font-weight:400;line-height:1.6;margin:0 0 7px;color:var(--ft-ink2);
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.gc-body h3 a{color:var(--ft-ink2)}
.gc-body h3 a:hover{color:var(--ft-red)}
.gc-sub{font-size:12px;color:#9a9382;margin:0 0 12px;display:-webkit-box;-webkit-box-orient:vertical;
  -webkit-line-clamp:1;overflow:hidden}
.gc-foot{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;
  border-top:1px dashed var(--ft-line);padding-top:10px}
.gc-foot .price{font-family:var(--ft-serif);font-size:19px;color:var(--ft-red)}
.gc-sales{font-size:11.5px;color:#a49b88}
.gc-store{margin:8px 0 0;font-size:11.5px;color:#a49b88}
.gc-store a{color:#a49b88}
.gc-store a:hover{color:var(--ft-copper)}

/* ---------- 告示栏（信息频道） ---------- */
.ft-board{margin:44px 0 6px;background:var(--ft-ink);color:#e8e2d3;padding:0}
.ft-board .ft-sec-h{border-bottom-color:rgba(255,255,255,.22);margin:0;padding:26px 30px 14px}
.ft-board .ft-sec-h h2{color:#f6f0e2}
.ft-board .ft-sec-h a{color:var(--ft-copper-l)}
.ft-board-in{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;padding:6px 30px 30px}
.ft-board-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}
.ft-note{display:flex;gap:13px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.13)}
.ft-note img{width:88px;height:62px;flex:0 0 88px;object-fit:cover;background:#2b2f34}
.ft-note b{display:block;font-size:13.5px;font-weight:400;line-height:1.6;color:#f2ecdd}
.ft-note i{display:block;margin-top:6px;font-size:11.5px;font-style:normal;color:#a09a88}
.ft-note:hover b{color:var(--ft-copper-l)}
.ft-board-side{border-left:1px solid rgba(255,255,255,.16);padding-left:26px;display:flex;
  flex-direction:column;justify-content:center;gap:14px}
.ft-board-t{margin:0;font-size:13px;line-height:1.9;color:#b8b1a0}
.ft-board-side .ft-btn-ink{background:var(--ft-copper);color:#fff;align-self:flex-start}
.ft-board-side .ft-btn-ink:hover{background:#fff;color:var(--ft-ink)}
.ft-board-lnk{align-self:flex-start;font-size:12.5px;color:#b8b1a0}

/* ---------- 商号名录墙 ---------- */
.ft-stores{padding:44px 0 6px}
.ft-store-wall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;
  list-style:none;border-top:1px solid var(--ft-line)}
.ft-store-wall li{border-bottom:1px solid var(--ft-line);border-right:1px solid var(--ft-line)}
.ft-store-wall li:nth-child(4n){border-right:0}
.ft-store-wall a{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:14px 16px}
.ft-store-wall b{font-size:13.5px;font-weight:400;color:var(--ft-ink2);font-family:var(--ft-serif)}
.ft-store-wall i{font-size:11.5px;font-style:normal;color:#a49b88;white-space:nowrap}
.ft-store-wall a:hover b{color:var(--ft-red)}

/* ---------- 页脚 ---------- */
.ft-foot{margin-top:56px;background:var(--ft-paper2);border-top:3px double var(--ft-ink)}
.ft-foot-in{max-width:var(--wrap);margin:0 auto;padding:40px 40px 26px;display:grid;
  grid-template-columns:1.4fr .8fr .8fr .8fr;gap:36px}
.ft-foot-logo{font-family:var(--ft-serif);font-size:21px;color:var(--ft-ink);margin:0 0 12px;letter-spacing:1px}
.ft-foot-line{margin:0 0 6px;font-size:13px;color:#5d5849;line-height:1.8}
.ft-foot-col h4{font-size:13px;font-weight:700;color:var(--ft-ink);margin:2px 0 12px;letter-spacing:2px}
.ft-foot-col ul{margin:0;padding:0;list-style:none}
.ft-foot-col li{margin-bottom:8px}
.ft-foot-col a{font-size:13px;color:#5d5849}
.ft-foot-col a:hover{color:var(--ft-red)}
.ft-foot-bot{border-top:1px solid var(--ft-line2)}
.ft-foot-bot p{max-width:var(--wrap);margin:0 auto;padding:15px 40px;font-size:12.5px;color:#6d6757}
.ft-foot-bot a{color:#6d6757}
.ft-foot-bot a:hover{color:var(--ft-red)}

/* ---------- 内页通用（框架类名沿用母版） ---------- */
.detail-box,.cart-box,.checkout-box,.auth-box,.contact-box,.art-box,.dash-side,.dash-block,
.pay-box,.join-box,.store-box,.stores-box{background:#fffdf6;border:1px solid var(--ft-line);border-radius:0}
.crumbs{font-size:12.5px;color:var(--ft-mute);padding:14px 0}
.detail-box{grid-template-columns:460px 1fr;gap:34px;padding:26px}
.d-gallery img,.d-main img{border:1px solid var(--ft-line)}
.d-info h1{font-family:var(--ft-serif);font-size:24px;line-height:1.5;letter-spacing:.5px}
.d-price{font-family:var(--ft-serif);font-size:30px;color:var(--ft-red)}
.btn-main{background:var(--ft-ink);border-radius:0}
.btn-main:hover{background:var(--ft-red)}
.btn-line{border-radius:0;border-color:var(--ft-line2)}
.btn-line:hover{border-color:var(--ft-ink);color:var(--ft-ink)}
.dtable th{background:#f4eee0;color:#5d5849}
.dtable th,.dtable td{border-bottom:1px solid var(--ft-line)}
.dash-side{position:sticky;top:14px}
.dash-nav a.on{background:var(--ft-paper2);color:var(--ft-red);box-shadow:inset 3px 0 0 var(--ft-red)}
.art-content h2,.art-content h3{font-family:var(--ft-serif)}
.sec-title,.floor-h h2{font-family:var(--ft-serif);letter-spacing:1px}
.cate-tabs a.on{background:var(--ft-ink);color:#fff;border-color:var(--ft-ink)}


/* 登录/注册右栏：深色块里的按钮文字必须可见 */
.auth-r{color:#f2ecdd}
.auth-r b{color:#f7f1e2;font-family:var(--ft-serif)}
.auth-r p{color:#c6bfab}
.auth-r .btn-ghost{border-color:rgba(255,255,255,.62);color:#f7f1e2}
.auth-r .btn-ghost:hover{background:rgba(255,255,255,.14);color:#fff}
.auth-r a{color:#f7f1e2}
.auth-l h1,.auth-l h2{font-family:var(--ft-serif)}

/* ---------- 断点 ---------- */
@media(max-width:1360px){
  .ft-hero{gap:36px}
  .ft-hero-l h1{font-size:46px}
  .gcard .gc-img{height:200px}
}
@media(max-width:1180px){
  .goods-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ft-hero{grid-template-columns:1fr;padding-bottom:30px}
  .ft-hero-r{position:relative;padding:0 0 20px}
  .ft-board-in{grid-template-columns:1fr}
  .ft-board-side{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.16);padding-top:18px}
  .ft-store-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ft-foot-in{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .ft-mast-in{grid-template-columns:1fr;gap:18px}
  .ft-hero-l h1{font-size:38px}
  .ft-board-list{grid-template-columns:1fr}
  .ft-store-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ft-index-tb .ft-ct{display:none}
}
@media(max-width:640px){
  .goods-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .gcard .gc-img{height:150px}
  .ft-hero-l h1{font-size:30px}
  .ft-hero-num li{padding-right:16px;margin-right:16px}
  .ft-foot-in{grid-template-columns:1fr;gap:22px}
  .ft-store-wall{grid-template-columns:1fr}
}

/* ===== 本站覆盖 ===== */
:root{--own-accent:#9a2f22}
a:hover{color:#9a2f22}
.wrap,.dt-main,.pp-main,.mg-main{max-width:1640px}

/* ===== 信息频道样式 ===== */
/* 信息发布频道（/info/）样式：独立于商城视觉，深色频道头 + 卡片化列表
   全部本地样式，无外链 CDN */
.ix-body{background:#f2f5f7;color:#243040;font-family:var(--font);font-size:14px;line-height:1.7}
.ix-body a{color:inherit;text-decoration:none}
.ix-body img{max-width:100%;display:block}
.ix-wrap{width:var(--wrap,1180px);max-width:100%;box-sizing:border-box;margin:0 auto;padding:0 28px}
.ix-body .btn-main{background:var(--c-main);color:#fff;border:0;border-radius:var(--radius);padding:10px 22px;display:inline-block;font-size:14px;cursor:pointer}
.ix-body .btn-main:hover{background:var(--c-deep)}
.ix-body .btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:var(--radius);padding:10px 22px;display:inline-block}
.ix-body .btn-line{display:inline-block;padding:8px 16px;border:1px solid var(--c-main);color:var(--c-main);border-radius:var(--radius);font-size:13px}

/* ---------- 频道头 ---------- */
.ix-top{background:#eef3f6;border-bottom:1px solid #e0e7ec;font-size:12px;color:#6b7a89}
.ix-top .ix-wrap{display:flex;justify-content:space-between;align-items:center;height:34px;gap:12px}
.ix-top a{color:#54636f;margin-left:16px}
.ix-top a:first-child{margin-left:0}
.ix-top a:hover{color:var(--c-main)}
.ix-top .ix-tel{color:#6b7a89}
.ix-head{background:linear-gradient(105deg,var(--c-deep),var(--c-main));color:#fff}
.ix-head .ix-wrap{display:flex;align-items:center;gap:26px;height:92px}
.ix-brand{display:flex;flex-direction:column;line-height:1.25;color:#fff;flex:0 0 auto;max-width:420px}
.ix-brand b{font-size:20px;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ix-brand span{font-size:12px;color:rgba(255,255,255,.78);margin-top:5px;letter-spacing:1px}
.ix-search{flex:1 1 auto;display:flex;min-width:0;max-width:520px;background:#fff;border-radius:var(--radius);overflow:hidden;padding:3px}
.ix-search input{flex:1;border:0;outline:0;padding:8px 12px;font-size:14px;min-width:0;background:transparent;color:#243040}
.ix-search select{border:0;outline:0;background:#f2f5f7;color:#54636f;font-size:13px;padding:0 6px;border-radius:4px;margin-right:4px;max-width:104px}
.ix-search button{background:var(--c-accent);color:#fff;border:0;padding:0 20px;font-size:14px;cursor:pointer;border-radius:calc(var(--radius) - 2px)}
.ix-hacts{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.ix-hacts .ix-post{background:var(--c-accent);color:#fff;padding:11px 20px;border-radius:var(--radius);font-size:14px;white-space:nowrap}
.ix-hacts .ix-shop{color:#fff;border:1px solid rgba(255,255,255,.45);padding:10px 16px;border-radius:var(--radius);font-size:13px;white-space:nowrap}
.ix-hacts .ix-post:hover{filter:brightness(1.06)}
.ix-hacts .ix-shop:hover{background:rgba(255,255,255,.12)}
.ix-nav{background:#fff;border-bottom:1px solid #e2e8ee;box-shadow:0 2px 6px rgba(20,40,60,.05);position:sticky;top:0;z-index:40}
.ix-nav .ix-wrap{display:flex;align-items:center;gap:2px;height:46px;overflow-x:auto;scrollbar-width:none}
.ix-nav .ix-wrap::-webkit-scrollbar{display:none}
.ix-nav a{flex:0 0 auto;white-space:nowrap;padding:0 16px;line-height:46px;font-size:15px;color:#3b4a5a;position:relative}
.ix-nav a:hover{color:var(--c-main)}
.ix-nav a.on{color:var(--c-main);font-weight:700}
.ix-nav a.on::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;background:var(--c-main)}
.ix-nav .ix-sep{width:1px;height:16px;background:#e2e8ee;margin:0 8px;flex:0 0 auto}
.ix-nav a.ix-to-shop{color:var(--c-accent);font-weight:700}
.ix-nav a .ix-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--c-accent);vertical-align:middle;margin-right:5px}

/* ---------- Hero ---------- */
.ix-hero{background:
   radial-gradient(900px 320px at 82% -10%,rgba(255,255,255,.16),transparent 60%),
   linear-gradient(100deg,var(--c-deep),var(--c-main) 62%,#2b8a97);
  color:#fff;padding:38px 0 44px}
.ix-hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}
.ix-hero h1{font-size:30px;margin:0 0 12px;letter-spacing:1px}
.ix-hero .ix-sub{color:rgba(255,255,255,.85);font-size:14px;margin:0 0 18px;max-width:560px}
.ix-hero .ix-btns{display:flex;gap:12px;margin-bottom:22px}
.ix-stats{display:flex;gap:30px;flex-wrap:wrap}
.ix-stats b{display:block;font-size:24px;line-height:1.2}
.ix-stats span{font-size:12px;color:rgba(255,255,255,.75)}
.ix-quick{display:grid;gap:12px}
.ix-qcard{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:14px 16px;display:flex;align-items:center;gap:14px;color:#fff;backdrop-filter:blur(2px)}
.ix-qcard:hover{background:rgba(255,255,255,.18)}
.ix-qcard .ix-qi{width:38px;height:38px;flex:0 0 auto;border-radius:9px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.ix-qcard b{display:block;font-size:15px}
.ix-qcard span{font-size:12px;color:rgba(255,255,255,.72)}
.ix-qcard i{margin-left:auto;font-style:normal;color:rgba(255,255,255,.6)}

/* ---------- 通用区块 ---------- */
.ix-sec{margin-top:26px}
.ix-sech{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px;gap:12px}
.ix-sech h2{font-size:19px;margin:0;padding-left:11px;border-left:3px solid var(--c-main);line-height:1.2}
.ix-sech p{margin:0;font-size:12px;color:#8b98a5}
.ix-sech a{font-size:13px;color:var(--c-main)}
.ix-panel{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:18px 20px}

/* 置顶推荐 */
.ix-tops{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ix-top-card{background:#fff;border:1px solid #e6ecf1;border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.ix-tc-img{height:150px;background:#eef3f6;overflow:hidden}
.ix-tc-img img{width:100%;height:100%;object-fit:cover}
.ix-tc-img img.svc{object-fit:contain;background:#f6fafb}
.ix-tc-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px}
.ix-tc-body h3{margin:0;font-size:15px;line-height:1.5;height:45px;overflow:hidden}
.ix-tc-body h3 a:hover{color:var(--c-main)}
.ix-tc-meta{font-size:12px;color:#8b98a5;display:flex;gap:8px;flex-wrap:wrap}
.ix-flag{display:inline-block;background:#fff3e8;color:#c25a1e;border:1px solid #f6d3bb;border-radius:3px;padding:0 5px;font-size:11px;margin-right:6px;vertical-align:1px}

/* 筛选条 */
.ix-filter{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:14px 16px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ix-filter .ix-fq{flex:1 1 240px;display:flex;background:#f4f7f9;border:1px solid #e2e9ee;border-radius:6px;overflow:hidden;min-width:200px}
.ix-filter .ix-fq input{flex:1;border:0;background:transparent;padding:9px 12px;outline:0;min-width:0;font-size:14px}
.ix-filter .ix-fq button{background:var(--c-main);color:#fff;border:0;padding:0 18px;cursor:pointer;font-size:13px}
.ix-filter label{display:flex;align-items:center;gap:6px;font-size:13px;color:#54636f}
.ix-filter label span{white-space:nowrap;flex:0 0 auto}
.ix-filter select{border:1px solid #e2e9ee;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff;color:#3b4a5a;max-width:150px}
.ix-filter .ix-reset{font-size:12px;color:#8b98a5;text-decoration:underline}
.ix-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 0}
.ix-tabs a{padding:7px 15px;border:1px solid #e2e9ee;border-radius:16px;font-size:13px;color:#4a5866;background:#fff;white-space:nowrap}
.ix-tabs a.on{background:var(--c-main);border-color:var(--c-main);color:#fff}
.ix-result{font-size:13px;color:#6b7a89;margin:14px 0 0}
.ix-result b{color:var(--c-accent)}

/* 列表 */
.ix-list{display:grid;gap:12px;margin-top:14px}
.ix-item{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:14px;display:flex;gap:16px;transition:box-shadow .18s}
.ix-item:hover{box-shadow:0 6px 18px rgba(25,55,75,.08)}
.ix-item .ix-cover{width:168px;height:112px;flex:0 0 auto;border-radius:8px;overflow:hidden;background:#eef3f6;position:relative}
.ix-item .ix-cover img{width:100%;height:100%;object-fit:cover}
.ix-item .ix-cover img.svc{object-fit:contain;background:#f6fafb}
.ix-item .ix-cover .ix-noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9fb0bd;font-size:12px;background:#f0f4f7}
.ix-ibody{flex:1;min-width:0;display:flex;flex-direction:column}
.ix-ibody h3{margin:0 0 8px;font-size:16px;line-height:1.5}
.ix-ibody h3 a:hover{color:var(--c-main)}
.ix-ibody .ix-desc{margin:0 0 10px;color:#67757f;font-size:13px;line-height:1.65;max-height:44px;overflow:hidden}
.ix-meta{margin:auto 0 0;font-size:12px;color:#8b98a5;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ix-cate{display:inline-block;background:#eef5f7;color:var(--c-main);border-radius:3px;padding:1px 7px;font-size:12px}
.ix-meta i{font-style:normal;color:#c2ccd4}
.ix-tagbox{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}
.ix-tagbox span{font-size:11px;color:#6b7a89;background:#f3f6f8;border-radius:3px;padding:1px 6px}

/* 分页 */
.ix-pager{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:18px;font-size:13px}
.ix-pager a,.ix-pager span{min-width:34px;height:34px;line-height:32px;text-align:center;border:1px solid #e2e9ee;border-radius:6px;padding:0 10px;background:#fff;color:#42505c}
.ix-pager a:hover{border-color:var(--c-main);color:var(--c-main)}
.ix-pager .cur{background:var(--c-main);color:#fff;border-color:var(--c-main)}
.ix-pager .gap{border:0;background:transparent}
.ix-pager .total{border:0;background:transparent;color:#8b98a5;margin-left:6px}

/* 布局 */
.ix-layout{display:grid;grid-template-columns:minmax(0,1fr) 316px;gap:22px;margin-top:22px;align-items:start}
.ix-side{display:grid;gap:16px}
.ix-card{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:16px 18px}
.ix-card h3{margin:0 0 12px;font-size:15px;padding-bottom:10px;border-bottom:1px solid #eef2f5}
.ix-card h3 small{font-weight:400;color:#9aa7b3;font-size:12px;margin-left:6px}
.ix-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ix-steps li{display:flex;gap:10px;font-size:13px;color:#54636f}
.ix-steps b{width:22px;height:22px;flex:0 0 auto;border-radius:50%;background:var(--c-main);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:600}
.ix-steps strong{display:block;color:#243040;font-size:13px;margin-bottom:2px}
.ix-rank{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ix-rank li{display:flex;gap:9px;font-size:13px;line-height:1.5}
.ix-rank b{flex:0 0 auto;width:18px;height:18px;border-radius:3px;background:#eef2f5;color:#7b8b98;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:600;margin-top:1px}
.ix-rank li:nth-child(-n+3) b{background:var(--c-accent);color:#fff}
.ix-rank a{display:block;color:#3b4a5a;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ix-rank a:hover{color:var(--c-main)}
.ix-rank span{display:block;font-size:11px;color:#a3aeb8;margin-top:2px}
.ix-regions{display:flex;flex-wrap:wrap;gap:7px}
.ix-regions a{font-size:12px;color:#54636f;border:1px solid #e6ecf1;border-radius:4px;padding:3px 9px;background:#fafcfd}
.ix-regions a:hover,.ix-regions a.on{border-color:var(--c-main);color:var(--c-main);background:#f2f8fa}
.ix-faq{display:grid;gap:8px}
.ix-faq details{border:1px solid #eef2f5;border-radius:6px;padding:9px 12px;background:#fafcfd}
.ix-faq summary{cursor:pointer;font-size:13px;color:#3b4a5a;list-style:none}
.ix-faq summary::-webkit-details-marker{display:none}
.ix-faq summary::before{content:"+";color:var(--c-main);margin-right:6px;font-weight:700}
.ix-faq details[open] summary::before{content:"−"}
.ix-faq p{margin:8px 0 0;font-size:13px;color:#67757f;line-height:1.7}
.ix-card .ix-callout{background:#f3f8fa;border:1px dashed #cfe0e6;border-radius:8px;padding:12px;font-size:13px;color:#54636f;margin-bottom:12px}
.ix-card .ix-callout b{color:var(--c-main)}

/* ---------- 详情页 ---------- */
.ix-detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start;margin-top:18px}
.ix-dmain{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:26px 30px 30px}
.ix-dmain h1{font-size:24px;line-height:1.5;margin:0 0 12px;color:#1d2b38}
.ix-dmeta{font-size:13px;color:#7b8b98;display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-bottom:16px;border-bottom:1px solid #eef2f5;margin-bottom:18px}
.ix-dmeta .ix-cate{font-size:12px}
.ix-cover-lg{border-radius:8px;overflow:hidden;margin:0 0 18px;background:#f4f8fa}
.ix-cover-lg img{width:100%;max-height:420px;object-fit:contain}
.ix-content{font-size:15px;line-height:1.95;color:#2c3a47}
.ix-content h3{font-size:16px;margin:22px 0 10px;padding-left:10px;border-left:3px solid var(--c-main);line-height:1.4}
.ix-content p{margin:0 0 12px}
.ix-content img{max-width:720px;max-height:560px;width:auto;margin:10px auto;border-radius:6px;cursor:zoom-in;object-fit:contain;background:#f7fafb}
.ix-content ul,.ix-content ol{margin:0 0 14px;padding-left:24px}
.ix-content ul{list-style:disc}
.ix-content ol{list-style:decimal}
.ix-content li{margin-bottom:6px}
.ix-content li::marker{color:var(--c-main)}
.ix-content table{width:100%;border-collapse:collapse;margin:12px 0 18px;font-size:14px}
.ix-content th,.ix-content td{border:1px solid #e6ecf1;padding:9px 12px;text-align:left;vertical-align:top}
.ix-content th{background:#f5f9fa;color:#3b4a5a;font-weight:600;width:132px;white-space:nowrap}
.ix-content blockquote{margin:12px 0;padding:10px 14px;background:#f7fafb;border-left:3px solid #cfe0e6;color:#54636f}
.ix-note{margin-top:22px;background:#fbfaf5;border:1px solid #f0e8d6;border-radius:8px;padding:14px 16px;font-size:13px;color:#6b6350;line-height:1.8}
.ix-note b{color:#8a6d2f;display:block;margin-bottom:4px}
.ix-note a{color:#8a6d2f;text-decoration:underline}
.ix-dside{display:grid;gap:16px;position:sticky;top:62px}
.ix-contact{background:#fff;border:1px solid #e6ecf1;border-radius:10px;overflow:hidden}
.ix-contact .ix-ch{background:linear-gradient(100deg,var(--c-deep),var(--c-main));color:#fff;padding:13px 18px;font-size:15px;font-weight:600}
.ix-contact .ix-cb{padding:16px 18px}
.ix-contact .ix-ctel{font-size:23px;font-weight:700;color:var(--c-accent);letter-spacing:.5px;margin:0 0 4px}
.ix-contact .ix-crow{font-size:13px;color:#54636f;margin:8px 0 0;display:flex;gap:8px}
.ix-contact .ix-crow em{font-style:normal;color:#9aa7b3;flex:0 0 62px}
.ix-contact .ix-tip{font-size:12px;color:#9aa7b3;margin:12px 0 0;padding-top:10px;border-top:1px dashed #e6ecf1}
.ix-more{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ix-more li{font-size:13px;line-height:1.55;padding-bottom:9px;border-bottom:1px dashed #eef2f5}
.ix-more li:last-child{border:0;padding-bottom:0}
.ix-more a:hover{color:var(--c-main)}
.ix-more span{display:block;font-size:11px;color:#a3aeb8;margin-top:2px}

/* 图片查看器 */
.ix-viewer{position:fixed;inset:0;background:rgba(12,20,28,.9);z-index:999;display:flex;align-items:center;justify-content:center;padding:30px}
.ix-viewer[hidden]{display:none!important}
.ix-viewer img{max-width:92vw;max-height:88vh;object-fit:contain}
.ix-viewer .ix-vclose{position:absolute;top:18px;right:26px;color:#fff;font-size:34px;cursor:pointer;line-height:1}

/* ---------- 发布页 / 我的发布 ---------- */
.ix-page{padding:22px 0 40px}
.ix-page-h{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:20px 24px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.ix-page-h h1{font-size:21px;margin:0 0 6px}
.ix-page-h p{margin:0;font-size:13px;color:#7b8b98}
.ix-flash{background:#eef8f1;border:1px solid #cfe9d8;color:#2c7a4b;border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:14px}
.ix-flash.err{background:#fdf1ef;border-color:#f4d2cc;color:#b3402f}
.ix-form{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:24px 26px}
.ix-field{margin-bottom:18px}
.ix-field>label{display:block;font-size:13px;color:#3b4a5a;font-weight:600;margin-bottom:7px}
.ix-field>label i{color:#c25a1e;font-style:normal;margin-left:3px}
.ix-field .ix-hint{font-size:12px;color:#9aa7b3;font-weight:400;margin-left:8px}
.ix-field input[type=text],.ix-field input[type=tel],.ix-field input[type=datetime-local],.ix-field select,.ix-field textarea{width:100%;border:1px solid #dfe7ec;border-radius:6px;padding:10px 12px;font-size:14px;font-family:inherit;color:#243040;background:#fff;outline:0}
.ix-field input:focus,.ix-field select:focus,.ix-field textarea:focus{border-color:var(--c-main);box-shadow:0 0 0 3px rgba(21,112,127,.08)}
.ix-field .ix-count{font-size:12px;color:#9aa7b3;text-align:right;margin-top:5px}
.ix-radios{display:flex;gap:10px;flex-wrap:wrap}
.ix-radios label{display:flex;align-items:center;gap:6px;border:1px solid #dfe7ec;border-radius:6px;padding:8px 14px;font-size:13px;cursor:pointer;background:#fff}
.ix-radios input{accent-color:var(--c-main)}
.ix-form-acts{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px;padding-top:18px;border-top:1px solid #eef2f5}
.ix-form-acts .ix-tip{font-size:12px;color:#9aa7b3;margin-left:auto}
.ix-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}
.ix-table th,.ix-table td{border-bottom:1px solid #eef2f5;padding:12px 10px;text-align:left;vertical-align:middle}
.ix-table th{background:#f7fafb;color:#54636f;font-weight:600;font-size:12px}
.ix-table tr:hover td{background:#fbfdfe}
.ix-table .ix-t-title{font-size:14px;color:#243040}
.ix-table .ix-t-title:hover{color:var(--c-main)}
.ix-badge{display:inline-block;border-radius:3px;padding:1px 7px;font-size:11px}
.ix-badge.b0{background:#eef2f5;color:#6b7a89}
.ix-badge.b1{background:#fff6e5;color:#a8741a}
.ix-badge.b2{background:#eaf7ef;color:#2c7a4b}
.ix-badge.b3{background:#fdeeeb;color:#b3402f}
.ix-badge.b4{background:#f1f0f5;color:#6b5f8a}
.ix-empty{background:#fff;border:1px dashed #dfe7ec;border-radius:10px;padding:48px 20px;text-align:center;color:#8b98a5;font-size:14px}
.ix-empty a{color:var(--c-main)}

/* 文章页 */
.ix-article{background:#fff;border:1px solid #e6ecf1;border-radius:10px;padding:30px 36px;margin-top:18px}
.ix-article h1{font-size:24px;margin:0 0 8px}
.ix-article .ix-ameta{font-size:12px;color:#9aa7b3;padding-bottom:16px;border-bottom:1px solid #eef2f5;margin-bottom:20px}
.ix-article h3{font-size:16px;margin:22px 0 10px;padding-left:10px;border-left:3px solid var(--c-main)}
.ix-article p{font-size:14.5px;line-height:1.95;color:#2c3a47;margin:0 0 12px}
.ix-article ul,.ix-article ol{padding-left:24px;margin:0 0 14px}
.ix-article ul{list-style:disc}
.ix-article ol{list-style:decimal}
.ix-article li{margin-bottom:6px;line-height:1.85;font-size:14.5px}
.ix-article table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px}
.ix-article th,.ix-article td{border:1px solid #e6ecf1;padding:9px 12px;text-align:left}
.ix-article th{background:#f5f9fa}
.ix-articlenav{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid #eef2f5}

/* 页脚 */
.ix-foot{background:#132a33;color:#b9c9d0;margin-top:40px;font-size:13px}
.ix-foot .ix-fmain{display:grid;grid-template-columns:1.4fr .8fr .8fr .9fr;gap:26px;padding:34px 0 26px}
.ix-foot b{color:#fff;display:block;font-size:14px;margin-bottom:10px}
.ix-foot p{margin:0 0 6px;line-height:1.8}
.ix-foot a{color:#b9c9d0;display:block;margin-bottom:7px}
.ix-foot a:hover{color:#fff}
.ix-foot .ix-fbot{border-top:1px solid rgba(255,255,255,.1);padding:14px 0;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;font-size:12px;color:#8fa4ad}
.ix-foot .ix-fbot a{display:inline;margin:0}

/* 响应式 */
@media (max-width:1120px){
  .ix-hero-in{grid-template-columns:1fr}
  .ix-quick{grid-template-columns:repeat(3,1fr)}
  .ix-layout,.ix-detail{grid-template-columns:1fr}
  .ix-dside{position:static}
  .ix-foot .ix-fmain{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .ix-head .ix-wrap{height:auto;padding:14px 20px;flex-wrap:wrap;gap:12px}
  .ix-brand b{font-size:21px}
  .ix-search{order:3;flex:1 1 100%;max-width:none}
  .ix-hacts{margin-left:auto}
  .ix-tops{grid-template-columns:1fr 1fr}
  .ix-tops .ix-top-card:nth-child(3){display:none}
  .ix-dmain{padding:18px 16px}
}
@media (max-width:640px){
  .ix-wrap{padding:0 14px}
  .ix-hero{padding:26px 0 30px}
  .ix-hero h1{font-size:22px}
  .ix-stats{gap:18px}
  .ix-stats b{font-size:19px}
  .ix-quick{grid-template-columns:1fr}
  .ix-tops{grid-template-columns:1fr}
  .ix-tops .ix-top-card:nth-child(3){display:flex}
  .ix-item{flex-direction:column;gap:10px}
  .ix-item .ix-cover{width:100%;height:170px}
  .ix-ibody h3{font-size:15px}
  .ix-page-h{padding:16px}
  .ix-form{padding:16px}
  .ix-article{padding:20px 16px}
  .ix-dmain h1{font-size:19px}
  .ix-content table{font-size:13px}
  .ix-content th{width:96px;white-space:normal}
  .ix-foot .ix-fmain{grid-template-columns:1fr;gap:18px;padding:24px 0 18px}
  .ix-contact .ix-ctel{font-size:20px}
}

/* ---------- 富文本编辑器（发布页，样式与商城后台解耦） ---------- */
.ed-wrap{border:1px solid #dfe7ec;border-radius:8px;overflow:hidden;background:#fff}
.ed-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:8px 10px;background:#f7fafb;border-bottom:1px solid #eef2f5}
.ed-toolbar button{min-width:34px;height:30px;padding:0 8px;border:1px solid #dfe7ec;background:#fff;
  border-radius:5px;font-size:12.5px;color:#4a5866;cursor:pointer}
.ed-toolbar button:hover{border-color:var(--c-main);color:var(--c-main)}
.ed-body{min-height:280px;max-height:600px;overflow:auto;padding:14px 16px;font-size:14px;
  line-height:1.9;color:#2c3a47;outline:none}
.ed-body:empty::before{content:attr(data-placeholder);color:#b3bac4;font-size:13px}
.ed-body img{max-width:100%;height:auto;margin:8px 0;border-radius:4px}
.ed-body h3{font-size:16px;margin:14px 0 8px}
.ed-body h4{font-size:14.5px;margin:12px 0 6px}
.ed-body blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #dfe4ec;background:#f8fafc;color:#54636f}

/* 表单内文字链接与窄屏微调 */
.ix-form a{color:var(--c-main)}
@media (max-width:640px){
  .ix-filter{gap:8px}
  .ix-filter .ix-fq{flex:1 1 100%}
  .ix-filter label{font-size:12px}
  .ix-form-acts .ix-tip{margin-left:0;flex:1 1 100%}
  .ix-page-h .btn-main,.ix-page-h .btn-line{padding:8px 14px;font-size:13px}
}

/* ================= 视觉方案 B：浅色纸质频道（2026-11-02 换肤） ================= */
/* 频道头改为白底深字，去掉深色渐变带 */
.ix-head{background:#fff;border-bottom:1px solid #eee6dc;color:#2b2b2b}
.ix-brand{color:#2b2b2b}
.ix-brand b{color:var(--c-deep);font-family:var(--font)}
.ix-brand span{color:#9a8f83}
.ix-search{background:#faf7f3;border:1px solid #eee3d6;padding:4px}
.ix-search input{color:#2b2b2b}
.ix-search button{background:var(--c-main)}
.ix-hacts .ix-post{background:var(--c-main);color:#fff}
.ix-hacts .ix-shop{border:1px solid var(--c-main);color:var(--c-main)}
.ix-hacts .ix-shop:hover{background:var(--c-bg2)}
.ix-nav{background:#fff;border-bottom:1px solid #eee6dc;box-shadow:none}
.ix-nav a{color:#4a4038}
.ix-nav a.on{color:var(--c-main)}
.ix-nav a.on::after{height:3px;background:var(--c-main)}
.ix-nav a.ix-to-shop{color:var(--c-main)}
.ix-nav .ix-dot{background:var(--c-main)}

/* Hero 改浅色纸卡 */
.ix-hero{background:#fbf7f3;color:#2b2b2b;border:1px solid #f0e6da;border-radius:10px;
  margin-top:18px;padding:34px 34px 30px}
.ix-hero h1{font-size:29px;color:var(--c-deep);letter-spacing:2px}
.ix-hero .ix-sub{color:#6b6259}
.ix-hero .btn-ghost{border:1px solid var(--c-main);color:var(--c-main);background:#fff}
.ix-hero .btn-ghost:hover{background:var(--c-bg2)}
.ix-stats b{color:var(--c-main)}
.ix-stats span{color:#8d8378}
.ix-qcard{background:#fff;border:1px solid #eee3d6;color:#2b2b2b}
.ix-qcard:hover{background:var(--c-bg2);border-color:#e3d3bf}
.ix-qcard .ix-qi{background:var(--c-bg2);color:var(--c-main);border-radius:50%}
.ix-qcard b{color:#2b2b2b}
.ix-qcard span{color:#8d8378}
.ix-qcard i{color:#c9bcae}

/* 卡片/区间隔更"纸感" */
.ix-panel,.ix-card,.ix-top-card,.ix-item,.ix-dmain,.ix-contact,.ix-form,.ix-article,.ix-page-h{
  border-color:#efe8e0;box-shadow:0 1px 0 rgba(60,40,20,.02)}
.ix-sech h2{border-left:3px solid var(--c-accent);color:var(--c-deep)}
.ix-cate{background:var(--c-bg2);color:var(--c-main)}
.ix-flag{background:#fdf1e6;color:var(--c-accent);border-color:#f3dcc6}
.ix-tabs a.on{background:var(--c-main);border-color:var(--c-main)}
.ix-filter .ix-fq{background:#faf7f3;border-color:#eee3d6}
.ix-footer,.ix-foot{background:#2a231d}
.ix-foot .ix-fbot{border-top-color:rgba(255,255,255,.12)}

/* ===== ft 对信息频道的统一皮肤（覆盖 info.css 的蓝灰圆角风格，回到米纸/墨/铜） ===== */
.ix-body{background:var(--ft-paper);color:var(--ft-ink);font-size:14px}
.ix-top{background:var(--ft-ink);border-bottom:0;color:#b6ae9b}
.ix-top a,.ix-top .ix-tel{color:#b6ae9b}
.ix-top a:hover{color:#fff}
.ix-head{background:var(--ft-ink2)}
.ix-nav{background:#fffdf6;border-bottom:2px solid var(--ft-ink);box-shadow:none}
.ix-nav a{color:var(--ft-ink2)}
.ix-nav a.on,.ix-nav a:hover{color:var(--ft-red)}
.ix-hero{background:var(--ft-ink);padding:38px 0 34px;color:#f2ecdd}
.ix-hero h1{color:#f7f1e2}
.ix-hero .ix-sub{color:#c2bba8}
.ix-stats b,.ix-stats strong{color:#fff}
.ix-stats span,.ix-stats small{color:#b6ae9b}
.ix-hero .ix-btn{background:var(--ft-copper);border-color:var(--ft-copper);color:#fff}
.ix-hero .ix-btn-line,.ix-hero .ix-btn-ghost{background:transparent;border-color:rgba(255,255,255,.5);color:#f2ecdd}
.ix-hero h1{font-family:var(--ft-serif);letter-spacing:1px}
.ix-qcard{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
.ix-panel,.ix-top-card,.ix-filter,.ix-item,.ix-card{background:#fffdf6;border-color:var(--ft-line)}
.ix-sech h2,.ix-card h3{font-family:var(--ft-serif);letter-spacing:1px}
.ix-cate{background:#f0e7d5;color:var(--ft-copper)}
.ix-flag{background:#fbf1e2;color:var(--ft-copper);border-color:#e6d5bb}
.ix-tabs a{background:#fffdf6;border-color:var(--ft-line);color:var(--ft-ink2)}
.ix-tabs a.on{background:var(--ft-ink);border-color:var(--ft-ink);color:#fff}
.ix-item:hover{border-color:var(--ft-ink);box-shadow:0 8px 20px rgba(40,32,16,.08)}
.ix-btn,.ix-btn-main{background:var(--ft-ink);color:#fff;border-color:var(--ft-ink)}
.ix-btn-main:hover{background:var(--ft-red);border-color:var(--ft-red);color:#fff}
.ix-btn-line{background:#fffdf6;border-color:var(--ft-line2);color:var(--ft-ink2)}
.ix-step-no{background:var(--ft-copper)}
.ix-pager a.on{background:var(--ft-ink);border-color:var(--ft-ink);color:#fff}
.ix-body [class^="ix-"],.ix-body [class*=" ix-"]{border-radius:0}
.ix-body .ix-btn,.ix-body button{border-radius:0}
.ix-detail .ix-side .ix-card h4{font-family:var(--ft-serif)}
.ix-content img{max-width:720px;display:block;margin:12px auto}
