/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ====================================================================================
   COMPLETE CUSTOM STYLES FROM EUROSCONTO.COM
   Added: January 31, 2026
   Purpose: Product grids, checkout layout, shipping methods, company fields,
            saved addresses, order status colors, payment gateways, responsive design
   ==================================================================================== */

/* HIDE OPTIONAL FIELD TEXT */
span.optional {
    display: none;
}

/* ADDRESS FIELDS CLEARING */
.woocommerce-address-fields__field-wrapper + p {
    clear: both;
}

/* USERNAME TRUNCATION IN HEADER */
@media (min-width: 768px) {
    .wd-with-username span.wd-tools-text {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        -moz-text-overflow: ellipsis;
        width: 120px;
    }
}

/* ====================================================================================
   PRODUCT GRID/LIST ALIGNMENT FIXES
   Ensures all product titles have consistent height for uniform grid alignment
   ==================================================================================== */

.wd-entities-title,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .wd-entities-title,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product h2,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product h3,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .product-title,
.wd-products-element .woocommerce ul.products li.product .wd-entities-title,
.wd-products-element .woocommerce ul.products li.product .woocommerce-loop-product__title,
.wd-products-element .woocommerce ul.products li.product h2,
.wd-products-element .woocommerce ul.products li.product h3,
.wd-products-element .woocommerce ul.products li.product .product-title,
ul.products li.product .wd-entities-title,
ul.products li.product h3.wd-entities-title,
/* WP Bakery alternatives */
.wpb_wrapper ul.products li.product .wd-entities-title,
.wpb_wrapper ul.products li.product .woocommerce-loop-product__title,
.wpb_wrapper ul.products li.product h2,
.wpb_wrapper ul.products li.product h3,
.wpb_wrapper ul.products li.product .product-title,
.vc_row ul.products li.product .wd-entities-title,
.vc_row ul.products li.product h3,
.woocommerce ul.products li.product .wd-entities-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
    min-height: 3em !important; /* 2 lines of text */
    max-height: 3em !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.5em !important;
    margin-bottom: 0 !important;
}

/* Alternative: If you want to allow 3 lines instead of 2, use: */
/* min-height: 4.5em; max-height: 4.5em; -webkit-line-clamp: 3; */

/* Ensure product items have consistent spacing */
.elementor-widget-woocommerce-products .woocommerce ul.products li.product,
.wd-products-element .woocommerce ul.products li.product,
/* WP Bakery alternatives */
.wpb_wrapper ul.products li.product,
.vc_row ul.products li.product,
.woocommerce ul.products li.product {
    display: flex;
    flex-direction: column;
}

/* Make sure product info section takes available space */
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .wd-product-content,
.wd-products-element .woocommerce ul.products li.product .wd-product-content,
/* WP Bakery alternatives */
.wpb_wrapper ul.products li.product .wd-product-content,
.vc_row ul.products li.product .wd-product-content,
.woocommerce ul.products li.product .wd-product-content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* Ensure price stays aligned at bottom */
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .price,
.wd-products-element .woocommerce ul.products li.product .price,
/* WP Bakery alternatives */
.wpb_wrapper ul.products li.product .price,
.vc_row ul.products li.product .price,
.woocommerce ul.products li.product .price {
    margin-top: auto;
    margin-bottom: 10px;
}

/* ====================================================================================
   PRODUCT STOCK STATUS - GREEN COLOR - AGGRESSIVE VERSION
   Make "In stock" text green for better visibility
   Using high specificity to override theme styles
   ==================================================================================== */

/* ====================================================================================
   CATEGORIES DROPDOWN - CLEAN NATIVE STYLING
   Let Woodmart handle the dropdown natively - no scrollbar that blocks submenus
   Updated: February 2026
   ==================================================================================== */

/* 
   IMPORTANT: Do NOT add overflow:scroll/auto to the categories dropdown!
   It blocks fly-out submenus from appearing to the right.
   Let Woodmart handle the dropdown natively.
*/

/* Ensure submenus can overflow outside the dropdown */
.wd-header-cats .wd-dropdown-menu,
.wd-dropdown-cats .wd-dropdown-menu,
.wd-dropdown.wd-dropdown-categories .wd-dropdown-menu,
.wd-nav-categories .wd-dropdown-menu {
    overflow: visible !important;
    max-height: none !important;
}

/* Clean visual styling only - no scroll restrictions */
.wd-header-cats .wd-dropdown-menu,
.wd-dropdown-cats .wd-dropdown-menu {
    background: #ffffff;
    box-shadow: 0 5px 20px rgba(0,0,0,0.12);
    border-radius: 4px;
}

