/* Keep the shipping heading above the full-width method list. */
.cart_totals table.shop_table,
.cart_totals table.shop_table tbody { display: block; width: 100%; }
.cart_totals table.shop_table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    width: 100%;
}
.cart_totals table.shop_table th,
.cart_totals table.shop_table td { display: block; width: auto; }
.cart_totals table.shop_table th { text-align: left; }
.cart_totals table.shop_table td { text-align: right; }
.cart_totals table.shop_table tr.woocommerce-shipping-totals {
    grid-template-columns: minmax(0, 1fr);
}
.cart_totals .woocommerce-shipping-totals th { padding-bottom: 8px; }
.cart_totals .woocommerce-shipping-totals td {
    width: 100%;
    padding-top: 0;
    text-align: left;
}
/* Each option: radio, carrier logo, method name and price. */
#shipping_method { width: 100%; margin: 0; }
#shipping_method li {
    display: grid !important;
    grid-template-columns: 18px 44px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 44px;
    margin: 0 0 10px;
    padding: 0;
    text-align: left;
}
#shipping_method li > input.shipping_method {
    grid-column: 1;
    grid-row: 1;
    position: static;
    float: none;
    margin: 0;
    justify-self: start;
}
#shipping_method li > label {
    grid-column: 3;
    grid-row: 1;
    margin: 0;
    padding: 0;
    float: none;
    text-align: left;
    font-size: 14px;
    line-height: 1.4;
}
#shipping_method li > .inpost_pl-shipping-method-meta-wrap {
    grid-column: 2;
    grid-row: 1;
    display: block;
    width: 44px;
    margin: 0;
}
#shipping_method .easypack-shipping-method-logo {
    display: block;
    width: 44px;
    margin: 0;
}
#shipping_method .easypack-shipping-method-logo img {
    display: block;
    float: none;
    width: 44px !important;
    max-width: 44px !important;
    height: auto !important;
    margin: 0 !important;
}
.cart_totals .woocommerce-shipping-destination { margin-top: 12px; font-size: 13px; line-height: 1.5; }
.zipizip-cart-payu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e7e7e7;
    color: #555;
    font-size: 13px;
    line-height: 1.4;
}
.zipizip-cart-payu img { display: block; width: 72px; height: 32px; object-fit: contain; }
/* WooCommerce's mobile data-title duplicates the visible grid headings. */
.cart_totals table.shop_table_responsive tr td::before {
    display: none !important;
    content: none !important;
}
/* One separator per row and matching cell spacing on mobile and desktop. */
.cart_totals table.shop_table tr { border-bottom: 1px solid #e7e7e7; }
.cart_totals table.shop_table tr:last-child { border-bottom: 0; }
.cart_totals table.shop_table tr:not(.woocommerce-shipping-totals) { align-items: center; }
.cart_totals table.shop_table tr > th,
.cart_totals table.shop_table tr > td {
    border: 0 !important;
    padding: 16px 0 !important;
}
.cart_totals table.shop_table tr.woocommerce-shipping-totals > th { padding-bottom: 8px !important; }
.cart_totals table.shop_table tr.woocommerce-shipping-totals > td { padding-top: 0 !important; }
