.group-buy-products-preview, .group-buy-products-preview * { box-sizing: border-box; }
.group-buy-products-preview { --product-accent: #ff4d2e; color: #18181b; font-family: Inter, "PingFang SC", sans-serif; }
.product-preview-list, .product-preview-skeleton { display: flex; flex-direction: column; gap: 12px; }
.product-preview-card { display: flex; min-height: 112px; overflow: hidden; border: 1px solid #e8e9ed; border-radius: 12px; background: #fff; box-shadow: 0 4px 20px -4px rgba(255,77,46,.15); cursor: pointer; }
.product-preview-media { width: 112px; height: 112px; flex: none; overflow: hidden; background: #f6f7f9 url("./assets/product-fallback.webp") center / cover no-repeat; }
.product-preview-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.product-preview-image[hidden] { display: none; }
.product-preview-fallback { background: #fff0ec; }
.product-preview-content { display: flex; min-width: 0; flex: 1; flex-direction: column; padding: 12px; }
.product-preview-name { overflow: hidden; margin: 0; color: #18181b; font-size: 16px; font-weight: 600; line-height: 22px; text-overflow: ellipsis; white-space: nowrap; }
.product-preview-summary { overflow: hidden; margin: 3px 0 0; color: #71717a; font-size: 12px; line-height: 17px; text-overflow: ellipsis; white-space: nowrap; }
.product-preview-foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 4px; }
.product-preview-price-block { display: block; min-width: 0; }
.product-preview-price { display: flex; min-width: 0; align-items: baseline; color: var(--product-accent); font-size: 20px; font-weight: 800; line-height: 1; white-space: nowrap; }
.product-preview-price small { font-size: 11px; font-weight: 700; }
.product-preview-price del { margin-left: 4px; color: #a1a1aa; font-size: 10px; font-weight: 400; }
.product-preview-sales { display: block; margin-top: 3px; color: #8a8a92; font-size: 10px; line-height: 1.2; }
.product-preview-foot button, .product-preview-action, .product-preview-state button, .product-preview-state-action { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-width: 48px; height: 44px; padding: 0 12px; border: 0; border-radius: 999px; background: var(--product-accent); color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; }
.product-preview-foot button:active, .product-preview-state button:active { background: #d93a20; transform: scale(.95); }
.product-preview-state { display: flex; min-height: 140px; align-items: center; justify-content: center; flex-direction: column; border: 1px dashed #e2e3e7; border-radius: 12px; background: #fff; text-align: center; }
.product-preview-state-mark { display: flex; width: 56px; height: 56px; align-items: center; justify-content: center; margin-bottom: 9px; overflow: hidden; border-radius: 10px; background: #fff0ec; color: var(--product-accent); font-weight: 800; }
.product-preview-state-mark img { display: block; width: 100%; height: 100%; object-fit: cover; }
.product-preview-state strong { font-size: 13px; }
.product-preview-state small { margin-top: 4px; color: #8a8a92; font-size: 10px; }
.product-preview-state button, .product-preview-state-action { min-width: 88px; margin-top: 12px; }
.preview-skeleton-card { display: flex; min-height: 112px; overflow: hidden; border: 1px solid #ececef; border-radius: 12px; background: #fff; }
.preview-skeleton-card i { width: 112px; flex: none; background: #ececef; }
.preview-skeleton-card div { display: flex; flex: 1; flex-direction: column; gap: 9px; padding: 15px 12px; }
.preview-skeleton-card b { width: 88%; height: 10px; border-radius: 999px; background: #e4e4e7; }
.preview-skeleton-card b:nth-child(2) { width: 62%; }
.preview-skeleton-card b:nth-child(3) { width: 42%; height: 15px; margin-top: auto; }
.group-buy-products-workshop-thumbnail { display: block; width: 100%; height: 64px; overflow: hidden; pointer-events: none; }
.group-buy-products-workshop-thumbnail > .group-buy-products-preview { width: 200%; min-height: 128px; padding: 4px; transform: scale(.5); transform-origin: left top; }
.group-buy-products-workshop-thumbnail .product-preview-list { gap: 8px; }
@media (max-width: 340px) {
  .product-preview-media { width: 96px; height: 120px; }
  .product-preview-card { min-height: 120px; }
  .product-preview-content { padding: 9px; }
  .product-preview-foot { align-items: stretch; flex-direction: column; gap: 4px; }
  .product-preview-foot button, .product-preview-action { width: 100%; }
  .preview-skeleton-card i { width: 96px; }
}

/* H2-001 · S1-C01 曜石臻选。保留 product-list 既有规则，变体仅在命名空间内覆盖。 */
.group-buy-products-preview.obsidian-product-list { padding: 10px; border: 1px solid rgba(184,135,70,.42); background: #f7f2ea; }
.obsidian-product-list .product-preview-list,
.obsidian-product-list .product-preview-skeleton { gap: 9px; }
.obsidian-product-list .product-preview-card,
.obsidian-product-list .preview-skeleton-card { min-height: 119px; border-color: rgba(23,21,18,.2); border-radius: 2px; background: #fffaf2; box-shadow: none; }
.obsidian-product-list .product-preview-media,
.obsidian-product-list .preview-skeleton-card i { width: 119px; height: 119px; background-color: #e8e1dc; }
.obsidian-product-list .product-preview-content { padding: 11px 12px; }
.obsidian-product-list .product-preview-name { color: #171512; font-family: Georgia, "Songti SC", serif; font-weight: 700; letter-spacing: .5px; }
.obsidian-product-list .product-preview-summary { color: #706b63; }
.obsidian-product-list .product-preview-price del,
.obsidian-product-list .product-preview-sales { color: #7a7672; }
.obsidian-product-list .product-preview-foot button,
.obsidian-product-list .product-preview-action,
.obsidian-product-list .product-preview-state button,
.obsidian-product-list .product-preview-state-action { min-width: 56px; border-radius: 2px; background: var(--product-accent); letter-spacing: .5px; }
.obsidian-product-list .product-preview-foot button:active,
.obsidian-product-list .product-preview-state button:active { background: #7f5619; }
.obsidian-product-list .product-preview-state { border-style: solid; border-color: rgba(184,135,70,.42); border-radius: 2px; background: #fffaf2; }
.obsidian-product-list .product-preview-state-mark { border-radius: 2px; background: #efe4d4; }
.obsidian-product-list .product-preview-state strong { color: #171512; font-family: Georgia, "Songti SC", serif; }
.obsidian-product-list .preview-skeleton-card b { background: #ded5ca; }

/* H2-001 · S2-C01 清氧自然。 */
.group-buy-products-preview.verdant-product-list { padding: 8px; border-radius: 18px; background: #f7f8f3; }
.verdant-product-list .product-preview-list,
.verdant-product-list .product-preview-skeleton { gap: 10px; }
.verdant-product-list .product-preview-card,
.verdant-product-list .preview-skeleton-card { min-height: 116px; border-color: rgba(23,107,85,.14); border-radius: 17px; background: #fff; box-shadow: 0 8px 19px rgba(20,90,72,.1); }
.verdant-product-list .product-preview-media,
.verdant-product-list .preview-skeleton-card i { width: 100px; height: 100px; margin: 8px; border-radius: 13px; background-color: #e5ece4; }
.verdant-product-list .product-preview-content { padding: 13px 12px 12px 2px; }
.verdant-product-list .product-preview-name { color: #183c32; font-weight: 700; }
.verdant-product-list .product-preview-summary { color: #687c70; }
.verdant-product-list .product-preview-price del,
.verdant-product-list .product-preview-sales { color: #747875; }
.verdant-product-list .product-preview-foot button,
.verdant-product-list .product-preview-action,
.verdant-product-list .product-preview-state button,
.verdant-product-list .product-preview-state-action { background: var(--product-accent); }
.verdant-product-list .product-preview-foot button:active,
.verdant-product-list .product-preview-state button:active { background: #003f30; }
.verdant-product-list .product-preview-state { border-color: rgba(23,107,85,.24); border-radius: 17px; background: #fff; }
.verdant-product-list .product-preview-state-mark { background: #e2f6e0; color: #176b55; }
.verdant-product-list .product-preview-state strong { color: #183c32; }
.verdant-product-list .preview-skeleton-card b { background: #dce7dd; }

/* H2-001 · S3-C01 星云紫蓝。 */
.group-buy-products-preview.nebula-product-list { padding: 9px; border: 1px solid rgba(146,126,255,.3); border-radius: 15px; background: linear-gradient(145deg,#241b45 0%,#171229 100%); }
.nebula-product-list .product-preview-list,
.nebula-product-list .product-preview-skeleton { gap: 10px; }
.nebula-product-list .product-preview-card,
.nebula-product-list .preview-skeleton-card { min-height: 116px; border-color: rgba(201,191,255,.24); border-radius: 14px; background: rgba(255,255,255,.09); box-shadow: 0 9px 22px rgba(7,4,24,.24), inset 0 1px 0 rgba(255,255,255,.08); }
.nebula-product-list .product-preview-media,
.nebula-product-list .preview-skeleton-card i { width: 102px; height: 102px; margin: 7px; border-radius: 11px; background-color: #312f3a; }
.nebula-product-list .product-preview-content { padding: 12px 11px 11px 2px; }
.nebula-product-list .product-preview-name { color: #fff; font-weight: 700; }
.nebula-product-list .product-preview-summary { color: #c9c4d2; }
.nebula-product-list .product-preview-price del,
.nebula-product-list .product-preview-sales { color: #ada9b7; }
.nebula-product-list .product-preview-foot button,
.nebula-product-list .product-preview-action,
.nebula-product-list .product-preview-state button,
.nebula-product-list .product-preview-state-action { background: var(--product-accent); box-shadow: 0 5px 12px rgba(109,74,255,.32); }
.nebula-product-list .product-preview-foot button:active,
.nebula-product-list .product-preview-state button:active { background: #4500d8; }
.nebula-product-list .product-preview-state { border-color: rgba(201,191,255,.3); border-radius: 14px; background: rgba(255,255,255,.08); }
.nebula-product-list .product-preview-state-mark { background: rgba(109,74,255,.2); color: #6d4aff; }
.nebula-product-list .product-preview-state strong { color: #fff; }
.nebula-product-list .product-preview-state small { color: #c9c4d2; }
.nebula-product-list .preview-skeleton-card b { background: rgba(229,222,255,.18); }

@media (max-width: 340px) {
  .group-buy-products-preview.obsidian-product-list,
  .group-buy-products-preview.verdant-product-list,
  .group-buy-products-preview.nebula-product-list { padding: 6px; }
  .obsidian-product-list .product-preview-media,
  .obsidian-product-list .preview-skeleton-card i { width: 88px; height: 116px; }
  .verdant-product-list .product-preview-media,
  .verdant-product-list .preview-skeleton-card i,
  .nebula-product-list .product-preview-media,
  .nebula-product-list .preview-skeleton-card i { width: 80px; height: 104px; margin: 6px; }
  .obsidian-product-list .product-preview-content,
  .verdant-product-list .product-preview-content,
  .nebula-product-list .product-preview-content { padding: 8px; }
}