/* Category links styling */
.wd-header-cats .wd-dropdown-menu > li > a,
.wd-dropdown-cats .wd-dropdown-menu > li > a {
    padding: 10px 20px;
    font-size: 14px;
    line-height: 1.4;
    color: #333;
    transition: all 0.2s ease;
}

/* Hover effect */
.wd-header-cats .wd-dropdown-menu > li > a:hover,
.wd-dropdown-cats .wd-dropdown-menu > li > a:hover {
    background: #f5f5f5;
    color: #017cc2;
}

/* Ensure fly-out submenus work properly */
.wd-header-cats .wd-dropdown-menu .sub-menu,
.wd-dropdown-cats .wd-dropdown-menu .sub-menu,
.wd-header-cats .wd-dropdown-menu ul,
.wd-dropdown-cats .wd-dropdown-menu ul {
    overflow: visible !important;
    max-height: none !important;
}

/* ====================================================================================
   END CATEGORIES DROPDOWN
   ==================================================================================== */

/* In stock - Green color - MAXIMUM SPECIFICITY */
.woocommerce .stock.in-stock,
.woocommerce-page .stock.in-stock,
.woocommerce ul.products li.product .stock.in-stock,
.woocommerce div.product .stock.in-stock,
.woocommerce .product .stock.in-stock,
.stock.in-stock,
.availability .in-stock,
.stock-status.in-stock,
p.stock.in-stock,
.product .stock.in-stock,
span.stock.in-stock,
.wd-product-stock.in-stock,
.product-stock-status.in-stock,
.wd-entities-stock.in-stock,
.product-grid-item .stock.in-stock,
.product-list-item .stock.in-stock,
li.product .stock.in-stock,
.type-product .stock.in-stock,
.wpb_wrapper .stock.in-stock,
.vc_row .stock.in-stock {
    color: #00d100 !important;
    font-weight: 600 !important;
}

/* Woodmart-specific stock classes */
.wd-entities-stock span,
.wd-product-stock span {
    color: inherit;
}

.wd-entities-stock.in-stock,
.wd-entities-stock.in-stock span,
.wd-product-stock.in-stock,
.wd-product-stock.in-stock span {
    color: #00d100 !important;
    font-weight: 600 !important;
}

/* Out of stock - Red color */
.woocommerce .stock.out-of-stock,
.woocommerce-page .stock.out-of-stock,
.woocommerce ul.products li.product .stock.out-of-stock,
.stock.out-of-stock,
.availability .out-of-stock,
.stock-status.out-of-stock,
p.stock.out-of-stock,
.product .stock.out-of-stock,
span.stock.out-of-stock,
.wd-product-stock.out-of-stock,
.wd-entities-stock.out-of-stock,
.product-stock-status.out-of-stock,
li.product .stock.out-of-stock {
    color: #ff0000 !important;
    font-weight: 600 !important;
}

/* On backorder - Orange color */
.woocommerce .stock.available-on-backorder,
.woocommerce-page .stock.available-on-backorder,
.stock.available-on-backorder,
.availability .available-on-backorder,
.stock-status.available-on-backorder,
p.stock.available-on-backorder,
.product .stock.available-on-backorder,
span.stock.available-on-backorder,
.wd-product-stock.available-on-backorder,
.wd-entities-stock.available-on-backorder,
li.product .stock.available-on-backorder {
    color: #ff8800 !important;
    font-weight: 600 !important;
}

/* ====================================================================================
   CHECKOUT PAGE LAYOUT FIXES
   Professional 2-column responsive layout for desktop
   ==================================================================================== */

.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    clear: both;
}

.woocommerce-checkout form.checkout {
    display: block;
    width: 100%;
    max-width: 100%;
    clear: both;
}

.woocommerce-checkout #customer_details {
    width: 100%;
    max-width: 100%;
    padding-right: 0;
    float: none;
    margin-bottom: 30px;
}

.woocommerce-checkout .checkout-order-review {
    width: 100%;
    max-width: 100%;
    margin-top: 30px;
    float: none;
    clear: both;
}

/* Desktop two-column layout */
@media (min-width: 992px) {
    .woocommerce-checkout form.checkout {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 40px;
        align-items: flex-start;
    }
    
    .woocommerce-checkout #customer_details {
        flex: 1 1 auto;
        min-width: 0;
        padding-right: 20px;
        margin-bottom: 0;
        width: auto;
    }
    
    .woocommerce-checkout .checkout-order-review {
        flex: 0 0 400px;
        max-width: 400px;
        width: 400px;
        margin-top: 0;
        position: sticky;
        top: 20px;
    }
}

/* Checkout form container full width */
.woocommerce .woocommerce-checkout .col2-set,
.woocommerce-page .woocommerce-checkout .col2-set {
    width: 100%;
    float: none;
    clear: both;
}

