/* Hide the account controls and live chat in this copy of the storefront. */
html {
    filter: hue-rotate(1deg);
}

.col-auto:has(> .account-menu),
.col-auto:has(> #cxmlaccount),
.account-menu,
[data-account-menu],
#tidio-chat,
#tidio-chat-iframe,
iframe[title*="tidio" i],
iframe[src*="tidio"],
a[href="#tidio-open"] {
    display: none !important;
}

/* Keep downloaded product sliders usable when Shopware's JavaScript cannot run
   (for example when index.htm is opened directly from disk). */
.base-slider.product-slider:not(.js-slider-initialized) [data-product-slider-container] {
    display: grid !important;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 90px) / 4);
    gap: 30px;
    width: 100% !important;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: thin;
}

.base-slider.product-slider:not(.js-slider-initialized) .product-slider-item {
    width: auto !important;
    min-width: 0;
    scroll-snap-align: start;
}

@media (max-width: 991.98px) {
    .base-slider.product-slider:not(.js-slider-initialized) [data-product-slider-container] {
        grid-auto-columns: calc((100% - 30px) / 2);
    }
}

@media (max-width: 575.98px) {
    .base-slider.product-slider:not(.js-slider-initialized) [data-product-slider-container] {
        grid-auto-columns: 85%;
        gap: 16px;
    }
}

.local-cart-offcanvas { --bs-offcanvas-width: 480px; }
.local-cart-item { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 16px; padding: 20px 0; border-bottom: 1px solid #eee; }
.local-cart-image { width: 70px; height: 90px; object-fit: contain; }
.local-cart-details { min-width: 0; }
.local-cart-name { display: block; font-weight: 700; margin-bottom: 8px; }
.local-cart-option { font-size: .85rem; overflow-wrap: anywhere; white-space: pre-wrap; }
.local-cart-controls { display: flex; gap: 12px; align-items: end; margin-top: 12px; }
.local-cart-quantity { width: 80px; margin-top: 4px; }
.local-cart-item-price { grid-column: 2; }
.local-cart-summary { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; font-size: 1.15rem; }
.local-cart-page { max-width: 1000px; }
@media (min-width: 768px) {
    .local-cart-page .local-cart-item { grid-template-columns: 100px minmax(0, 1fr) auto; }
    .local-cart-page .local-cart-image { width: 100px; height: 120px; }
    .local-cart-page .local-cart-item-price { grid-column: 3; }
}
