/* CRATER 0.3.0 — native WooCommerce cart; all product types, no pricing changes. */
body.woocommerce-cart #page #content .woocommerce-cart-form dl.variation {
    color: #d8d2c5 !important; font-size: 13px !important; line-height: 1.55 !important;
    margin: 10px 0 0 !important; overflow-wrap: anywhere;
}
body.woocommerce-cart #page #content .woocommerce-cart-form dl.variation :is(dt, dd, p) {
    font: inherit !important; color: inherit !important; -webkit-text-fill-color: currentColor !important;
    text-align: left !important; white-space: normal !important; max-width: 100%;
}
body.woocommerce-cart #page #content .woocommerce-cart-form dl.variation dt {
    float: none !important; display: block !important; font-weight: 600 !important; margin: 8px 0 2px !important;
}
body.woocommerce-cart #page #content .woocommerce-cart-form dl.variation dd {
    float: none !important; display: block !important; margin: 0 !important; padding: 0 !important;
}
body.woocommerce-cart #page #content .woocommerce-cart-form dl.variation dd p { margin: 0 !important; }
@media (max-width: 921px) {
    body.woocommerce-cart #page #content .ast-container { padding-inline: 16px !important; }
    body.woocommerce-cart #page #content :is(.entry-content, .woocommerce-cart-form, .cart-collaterals) { min-width: 0; }
    body.woocommerce-cart #page #content .woocommerce-cart-form { padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents,
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents > tbody {
        display: block !important; width: 100% !important; border: 0 !important; margin: 0 !important;
        background: transparent !important; box-shadow: none !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents > thead { display: none !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item {
        box-sizing: border-box; position: relative; display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 20px 8px !important;
        align-items: start !important; width: 100% !important; margin: 0 0 16px !important;
        padding: 16px !important; border: 1px solid #514326 !important; border-radius: 14px !important;
        background: #13110c !important; box-shadow: none !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > td {
        display: block !important; float: none !important; box-sizing: border-box;
        width: auto !important; min-width: 0 !important; max-width: none !important;
        padding: 0 !important; margin: 0 !important; border: 0 !important; background: transparent !important;
        color: #f5f0e6 !important; text-align: left !important; font-size: 15px !important; line-height: 1.4 !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-remove {
        position: absolute !important; top: 4px !important; right: 4px !important; z-index: 2;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-remove a.remove {
        display: flex !important; align-items: center; justify-content: center;
        width: 44px !important; height: 44px !important; margin: 0 !important; padding: 0 !important;
        border: 0 !important; color: #d8d2c5 !important; background: transparent !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-remove svg { width: 22px; height: 22px; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-thumbnail { grid-column: 1; grid-row: 1; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-thumbnail img {
        display: block !important; width: 72px !important; height: 82px !important; max-width: 100% !important;
        object-fit: contain !important; padding: 4px !important; margin: 0 !important;
        background: #fff !important; border-radius: 9px !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-name {
        grid-column: 2 / -1; grid-row: 1; padding: 5px 23px 0 0 !important; overflow-wrap: anywhere;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-name > a {
        font: 600 15px/1.45 Montserrat, "Segoe UI", Arial, sans-serif !important;
        color: #f5f0e6 !important; -webkit-text-fill-color: #f5f0e6 !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-price { grid-column: 1; grid-row: 2; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-quantity { grid-column: 2; grid-row: 2; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-subtotal { grid-column: 3; grid-row: 2; text-align: right !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > td::before {
        float: none !important; display: block !important; color: #c7bc9e !important;
        font: 400 12px/1.4 Montserrat, "Segoe UI", Arial, sans-serif !important; margin: 0 0 8px !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > :is(.product-remove,.product-thumbnail,.product-name)::before { display: none !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-price::before { content: "Cena / szt." !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-quantity::before { content: "Ilość" !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-subtotal::before { content: "Razem" !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents :is(.product-price,.product-subtotal) .amount {
        display: block; padding-block: 10px; font: 500 clamp(12px, 3.8vw, 16px)/1.4 Montserrat, "Segoe UI", Arial, sans-serif !important;
        color: #f0cd78 !important; -webkit-text-fill-color: #f0cd78 !important; white-space: nowrap !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .quantity { width: 100% !important; margin: 0 !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents input.qty {
        box-sizing: border-box; width: 64px !important; max-width: 100% !important; min-height: 44px !important;
        padding: 8px 4px !important; margin: 0 !important; font-size: 16px !important; line-height: 1.4 !important;
        background: #090908 !important; color: #f5f0e6 !important; border: 1px solid #75602c !important; border-radius: 8px !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr:has(> .actions),
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents td.actions {
        display: block !important; width: 100% !important; padding: 0 !important; border: 0 !important; background: transparent !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .coupon { display: grid !important; grid-template-columns: 1fr !important; gap: 10px !important; width: 100% !important; padding: 8px 0 16px !important; float: none !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .actions :is(input,button) {
        box-sizing: border-box; width: 100% !important; min-height: 46px !important; margin: 0 !important;
        font-size: 14px !important; padding: 12px !important; line-height: 1.4 !important; white-space: normal !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .actions input { font-size: 16px !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .actions button {
        color: #15120c !important; -webkit-text-fill-color: #15120c !important;
    }
    body.woocommerce-cart #page #content .cart-collaterals .cart_totals { width: 100% !important; padding: 20px 16px !important; margin-top: 24px !important; box-sizing: border-box; }
    body.woocommerce-cart #page #content .cart-collaterals .cart_totals h2 { font-size: 26px !important; line-height: 1.2 !important; margin: 0 0 18px !important; }
    body.woocommerce-cart #page #content .wc-proceed-to-checkout a.checkout-button { font-size: 15px !important; min-height: 48px; padding: 14px 10px !important; }
    body.woocommerce-cart #page #content .woocommerce-cart-form :is(a, input, button):focus-visible { outline: 2px solid #f0cd78 !important; outline-offset: 3px; }
    /* Long engraving and ribbon details use the full card width, not the name column. */
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item > .product-name { display: contents !important; }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-name > a {
        display: block !important; grid-column: 2 / -1; grid-row: 1; padding: 5px 23px 0 0 !important;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents .product-name > dl.variation {
        grid-column: 1 / -1; grid-row: 2; padding-top: 12px !important; margin: 0 !important;
        border-top: 1px solid #514326; min-width: 0;
    }
    body.woocommerce-cart #page #content table.woocommerce-cart-form__contents tr.cart_item:has(dl.variation) > :is(.product-price,.product-quantity,.product-subtotal) { grid-row: 3; }
}