.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2 {
    width: 100%;
    float: none;
    clear: both;
}

@media (min-width: 992px) {
    .woocommerce-checkout .col-1 {
        width: 50%;
        float: left;
        padding-right: 15px;
    }
    
    .woocommerce-checkout .col-2 {
        width: 50%;
        float: right;
        padding-left: 15px;
    }
}

/* Container width fixes */
.woocommerce-checkout .site-content,
.woocommerce-checkout .wd-content-area,
.woocommerce-checkout .container,
.woocommerce-checkout .wd-container {
    width: 100% !important;
    max-width: 100% !important;
}

@media (min-width: 1200px) {
    .woocommerce-checkout .container {
        max-width: 1200px;
        margin: 0 auto;
    }
}

/* Hide critical error messages */
.woocommerce-checkout .error-message,
.woocommerce-checkout .critical-error {
    display: none !important;
}

/* ====================================================================================
   VENIPAK & OMNIVA SHIPPING FIELDS
   Door code, office number, terminal selection fixes
   ==================================================================================== */

.venipak-shipping-options {
    width: 100% !important;
    max-width: 100% !important;
    clear: both;
}

#shipping_method li .venipak-shipping-options,
.woocommerce-shipping-methods li .venipak-shipping-options,
.shipping_method li .venipak-shipping-options,
#shipping_method li .terminal-container,
.woocommerce-shipping-methods li .terminal-container,
.shipping_method li .terminal-container,
#shipping_method li .omniva-terminals-list,
.woocommerce-shipping-methods li .omniva-terminals-list,
.shipping_method li .omniva-terminals-list,
#shipping_method li .omnivalt-shipping-description,
.woocommerce-shipping-methods li .omnivalt-shipping-description,
.shipping_method li .omnivalt-shipping-description {
    grid-column: 2 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    display: block !important;
    position: relative;
}

