/* HSG 顾客端 v2 · 列表 /stock（P3；原型 proto/css/list.css）。排在 shop.css + catalog.css 后面，三张合计 ≤ 40KB。颜色只用 shop.css 的令牌。 */
.shop-list .cats::before{display:none}
.list-main{padding-bottom:8px}
/* 页头搜索框里显示当前的词 + 清除 */
.band-search.has-q{padding:0 4px 0 14px;color:var(--ink);gap:0}
.bs-q{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:100%}
.bs-q .ic{color:var(--sub)}
.bs-q span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.bs-x{position:relative;flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--sub)}
.bs-x::before{content:"";position:absolute;inset:-6px}
.bs-x .ic{width:18px;height:18px}
/* 生效的条件（网址上的与搜索词里解析出的），每颗点了去掉自己；老板 0927 7607：行首不再写「N units」 */
.qbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px}
.q-as{font-size:13px;font-weight:600;color:var(--ink-2);margin:0 4px 0 0;overflow-wrap:anywhere}
.q-as::first-letter{text-transform:uppercase}
.chip.q{position:relative;height:32px;padding:0 8px 0 12px;gap:2px;background:var(--ink);color:var(--on-fill);box-shadow:none;max-width:100%}
.chip.q>span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.chip.q::before{content:"";position:absolute;inset:-6px 0}
.chip.q .ic{width:16px;height:16px;opacity:.7;flex:none}
/* 网格 / 列表切换 */
.vt{display:inline-flex;gap:2px;padding:2px;margin-left:auto;border-radius:10px;background:var(--well)}
.vt button{width:34px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--sub-on-glass);position:relative}
.vt button::before{content:"";position:absolute;inset:-7px -1px}
.vt button.on{background:var(--surface);color:var(--ink);box-shadow:var(--card-shadow)}
.vt .ic{width:18px;height:18px}
.sortbar .vt+.filter{margin-left:0}
@media (max-width:359.98px){.sortbar{gap:12px}.vt button{width:30px}.sortbar .filter>span{display:none}}
@media (min-width:1024px){
.lbar{display:flex;align-items:center;gap:24px;min-height:60px}
.lbar .qbar{padding:0;flex:1;min-width:0}
.lbar .sortbar{flex:none;gap:24px;margin-left:auto}}
/* 列表视图 = 同一份卡片排成行（纯 CSS，切换只换 #list 的 .rows） */
.grid.rows{grid-template-columns:minmax(0,1fr);gap:0;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--card-shadow);overflow:hidden}
.rows .pc{display:grid;grid-template-columns:76px minmax(0,1fr);column-gap:12px;align-content:start;padding:12px 14px;border-radius:0;box-shadow:none;overflow:visible}
.rows .pc+.pc::after{content:"";position:absolute;top:0;left:102px;right:0;height:1px;background:var(--line)}
.rows .pc-body,.rows .pc-foot{display:contents}
.rows .pc-media{grid-row:1 / span 4;width:76px;height:76px;border-radius:var(--r-sm);align-self:start}
.rows .pc-badge{top:4px;left:4px;height:20px;padding:0 5px}
.rows .pc-imei{display:none}
.rows .pc-title{font-size:15px;line-height:20px}
.rows .pc-spec{margin-top:1px}
.rows .pc-facts{margin-top:6px;max-height:22px}
.rows .pc-price{margin-top:4px}
.rows .price .amt{font-size:18px}
@media (max-width:359.98px){.rows .pc{grid-template-columns:64px minmax(0,1fr);padding:10px 12px}.rows .pc-media{width:64px;height:64px}.rows .pc+.pc::after{left:88px}}
@media (min-width:1024px){
.rows .pc{grid-template-columns:56px minmax(0,1fr) minmax(0,1.2fr) minmax(136px,auto);grid-template-rows:auto auto;column-gap:24px;align-items:center;padding:10px 20px}
.rows .pc+.pc::after{left:100px}
.rows .pc-media{grid-row:1 / span 2;width:56px;height:56px;align-self:center}
.rows .pc-title{grid-column:2;grid-row:1;align-self:end}
.rows .pc-spec{grid-column:2;grid-row:2;align-self:start}
.rows .pc-facts{grid-column:3;grid-row:1 / span 2;margin:0}
.rows .pc-price{grid-column:4;grid-row:1 / span 2;margin:0;justify-content:flex-end;gap:20px}
.rows .pc:hover{background:var(--paper)}}
/* 首屏 24（≥1200 出 30，第 25-30 张只在 5 列时显示） */
@media (max-width:1199.98px){#list>.x-tail{display:none}}
.list-main .more{flex-direction:column;align-items:center;gap:10px;padding:24px 0 8px}
.list-main .more[hidden]{display:none}
/* fix round 2 item 2：宽屏首帧已经全露出时藏 Load more——只在 ≥1200 藏，转窄了要能再摸到（转宽了又该藏回去），比 JS 记死一个 hidden 更准 */
@media (min-width:1200px){.more.all-shown{display:none}}
/* 0 结果：一句 + 两条真出路（到货提醒 / WhatsApp），下面是最接近的真实在售 */
.zero{margin-top:12px}
.zero .empty{padding:32px 16px 28px}
.zero h3{max-width:30ch}
.empty-b{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.empty-b .btn{min-width:128px}
.near .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:768px){.near .grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
