:root {
    --ld-checkout-primary: var(--brand-primary, #6A3F07);
    --ld-checkout-hover: var(--brand-secondary, #906325);
    --ld-checkout-shadow-rgb: 106, 63, 7;
}

/* ISOLATION - Prevent affecting theme styles */
/* Container isolation to prevent conflicts with theme */

/* RESET & BASE STYLES - SCOPED TO PLUGIN ONLY */
.ld-checkout-container * { 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
}
.ld-checkout-container { 
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 
    line-height: 1.5; 
}

/* FOUC PREVENTION - Controlled by inline CSS */
.ld-checkout-container { 
    min-height: 100vh;
    background: #f8f8f8;
    color: #222222;
    /* opacity and visibility controlled by inline CSS to prevent FOUC */
}

/* PROGRESSIVE LOADING STATES */
.ld-checkout-loading { 
    display: flex; 
    align-items: center; 
    justify-content: center;
    min-height: 50vh;
}

.ld-checkout-container:not(.loaded) .ld-checkout-content {
    opacity: 0;
    transform: translateY(20px);
}

.ld-checkout-container.loaded .ld-checkout-content {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

/* UTILITY CLASSES - Scoped to prevent theme conflicts */
/* Background Colors */
.ld-checkout-container .bg-white { background-color: #ffffff; }
.ld-checkout-container .bg-red-500 { background-color: #ef4444; }
.ld-checkout-container .bg-blue-500 { background-color: var(--ld-checkout-primary); }
.ld-checkout-container .bg-green-500 { background-color: #10b981; }
.ld-checkout-container .bg-gray-100 { background-color: #f3f4f6; }
.ld-checkout-container .bg-gray-200 { background-color: #e5e7eb; }
.ld-checkout-container .bg-gray-600 { background-color: #4b5563; }

/* Text Colors */
.ld-checkout-container .text-white { color: #ffffff; }
.ld-checkout-container .text-red-500 { color: #ef4444; }
.ld-checkout-container .text-blue-500 { color: var(--ld-checkout-primary); }
.ld-checkout-container .text-green-500 { color: #10b981; }
.ld-checkout-container .text-gray-600 { color: #4b5563; }
.ld-checkout-container .text-gray-700 { color: #374151; }
.ld-checkout-container .text-gray-900 { color: #111827; }

/* Borders */
.ld-checkout-container .border { border-width: 1px; border-style: solid; border-color: #d1d5db; }
.ld-checkout-container .border-red-500 { border-color: #ef4444; }
.ld-checkout-container .border-t-4 { border-top-width: 4px; }
.ld-checkout-container .border-t-red-500 { border-top-color: #ef4444; }

/* Border Radius */
.ld-checkout-container .rounded { border-radius: 0.25rem; }
.ld-checkout-container .rounded-sm { border-radius: 0.125rem; }
.ld-checkout-container .rounded-lg { border-radius: 0.5rem; }

/* Padding */
.ld-checkout-container .p-2 { padding: 0.5rem; }
.ld-checkout-container .p-3 { padding: 0.75rem; }
.ld-checkout-container .p-4 { padding: 1rem; }
.ld-checkout-container .p-5 { padding: 1.25rem; }
.ld-checkout-container .px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.ld-checkout-container .px-4 { padding-left: 1rem; padding-right: 1rem; }
.ld-checkout-container .px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.ld-checkout-container .py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.ld-checkout-container .py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.ld-checkout-container .pt-4 { padding-top: 1rem; }
.ld-checkout-container .pb-4 { padding-bottom: 1rem; }

/* Margin */
.ld-checkout-container .m-2 { margin: 0.5rem; }
.ld-checkout-container .m-3 { margin: 0.75rem; }
.ld-checkout-container .mb-2 { margin-bottom: 0.5rem; }
.ld-checkout-container .mb-3 { margin-bottom: 0.75rem; }
.ld-checkout-container .mb-4 { margin-bottom: 1rem; }
.ld-checkout-container .mt-6 { margin-top: 1.5rem; }

/* Width & Height */
.ld-checkout-container .w-full { width: 100%; }
.ld-checkout-container .h-auto { height: auto; }
.ld-checkout-container .max-w-full { max-width: 100%; }
.ld-checkout-container .min-h-screen { min-height: 100vh; }

/* Display & Layout */
.ld-checkout-container .flex { display: flex; }
.ld-checkout-container .inline-flex { display: inline-flex; }
.ld-checkout-container .grid { display: grid; }
.ld-checkout-container .block { display: block; }
.ld-checkout-container .hidden { display: none; }

/* Flexbox Utilities */
.ld-checkout-container .items-center { align-items: center; }
.ld-checkout-container .justify-between { justify-content: space-between; }
.ld-checkout-container .justify-center { justify-content: center; }
.ld-checkout-container .space-x-2 > * + * { margin-left: 0.5rem; }

/* Typography */
.ld-checkout-container .text-sm { font-size: 0.875rem; }
.ld-checkout-container .text-base { font-size: 1rem; }
.ld-checkout-container .text-lg { font-size: 1.125rem; }
.ld-checkout-container .text-xl { font-size: 1.25rem; }
.ld-checkout-container .font-medium { font-weight: 500; }
.ld-checkout-container .font-semibold { font-weight: 600; }
.ld-checkout-container .font-bold { font-weight: 700; }

/* Interactions */
.ld-checkout-container .cursor-pointer { cursor: pointer; }
.ld-checkout-container .select-none { user-select: none; }

/* Transitions */
.ld-checkout-container .transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }

/* LAYOUT CONTAINERS */
.ld-checkout-container .mx-auto { margin-left: auto; margin-right: auto; }
/* âŒ REMOVED: .container (too generic, conflicts with theme) */
/* Use .ld-checkout-container instead or add specific class */
.ld-checkout-container .container { width: 100%; margin: 0 auto; padding: 0 1rem; }

/* FORM ELEMENTS - Scoped to prevent affecting theme header forms */
.ld-checkout-container input,
.ld-checkout-container select,
.ld-checkout-container textarea {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.375rem;
    font-size: 1rem;
    line-height: 1.5;
    background-color: #ffffff;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.ld-checkout-container input:focus,
.ld-checkout-container select:focus,
.ld-checkout-container textarea:focus {
    outline: none;
    border-color: var(--ld-checkout-primary);
    box-shadow: 0 0 0 3px rgba(var(--ld-checkout-shadow-rgb), 0.1);
}

/* BUTTONS - Scoped to prevent theme conflicts */
.ld-checkout-container .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    border: none;
    border-radius: 0.375rem;
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
}

.ld-checkout-container .btn-primary {
    background-color: var(--ld-checkout-primary);
    color: white;
}

.ld-checkout-container .btn-primary:hover {
    background-color: var(--ld-checkout-hover);
}

.ld-checkout-container .btn-success {
    background-color: #10b981;
    color: white;
}

.ld-checkout-container .btn-danger {
    background-color: #ef4444;
    color: white;
}

/* LOADING SPINNER */
.ld-loading-spinner {
    width: 32px;
    height: 32px;
    border: 3px solid #e5e7eb;
    border-top: 3px solid var(--ld-checkout-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* âŒ REMOVED: body font override that affected entire site */
/* Scoped to container instead */
.ld-checkout-container { font-family: "Inter", sans-serif; }

.ld-checkout-container .btn-order { transform: scale(1.05); transform-origin: center; }

/* Save Address Button - Important styles to prevent override */
#save-address {
    background-color: #7c5335 !important;
    color: #ffffff !important;
    padding: 0.5rem 1rem !important;
    border-radius: 0.25rem !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

#save-address:hover {
    background-color: #492002 !important;
}

/* Complete Order Button - Important styles to prevent override */
#complete-order {
    background-color: #7c5335 !important;
    color: #ffffff !important;
    padding: 0.75rem 2rem !important;
    border-radius: 0.25rem !important;
    font-weight: 600 !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

#complete-order:hover {
    background-color: #492002 !important;
    color: #ffffff !important;
}

/* Change Address Button - Important styles to prevent override */
#change-address {
    color: var(--ld-checkout-primary) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
}

#change-address:hover {
    text-decoration: underline !important;
    color: var(--ld-checkout-hover) !important;
}

/* Change Shipping Button - Important styles to prevent override */
#change-shipping {
    color: var(--ld-checkout-primary) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
}

#change-shipping:hover {
    text-decoration: underline !important;
    color: var(--ld-checkout-hover) !important;
}

/* Quantity Buttons - Important styles to prevent override */
.quantity-decrease,
.quantity-increase {
    width: 1.5rem !important;
    height: 1.5rem !important;
    border: 1px solid #d1d5db !important;
    border-radius: 0.25rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.875rem !important;
    cursor: pointer !important;
    background-color: #ffffff !important;
    color: #374151 !important;
}

.quantity-decrease:hover,
.quantity-increase:hover {
    background-color: #f3f4f6 !important;
}

/* Quantity Input - Desktop & Mobile default - FORCE COLOR */
.ld-checkout-container input.quantity-input,
.ld-checkout-container input.w-8,
.ld-checkout-container input[type="number"].quantity-input,
.ld-checkout-container input[type="number"].w-8,
.ld-checkout-container input.w-8.text-center,
.ld-checkout-container input.text-center.quantity-input {
    color: #374151 !important;
    background: #ffffff !important;
    font-weight: 600 !important;
    text-align: center !important;
    font-size: 13px !important; /* Desktop font size nhá» hÆ¡n */
    width: 2.5rem !important; /* Desktop width */
    -webkit-text-fill-color: #374151 !important; /* Force color on Safari */
}

/* Quantity display span - Desktop */
.ld-checkout-container span.w-8,
.ld-checkout-container .w-8.text-center,
.ld-checkout-container span.text-center {
    font-size: 13px !important; /* Desktop font size */
    width: 2.5rem !important; /* Desktop width */
}

/* áº¨N spinner trÃªn DESKTOP (máº·c Ä‘á»‹nh) */
.ld-checkout-container input[type="number"]::-webkit-inner-spin-button,
.ld-checkout-container input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    display: none !important;
    margin: 0 !important;
}

.ld-checkout-container input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

/* Span display inline block */
.ld-checkout-container span.w-8,
.ld-checkout-container span.text-center {
    display: inline-block !important;
    -webkit-text-fill-color: #374151 !important;
}

/* Remove Item Button - Important styles to prevent override */
.ld-remove-item-btn {
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    color: #ef4444 !important;
    padding: 0.25rem !important;
    font-size: 1.25rem !important;
}

.ld-remove-item-btn:hover {
    color: #dc2626 !important;
}

/* List items - Bá» bullet point máº·c Ä‘á»‹nh vÃ¬ HTML Ä‘Ã£ cÃ³ dáº¥u â€¢ */
.ld-checkout-container ul li {
    list-style: none !important;
    list-style-type: none !important;
}

.ld-checkout-container ul {
    padding-left: 0 !important;
}

/* Náº¿u cÃ³ margin-left tá»« class ml-6 */
.ld-checkout-container ul.ml-6 {
    padding-left: 0 !important;
    margin-left: 1.5rem !important;
}

/* Address Section - Desktop padding */
.ld-checkout-container .border-t-4.border-t-\[\#7c5335\] {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.ld-checkout-container #address-display-section {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

/* Payment Tab Buttons - Important styles to prevent override */
.ld-checkout-container .tab-button {
    padding: 0.5rem 0.75rem !important;
    border: 1px solid #d1d5db !important;
    border-radius: 0.25rem !important;
    font-size: 0.875rem !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    color: #374151 !important;
}

.ld-checkout-container .tab-button:hover {
    border-color: var(--ld-checkout-primary) !important;
}

.ld-checkout-container .tab-button.active,
.ld-checkout-container .tab-button[aria-selected="true"] {
    border: 2px solid #7c5335 !important;
    color: #7c5335 !important;
    font-weight: 600 !important;
}

/* Button hover - keep text white */
.ld-checkout-container .btn-order:hover {
    color: #ffffff !important;
}

.ld-address-input { position: relative; }
/* Address Input Improvements */
.ld-address-input input.selected { 
    border-color: #10b981 !important; 
    background-color: #f0fdf4; 
}
.ld-address-input input.error { 
    border-color: #ef4444 !important; 
    background-color: #fef2f2; 
}
.ld-address-input.loading::after {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid #e5e7eb;
    border-top: 2px solid var(--ld-checkout-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translateY(-50%) rotate(0deg); }
    100% { transform: translateY(-50%) rotate(360deg); }
}

.ld-address-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #e5e7eb;
    border-top: none;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    max-height: 300px;
    overflow-y: auto;
    display: none;
}
.ld-address-dropdown.active { 
    display: block; 
    animation: dropdownFadeIn 0.2s ease-out;
}

@keyframes dropdownFadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}

.ld-address-item {
    padding: 12px 16px;
    cursor: pointer;
    border-bottom: 1px solid #f3f4f6;
    transition: all 0.15s ease;
    font-size: 14px;
}
.ld-address-item:hover { 
    background-color: var(--ld-checkout-primary); 
    color: white;
}
.ld-address-item:last-child { border-bottom: none; }

/* Toast Animations */
@keyframes slideInRight {
    from { transform: translateX(100%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

@keyframes slideOutRight {
    from { transform: translateX(0); opacity: 1; }
    to { transform: translateX(100%); opacity: 0; }
}

/* Tab Content - Scoped to prevent theme conflicts */
.ld-checkout-container .tab-content { display: none; }
.ld-checkout-container .tab-content:not(.hidden) { display: block; }

/* FOUC PREVENTION & SKELETON IMPROVEMENTS */
.ld-skeleton-wrapper {
    opacity: 1;
    transition: opacity 0.3s ease;
}

.ld-skeleton-wrapper.fade-out {
    opacity: 0;
}

.ld-skeleton {
    border-radius: 8px;
    overflow: hidden;
}

.ld-skeleton-text {
    height: 20px;
    border-radius: 4px;
}

.ld-skeleton-input {
    height: 48px;
    border-radius: 8px;
}

.ld-skeleton-card {
    border-radius: 12px;
}

/* Progressive Loading Animation */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ld-checkout-content {
    animation: fadeInUp 0.5s ease when loaded;
}

/* Voucher Scrollbar Styles - Brand Colors */
.ld-voucher-scroll-container,
#voucher-display-container div[style*="overflow-x: auto"],
.ld-voucher-list,
.ld-voucher-scroll-wrapper {
    scrollbar-width: thin !important;
    scrollbar-color: #7c5335 #f1f5f9 !important;
}

/* Hide voucher usage count "(CÃ²n X)" in LD Voucher cards */
.ld-checkout-container [class*="voucher-card"] > div > div span + span {
    display: none !important;
}

.ld-voucher-scroll-container::-webkit-scrollbar,
#voucher-display-container div[style*="overflow-x: auto"]::-webkit-scrollbar,
.ld-voucher-list::-webkit-scrollbar,
.ld-voucher-scroll-wrapper::-webkit-scrollbar {
    height: 6px !important;
}

.ld-voucher-scroll-container::-webkit-scrollbar-track,
#voucher-display-container div[style*="overflow-x: auto"]::-webkit-scrollbar-track,
.ld-voucher-list::-webkit-scrollbar-track,
.ld-voucher-scroll-wrapper::-webkit-scrollbar-track {
    background: #f1f5f9 !important;
    border-radius: 3px !important;
}

.ld-voucher-scroll-container::-webkit-scrollbar-thumb,
.ld-voucher-scroll-container::-webkit-scrollbar-thumb:hover,
.ld-voucher-scroll-container::-webkit-scrollbar-thumb:active,
#voucher-display-container div[style*="overflow-x: auto"]::-webkit-scrollbar-thumb,
#voucher-display-container div[style*="overflow-x: auto"]::-webkit-scrollbar-thumb:hover,
#voucher-display-container div[style*="overflow-x: auto"]::-webkit-scrollbar-thumb:active,
.ld-voucher-list::-webkit-scrollbar-thumb,
.ld-voucher-list::-webkit-scrollbar-thumb:hover,
.ld-voucher-list::-webkit-scrollbar-thumb:active,
.ld-voucher-scroll-wrapper::-webkit-scrollbar-thumb,
.ld-voucher-scroll-wrapper::-webkit-scrollbar-thumb:hover,
.ld-voucher-scroll-wrapper::-webkit-scrollbar-thumb:active {
    background: #7c5335 !important;
    border-radius: 3px !important;
}

/* ============================================================================
   MOBILE RESPONSIVE - Optimized for screens â‰¤ 768px
   ============================================================================ */
@media (max-width: 768px) {
    
    /* ===== LAYOUT CONTAINER ===== */
    .ld-checkout-container {
        padding: 0 !important;
        min-height: auto !important;
    }
    
    .ld-checkout-container .container,
    .ld-checkout-container .mx-auto {
        max-width: 100% !important;
        padding: 0.5rem !important;
        margin: 0 !important;
    }
    
    /* ===== GRID LAYOUT - Chuyá»ƒn thÃ nh 1 cá»™t trÃªn mobile ===== */
    /* Chá»‰ override grid thÃ´ng thÆ°á»ng, KHÃ”NG override grid-cols-12 (product table) */
    .ld-skeleton-wrapper .grid:not([class*="grid-cols-12"]):not([class*="md:grid-cols-2"]),
    .ld-checkout-container .grid:not([class*="grid-cols-12"]):not([class*="md:grid-cols-2"]) {
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
    }
    
    /* ===== NAME & PHONE INPUT - 2 cá»™t trÃªn mobile ===== */
    .ld-checkout-container .grid.grid-cols-1.md\:grid-cols-2,
    .ld-checkout-container .grid[class*="md:grid-cols-2"] {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important; /* 2 cá»™t báº±ng nhau */
        gap: 0.5rem !important;
    }
    
    /* Input trong 2 cá»™t - compact cho mobile */
    .ld-checkout-container .grid[class*="md:grid-cols-2"] input {
        padding: 0.5rem 0.6rem !important;
        font-size: 11px !important;
    }
    
    /* ===== PRODUCT TABLE (grid-cols-12) - Giá»¯ nguyÃªn cáº¥u trÃºc ===== */
    /* Priority cao nháº¥t - Product table giá»¯ nguyÃªn 12 cá»™t */
    .ld-checkout-container .grid-cols-12:not(.gap-6) {
        display: grid !important;
        grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
        gap: 0.25rem !important;
    }
    
    /* ===== SHIPPING SECTION - 2 rows trÃªn mobile ===== */
    /* Grid-cols-12 CÃ“ gap-6 (shipping section) */
    .ld-checkout-container #shipping-section .grid-cols-12,
    .ld-checkout-container .grid-cols-12.gap-6 {
        display: grid !important;
        grid-template-columns: 1fr !important; /* 1 cá»™t thay vÃ¬ 12 */
        gap: 1rem !important;
    }
    
    /* Ghi chÃº section - chiáº¿m full width */
    .ld-checkout-container #shipping-section .col-span-4,
    .ld-checkout-container .grid-cols-12.gap-6 .col-span-4 {
        grid-column: span 1 / span 1 !important;
        width: 100% !important;
    }
    
    /* Shipping method section - chiáº¿m full width */
    .ld-checkout-container #shipping-section .col-span-8,
    .ld-checkout-container .grid-cols-12.gap-6 .col-span-8 {
        grid-column: span 1 / span 1 !important;
        width: 100% !important;
        padding-left: 0 !important; /* Bá» padding left */
        border-left: none !important; /* Bá» border left */
        padding-top: 0.75rem !important;
        margin-top: 0.5rem !important;
        border-top: 1px solid #e5e7eb !important; /* ThÃªm border top */
    }
    
    /* Shipping section - label & input compact */
    .ld-checkout-container #shipping-section label,
    .ld-checkout-container .grid-cols-12.gap-6 label {
        font-size: 11px !important;
        margin-bottom: 0.25rem !important;
    }
    
    .ld-checkout-container #shipping-section input,
    .ld-checkout-container .grid-cols-12.gap-6 input {
        font-size: 11px !important;
        padding: 0.5rem 0.6rem !important;
    }
    
    /* Shipping options text */
    .ld-checkout-container #shipping-section .text-sm,
    .ld-checkout-container #shipping-section span,
    .ld-checkout-container #shipping-options {
        font-size: 11px !important;
    }
    
    /* Change shipping button */
    .ld-checkout-container #change-shipping {
        font-size: 10px !important;
        padding: 0.25rem 0.5rem !important;
    }
    
    /* Product Table Items - Äiá»u chá»‰nh kÃ­ch thÆ°á»›c cho vá»«a mobile */
    /* Cá»™t sáº£n pháº©m - giáº£m tá»« 6 xuá»‘ng 4 cá»™t */
    .ld-checkout-container .grid-cols-12 .col-span-6 {
        grid-column: span 4 / span 4 !important;
        font-size: 10px !important;
    }
    
    /* Cá»™t Ä‘Æ¡n giÃ¡, sá»‘ lÆ°á»£ng, thÃ nh tiá»n - tÄƒng lÃªn cho cÃ¢n Ä‘á»‘i */
    .ld-checkout-container .grid-cols-12 .col-span-4 {
        grid-column: span 4 / span 4 !important;
    }
    
    .ld-checkout-container .grid-cols-12 .col-span-2 {
        grid-column: span 2.5 / span 2.5 !important;
        font-size: 10px !important;
    }
    
    /* ÄÆ¡n giÃ¡ - 2.5 cá»™t */
    .ld-checkout-container .grid-cols-12 > div:nth-child(2).col-span-2,
    .ld-checkout-container .grid-cols-12 .col-span-2:nth-child(2) {
        grid-column: span 3 / span 3 !important;
    }
    
    /* Sá»‘ lÆ°á»£ng - 2.5 cá»™t */  
    .ld-checkout-container .grid-cols-12 > div:nth-child(3).col-span-2,
    .ld-checkout-container .grid-cols-12 .col-span-2:nth-child(3) {
        grid-column: span 2 / span 2 !important;
    }
    
    /* ThÃ nh tiá»n - 3 cá»™t */
    .ld-checkout-container .grid-cols-12 > div:nth-child(4).col-span-2,
    .ld-checkout-container .grid-cols-12 .col-span-2:nth-child(4) {
        grid-column: span 3 / span 3 !important;
    }
    
    /* Product images trong table - áº¨N HOÃ€N TOÃ€N trÃªn mobile */
    /* Selector máº¡nh hÆ¡n Ä‘á»ƒ override má»i style */
    .ld-checkout-container .grid-cols-12 .w-14,
    .ld-checkout-container .grid-cols-12 .w-14.h-14,
    .ld-checkout-container .grid-cols-12 div.w-14,
    .ld-checkout-container .grid-cols-12 div.h-14 {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* áº¨n táº¥t cáº£ áº£nh trong grid-cols-12 */
    .ld-checkout-container .grid-cols-12 img,
    .ld-checkout-container .grid-cols-12 .w-14 img,
    .ld-checkout-container .grid-cols-12 .col-span-6 img {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
    
    /* áº¨n container cÃ³ background gray (chá»©a áº£nh) */
    .ld-checkout-container .grid-cols-12 .bg-gray-100,
    .ld-checkout-container .grid-cols-12 div.bg-gray-100,
    .ld-checkout-container .grid-cols-12 .col-span-6 .bg-gray-100,
    .ld-checkout-container .grid-cols-12 .col-span-6 div.bg-gray-100 {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* áº¨n táº¥t cáº£ div cÃ³ class rounded overflow-hidden trong cá»™t sáº£n pháº©m */
    .ld-checkout-container .grid-cols-12 .col-span-6 .rounded,
    .ld-checkout-container .grid-cols-12 .col-span-6 .overflow-hidden {
        display: none !important;
    }
    
    /* SELECTOR Tá»I THÆ¯á»¢NG - Chá»‰ áº©n w-14 h-14 CHÃNH XÃC (khÃ´ng áº£nh hÆ°á»Ÿng w-6, w-8...) */
    .ld-checkout-container .grid-cols-12 [class~="w-14"],
    .ld-checkout-container .grid-cols-12 [class~="h-14"] {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Match exact class combination */
    .ld-checkout-container .grid-cols-12 .col-span-6 div[class="w-14 h-14 bg-gray-100 rounded overflow-hidden"],
    .ld-checkout-container .grid-cols-12 .col-span-6 div[class*="w-14 h-14"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* áº¨n má»i áº£nh trong cá»™t sáº£n pháº©m báº±ng attribute selector */
    .ld-checkout-container .grid-cols-12 .col-span-6 img[src*="uploads"],
    .ld-checkout-container .grid-cols-12 .col-span-6 img[class*="attachment"],
    .ld-checkout-container .grid-cols-12 .col-span-6 img[class*="woocommerce"] {
        display: none !important;
        visibility: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }
    
    /* Product name trong table */
    .ld-checkout-container .grid-cols-12 .font-medium {
        font-size: 10px !important;
        line-height: 1.2 !important;
    }
    
    /* ===== QUANTITY SECTION - Spinner TRONG border ===== */
    
    /* áº¨n nÃºt +/- bÃªn ngoÃ i, chá»‰ dÃ¹ng input vá»›i spinner native */
    .ld-checkout-container .grid-cols-12 .quantity-decrease,
    .ld-checkout-container .grid-cols-12 .quantity-increase,
    .ld-checkout-container .grid-cols-12 button.quantity-decrease,
    .ld-checkout-container .grid-cols-12 button.quantity-increase {
        display: none !important;
    }
    
    /* Container sá»‘ lÆ°á»£ng */
    .ld-checkout-container .grid-cols-12 .col-span-2 .flex {
        justify-content: center !important;
        gap: 0 !important;
    }
    
    /* Input sá»‘ lÆ°á»£ng - HIá»†N spinner native bÃªn trong */
    .ld-checkout-container .grid-cols-12 input.w-8,
    .ld-checkout-container .grid-cols-12 input.quantity-input,
    .ld-checkout-container .grid-cols-12 input[type="number"] {
        width: 55px !important;
        height: 28px !important;
        font-size: 11px !important;
        text-align: center !important;
        padding: 2px 4px !important;
        margin: 0 !important;
        border: 1px solid #d1d5db !important;
        border-radius: 4px !important;
        background: white !important;
        line-height: 1.2 !important;
        font-weight: 600 !important;
        color: #374151 !important;
        /* HIá»†N spinner */
        -webkit-appearance: number-input !important;
        -moz-appearance: number-input !important;
        appearance: auto !important;
    }
    
    /* HIá»†N vÃ  STYLE spinner (mÅ©i tÃªn lÃªn/xuá»‘ng) - Chrome/Safari/Edge */
    .ld-checkout-container .grid-cols-12 input.w-8::-webkit-inner-spin-button,
    .ld-checkout-container .grid-cols-12 input.w-8::-webkit-outer-spin-button,
    .ld-checkout-container .grid-cols-12 input.quantity-input::-webkit-inner-spin-button,
    .ld-checkout-container .grid-cols-12 input.quantity-input::-webkit-outer-spin-button {
        -webkit-appearance: inner-spin-button !important;
        opacity: 1 !important;
        height: 24px !important;
        width: 16px !important;
        margin: 0 !important;
        cursor: pointer !important;
        display: inline-block !important;
    }
    
    /* Firefox - HIá»†N spinner */
    .ld-checkout-container .grid-cols-12 input[type="number"] {
        -moz-appearance: number-input !important;
    }
    
    /* Focus state */
    .ld-checkout-container .grid-cols-12 input.quantity-input:focus,
    .ld-checkout-container .grid-cols-12 input[type="number"]:focus {
        outline: none !important;
        border-color: var(--ld-checkout-primary) !important;
        box-shadow: 0 0 0 2px rgba(var(--ld-checkout-shadow-rgb), 0.1) !important;
    }
    
    /* Hover state */
    .ld-checkout-container .grid-cols-12 input.quantity-input:hover,
    .ld-checkout-container .grid-cols-12 input[type="number"]:hover {
        border-color: #9ca3af !important;
    }
    
    /* Spacing trong product table - giáº£m xuá»‘ng */
    .ld-checkout-container .grid-cols-12 .space-x-2 > * + * {
        margin-left: 0.15rem !important;
    }
    
    .ld-checkout-container .grid-cols-12 .space-x-3 > * + * {
        margin-left: 0.2rem !important;
    }
    
    /* Cá»™t sáº£n pháº©m - khÃ´ng cÃ³ image ná»¯a, chá»‰ hiá»ƒn thá»‹ text */
    .ld-checkout-container .grid-cols-12 .col-span-6.flex,
    .ld-checkout-container .grid-cols-12 .col-span-6 > .flex {
        gap: 0 !important;
        justify-content: flex-start !important;
    }
    
    /* Text sáº£n pháº©m chiáº¿m full width cá»™t */
    .ld-checkout-container .grid-cols-12 .col-span-6 > .flex > div {
        width: 100% !important;
    }
    
    /* Remove button trong table */
    .ld-checkout-container .grid-cols-12 .ld-remove-item-btn {
        width: 24px !important;
        height: 24px !important;
        font-size: 12px !important;
    }
    
    /* Padding cho product table container - giáº£m Ä‘á»ƒ vá»«a mobile */
    .ld-checkout-container .grid-cols-12 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Padding wrapper cá»§a product table */
    .ld-checkout-container .px-5 {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
    
    .ld-checkout-container .py-3,
    .ld-checkout-container .py-4 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    
    /* Text alignment trong table - Ä‘áº£m báº£o náº±m trong cá»™t */
    .ld-checkout-container .grid-cols-12 .text-center {
        text-align: center !important;
        padding: 0 2px !important;
    }
    
    .ld-checkout-container .grid-cols-12 .text-right {
        text-align: right !important;
        padding-right: 2px !important;
    }
    
    /* Äáº£m báº£o flex items trong grid khÃ´ng overflow */
    .ld-checkout-container .grid-cols-12 .flex {
        flex-wrap: nowrap !important;
        overflow: hidden !important;
    }
    
    .ld-checkout-container .grid-cols-12 .items-center {
        align-items: center !important;
    }
    
    /* Cho phÃ©p text xuá»‘ng dÃ²ng trong product name */
    .ld-checkout-container .grid-cols-12 .col-span-6 > div {
        max-width: 100% !important;
        overflow: visible !important;
    }
    
    .ld-checkout-container .grid-cols-12 .col-span-6 .font-medium {
        overflow: visible !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        max-width: 100% !important;
        line-height: 1.3 !important;
    }
    
    /* Product image vÃ  name container */
    .ld-checkout-container .grid-cols-12 .col-span-6 .flex {
        align-items: flex-start !important;
        gap: 0.25rem !important;
    }
    
    /* ===== FLEX LAYOUT - Äiá»u chá»‰nh flex items ===== */
    .ld-checkout-container .flex {
        flex-wrap: wrap !important;
        gap: 0.5rem !important;
    }
    
    .ld-checkout-container .flex.items-center {
        align-items: flex-start !important;
    }
    
    /* ===== SPACING - Giáº£m khoáº£ng cÃ¡ch trÃªn mobile ===== */
    .ld-checkout-container .p-4,
    .ld-checkout-container .p-5 {
        padding: 0.75rem !important;
    }
    
    .ld-checkout-container .px-4,
    .ld-checkout-container .px-5 {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
    
    .ld-checkout-container .py-3 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
    
    .ld-checkout-container .mb-3,
    .ld-checkout-container .mb-4 {
        margin-bottom: 0.5rem !important;
    }
    
    .ld-checkout-container .mt-6 {
        margin-top: 0.75rem !important;
    }
    
    /* ===== CARDS & SECTIONS - Giáº£m padding ===== */
    .ld-checkout-container .bg-white,
    .ld-checkout-container [class*="card"],
    .ld-checkout-container [class*="section"] {
        padding: 0.75rem !important;
        margin-bottom: 0.5rem !important;
        border-radius: 0.375rem !important;
    }
    
    /* ===== FONT SIZE - 11px cho toÃ n bá»™ text ===== */
    .ld-checkout-container,
    .ld-checkout-container * {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }
    
    /* ===== HEADINGS - Tá»· lá»‡ phÃ¹ há»£p ===== */
    .ld-checkout-container h1 {
        font-size: 16px !important;
        line-height: 1.3 !important;
        margin-bottom: 0.5rem !important;
    }
    
    .ld-checkout-container h2 {
        font-size: 14px !important;
        line-height: 1.3 !important;
        margin-bottom: 0.4rem !important;
    }
    
    .ld-checkout-container h3 {
        font-size: 13px !important;
        line-height: 1.3 !important;
        margin-bottom: 0.3rem !important;
    }
    
    .ld-checkout-container h4,
    .ld-checkout-container h5,
    .ld-checkout-container h6 {
        font-size: 12px !important;
        line-height: 1.3 !important;
        margin-bottom: 0.3rem !important;
    }
    
    /* ===== ICONS - Giá»¯ kÃ­ch thÆ°á»›c phÃ¹ há»£p ===== */
    .ld-checkout-container .dashicons,
    .ld-checkout-container i,
    .ld-checkout-container [class*="icon"] {
        font-size: 14px !important;
        width: 14px !important;
        height: 14px !important;
    }
    
    /* ===== BUTTONS - Nhá» gá»n phÃ¹ há»£p vá»›i font 11px ===== */
    .ld-checkout-container .btn,
    .ld-checkout-container button,
    .ld-checkout-container [type="button"],
    .ld-checkout-container [type="submit"] {
        padding: 0.4rem 0.75rem !important;
        font-size: 11px !important;
        border-radius: 0.25rem !important;
        font-weight: 500 !important;
        min-height: 32px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.25rem !important;
    }
    
    /* Complete Order Button - Button chÃ­nh */
    #complete-order,
    .ld-checkout-container .btn-order,
    .ld-checkout-container .btn-primary {
        padding: 0.5rem 1rem !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Save Address Button */
    #save-address {
        padding: 0.4rem 0.75rem !important;
        font-size: 11px !important;
    }
    
    /* Change Buttons - Nhá» hÆ¡n */
    #change-address,
    #change-shipping {
        font-size: 10px !important;
        padding: 0.25rem 0.5rem !important;
    }
    
    /* Payment Tab Buttons - Canh Ä‘á»u */
    .ld-checkout-container .tab-button {
        padding: 0.4rem 0.5rem !important;
        font-size: 11px !important;
        flex: 1 1 auto !important;
        text-align: center !important;
        min-width: 0 !important;
    }
    
    /* Quantity Buttons - ÄÃ£ Ä‘Æ°á»£c style láº¡i á»Ÿ phÃ­a trÃªn (dÃ²ng 697-746) */
    /* CSS cÅ© Ä‘Ã£ xÃ³a Ä‘á»ƒ trÃ¡nh conflict */
    
    /* Remove Item Button */
    .ld-remove-item-btn {
        padding: 0.25rem !important;
        font-size: 14px !important;
        width: 28px !important;
        height: 28px !important;
    }
    
    /* ===== FORM INPUTS - Compact cho mobile ===== */
    .ld-checkout-container input,
    .ld-checkout-container select,
    .ld-checkout-container textarea {
        padding: 0.5rem 0.6rem !important;
        font-size: 16px !important; /* Fix iOS auto-zoom on focus (requires >= 16px) */
        border-radius: 0.25rem !important;
        min-height: 36px !important;
    }
    
    .ld-checkout-container input[type="checkbox"],
    .ld-checkout-container input[type="radio"] {
        width: 16px !important;
        height: 16px !important;
        min-height: 16px !important;
    }
    
    /* ===== TABLES & LISTS - Mobile friendly ===== */
    .ld-checkout-container table {
        font-size: 11px !important;
    }
    
    .ld-checkout-container table td,
    .ld-checkout-container table th {
        padding: 0.4rem !important;
        font-size: 11px !important;
    }
    
    /* ===== CART ITEMS - Layout tá»‘i Æ°u ===== */
    .ld-cart-summary-item,
    .ld-checkout-container [class*="cart-item"],
    .ld-checkout-container [class*="product-item"] {
        padding: 0.5rem !important;
        gap: 0.5rem !important;
    }
    
    .ld-item-image,
    .ld-checkout-container [class*="product-image"],
    .ld-checkout-container [class*="item-image"] {
        width: 60px !important;
        height: 60px !important;
        min-width: 60px !important;
    }
    
    .ld-item-image img {
        max-width: 60px !important;
        max-height: 60px !important;
    }
    
    /* ===== PRICE DISPLAY - CÄƒn chá»‰nh giÃ¡ ===== */
    .ld-checkout-container [class*="price"],
    .ld-checkout-container .amount,
    .ld-checkout-container .woocommerce-Price-amount {
        font-size: 12px !important;
        font-weight: 600 !important;
    }
    
    /* ===== LOADING SPINNER - Nhá» láº¡i ===== */
    .ld-preloader-spinner,
    .ld-loading-spinner {
        width: 32px !important;
        height: 32px !important;
        border-width: 3px !important;
    }
    
    /* ===== ADDRESS DROPDOWN - Full width ===== */
    .ld-address-dropdown {
        max-height: 200px !important;
        font-size: 11px !important;
    }
    
    .ld-address-item {
        padding: 0.5rem 0.75rem !important;
        font-size: 11px !important;
    }
    
    /* ===== VOUCHER SECTION - Compact & Mobile Optimized ===== */
    .ld-checkout-container [class*="voucher"] {
        padding: 0.5rem !important;
        font-size: 10px !important;
    }
    
    /* Voucher Cards - Giáº£m width, height vÃ  font-size */
    .ld-checkout-container [class*="voucher-card"],
    .ld-checkout-container div[class^="voucher-card-"] {
        width: 200px !important;
        min-width: 200px !important;
        padding: 8px !important;
        padding-right: 44px !important;
        padding-bottom: 8px !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }
    
    /* Voucher cÃ³ warning message á»Ÿ bottom */
    .ld-checkout-container div[class^="voucher-card-"][data-available="false"] {
        padding-bottom: 24px !important;
    }
    
    /* Voucher code - bold text */
    .ld-checkout-container [class*="voucher-card"] span[style*="font-weight: bold"] {
        font-size: 11px !important;
        line-height: 1.2 !important;
    }
    
    /* Usage count (CÃ²n X) */
    .ld-checkout-container [class*="voucher-card"] span[style*="font-size: 10px"] {
        font-size: 9px !important;
        line-height: 1.2 !important;
    }
    
    /* Code + Usage wrapper - giáº£m margin */
    .ld-checkout-container [class*="voucher-card"] > div > div[style*="margin-bottom"] {
        margin-bottom: 2px !important;
    }
    
    /* Description text */
    .ld-checkout-container [class*="voucher-card"] p {
        font-size: 10px !important;
        line-height: 1.3 !important;
        margin: 0 0 4px 0 !important;
    }
    
    /* Äiá»u kiá»‡n link */
    .ld-checkout-container [class*="voucher-card"] a {
        font-size: 9px !important;
    }
    
    /* Radio button */
    .ld-checkout-container [class*="voucher-card"] input[type="radio"] {
        width: 14px !important;
        height: 14px !important;
    }
    
    /* Right sidebar (Radio + Äiá»u kiá»‡n) */
    .ld-checkout-container [class*="voucher-card"] > div[style*="position: absolute"][style*="right: 16px"],
    .ld-checkout-container [class*="voucher-card"] > div[style*="position: absolute"][style*="right"] {
        right: 10px !important;
        gap: 2px !important;
    }
    
    /* Warning message at bottom */
    .ld-checkout-container [class*="voucher-card"] > div[style*="bottom: 0"] {
        font-size: 9px !important;
        padding: 3px 6px !important;
        line-height: 1.2 !important;
    }
    
    /* Border radius nhá» láº¡i */
    .ld-checkout-container [class*="voucher-card"] {
        border-radius: 6px !important;
    }

    /* ðŸ”¥ FIX: Highlight applied voucher card */
    .ld-checkout-container .ld-voucher-card.applied {
        background-color: #dcd4d1 !important;
    }

    /* Scroll container */
    .ld-checkout-container .ld-voucher-scroll-container {
        gap: 12px !important;
    }
    
    .ld-checkout-container .ld-voucher-scroll-container > div {
        gap: 12px !important;
    }
    
    /* ===== TOAST NOTIFICATIONS - Smaller ===== */
    .ld-checkout-container [class*="toast"],
    .ld-checkout-container [class*="notification"] {
        font-size: 11px !important;
        padding: 0.5rem 0.75rem !important;
        max-width: 90% !important;
    }
    
    /* ===== BORDER RADIUS - Consistent ===== */
    .ld-checkout-container .rounded,
    .ld-checkout-container .rounded-lg {
        border-radius: 0.375rem !important;
    }
    
    /* ===== EMPTY CART MESSAGE ===== */
    .ld-empty-cart-message {
        padding: 1rem !important;
        text-align: center !important;
    }
    
    .ld-empty-icon {
        font-size: 40px !important;
        margin-bottom: 0.5rem !important;
    }
    
    /* ===== UTILITY ADJUSTMENTS ===== */
    .ld-checkout-container .space-x-2 > * + * {
        margin-left: 0.25rem !important;
    }
    
    .ld-checkout-container .gap-4,
    .ld-checkout-container .gap-3 {
        gap: 0.5rem !important;
    }
    
    /* ===== HIDDEN ON MOBILE (if needed) ===== */
    .ld-checkout-container .hide-mobile {
        display: none !important;
    }
    
    /* ===== FULL WIDTH ON MOBILE ===== */
    .ld-checkout-container .mobile-full-width {
        width: 100% !important;
    }
    
    /* ===== VOUCHER EMPTY MESSAGE - Mobile ===== */
    .ld-checkout-container .ld-voucher-empty-message {
        font-size: 12px !important;
        padding: 10px !important;
    }
}

/* ===== MULTI-PROVIDER SHIPPING BADGES ===== */
.ld-checkout-container .provider-badge {
    display: inline-block;
    padding: 2px 8px;
    margin-right: 6px;
    font-size: 11px;
    font-weight: 600;
    border-radius: 4px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.ld-checkout-container .ld-shipping-option h4 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

/* Provider-specific colors */
.ld-checkout-container .provider-badge.ghn {
    background: linear-gradient(135deg, #FF6B00 0%, #FF8C00 100%);
}

.ld-checkout-container .provider-badge.viettelpost {
    background: linear-gradient(135deg, #D70018 0%, #FF0033 100%);
}

.ld-checkout-container .provider-badge.ghtk {
    background: linear-gradient(135deg, #00B14F 0%, #00D65C 100%);
}

/* Shipping option label styling */
.ld-checkout-container .ld-shipping-option {
    display: flex;
    align-items: flex-start;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #fafafa;
    margin-bottom: 8px;
}

.ld-checkout-container .ld-shipping-option:hover {
    border-color: var(--ld-checkout-primary);
    background: #f0f7ff;
}

.ld-checkout-container .ld-shipping-option input[type="radio"] {
    margin-top: 2px;
    margin-right: 12px;
    cursor: pointer;
    flex-shrink: 0;
}

.ld-checkout-container .ld-shipping-option.active {
    border-color: var(--ld-checkout-primary);
    background: linear-gradient(135deg, #eff6ff 0%, #f0f7ff 100%);
    box-shadow: 0 0 0 3px rgba(var(--ld-checkout-shadow-rgb), 0.1);
}

/* ==========================================================================
   PREMIUM EDITORIAL DESIGN SYSTEM OVERRIDES (DE-AI & DISSONANCE FIX)
   ========================================================================== */

/* 1. TYPOGRAPHY - Align with Rey Theme's editorial style */
.ld-checkout-container,
.ld-checkout-container * {
    font-family: 'Poppins', var(--body-font), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

.ld-checkout-container h1,
.ld-checkout-container h2,
.ld-checkout-container h3,
.ld-checkout-container h4,
.ld-checkout-container h5,
.ld-checkout-container h6 {
    font-family: var(--title-font, 'Playfair Display', serif) !important;
    letter-spacing: 0.02em !important;
    font-weight: 600 !important;
    color: #222222 !important;
}

/* 2. COLORS - Brand Primary & Secondary instead of Tailwind Blue */
.ld-checkout-container {
    background: #fcfcfc !important; /* Premium off-white editorial background */
}

/* Primary Button & Backgrounds */
.ld-checkout-container button[type="submit"],
.ld-checkout-container #complete-order,
.ld-checkout-container .ld-btn-primary,
.ld-checkout-container #save-address,
.ld-checkout-container .bg-blue-500,
.ld-checkout-container .bg-blue-600 {
    background: var(--brand-primary, #6A3F07) !important;
    color: #ffffff !important;
    border: none !important;
    transition: all 0.2s ease-in-out !important;
}

.ld-checkout-container button[type="submit"]:hover,
.ld-checkout-container #complete-order:hover,
.ld-checkout-container .ld-btn-primary:hover,
.ld-checkout-container #save-address:hover {
    background: var(--brand-secondary, #906325) !important;
    color: #ffffff !important;
}

/* Text Highlights & Links */
.ld-checkout-container .text-blue-500,
.ld-checkout-container .text-blue-600,
.ld-checkout-container a,
.ld-checkout-container #change-address,
.ld-checkout-container #change-shipping {
    color: var(--brand-secondary, #906325) !important;
}

.ld-checkout-container a:hover,
.ld-checkout-container #change-address:hover,
.ld-checkout-container #change-shipping:hover {
    color: var(--brand-primary, #6A3F07) !important;
    text-decoration: underline !important;
}

/* 3. INPUTS & FIELDS - Minimalist and elegant */
.ld-checkout-container input,
.ld-checkout-container select,
.ld-checkout-container textarea {
    border: 1px solid #eaeaea !important;
    border-radius: 4px !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    background-color: #fafafa !important;
    color: #222222 !important;
    transition: all 0.2s ease-in-out !important;
}

.ld-checkout-container input:focus,
.ld-checkout-container select:focus,
.ld-checkout-container textarea:focus {
    background-color: #ffffff !important;
    border-color: var(--brand-primary, #6A3F07) !important;
    box-shadow: 0 0 0 2px rgba(106, 63, 7, 0.08) !important;
    outline: none !important;
}

/* 4. BO GÓC & BÓNG ĐỔ - Flat, minimal, structured */
.ld-checkout-container .rounded,
.ld-checkout-container .rounded-sm,
.ld-checkout-container .rounded-md,
.ld-checkout-container .rounded-lg,
.ld-checkout-container .rounded-xl,
.ld-checkout-container .rounded-2xl,
.ld-checkout-container .bg-white {
    border-radius: 4px !important;
}

/* Replace heavy box shadows with fine borders */
.ld-checkout-container .shadow,
.ld-checkout-container .shadow-md,
.ld-checkout-container .shadow-lg,
.ld-checkout-container .shadow-xl {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
    border: 1px solid #eaeaea !important;
}

/* 5. TABS & SELECTIONS */
.ld-checkout-container .tab-button {
    border: 1px solid #eaeaea !important;
    background: #ffffff !important;
    color: #666666 !important;
    font-weight: 500 !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
}

.ld-checkout-container .tab-button.active,
.ld-checkout-container .tab-button[aria-selected="true"] {
    border: 2px solid var(--brand-primary, #6A3F07) !important;
    color: var(--brand-primary, #6A3F07) !important;
    font-weight: 600 !important;
}

/* Shipping Option Layout */
.ld-checkout-container .ld-shipping-option {
    border: 1px solid #eaeaea !important;
    background: #ffffff !important;
    border-radius: 4px !important;
}

.ld-checkout-container .ld-shipping-option:hover {
    border-color: var(--brand-secondary, #906325) !important;
    background: #fbfaf9 !important;
}

.ld-checkout-container .ld-shipping-option.active {
    border-color: var(--brand-primary, #6A3F07) !important;
    background: #fbfaf9 !important;
    box-shadow: 0 0 0 2px rgba(106, 63, 7, 0.08) !important;
}

/* Container Borders and text header colors to match brand primary brown */
.ld-checkout-container .border-t-\[\#7c5335\] {
    border-top-color: var(--brand-primary, #6A3F07) !important;
}
.ld-checkout-container .text-\[\#7c5335\] {
    color: var(--brand-primary, #6A3F07) !important;
}
.ld-checkout-container .bg-\[\#7c5335\] {
    background-color: var(--brand-primary, #6A3F07) !important;
}

/* 6. VOUCHER CARDS DESIGN - Premium Member VIP Look */
.ld-checkout-container [class*="voucher-card-"] {
    border-radius: 4px !important;
    border: 1px solid #eaeaea !important;
    border-left: 4px solid var(--brand-primary, #6A3F07) !important; /* Vertical accent ribbon */
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03) !important;
    background: #ffffff !important;
    padding: 14px !important;
}

.ld-checkout-container [class*="voucher-card-"][data-available="false"] {
    border-left-color: #d1d5db !important;
    opacity: 0.55 !important;
}

/* Style child details inside voucher cards */
.ld-checkout-container [class*="voucher-card-"] [style*="color: #c2410c"],
.ld-checkout-container [class*="voucher-card-"] [style*="color: #92400e"],
.ld-checkout-container [class*="voucher-card-"] [style*="color: rgb(146, 64, 14)"] {
    color: var(--brand-primary, #6A3F07) !important;
}

.ld-checkout-container [class*="voucher-card-"] button {
    border-radius: 2px !important;
    font-weight: 600 !important;
}

/* ==========================================================================
   LAYOUT REFINEMENTS - SPACING, ALIGNMENT & RESPONSIVE SPACIOUSNESS
   ========================================================================== */

/* Spacing between main cards */
.ld-checkout-container .bg-white {
    padding: 28px !important;
    margin-bottom: 24px !important;
    border: 1px solid #eaeaea !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.01) !important;
}

/* Field Spacing */
.ld-checkout-container .ld-address-input {
    margin-bottom: 16px !important;
}

/* Make grid gaps larger and more breathable */
.ld-checkout-container .grid {
    gap: 20px !important;
}

/* Responsive spacing refinements */
@media (max-width: 768px) {
    .ld-checkout-container .bg-white {
        padding: 20px 16px !important;
        margin-bottom: 16px !important;
    }

    /* Stack Họ tên & Số điện thoại on mobile to prevent cramped columns */
    .ld-checkout-container .grid.grid-cols-1.md\:grid-cols-2,
    .ld-checkout-container .grid[class*="md:grid-cols-2"] {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .ld-checkout-container .grid {
        gap: 16px !important;
    }

    /* Hide table header on mobile */
    .ld-checkout-container .grid-cols-12:not(.gap-6)[style*="font-semibold"],
    .ld-checkout-container [class*="text-[#666]"][class*="font-semibold"] {
        display: none !important;
    }

    /* Redesign product items list on mobile */
    .ld-checkout-container [data-cart-key] {
        padding: 20px 20px !important; /* Spacing thoáng đãng đồng bộ với header */
        border-bottom: 1px solid #f1f1f1 !important;
    }
}

/* ==========================================================================
   PAYMENT METHOD RADIO CARDS STYLING
   ========================================================================== */

/* Outer Radio Card button */
.ld-checkout-container .tab-button {
    width: 100% !important;
    height: 68px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 18px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: #2d3748 !important;
    font-weight: 500 !important;
}

/* Active checked card border and shadow */
.ld-checkout-container .tab-button.active,
.ld-checkout-container .tab-button[aria-selected="true"] {
    border: 2px solid #7c5335 !important;
    background-color: #faf8f5 !important;
}

/* Radio circle wrapper */
.ld-checkout-container .tab-button .custom-radio-circle {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    border: 1.5px solid #cbd5e1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 14px !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
    background-color: #ffffff !important;
}

/* Inner dot inside radio circle */
.ld-checkout-container .tab-button .custom-radio-circle::after {
    content: '' !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background-color: transparent !important;
    transition: all 0.2s ease !important;
}

/* Checked state of radio circle */
.ld-checkout-container .tab-button.active .custom-radio-circle {
    border-color: #7c5335 !important;
}

.ld-checkout-container .tab-button.active .custom-radio-circle::after {
    background-color: #7c5335 !important;
}

/* Interactive hover state */
.ld-checkout-container .tab-button:hover:not(.active) {
    border-color: #906325 !important;
    background-color: #fbfbfb !important;
}

/* ============================================================================
   UI CUSTOMIZATION: FIELD ALIGNMENT, DROPDOWN ARROWS, SEARCH IN DROPDOWN
   ============================================================================ */

/* 1. Đồng bộ chiều cao các inputs */
.ld-address-input input {
    height: 44px !important;
    box-sizing: border-box !important;
}

/* 2. Đồng bộ khoảng cách giữa các fields */
.ld-checkout-container .ld-address-input {
    margin-bottom: 0 !important;
}
#address-input-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}
#address-input-form.hidden {
    display: none !important;
}
#saved-address-display.hidden {
    display: none !important;
}
#address-input-form > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
#address-input-form .grid {
    gap: 14px !important;
}

/* 3. Mũi tên dropdown */
.ld-has-dropdown {
    position: relative;
}
.ld-has-dropdown input {
    padding-right: 36px !important;
}
.ld-has-dropdown::after {
    content: "\f078" !important; /* FontAwesome caret-down */
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #9ca3af !important;
    font-size: 11px !important;
    pointer-events: none !important;
    transition: transform 0.2s ease !important;
    z-index: 5 !important;
}
.ld-has-dropdown.dropdown-active::after {
    transform: translateY(-50%) rotate(180deg) !important;
}

/* 4. Khung tìm kiếm bên trong dropdown */
.ld-address-dropdown {
    display: none;
    flex-direction: column !important;
    overflow: hidden !important;
    max-height: 300px !important;
    border-radius: 0 0 8px 8px !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
}
.ld-address-dropdown.active {
    display: flex !important;
}
.ld-dropdown-search-wrapper {
    padding: 8px 10px !important;
    border-bottom: 1px solid #f3f4f6 !important;
    background: #f9fafb !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
}
.ld-dropdown-search-wrapper::before {
    content: "\f002" !important; /* FontAwesome search */
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #9ca3af !important;
    font-size: 12px !important;
    z-index: 12 !important;
}
.ld-checkout-container input.ld-dropdown-search-input {
    width: 100% !important;
    height: 34px !important;
    font-size: 13px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    padding: 6px 10px 6px 34px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    outline: none !important;
}
.ld-checkout-container input.ld-dropdown-search-input:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1) !important;
}
.ld-dropdown-list {
    overflow-y: auto !important;
    flex: 1 !important;
    max-height: 250px !important;
}

/* 5. Đồng bộ font size của các inputs, selects, textareas và placeholders về 12px (Ultra High Specificity) */
#address-input-form input,
#address-input-form select,
#address-input-form textarea,
#address-input-form input#customer-name,
#address-input-form input#customer-phone,
#address-input-form input#customer-email,
#address-input-form input#province,
#address-input-form input#district,
#address-input-form input#ward,
#address-input-form input#street-address,
#address-input-form input::placeholder,
#address-input-form textarea::placeholder,
#address-input-form input::-webkit-input-placeholder,
#address-input-form textarea::-webkit-input-placeholder,
#address-input-form input::-moz-placeholder,
#address-input-form textarea::-moz-placeholder,
#address-input-form input:-ms-input-placeholder,
#address-input-form textarea:-ms-input-placeholder,
#address-input-form input#customer-name::placeholder,
#address-input-form input#customer-phone::placeholder,
#address-input-form input#customer-email::placeholder,
#address-input-form input#province::placeholder,
#address-input-form input#district::placeholder,
#address-input-form input#ward::placeholder,
#address-input-form input#street-address::placeholder {
    font-size: 12px !important;
}

/* 6. Đồng bộ typography cho tên sản phẩm và các chi tiết về 12px */
.ld-checkout-container [data-cart-key] .font-bold {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #333333 !important;
}

.ld-checkout-container [data-cart-key] .quantity-input {
    font-size: 12px !important;
}

/* 7. Định dạng hình ảnh sản phẩm nhỏ bên trái trên cả Mobile và Desktop */
.ld-checkout-container [data-cart-key] .w-10.h-10 {
    width: 40px !important;
    height: 40px !important;
}

.ld-checkout-container [data-cart-key] .w-10.h-10 img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Ghi đè hiển thị hình ảnh trên mobile (phòng trường hợp bị ẩn do các quy tắc cũ) */
@media (max-width: 768px) {
    .ld-checkout-container [data-cart-key] div.w-10.h-10,
    .ld-checkout-container [data-cart-key] .w-10,
    .ld-checkout-container [data-cart-key] .h-10 {
        display: block !important;
        visibility: visible !important;
        width: 40px !important;
        height: 40px !important;
        opacity: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
    }
    .ld-checkout-container [data-cart-key] .w-10 img {
        display: block !important;
        visibility: visible !important;
        position: static !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        opacity: 1 !important;
    }
}

/* 8. Thiết lập bộ chỉnh số lượng hiện đại và cân đối (High Specificity) */
#ld-shopee-checkout [data-cart-key] .quantity-decrease,
#ld-shopee-checkout [data-cart-key] .quantity-increase {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
    border-radius: 50% !important; /* Tròn trịa tuyệt đối */
    border: 1px solid #d1d5db !important;
    background-color: #ffffff !important;
    color: #374151 !important;
    font-size: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    outline: none !important;
}

#ld-shopee-checkout [data-cart-key] .quantity-decrease:hover,
#ld-shopee-checkout [data-cart-key] .quantity-increase:hover {
    background-color: #f3f4f6 !important;
    border-color: #9ca3af !important;
}

#ld-shopee-checkout [data-cart-key] input.quantity-input {
    width: 32px !important; /* Ô vuông nhỏ gọn */
    height: 24px !important; /* Chiều cao khớp hoàn toàn với nút */
    min-height: 24px !important;
    max-height: 24px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 4px !important; /* Bo góc nhẹ */
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #374151 !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 4px !important; /* Tạo khoảng cách nhẹ với nút */
    line-height: 22px !important; /* Căn giữa dọc chữ số */
    box-sizing: border-box !important;
    background-color: #ffffff !important;
    -moz-appearance: textfield !important; /* Ẩn spinners Firefox */
    outline: none !important;
}

/* Ẩn spinners Chrome/Safari */
#ld-shopee-checkout [data-cart-key] input.quantity-input::-webkit-outer-spin-button,
#ld-shopee-checkout [data-cart-key] input.quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* 9. Thiết lập thẻ hiển thị địa chỉ đã lưu chuyên nghiệp (Shopee Style) */
#ld-shopee-checkout #saved-address-display {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background-color: #fcfaf8 !important; /* Màu nền kem cát ấm áp sang trọng */
    border: 1px solid #f0e6df !important; /* Viền nâu đất nhạt đồng bộ tone */
    border-radius: 4px !important;
    padding: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

#ld-shopee-checkout #saved-address-display.hidden {
    display: none !important;
}

#ld-shopee-checkout #saved-address-display .address-details {
    flex: 1 !important;
    padding-right: 16px !important;
}

#ld-shopee-checkout #saved-address-display button#change-address {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #7c5335 !important;
    border: 1px solid #7c5335 !important;
    border-radius: 9999px !important; /* Dạng viên thuốc tròn trịa */
    padding: 6px 14px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    min-width: unset !important;
    width: auto !important;
    height: auto !important;
    text-transform: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    line-height: 1 !important;
}

#ld-shopee-checkout #saved-address-display button#change-address:hover {
    background-color: #7c5335 !important;
    color: #ffffff !important;
}

/* ============================================================================
   PREMIUM PAYMENT METHODS & TYPOGRAPHY OVERRIDES
   ============================================================================ */

/* Custom styles for payment methods to make them simple radio + text (no border) */
.ld-checkout-container .tab-button {
    border: none !important;
    background: transparent !important;
    padding: 6px 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    height: auto !important; /* Crucial override to fix huge vertical gap */
}

.ld-checkout-container .tab-button.active {
    border: none !important;
    background: transparent !important;
}

/* Radio circle size and spacing overrides */
.ld-checkout-container .tab-button .custom-radio-circle {
    width: 18px !important;
    height: 18px !important;
    border-width: 1.5px !important;
    border-color: #cbd5e1 !important;
}

.ld-checkout-container .tab-button.active .custom-radio-circle {
    border-color: #7c5335 !important;
}

.ld-checkout-container .tab-button.active .custom-radio-circle::after {
    width: 8px !important;
    height: 8px !important;
    background-color: #7c5335 !important;
}

/* Spacing between the title and list, and between options */
.ld-checkout-container #payment-methods-selector {
    margin-top: 8px !important;
    gap: 8px !important;
}

/* Method titles inside tab buttons */
.ld-checkout-container .tab-button .method-title {
    font-family: 'Poppins', var(--body-font), sans-serif !important;
    font-size: 12px !important; /* Set to 12px */
    font-weight: 500 !important; /* Premium medium weight */
    color: #333333 !important;
    margin: 0 !important;
}

.ld-checkout-container .tab-button.active .method-title {
    color: #7c5335 !important;
}

.ld-checkout-container .tab-button p.text-xs {
    font-family: 'Poppins', var(--body-font), sans-serif !important;
    font-size: 11px !important;
    color: #666666 !important;
    margin: 0 !important;
}

/* Order Summary Row Typography and Spacing */
.ld-summary-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 13px !important; /* Set to 13px for readability */
    color: #333333 !important;
    padding: 6px 0 !important; /* Spaced out nicely */
    border: none !important;
    margin: 0 !important;
}

.ld-summary-row span.label-text {
    color: #444444 !important;
    font-weight: 400 !important;
}

.ld-summary-row span.value-text {
    font-family: 'Poppins', var(--body-font), sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important; /* Make numbers pop more */
    color: #111111 !important;
}

/* Order summary total row */
.ld-summary-total-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 0 !important;
    margin-top: 4px !important;
}

.ld-summary-total-row span.label-total {
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #333333 !important;
}

.ld-summary-total-row span.value-total {
    font-family: 'Poppins', var(--body-font), sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #7c5335 !important;
}

/* CTA Button complete-order styling */
.ld-checkout-container #complete-order {
    height: 56px !important;
    font-size: 15px !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
}

/* ==========================================================================
   WOOCOMMERCE CART PAGE CUSTOM STYLING (FONT SIZES, HIERARCHY & BUTTONS)
   ========================================================================== */

.woocommerce-cart .entry-title,
.woocommerce-cart .page-title,
.woocommerce-cart h1.page-title,
.woocommerce-cart .rey-pageTitle-title,
.woocommerce-cart .rey-pageTitle h1,
.woocommerce-cart h1 {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #492002 !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
}

/* Cart Table Headers */
.woocommerce-cart table.shop_table th {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 12px 10px !important;
    border-bottom: 2px solid #eaeaea !important;
}

/* Product Image & Details */
.woocommerce-cart table.shop_table td.product-thumbnail img {
    max-width: 70px !important;
    border-radius: 4px !important;
}

.woocommerce-cart table.shop_table td.product-name a {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #333333 !important;
    transition: color 0.2s ease !important;
}

.woocommerce-cart table.shop_table td.product-name a:hover {
    color: #7c5335 !important;
}

/* Prices & Subtotals */
.woocommerce-cart table.shop_table td.product-price span.amount,
.woocommerce-cart table.shop_table td.product-subtotal span.amount {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
}

.woocommerce-cart table.shop_table td.product-subtotal span.amount {
    color: #7c5335 !important;
}

/* Quantity Input Styling */
.woocommerce-cart table.shop_table .quantity input.qty {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #333333 !important;
    border-radius: 4px !important;
    border: 1px solid #dcd4d1 !important;
}

.woocommerce-cart h2,
.woocommerce-cart .cart-collaterals h2,
.woocommerce-cart .cart_totals h2 {
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #492002 !important;
    border-bottom: 2px solid #492002 !important;
    padding-bottom: 8px !important;
    margin-bottom: 15px !important;
}

/* Cart Totals Table Styles */
.woocommerce-cart .cart_totals table.shop_table_values td,
.woocommerce-cart .cart_totals table.shop_table_values th {
    font-size: 13px !important;
    padding: 10px 0 !important;
}

.woocommerce-cart .cart_totals table.shop_table_values tr.order-total th,
.woocommerce-cart .cart_totals table.shop_table_values tr.order-total td {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #7c5335 !important;
}

/* Proceed to Checkout Button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    background-color: #7c5335 !important;
    color: #ffffff !important;
    padding: 14px 28px !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    border: none !important;
    height: auto !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: #492002 !important;
    box-shadow: 0 4px 12px rgba(124, 83, 53, 0.2) !important;
}

/* Coupon & Update Cart Buttons */
.woocommerce-cart table.shop_table td.actions .coupon {
    display: flex !important;
    gap: 8px !important;
}

.woocommerce-cart table.shop_table td.actions input#coupon_code {
    font-size: 13px !important;
    border-radius: 4px !important;
    border: 1px solid #dcd4d1 !important;
    padding: 8px 12px !important;
    height: 40px !important;
}

.woocommerce-cart table.shop_table td.actions button.button {
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    height: 40px !important;
    padding: 0 16px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
    background-color: #eaeaea !important;
    color: #333333 !important;
    border: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce-cart table.shop_table td.actions button.button:hover {
    background-color: #dcd4d1 !important;
    color: #492002 !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .woocommerce-cart .entry-title,
    .woocommerce-cart .page-title,
    .woocommerce-cart h1.page-title,
    .woocommerce-cart .rey-pageTitle-title,
    .woocommerce-cart .rey-pageTitle h1,
    .woocommerce-cart h1 {
        font-size: 20px !important;
        margin-bottom: 15px !important;
    }

    .woocommerce-cart table.shop_table td.product-name a {
        font-size: 13px !important;
    }

    .woocommerce-cart table.shop_table td.product-price span.amount,
    .woocommerce-cart table.shop_table td.product-subtotal span.amount {
        font-size: 13px !important;
    }

    .woocommerce-cart h2,
    .woocommerce-cart .cart-collaterals h2,
    .woocommerce-cart .cart_totals h2 {
        font-size: 14px !important;
    }
}