#shipping_method li .terminal-container,
.woocommerce-shipping-methods li .terminal-container,
.shipping_method li .terminal-container {
    padding: 0 15px !important;
    border: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

#shipping_method li .omniva-terminals-list select,
.woocommerce-shipping-methods li .omniva-terminals-list select,
.shipping_method li .omniva-terminals-list select,
#shipping_method li .omniva-terminals-list .dropdown,
.woocommerce-shipping-methods li .omniva-terminals-list .dropdown,
.shipping_method li .omniva-terminals-list .dropdown {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 36px !important;
    height: auto !important;
    line-height: 1.4 !important;
    overflow: visible !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    margin: 0 auto !important;
}

#shipping_method li .omniva-terminals-list .inner-container,
.woocommerce-shipping-methods li .omniva-terminals-list .inner-container,
.shipping_method li .omniva-terminals-list .inner-container {
    width: 100% !important;
    left: 0 !important;
    right: auto !important;
    z-index: 1000 !important;
}

#shipping_method li .omniva-terminals-list .inner-container ul,
.woocommerce-shipping-methods li .omniva-terminals-list .inner-container ul,
.shipping_method li .omniva-terminals-list .inner-container ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#shipping_method li .omniva-terminals-list .inner-container li,
.woocommerce-shipping-methods li .omniva-terminals-list .inner-container li,
.shipping_method li .omniva-terminals-list .inner-container li {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 8px 12px !important;
    line-height: 1.5 !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    grid-template-columns: none !important;
}

#shipping_method li .venipak-shipping-options .form-row,
.woocommerce-shipping-methods li .venipak-shipping-options .form-row,
.shipping_method li .venipak-shipping-options .form-row {
    width: 100% !important;
    margin: 0 0 12px !important;
}

#shipping_method li .venipak-shipping-options .form-row:last-child,
.woocommerce-shipping-methods li .venipak-shipping-options .form-row:last-child,
.shipping_method li .venipak-shipping-options .form-row:last-child {
    margin-bottom: 0 !important;
}

/* Venipak door code and office number fields */
.venipak_door_code,
.venipak_office_no {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 200px !important;
    display: block !important;
    margin-bottom: 15px !important;
}

.venipak_door_code:last-child,
.venipak_office_no:last-child {
    margin-bottom: 0 !important;
}

.venipak_door_code input[type="text"],
.venipak_office_no input[type="text"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 200px !important;
    padding: 10px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
}

/* ====================================================================================
   SHIPPING METHOD LAYOUT SYSTEM
   Full-width containers with proper grid layout
   ==================================================================================== */

#shipping_method,
.woocommerce-shipping-methods,
.shipping_method {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    list-style: none !important;
}

#shipping_method > li,
.woocommerce-shipping-methods > li,
.shipping_method > li {
    /* Grid layout */
    display: grid !important;
    grid-template-columns: minmax(20px, auto) 1fr !important;
    align-items: center !important;
    column-gap: 12px !important;
    
    /* Sizing */
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    box-sizing: border-box !important;
    margin-bottom: 10px !important;
    overflow: visible !important;
    
    /* Beautiful bordered rectangles - EUROSCONTO STYLE */
    position: relative;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    background-color: #ffffff !important;
    transition: all 0.3s ease !important;
}

#shipping_method > li:last-child,
.woocommerce-shipping-methods > li:last-child,
.shipping_method > li:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method {
    width: 100% !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    margin: 0 0 10px !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li > label {
    width: 100% !important;
    max-width: 100% !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li .terminal-container,
.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li .omniva-terminals-list,
.woocommerce-checkout .woocommerce-checkout-review-order-table #shipping_method > li .venipak-shipping-options {
    width: 100% !important;
    max-width: 100% !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping th {
    margin: 0 0 6px !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping td {
    padding: 0 !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    white-space: normal !important;
    word-break: break-word !important;
}

/* Remove Venipak logo */
.wc-venipak-shipping-logo,
img.wc-venipak-shipping-logo,
img[class*="venipak"] {
    display: none !important;
}

/* ====================================================================================
   CART TOTALS ALIGNMENT
   Subtotal, VAT, and Total row alignment
   ==================================================================================== */

.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal,
.woocommerce-checkout-review-order-table tfoot tr.tax-rate,
.woocommerce-checkout-review-order-table tfoot tr.order-total,
.woocommerce-checkout-review-order-table tfoot tr[class*="cart-subtotal"],
.woocommerce-checkout-review-order-table tfoot tr[class*="tax-rate"],
.woocommerce-checkout-review-order-table tfoot tr[class*="order-total"] {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal th,
.woocommerce-checkout-review-order-table tfoot tr.tax-rate th,
.woocommerce-checkout-review-order-table tfoot tr.order-total th,
.woocommerce-checkout-review-order-table tfoot tr[class*="cart-subtotal"] th,
.woocommerce-checkout-review-order-table tfoot tr[class*="tax-rate"] th,
.woocommerce-checkout-review-order-table tfoot tr[class*="order-total"] th {
    text-align: left !important;
    flex: 0 0 auto !important;
}

.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td,
.woocommerce-checkout-review-order-table tfoot tr.tax-rate td,
.woocommerce-checkout-review-order-table tfoot tr.order-total td,
.woocommerce-checkout-review-order-table tfoot tr[class*="cart-subtotal"] td,
.woocommerce-checkout-review-order-table tfoot tr[class*="tax-rate"] td,
.woocommerce-checkout-review-order-table tfoot tr[class*="order-total"] td {
    text-align: right !important;
    flex: 0 0 auto !important;
}

.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td *,
.woocommerce-checkout-review-order-table tfoot tr.tax-rate td *,
.woocommerce-checkout-review-order-table tfoot tr.order-total td *,
.woocommerce-checkout-review-order-table tfoot tr[class*="cart-subtotal"] td *,
.woocommerce-checkout-review-order-table tfoot tr[class*="tax-rate"] td *,
.woocommerce-checkout-review-order-table tfoot tr[class*="order-total"] td * {
    text-align: right !important;
}

/* Shipping method input and label layout */
#shipping_method > li > input.shipping_method,
.woocommerce-shipping-methods > li > input.shipping_method,
.shipping_method > li > input.shipping_method {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: flex-start !important;
    margin: 0 !important;
    position: static !important;
    top: auto !important;
    float: none !important;
}

#shipping_method > li > label,
.woocommerce-shipping-methods > li > label,
.shipping_method > li > label {
    grid-column: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 10px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

#shipping_method > li > label strong,
#shipping_method > li > label .amount,
.woocommerce-shipping-methods > li > label strong,
.woocommerce-shipping-methods > li > label .amount,
.shipping_method > li > label strong,
.shipping_method > li > label .amount {
    margin-left: auto !important;
    text-align: right !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

#shipping_method > li > label strong *,
#shipping_method > li > label .amount *,
.woocommerce-shipping-methods > li > label strong *,
.woocommerce-shipping-methods > li > label .amount *,
.shipping_method > li > label strong *,
.shipping_method > li > label .amount * {
    text-align: right !important;
}

/* ====================================================================================
   LOTTERY POPUP CUSTOMIZATION
   Make the image larger and more prominent
   ==================================================================================== */

.popup-body {
    padding: 20px !important;
}

.popup-image {
    margin-bottom: 16px !important;
}

.popup-image img {
    max-width: 600px !important;
    max-height: 450px !important;
    width: 100% !important;
    border-radius: 12px !important;
}

@media (max-width: 768px) {
    .popup-body {
        padding: 16px !important;
    }
    
    .popup-image img {
        max-width: 100% !important;
        max-height: 350px !important;
        border-radius: 10px !important;
    }
}

@media (max-width: 480px) {
    .popup-body {
        padding: 12px !important;
    }
    
    .popup-image img {
        max-height: 280px !important;
        border-radius: 8px !important;
    }
}

/* ====================================================================================
   ADDITIONAL CUSTOM STYLES
   Company fields, saved addresses, order statuses, payment gateways
   ==================================================================================== */

/* FLEXBOX AND UTILITY CLASSES */
.flexbox p {
    display: flex;
    flex-wrap: wrap;
}

.hide,
#saw_shipping_company_field {
    display: none;
}

/* HIDE SPECIFIC ORDER STATUS OPTIONS IN ADMIN */
option[value="pickup"],
option[value="picked"],
#select2-order_status-results li:nth-child(14),
#select2-order_status-results li:nth-child(15),
option[value="mark_in-processing"] {
    display: none !important;
}

/* WOOCOMMERCE LAYOUT ADJUSTMENTS */
.woocommerce.wp-block-group.alignwide {
    width: 100%;
    margin: 0 auto;
}

/* ORDER EXTRA CONTENT STYLING */
.wd-order-extra-content p {
    margin: 0;
    font-size: 1.1em;
    color: #606060;
    font-weight: 600;
    line-height: 200%;
    background-color: white;
    padding: 40px;
    border-radius: 16px;
    text-align: center;
}

/* ORDER STATUS COLOR CODING */
.order-status.status-pickup {
    background: #cbeeff; /* Light Blue */
}

.order-status.status-apayment {
    background: #ffedae; /* Light Yellow */
}

.order-status.status-packing {
    background: #c7ffc6; /* Light Green */
}

.order-status.status-picked {
    background: #fadcff; /* Light Purple */
}

.order-status.status-cancelled {
    background: #ffeaea; /* Light Red */
}

/* COMPANY/INVOICE FIELDS STYLING */
.company_info_input p {
    width: 100% !important;
}

.need_invoice:before,
.need_invoice:after {
    content: '';
    display: table;
    clear: both;
}

.company_info_input {
    grid-template-columns: 1fr 1fr;
    gap: 0 10px;
    width: 100%;
    clear: both;
    display: grid;
}

.address div {
    overflow: auto;
}

p.form-field.need_invoice_field {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-direction: row-reverse;
    place-content: flex-end;
}

.custom-input-field label:after {
    content: '*';
    color: #E01020;
}

#custom_checkout_fields {
    margin-top: 15px;
}

#order_data .order_data_column .form-field label {
    display: block;
    padding: 0 0 3px;
}

p#billing_company_field,
.edit_address[style="display: block;"] ~ .company_info,
.company_info_input,
.edit_address[style="display: block;"] ~ p,
.address.custom_checkout_fields {
    display: none;
}

.company_info_address p {
    font-size: 15px;
    font-style: normal;
    margin: 0 0 7px;
}

.address-column,
p.single_address {
    font-size: 15px;
    line-height: 190%;
}

/* FORM INPUT ADJUSTMENTS */
input[type="number"] {
    padding: 0 10px;
    text-align: left;
}

/* LOGGED-IN USER INDICATOR - DISABLED PER USER REQUEST */
/* User prefers original My Account icon without blue background */
/*
.logged-in .wd-header-my-account a span.wd-tools-icon {
    background: #017cc2 !important;
    color: white !important;
}
*/

p.form-field.billing_invoice_field.show_if_simple {
    width: 100% !important;
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px !important;
}

/* SAVED ADDRESSES PLUGIN STYLING */
.account-billing-actions,
.account-shipping-actions {
    margin-top: 10px;
    border-top: 1px solid #ddd;
}

div.account-billing-actions a,
div.account-shipping-actions a,
.billing_address_edit_delete a,
.shipping_address_edit_delete a {
    font-weight: 600;
}

div.account-billing-actions a.saw-edit,
.saw-shipping_addresses a.saw-edit,
.billing_address_edit_delete .saw-edit,
.shipping_address_edit_delete .saw-edit {
    margin-left: 0;
    color: #00d100;
}

div.account-billing-actions a.saw-edit:hover,
.saw-shipping_addresses a.saw-edit:hover,
.billing_address_edit_delete .saw-edit:hover,
.shipping_address_edit_delete .saw-edit:hover {
    color: #00a300;
}

p#saw_billing_company_field {
    display: none;
}

.account-billing-actions a.saw-delete,
.saw-shipping_addresses a.saw-delete,
.billing_address_edit_delete .saw-delete,
.shipping_address_edit_delete .saw-delete {
    color: red;
}

.account-billing-actions a.saw-delete:hover,
.saw-shipping_addresses a.saw-delete:hover,
.billing_address_edit_delete .saw-delete:hover,
.shipping_address_edit_delete .saw-delete:hover {
    color: #c50909;
}

.account-billing-actions a.is-default,
.saw-shipping_addresses a.is-default {
    color: #017cc2 !important;
}

.account-billing-actions a.not-is-default:hover,
.saw-shipping_addresses a.not-is-default:hover {
    color: #001a9d;
}

.billing_address_form {
    clear: both;
}

/* SAVED ADDRESS CARDS LAYOUT */
.saw-billing_addresses address,
.saw-shipping_addresses address,
.address_container_billing,
.address_container_shipping {
    background-color: white;
    padding: 20px 20px 55px;
    box-shadow: 0 0 11px 0px #ddd;
    border-radius: 6px;
    font-size: 14px;
    margin-bottom: 0;
    height: 100%;
    position: relative;
}

.sa_billing_addresses_container,
.sa_shipping_addresses_container {
    overflow: inherit;
}

.account-billing-actions,
.account-shipping-actions {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 20px;
}

.saw-billing_addresses .woocommerce-Address-title,
.saw-shipping_addresses .woocommerce-Address-title {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output,
.mc4wp-success,
.woocommerce-message {
    background-color: #017cc2;
}

div.saw-billing_addresses,
div.saw-shipping_addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.saw-shipping_addresses .col-1,
.saw-shipping_addresses .col-2,
.saw-billing_addresses .col-1,
.saw-billing_addresses .col-2 {
    width: 100%;
    max-width: inherit;
    padding: 0;
}

.u-columns.woocommerce-Addresses.col2-set.addresses.saw_addresses {
    margin: 0;
}

.u-columns.woocommerce-Addresses.col2-set.addresses.saw_addresses.col-mb {
    margin-bottom: 20px;
    border-bottom: 2px #ebebeb;
    padding-bottom: 30px;
    border-style: dashed;
}

.heading-btn a,
.bill_to_this_address_button input,
.ship_to_this_address_button input {
    background: #017cc2;
    padding: 12px 16px;
    line-height: 1;
    color: #fff;
    border-radius: 6px;
}

.heading-btn a:hover,
.bill_to_this_address_button input:hover,
.ship_to_this_address_button input:hover {
    background: #009bf3;
    color: white;
}

.heading-btn h3 {
    display: flex;
}

.sa_billing_addresses_container .options_container,
.saved_address_options .options_container {
    width: 100%;
    margin: 0 0 10px;
}

p.single_address {
    height: 100vh;
    margin: 0 0 15px;
    padding: 0 15px 0;
    max-height: 220px;
    overflow-y: auto;
    border-bottom: 1px solid #ddd;
}

.sa_billing_addresses_container:before,
.sa_billing_addresses_container:after,
.sa_shipping_addresses_container:before,
.sa_shipping_addresses_container:after {
    content: '';
    display: table;
    clear: both;
}

.address_container_billing,
.address_container_shipping {
    margin: 0;
    width: auto;
    float: none;
    padding: 10px 0 0;
}

.billing_addresses_container,
.shipping_addresses_container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.sa_billing_addresses_container .options_container a,
.saved_address_options .options_container a {
    font-family: var(--wd-title-font);
    font-style: var(--wd-title-font-style);
    color: #242424;
}

.sa_billing_addresses_container .options_container a,
.billing_address_selected span,
.saved_address_options .options_container a,
.shipping_address_selected span {
    font-size: 16px !important;
    font-weight: var(--wd-title-font-weight);
}

.bill_to_this_address_button,
.ship_to_this_address_button,
.billing_to_this_address,
.shipping_to_this_address {
    margin: 0;
    height: auto;
    padding: 0 15px;
}

.billing_address_edit_delete,
.shipping_address_edit_delete {
    margin: 0;
    padding: 10px 0;
}

.bill_to_this_address_button input,
.ship_to_this_address_button input {
    text-transform: var(--wd-title-transform);
    font-weight: var(--wd-title-font-weight);
    font-family: var(--wd-title-font);
    line-height: 1.4;
    font-size: 16px !important;
    max-width: 200px;
    margin: auto;
}

.bill_to_this_address_button,
.billing_to_this_address,
.shipping_to_this_address,
.ship_to_this_address_button {
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
}

.sa_billing_addresses_container {
    border-bottom: 1px dashed #ddd;
    padding-bottom: 40px;
    margin-bottom: 20px;
}

/* CHECKOUT ORDER REVIEW TABLE STYLING */
.elementor-widget-wd_checkout_order_review table.shop_table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping,
.elementor-widget-wd_checkout_order_review table.shop_table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping th,
.elementor-widget-wd_checkout_order_review table.shop_table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping td,
.elementor-element-3523013 tr.woocommerce-shipping-totals.shipping ul#shipping_method,
/* WP Bakery alternatives */
.wpb_wrapper table.shop_table tr.woocommerce-shipping-totals.shipping,
.wpb_wrapper table.shop_table tr.woocommerce-shipping-totals.shipping th,
.wpb_wrapper table.shop_table tr.woocommerce-shipping-totals.shipping td,
.vc_row table.shop_table tr.woocommerce-shipping-totals.shipping ul#shipping_method,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping th,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping td {
    display: block;
}

.elementor-widget-wd_checkout_order_review table.shop_table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping th,
/* WP Bakery alternatives */
.wpb_wrapper table.shop_table tr.woocommerce-shipping-totals.shipping th,
.vc_row table.shop_table tr.woocommerce-shipping-totals.shipping th,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping th {
    padding-bottom: 0;
}

.elementor-element-352618b ul#shipping_method input.shipping_method,
/* WP Bakery alternatives */
.wpb_wrapper ul#shipping_method input.shipping_method,
.vc_row ul#shipping_method input.shipping_method,
ul#shipping_method input.shipping_method {
    margin-left: 0;
    height: 14px;
    top: 0;
}

.elementor-element-3523013 table.shop_table tbody tr,
/* WP Bakery alternatives */
.wpb_wrapper table.shop_table tbody tr,
.vc_row table.shop_table tbody tr {
    display: flex;
}

.elementor-element-3523013 .shop_table tr :is(td, th):last-child,
/* WP Bakery alternatives */
.wpb_wrapper .shop_table tr :is(td, th):last-child,
.vc_row .shop_table tr :is(td, th):last-child,
.woocommerce-checkout-review-order-table tr :is(td, th):last-child {
    text-align: right;
    flex: 1;
}

.elementor-element-3523013 table.shop_table tbody tr.woocommerce-shipping-totals.shipping,
/* WP Bakery alternatives */
.wpb_wrapper table.shop_table tbody tr.woocommerce-shipping-totals.shipping,
.vc_row table.shop_table tbody tr.woocommerce-shipping-totals.shipping,
.woocommerce-checkout-review-order-table tbody tr.woocommerce-shipping-totals.shipping {
    flex-direction: column;
}

.elementor-element-3523013 table.shop_table tbody tr.woocommerce-shipping-totals.shipping th,
/* WP Bakery alternatives */
.wpb_wrapper table.shop_table tbody tr.woocommerce-shipping-totals.shipping th,
.vc_row table.shop_table tbody tr.woocommerce-shipping-totals.shipping th,
.woocommerce-checkout-review-order-table tbody tr.woocommerce-shipping-totals.shipping th {
    border-bottom: none;
    padding-bottom: 0;
}

.elementor-element-3523013 tr.woocommerce-shipping-totals.shipping ul#shipping_method li input,
/* WP Bakery alternatives */
.wpb_wrapper tr.woocommerce-shipping-totals.shipping ul#shipping_method li input,
.vc_row tr.woocommerce-shipping-totals.shipping ul#shipping_method li input,
tr.woocommerce-shipping-totals.shipping ul#shipping_method li input {
    top: 0;
}

/* ====================================================================================
   WOOCOMMERCE BLOCKS CHECKOUT - SHIPPING METHOD RECTANGLES
   Styles for the modern blocks-based checkout shipping options
   ==================================================================================== */

/* Blocks checkout - shipping rate options */
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option,
.wc-block-components-radio-control .wc-block-components-radio-control__option,
.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__option {
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    margin-bottom: 10px !important;
    background-color: #ffffff !important;
    transition: all 0.3s ease !important;
}

/* Blocks checkout - hover state */
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option:hover,
.wc-block-components-radio-control .wc-block-components-radio-control__option:hover {
    border-color: #d0d0d0 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

/* Blocks checkout - selected state */
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control .wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked {
    border-color: #333333 !important;
    background-color: #f9f9f9 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

/* Blocks checkout - shipping rate label layout */
.wc-block-components-radio-control__option-layout {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
}

/* Blocks checkout - price alignment */
.wc-block-components-radio-control__secondary-label {
    margin-left: auto !important;
    font-weight: 600 !important;
}

/* ====================================================================================
   SHIPPING METHODS - HOVER & SELECTED STATES
   Beautiful bordered rectangle containers for each shipping option
   ==================================================================================== */

/* Hover effect for shipping options */
#shipping_method > li:hover,
.woocommerce-shipping-methods > li:hover,
.shipping_method > li:hover,
ul.shipping_method > li:hover,
.woocommerce table.shop_table tr.woocommerce-shipping-totals ul li:hover,
.woocommerce-checkout-review-order-table ul#shipping_method > li:hover {
    border-color: #d0d0d0 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

/* Selected/checked shipping option */
#shipping_method > li:has(input:checked),
.woocommerce-shipping-methods > li:has(input:checked),
.shipping_method > li:has(input:checked),
ul.shipping_method > li:has(input:checked),
.woocommerce table.shop_table tr.woocommerce-shipping-totals ul li:has(input:checked),
.woocommerce-checkout-review-order-table ul#shipping_method > li:has(input:checked) {
    border-color: #333333 !important;
    background-color: #f9f9f9 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

/* WP Bakery & WooCommerce specific - Force rectangle borders everywhere */
.woocommerce table.shop_table tr.woocommerce-shipping-totals ul li,
.woocommerce table.shop_table tbody tr.shipping ul li,
.woocommerce-checkout-review-order-table #shipping_method li,
.woocommerce-checkout-review-order-table .shipping_method li,
ul.shipping_method li,
ul.woocommerce-shipping-methods li,
ul#shipping_method li {
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    background-color: #ffffff !important;
    transition: all 0.3s ease !important;
    margin-bottom: 10px !important;
    box-sizing: border-box !important;
}

/* PAYSERA PAYMENT GATEWAY STYLING */
.payment-countries .paysera-payment-method label {
    background: white;
    padding: 0;
    border-radius: 8px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 12px;
    box-sizing: border-box;
    border: 1px solid rgba(0, 0, 0, 7%);
    position: relative;
}

.payment-countries .paysera-payment-method label input {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
    z-index: 2;
}

.payment-countries .paysera-payment-method label span {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-align: center;
    font-size: 0;
    border-radius: 6px;
}

.payment-countries .paysera-payment-method label input:checked + span {
    border: 1px solid #88b1ff;
    background: #f9f9f9;
}

.payment-countries .paysera-payment-method label:hover {
    background-color: #f9f9f9;
}

.payment-countries .paysera-payment-method label .paysera-image {
    position: relative;
    z-index: 1;
}

.payment-countries .paysera-payment-method label .paysera-image img {
    max-width: 110px;
}

#paysera_country {
    margin-bottom: 12px;
}

div div.paysera-payments div.paysera-payment-method {
    margin-bottom: 10px;
}

div div.payment-group-title {
    margin-bottom: 7px;
}

/* TRANSLATEPRESS LANGUAGE SWITCHER */
#trp-floater-ls.trp-bottom-right {
    right: 10px !important;
    z-index: 999;
}

