.home-groups { margin-bottom: 34px; }
.home-product:disabled, .market-product.is-unavailable { opacity: .6; filter: grayscale(1); }
.home-product:disabled, .market-product button:disabled, .checkout-button:disabled, .cart-lines button:disabled { cursor: not-allowed; }
.market-product button:disabled, .checkout-button:disabled, .cart-lines button:disabled { opacity: .5; }
.home-group-list { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; }
.home-group-list > span { color: var(--muted); font-size: 12px; }
.home-group-list button { min-width: 0; height: 78px; border: 1px solid var(--line); border-radius: 8px; background: #fff; display: grid; place-items: center; align-content: center; gap: 3px; cursor: pointer; color: var(--ink); }
.home-group-list button > span { width: 26px; height: 26px; border-radius: 6px; display: grid; place-items: center; background: #eef2f8; color: var(--blue); font-size: 11px; font-weight: 900; }
.home-group-list button b { max-width: 100%; padding: 0 6px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.home-group-list button small { color: var(--muted); font-size: 9px; }
.home-group-list button.active { border-color: var(--brand); box-shadow: inset 0 -3px var(--brand); }
.home-group-list button.active > span { background: #fff0ed; color: var(--brand); }
.home-products { margin-top: 38px; }
.home-product-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
.home-product { min-width: 0; border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 0; overflow: hidden; text-align: left; cursor: pointer; }
.home-product > div { height: 105px; display: grid; place-items: center; background: #edf0f2; overflow: hidden; }
.home-product img { width: 100%; height: 100%; object-fit: cover; }
.home-product > div > span { font-size: 38px; }
.home-product section { padding: 10px 10px 7px; }
.home-product section small { color: var(--muted); font-size: 9px; }
.home-product h3 { margin: 3px 0; font-size: 13px; }
.home-product p { margin: 0 0 9px; color: var(--muted); font-size: 10px; }
.home-product section b { color: var(--brand); }
.home-product > i { display: block; padding: 7px 10px; border-top: 1px solid var(--line); color: var(--blue); font-size: 9px; font-style: normal; font-weight: 800; }
@media (max-width: 900px) { .home-group-list { grid-template-columns: repeat(3, 1fr); } .home-product-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .home-group-list { display: flex; overflow-x: auto; padding-bottom: 5px; } .home-group-list button { flex: 0 0 90px; } .home-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .home-product > div { height: 92px; } }
#preorderFields { display: grid; gap: 12px; margin-bottom: 16px; }
#preorderFields.hidden { display: none; }
#preorderFields select { width: 100%; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--ink); font: inherit; }
#preorderFields small { color: var(--muted); }
.market-product .delivery-timing-label { display: block; margin: 4px 0; }
.market-price { display: flex; align-items: baseline; gap: 7px; flex-wrap: wrap; }
.market-price del { color: #7b8495; font-size: 11px; }
.market-price b { color: var(--brand); font-size: 16px; }
.market-price em { width: 100%; color: #e5482d; font-size: 8px; font-style: normal; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.home-product .market-price { gap: 5px; }
.home-product .market-price b { font-size: 14px; }
#preorderFields label { margin: 0; }
