/* Preserve the original Cartoon storefront: native panels, chips and image cards. */
.coco-catalog [hidden] { display: none !important; }
.coco-catalog__toolbar { margin-bottom: 12px; }
.coco-catalog .chip { min-height: 36px; font-family: inherit; }
.coco-catalog .chip-icon { object-fit: contain; border-radius: 0; }
.coco-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 20px; }
.coco-product-grid[aria-busy="true"] { min-height: 160px; }
.coco-product { min-width: 0; height: 100%; color: inherit; text-decoration: none; }
.coco-product:hover { color: inherit; text-decoration: none; }
.coco-product .acg-card { height: 100%; background: #fff; }
.coco-product .acg-thumb { overflow: hidden; background: #fff; }
.coco-product .acg-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.coco-product[data-product="claude"] .acg-thumb { background: #faf4ef; }
.coco-product .tags { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 7px; }
.coco-product .goods-title { font-size: 15px; line-height: 1.45; min-height: 2.9em; margin-bottom: 6px; }
.coco-product .price { font-variant-numeric: tabular-nums; }
.coco-product .stat-bottom { flex-wrap: wrap; gap: 4px 8px; font-size: 13px; }
.coco-product.is-disabled .acg-card { cursor: default; }
.coco-product.is-disabled .acg-card:hover { transform: none; }
.coco-product.is-disabled .acg-card:hover .acg-thumb { transform: none; }
.coco-product .soldout-ribbon { pointer-events: none; }
.coco-catalog :is(a, button, input):focus-visible { outline: 3px solid #bb8568; outline-offset: 4px; }
.coco-catalog__mobile-search { display: none; }
.coco-catalog__empty { padding: 40px 12px; text-align: center; color: #786b63; }
.coco-catalog__retry { margin-top: 14px; padding: 8px 18px; border: 1px solid #e9e0d8; border-radius: 6px; background: #fff; color: #8b4b32; }
.coco-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 991.98px) {
    .coco-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .coco-catalog__mobile-search { display: block; margin-top: 10px; }
    .coco-catalog__mobile-search input { width: 100%; min-height: 40px; border: 1px solid #e9e0d8; border-radius: 8px; background: #fff; padding: 8px 12px; font: inherit; }
}
@media (max-width: 575.98px) {
    .coco-catalog .panel-body { padding-right: 12px; padding-left: 12px; }
    .coco-product-grid { gap: 12px; }
    .coco-product .p-3 { padding: 11px !important; }
    .coco-product .goods-title { font-size: 13px; -webkit-line-clamp: 3; line-clamp: 3; min-height: 4.35em; }
    .coco-product .acg-thumb { height: 112px; }
    .coco-product .price { font-size: 20px; }
    .coco-product .price .unit { font-size: 13px; }
    .coco-product .stat-bottom { font-size: 11px; }
    .coco-product .badge-soft { font-size: 10px; }
    .coco-catalog .chip { font-size: 12px; padding: 7px 9px; }
    .coco-catalog .chip-list { gap: 7px; }
}
@media (prefers-reduced-motion: reduce) {
    .coco-catalog *, .coco-catalog *::before, .coco-catalog *::after { animation: none !important; transition: none !important; }
}