.sticky-toolbar-on a.scrollToTop {
    bottom: 90px;
}

#trp-floater-ls-current-language .trp-floater-ls-disabled-language.trp-ls-disabled-language {
    padding: 10px 15px 10px 15px;
}

/* FOOTER SOCIAL ICONS */
.footer-icons ul.elementor-icon-list-items li a span.elementor-icon-list-icon,
/* WP Bakery alternatives */
.footer-icons ul li a span.wd-icon,
.footer-icons .wpb_wrapper ul li a span,
.footer-icons .vc_icon_element,
.footer-icons a.wd-social-icon,
.wd-social-icons a,
.footer .wd-social-icons a span {
    background-color: #1c61e7;
    width: 35px;
    height: 35px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ====================================================================================
   RESPONSIVE DESIGN - TABLET AND MOBILE
   ==================================================================================== */

/* TABLET (MAX WIDTH: 767PX) */
@media (max-width: 767px) {
    .saw-billing_addresses address,
    .saw-shipping_addresses address,
    .address_container_billing {
        box-shadow: 0 0 9px 0px rgb(221 221 221 / 49%);
    }

    div.saw-billing_addresses,
    div.saw-shipping_addresses,
    .billing_addresses_container,
    .shipping_addresses_container {
        grid-template-columns: 1fr;
    }

    p.single_address {
        height: auto;
        padding: 0 15px 10px;
        max-height: inherit;
    }

    .account-billing-actions,
    .account-shipping-actions {
        position: relative;
        padding: 10px 0 0;
    }

    .saw-billing_addresses address,
    .saw-shipping_addresses address {
        padding: 10px 15px;
    }
}

/* MOBILE (MAX WIDTH: 575PX) */
@media (max-width: 575px) {
    .heading-btn h3 {
        font-size: 1.1em;
        margin-bottom: 10px;
    }

    h3.saw-billing a,
    h3.saw-shipping a {
        font-size: 14px;
    }

    .heading-btn a {
        padding: 10px;
        border-radius: 6px;
    }

    .bill_to_this_address_button input,
    .ship_to_this_address_button input {
        font-size: 15px !important;
        max-width: 170px;
        padding: 8px !important;
        min-height: auto;
    }
}

/* END OF CUSTOM STYLES */
