/* Product detail purchase card: prevent quantity controls from colliding on phones. */
@media (max-width: 800px) {
    .product-detail-redesign .detail-purchase-card {
        padding: 16px;
    }

    .product-detail-redesign .detail-variant-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-detail-redesign .detail-purchase-summary {
        grid-template-columns: minmax(132px, 1fr) minmax(100px, auto);
        gap: 12px;
        padding: 14px;
    }

    .product-detail-redesign .detail-quantity > span {
        grid-template-columns: repeat(3, 42px) !important;
        width: 126px;
        min-width: 126px;
    }

    .product-detail-redesign .detail-quantity button,
    .product-detail-redesign .detail-quantity output {
        width: 42px;
        min-width: 0;
        padding: 0;
        height: 42px;
    }

    .product-detail-redesign .detail-subtotal {
        min-width: 0;
    }

    .product-detail-redesign .detail-subtotal strong {
        font-size: 26px;
        white-space: nowrap;
    }

    .product-detail-redesign .detail-cta {
        gap: 10px;
        margin-top: 12px;
    }
}

@media (max-width: 380px) {
    .product-detail-redesign .detail-variant-grid {
        grid-template-columns: 1fr;
    }

    .product-detail-redesign .detail-purchase-summary {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .product-detail-redesign .detail-quantity,
    .product-detail-redesign .detail-subtotal,
    .product-detail-redesign .detail-stock {
        grid-column: auto;
        grid-row: auto;
    }

    .product-detail-redesign .detail-subtotal {
        display: flex;
        align-items: center;
        justify-content: space-between;
        justify-items: initial;
        padding-top: 10px;
        border-top: 1px solid var(--line);
    }

    .product-detail-redesign .detail-stock {
        padding-top: 11px;
    }
}
