/* ==========================================================================
   DECHRO PREMIUM E-COMMERCE (The Final Masterpiece - Optimized)
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. WOOCOMMERCE GLOBALS (Typography, Buttons, Notices)
   -------------------------------------------------------------------------- */
body.woocommerce { font-family: 'Roboto', sans-serif !important; color: var(--md-sys-color-on-surface) !important; }

/* Premium Primary Buttons */
body.woocommerce .button, body.woocommerce-cart .checkout-button, body.woocommerce-checkout #place_order, a.button.wc-backward {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    background-color: var(--md-sys-color-primary) !important; color: #ffffff !important;
    padding: 0 32px !important; height: 52px !important; border-radius: 999px !important;
    font-size: 16px !important; font-weight: 500 !important; border: none !important;
    transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important; cursor: pointer !important; text-decoration: none !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}
body.woocommerce .button:hover, body.woocommerce-cart .checkout-button:hover, body.woocommerce-checkout #place_order:hover, a.button.wc-backward:hover {
    background-color: var(--md-sys-color-secondary) !important; transform: translateY(-2px) !important; box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
}
body.woocommerce .button:active { transform: scale(0.97) !important; box-shadow: 0 1px 2px rgba(0,0,0,0.1) !important; }

/* Modern Input Fields */
body.woocommerce .input-text, body.woocommerce input[type="text"], body.woocommerce input[type="email"], body.woocommerce input[type="tel"], body.woocommerce select, body.woocommerce textarea {
    width: 100% !important; height: 52px !important; border-radius: 12px !important;
    border: 1px solid var(--md-sys-color-outline) !important; background-color: var(--md-sys-color-surface) !important; color: var(--md-sys-color-on-surface) !important;
    padding: 0 16px !important; font-size: 16px !important; transition: all 0.2s ease !important; box-sizing: border-box !important;
}
body.woocommerce textarea { height: 120px !important; padding: 16px !important; resize: vertical !important; }
body.woocommerce .input-text:focus, body.woocommerce input:focus, body.woocommerce select:focus, body.woocommerce textarea:focus {
    outline: none !important; border: 2px solid var(--md-sys-color-primary) !important; background-color: var(--md-sys-color-surface-container-low) !important;
}
body.woocommerce form label { font-weight: 500 !important; font-size: 14px !important; margin-bottom: 8px !important; display: inline-block !important; color: var(--md-sys-color-on-surface) !important; opacity: 0.9 !important; }

/* Clean Notices (Toast Style) */
.woocommerce-error, .woocommerce-message, .woocommerce-info {
    background-color: var(--md-sys-color-surface-container-low) !important; color: var(--md-sys-color-on-surface) !important;
    border: none !important; border-left: 4px solid var(--md-sys-color-primary) !important;
    border-radius: 12px !important; padding: 20px 24px !important; margin-bottom: 32px !important;
    display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 16px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05) !important; width: 100% !important; box-sizing: border-box !important;
}
.woocommerce-error { border-left-color: var(--md-sys-color-secondary) !important; }
.woocommerce-error::before, .woocommerce-message::before, .woocommerce-info::before { content: none !important; display: none !important; }
.woocommerce-info a.button { margin-left: auto !important; height: 40px !important; padding: 0 20px !important; }

/* --------------------------------------------------------------------------
   1. SHOP GRID & HOMEPAGE LOOP
   -------------------------------------------------------------------------- */
body.woocommerce ul.products, .woocommerce-page ul.products, ul.products { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; gap: 32px !important; margin: 0 !important; padding: 24px 0 !important; }
ul.products::before, ul.products::after { display: none !important; }

body.woocommerce ul.products li.product, .woocommerce ul.products li.product {
    background-color: var(--md-sys-color-surface) !important; border-radius: 24px !important; padding: 24px !important;
    border: 1px solid var(--md-sys-color-surface-container-high) !important; width: 100% !important; margin: 0 !important;
    display: flex !important; flex-direction: column !important; box-sizing: border-box !important; transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;
}
body.woocommerce ul.products li.product:hover, .woocommerce ul.products li.product:hover { transform: translateY(-6px) !important; box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important; border-color: transparent !important; }
body.woocommerce ul.products li.product img, .woocommerce ul.products li.product img { border-radius: 16px !important; margin-bottom: 24px !important; width: 100% !important; height: 200px !important; object-fit: contain !important; background: #ffffff !important; padding: 12px !important; box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important; transition: transform 0.4s ease !important; }
body.woocommerce ul.products li.product:hover img, .woocommerce ul.products li.product:hover img { transform: scale(1.03) !important; }
body.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h2 { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 8px !important; line-height: 1.3 !important; color: var(--md-sys-color-on-surface) !important; transition: color 0.2s ease !important;}
body.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title { color: var(--md-sys-color-primary) !important; }
body.woocommerce ul.products li.product .price, .woocommerce ul.products li.product .price { font-size: 20px !important; font-weight: 700 !important; color: var(--md-sys-color-primary) !important; margin-bottom: 24px !important; display: block !important; }
body.woocommerce ul.products li.product .price del, .woocommerce ul.products li.product .price del { font-size: 14px !important; opacity: 0.6 !important; margin-right: 8px !important; }
body.woocommerce ul.products li.product a { text-decoration: none !important; }
body.woocommerce ul.products li.product .button, .woocommerce ul.products li.product .add_to_cart_button { margin-top: auto !important; width: 100% !important; height: 48px !important; border-radius: 999px !important; font-size: 14px !important; font-weight: 600 !important; background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; border: none !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; transition: all 0.2s ease !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }
body.woocommerce ul.products li.product .button:hover, .woocommerce ul.products li.product .add_to_cart_button:hover { background-color: var(--md-sys-color-secondary) !important; transform: scale(1.03) !important; }
body.woocommerce ul.products li.product .button.add_to_cart_button.added { background-color: #2e7d32 !important; color: #ffffff !important; border-color: #2e7d32 !important; }
body.woocommerce ul.products li.product a.added_to_cart { display: flex !important; align-items: center !important; justify-content: center !important; margin-top: 12px !important; height: 44px !important; border-radius: 999px !important; background-color: var(--md-sys-color-surface-container-high, #e6e6e6) !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; font-size: 14px !important; font-weight: 600 !important; text-decoration: none !important; transition: all 0.2s ease !important; box-shadow: none !important; }
body.woocommerce ul.products li.product a.added_to_cart:hover { background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; }

/* --------------------------------------------------------------------------
   2. ΚΑΛΑΘΙ ΑΓΟΡΩΝ (Cart Layout)
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
    body.woocommerce-cart .woocommerce {
        display: grid !important; 
        grid-template-columns: 1fr 400px !important; 
        gap: 64px !important; 
        max-width: 1300px !important; 
        margin: 40px auto !important; 
        align-items: start !important;
        padding: 0 24px !important;
    }
    body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1 !important; }
    body.woocommerce-cart .woocommerce-cart-form { grid-column: 1 / 2 !important; margin: 0 !important; }
    body.woocommerce-cart .cart-collaterals { grid-column: 2 / 3 !important; margin: 0 !important; position: sticky !important; top: 120px !important; }
    
    /* Perfect Grid Alignment */
    body.woocommerce-cart table.cart thead { display: block !important; }
    body.woocommerce-cart table.cart thead tr,
    body.woocommerce-cart table.cart tbody tr.cart_item {
        display: grid !important;
        grid-template-columns: 40px 90px 1fr 100px 100px 100px !important;
        gap: 24px !important;
        align-items: center !important;
    }
}

body.woocommerce-cart .woocommerce-cart-form {
    background-color: var(--md-sys-color-surface) !important;
    border-radius: 24px !important; padding: 32px 40px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.04) !important;
    border: 1px solid var(--md-sys-color-surface-container-high) !important; box-sizing: border-box !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table,
body.woocommerce-cart .woocommerce-cart-form table.shop_table th,
body.woocommerce-cart .woocommerce-cart-form table.shop_table td { border: none !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; margin: 0 !important; padding: 0 !important; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table { width: 100% !important; border-collapse: collapse !important; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table th { padding-bottom: 16px !important; border-bottom: 2px solid var(--md-sys-color-surface-container-high) !important; color: var(--md-sys-color-outline) !important; font-size: 12px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 1px !important; text-align: left !important; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table td { padding: 24px 0 !important; border-bottom: 1px solid var(--md-sys-color-surface-container-high) !important; vertical-align: middle !important; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table tr:last-child td { border-bottom: none !important; }

body.woocommerce-cart table.cart img { border-radius: 12px !important; width: 72px !important; height: auto !important; box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; }
body.woocommerce-cart table.cart td.product-name a { font-size: 18px !important; font-weight: 600 !important; color: var(--md-sys-color-on-surface) !important; text-decoration: none !important; display: block !important; margin-bottom: 4px !important;}
body.woocommerce-cart table.cart td.product-price { color: var(--md-sys-color-outline) !important; font-size: 16px !important; }
body.woocommerce-cart table.cart td.product-subtotal { font-size: 18px !important; font-weight: 700 !important; color: var(--md-sys-color-primary) !important; }
body.woocommerce-cart .quantity input.qty { width: 64px !important; height: 48px !important; border-radius: 8px !important; background: var(--md-sys-color-surface-container-low) !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; font-weight: 600 !important; text-align: center !important; }

body.woocommerce-cart table.cart td.product-remove a.remove { background: transparent !important; color: #ba1a1a !important; font-size: 28px !important; font-weight: 300 !important; line-height: 1 !important; display: inline-block !important; width: auto !important; height: auto !important; border: none !important; transition: transform 0.2s ease !important; }
body.woocommerce-cart table.cart td.product-remove a.remove:hover { transform: scale(1.3) !important; background: transparent !important; }

body.woocommerce-cart table.cart td.actions { padding-top: 32px !important; display: flex !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; border-top: 2px dashed var(--md-sys-color-surface-container-high) !important; }
body.woocommerce .coupon { display: flex !important; gap: 12px !important; align-items: center !important; }
body.woocommerce .coupon input.input-text { width: 180px !important; margin: 0 !important; border-radius: 999px !important; height: 48px !important; }
body.woocommerce .coupon .button { margin: 0 !important; background-color: var(--md-sys-color-surface-container-high) !important; color: var(--md-sys-color-on-surface) !important; box-shadow: none !important; height: 48px !important; padding: 0 24px !important; white-space: nowrap !important; }
body.woocommerce .coupon .button:hover { background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; }
body.woocommerce-cart table.cart td.actions > .button { margin-left: auto !important; background-color: transparent !important; color: var(--md-sys-color-primary) !important; border: 2px solid var(--md-sys-color-primary) !important; box-shadow: none !important; height: 48px !important; padding: 0 24px !important; white-space: nowrap !important; }

/* Alignment for Desktop Table */
body.woocommerce-cart table.cart th.product-remove, body.woocommerce-cart table.cart th.product-thumbnail { color: transparent !important; user-select: none !important; }
body.woocommerce-cart table.cart th.product-name { text-align: left !important; }
body.woocommerce-cart table.cart th.product-price { text-align: center !important; }
body.woocommerce-cart table.cart th.product-quantity { text-align: center !important; }
body.woocommerce-cart table.cart th.product-subtotal { text-align: right !important; }
body.woocommerce-cart table.cart td.product-remove { justify-self: center !important; }
body.woocommerce-cart table.cart td.product-thumbnail { justify-self: center !important; width: 100% !important; }
body.woocommerce-cart table.cart td.product-name { justify-self: start !important; }
body.woocommerce-cart table.cart td.product-price { justify-self: center !important; color: var(--md-sys-color-outline) !important; font-size: 16px !important; }
body.woocommerce-cart table.cart td.product-quantity { justify-self: center !important; }
body.woocommerce-cart table.cart td.product-subtotal { justify-self: end !important; }

/* 3. TOTALS CARD (ΔΕΞΙΑ ΚΑΡΤΑ) */
body.woocommerce-cart .cart-collaterals .cart_totals, body.woocommerce-checkout #order_review {
    background-color: var(--md-sys-color-surface-container-low) !important;
    border-radius: 24px !important; padding: 40px !important;
    border: 1px solid var(--md-sys-color-surface-container-high) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.04) !important; box-sizing: border-box !important;
    width: 100% !important; float: none !important;
}
body.woocommerce-cart .cart-collaterals .cart_totals h2 { font-size: 22px !important; font-weight: 600 !important; margin-top: 0 !important; margin-bottom: 24px !important; border-bottom: 2px solid var(--md-sys-color-surface-container-high) !important; padding-bottom: 16px !important; color: var(--md-sys-color-primary) !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table, body.woocommerce-checkout #order_review table { width: 100% !important; border: none !important; border-collapse: collapse !important; background: transparent !important; margin: 0 !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table tr, body.woocommerce-checkout #order_review table tr { display: flex !important; justify-content: space-between !important; padding: 16px 0 !important; border-bottom: 1px solid var(--md-sys-color-surface-container-high) !important; align-items: center !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table th, body.woocommerce-checkout #order_review table th { font-weight: 500 !important; color: var(--md-sys-color-on-surface) !important; padding: 0 !important; border: none !important; text-align: left !important; opacity: 0.8 !important; font-size: 15px !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table td, body.woocommerce-checkout #order_review table td { padding: 0 !important; border: none !important; text-align: right !important; font-size: 16px !important; background: transparent !important; color: var(--md-sys-color-on-surface) !important; }

body.woocommerce-cart .cart-collaterals .cart_totals table tr.order-total, body.woocommerce-checkout #order_review table tr.order-total { border-bottom: none !important; padding-top: 24px !important; margin-top: 8px !important; border-top: 2px dashed var(--md-sys-color-primary) !important; align-items: flex-end !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table tr.order-total th, body.woocommerce-checkout #order_review table tr.order-total th { font-size: 20px !important; font-weight: 700 !important; color: var(--md-sys-color-on-surface) !important; opacity: 1 !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table tr.order-total td, body.woocommerce-checkout #order_review table tr.order-total td { font-size: 24px !important; font-weight: 800 !important; color: var(--md-sys-color-primary) !important; }

body.woocommerce-cart .wc-proceed-to-checkout { padding: 0 !important; margin-top: 32px !important; }
body.woocommerce-cart .checkout-button, body.woocommerce-checkout #place_order { width: 100% !important; margin: 0 !important; font-size: 18px !important; height: 64px !important; white-space: nowrap !important; display: flex !important; align-items: center !important; justify-content: center !important; letter-spacing: 0.5px !important; }

body.woocommerce-cart .cart-empty { background-color: var(--md-sys-color-surface-container-low) !important; border-radius: 24px !important; padding: 80px 32px !important; text-align: center !important; margin: 40px auto !important; max-width: 600px !important; font-size: 20px !important; font-weight: 500 !important; box-shadow: 0 8px 24px rgba(0,0,0,0.03) !important; border: 1px solid var(--md-sys-color-surface-container-high) !important;}

/* ΚΑΘΑΡΙΣΜΟΣ ΣΥΝΟΛΩΝ ΚΑΛΑΘΙΟΥ (Απόκρυψη Διεύθυνσης & Υπολογιστή) */
html body.woocommerce-cart .cart-collaterals .cart_totals p.woocommerce-shipping-destination { display: none !important; }
html body.woocommerce-cart .cart-collaterals .cart_totals a.shipping-calculator-button { display: none !important; }
html body.woocommerce-cart .cart-collaterals .cart_totals form.woocommerce-shipping-calculator { display: none !important; }
html body.woocommerce-cart .cart-collaterals .cart_totals table tr.shipping { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; }
html body.woocommerce-cart .cart-collaterals .cart_totals table tr.shipping th { text-align: left !important; margin: 0 !important; }
html body.woocommerce-cart .cart-collaterals .cart_totals table tr.shipping td { text-align: right !important; }

/* --------------------------------------------------------------------------
   3. CHECKOUT (ΤΑΜΕΙΟ) - ULTIMATE M3 LAYOUT
   -------------------------------------------------------------------------- */
body.woocommerce-checkout form.checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) !important; /* 60% αριστερά, 40% δεξιά */
    gap: 0 40px !important; width: 100% !important; max-width: 1400px !important; margin: 0 auto !important; padding: 24px 0 !important; align-items: start !important;
}

body.woocommerce-checkout #customer_details {
    grid-column: 1 / 2 !important; grid-row: 1 / 3 !important;
    background-color: var(--md-sys-color-surface, #ffffff) !important;
    border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important;
    border-radius: 28px !important; padding: 48px 40px !important; box-shadow: 0 4px 24px rgba(0,0,0,0.02) !important; box-sizing: border-box !important;
}

body.woocommerce-checkout #order_review_heading {
    grid-column: 2 / 3 !important; grid-row: 1 / 2 !important;
    background: transparent !important; border: none !important; box-shadow: none !important; padding: 16px 0 16px 0 !important; margin: 0 !important; color: var(--md-sys-color-on-surface) !important;
}

body.woocommerce-checkout #order_review {
    grid-column: 2 / 3 !important; grid-row: 2 / 3 !important;
    background-color: var(--md-sys-color-surface-container-lowest, #ffffff) !important;
    border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important;
    border-radius: 28px !important; padding: 40px 32px !important; box-shadow: 0 4px 24px rgba(0,0,0,0.02) !important; box-sizing: border-box !important;
}

/* FIX ΓΙΑ ΤΟ SELECT2 (Τα κρυφά πεδία Χώρας & Περιφέρειας) */
body.woocommerce-checkout .select2-container .select2-selection--single {
    height: 56px !important; background-color: var(--md-sys-color-surface-container-lowest, #ffffff) !important;
    border: 1px solid var(--md-sys-color-outline, #c4c4c4) !important; border-radius: 16px !important; display: flex !important; align-items: center !important; padding: 0 20px !important; transition: all 0.2s ease !important;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { color: var(--md-sys-color-on-surface, #1a1a1a) !important; line-height: normal !important; padding: 0 !important; font-size: 16px !important; }
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 56px !important; right: 16px !important; }
body.woocommerce-checkout .select2-container--focus .select2-selection--single, body.woocommerce-checkout .select2-container--open .select2-selection--single { border-color: var(--md-sys-color-primary, #0b3762) !important; box-shadow: 0 0 0 2px rgba(11, 55, 98, 0.1) !important; }

/* --------------------------------------------------------------------------
   4. SINGLE PRODUCT PAGE - SKROUTZ STYLE (Premium Layout)
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
    body.woocommerce div.product { display: grid !important; grid-template-columns: 35% 1fr !important; gap: 64px !important; align-items: start !important; margin-top: 40px !important; }
    body.woocommerce div.product div.images, body.woocommerce div.product div.summary { width: 100% !important; float: none !important; margin: 0 !important; }
}

body.woocommerce div.product div.images { background-color: #ffffff !important; border-radius: 24px !important; padding: 32px !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; box-shadow: 0 4px 16px rgba(0,0,0,0.03) !important; box-sizing: border-box !important; max-height: 450px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
body.woocommerce div.product div.images img { border-radius: 12px !important; width: auto !important; max-height: 380px !important; object-fit: contain !important; }
body.woocommerce div.product div.summary { display: flex !important; flex-direction: column !important; gap: 0 !important; padding: 0 !important; }
body.woocommerce div.product .product_title { font-size: 28px !important; font-weight: 700 !important; margin: 0 0 12px 0 !important; color: var(--md-sys-color-on-surface) !important; line-height: 1.3 !important; letter-spacing: -0.5px !important; }
body.woocommerce div.product div.summary p.wc-gzd-additional-info, body.woocommerce div.product div.summary .woocommerce-product-details__short-description { font-size: 15px !important; color: var(--md-sys-color-outline) !important; margin: 0 0 24px 0 !important; line-height: 1.6 !important; order: 2 !important; }
body.woocommerce div.product .price { font-size: 36px !important; font-weight: 800 !important; color: var(--md-sys-color-primary) !important; margin: 0 0 32px 0 !important; display: flex !important; align-items: baseline !important; gap: 12px !important; order: 1 !important; }
body.woocommerce div.product .price del { font-size: 22px !important; opacity: 0.5 !important; }

body.woocommerce div.product form.cart { display: flex !important; align-items: center !important; gap: 16px !important; margin: 0 !important; padding: 24px !important; background-color: var(--md-sys-color-surface-container-low) !important; border-radius: 20px !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; width: 100% !important; box-sizing: border-box !important; order: 3 !important; }
body.woocommerce div.product form.cart .quantity input.qty { width: 70px !important; height: 56px !important; border-radius: 12px !important; background-color: #ffffff !important; border: 1px solid var(--md-sys-color-outline) !important; color: var(--md-sys-color-on-surface) !important; font-size: 18px !important; font-weight: 600 !important; }
body.woocommerce div.product form.cart .single_add_to_cart_button { flex: 1 1 auto !important; height: 56px !important; background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; font-size: 18px !important; font-weight: 700 !important; border-radius: 999px !important; border: none !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important; text-transform: none !important; letter-spacing: 0.5px !important; }
body.woocommerce div.product form.cart .single_add_to_cart_button:hover { background-color: var(--md-sys-color-secondary) !important; transform: translateY(-2px) !important; box-shadow: 0 6px 16px rgba(0,0,0,0.15) !important; }

/* Tabs */
body.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1 !important; width: 100% !important; margin-top: 80px !important; padding: 0 !important; clear: both !important; max-width: 1000px !important; margin-left: auto !important; margin-right: auto !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs { list-style: none !important; padding: 0 !important; margin: 0 0 24px 0 !important; display: flex !important; justify-content: center !important; gap: 16px !important; border: none !important; background: transparent !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs li { border: none !important; background: var(--md-sys-color-surface-container-low) !important; border-radius: 999px !important; margin: 0 !important; padding: 0 !important; transition: all 0.3s ease !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs li::before, body.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: inline-block !important; padding: 12px 32px !important; color: var(--md-sys-color-on-surface) !important; font-weight: 600 !important; font-size: 16px !important; text-decoration: none !important; outline: none !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--md-sys-color-primary) !important; box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important; transform: translateY(-2px) !important; }
body.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #ffffff !important; }
body.woocommerce div.product .woocommerce-tabs .panel { background: var(--md-sys-color-surface) !important; border-radius: 32px !important; padding: 48px !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; box-shadow: 0 8px 32px rgba(0,0,0,0.03) !important; margin: 0 !important; line-height: 1.8 !important; }
body.woocommerce div.product .woocommerce-tabs .panel h2 { font-size: 24px !important; font-weight: 700 !important; margin-top: 0 !important; margin-bottom: 24px !important; color: var(--md-sys-color-primary) !important; border-bottom: 2px solid var(--md-sys-color-surface-container-high) !important; padding-bottom: 16px !important; }

/* Related Products */
body.woocommerce div.product .related.products, body.woocommerce div.product .up-sells { grid-column: 1 / -1 !important; width: 100% !important; margin-top: 80px !important; padding: 0 !important; clear: both !important; }
body.woocommerce div.product .related.products > h2, body.woocommerce div.product .up-sells > h2 { font-size: 28px !important; font-weight: 700 !important; text-align: center !important; margin-bottom: 40px !important; color: var(--md-sys-color-on-surface) !important; }
body.woocommerce div.product .related.products ul.products, body.woocommerce div.product .up-sells ul.products { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important; gap: 24px !important; }
body.woocommerce div.product .related.products ul.products li.product, body.woocommerce div.product .up-sells ul.products li.product { padding: 20px !important; border-radius: 20px !important; }
body.woocommerce div.product .related.products ul.products li.product img, body.woocommerce div.product .up-sells ul.products li.product img { max-height: 160px !important; margin-bottom: 16px !important; padding: 8px !important; }
body.woocommerce div.product .related.products ul.products li.product .product_title, body.woocommerce div.product .up-sells ul.products li.product .product_title { font-size: 15px !important; margin-bottom: 8px !important; }
body.woocommerce div.product .related.products ul.products li.product .price, body.woocommerce div.product .up-sells ul.products li.product .price { font-size: 18px !important; margin-bottom: 16px !important; }
body.woocommerce div.product .related.products ul.products li.product .button, body.woocommerce div.product .up-sells ul.products li.product .button { height: 44px !important; font-size: 14px !important; padding: 0 20px !important; }

/* --------------------------------------------------------------------------
   5. MY ACCOUNT (Login/Register & Dashboard Layout)
   -------------------------------------------------------------------------- */
/* Login & Register M3 Premium Cards (Flexbox Layout) */
body.woocommerce-account #customer_login {
    display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
    justify-content: center !important; gap: 40px !important;
    max-width: 1100px !important; margin: 48px auto !important; align-items: stretch !important; clear: both !important;
}
body.woocommerce-account #customer_login > div, body.woocommerce-account .u-column1, body.woocommerce-account .u-column2 {
    flex: 1 1 50% !important; max-width: 500px !important; background-color: var(--md-sys-color-surface, #ffffff) !important;
    border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important; border-radius: 28px !important;
    padding: 48px 40px !important; box-shadow: 0 8px 32px rgba(0,0,0,0.04) !important; float: none !important;
    box-sizing: border-box !important; margin: 0 !important; transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}
body.woocommerce-account #customer_login > div:hover { transform: translateY(-4px) !important; box-shadow: 0 16px 48px rgba(0,0,0,0.08) !important; }
body.woocommerce-account #customer_login h2 { font-size: 26px !important; font-weight: 800 !important; color: #0b3762 !important; margin-top: 0 !important; margin-bottom: 24px !important; border-bottom: 2px dashed var(--md-sys-color-outline-variant, #eeeeee) !important; padding-bottom: 16px !important; }
body.woocommerce-account #customer_login form.woocommerce-form { border: none !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; }

body.woocommerce-account .form-row input.input-text, body.woocommerce-account input[type="text"], body.woocommerce-account input[type="email"], body.woocommerce-account input[type="tel"] {
    height: 56px !important; border-radius: 999px !important; border-color: var(--md-sys-color-outline-variant, #dddddd) !important; padding: 0 24px !important; font-size: 16px !important; color: #1c1b1f !important;
}
body.woocommerce-account .form-row input.input-text:focus { border-color: #8ab4f8 !important; box-shadow: 0 0 0 2px rgba(138, 180, 248, 0.15) !important; }
body.woocommerce-account #customer_login form button[type="submit"].woocommerce-Button { width: 100% !important; height: 56px !important; border-radius: 999px !important; background-color: #0b3762 !important; color: #ffffff !important; font-size: 16px !important; font-weight: 700 !important; border: none !important; margin-top: 24px !important; transition: all 0.3s ease !important; }
body.woocommerce-account #customer_login form button[type="submit"]:hover { background-color: #102a43 !important; transform: translateY(-2px) !important; }
body.woocommerce-account .lost_password a { color: #0b3762 !important; font-weight: 700 !important; text-decoration: underline !important; }
body.woocommerce-account .woocommerce-LostPassword a:hover { color: #173b5c !important; }

/* Social Login Buttons (Nextend) */
.nsl-container { display: flex !important; flex-direction: column !important; gap: 12px !important; margin: 24px 0 !important; width: 100% !important; }
.nsl-container .nsl-button-google { display: flex !important; align-items: center !important; justify-content: center !important; background-color: #ffffff !important; color: #1f1f1f !important; border: 1px solid #dadce0 !important; border-radius: 999px !important; height: 52px !important; font-family: 'Roboto', sans-serif !important; font-weight: 500 !important; font-size: 16px !important; text-decoration: none !important; transition: all 0.2s ease !important; box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important; }
.nsl-container .nsl-button-google:hover { background-color: #f8f9fa !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; transform: translateY(-1px) !important; }
.nsl-container-inline:after { content: "ή συνδεθείτε με το email σας" !important; display: block !important; text-align: center !important; margin: 20px 0 !important; font-size: 14px !important; color: var(--md-sys-color-outline) !important; position: relative !important; }

/* Dashboard Dashboard Layout */
body.woocommerce-account .woocommerce { display: flex !important; flex-wrap: wrap !important; gap: 48px !important; max-width: 1200px !important; margin: 48px auto !important; padding: 0 24px !important; align-items: flex-start !important; }
@media (min-width: 992px) {
    body.woocommerce-account .woocommerce-MyAccount-navigation { flex: 0 0 280px !important; width: 280px !important; margin: 0 !important; }
    body.woocommerce-account .woocommerce-MyAccount-content { flex: 1 1 0% !important; margin: 0 !important; min-width: 0 !important; }
}
@media (max-width: 991px) {
    body.woocommerce-account .woocommerce-MyAccount-navigation, body.woocommerce-account .woocommerce-MyAccount-content { width: 100% !important; flex: none !important; }
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none !important; padding: 16px !important; margin: 0 !important; background-color: var(--md-sys-color-surface-container-low) !important; border-radius: 24px !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; box-shadow: 0 4px 16px rgba(0,0,0,0.03) !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li { margin-bottom: 4px !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a { display: block !important; padding: 14px 20px !important; font-weight: 500 !important; border-radius: 12px !important; transition: all 0.2s ease !important; color: var(--md-sys-color-on-surface) !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover:not(.active) { background-color: var(--md-sys-color-surface-container-high) !important; }

body.woocommerce-account .woocommerce-MyAccount-content { background-color: var(--md-sys-color-surface) !important; border-radius: 32px !important; padding: 48px !important; border: 1px solid var(--md-sys-color-surface-container-high) !important; box-shadow: 0 12px 32px rgba(0,0,0,0.04) !important; box-sizing: border-box !important; }

/* My Account Table Overrides (Downloads, Payments, Orders) */
.woocommerce-MyAccount-content table.shop_table, .woocommerce-MyAccount-content ul, .woocommerce-MyAccount-content li { border: none !important; background: transparent !important; box-shadow: none !important; list-style: none !important; }
.woocommerce-MyAccount-content tr, .woocommerce-MyAccount-content .woocommerce-Downloads li, .woocommerce-MyAccount-content .woocommerce-PaymentMethods li { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; background-color: var(--md-sys-color-surface-container-low, #f7f7f7) !important; border: 1px solid var(--md-sys-color-surface-container-high, #eeeeee) !important; border-radius: 24px !important; padding: 24px 32px !important; margin-bottom: 16px !important; transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important; }
.woocommerce-MyAccount-content tr:hover { transform: translateY(-4px) !important; background-color: var(--md-sys-color-surface) !important; box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important; }
.woocommerce-MyAccount-content thead { display: none !important; }

.woocommerce-MyAccount-content .button, .woocommerce-MyAccount-content a.button { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 48px !important; padding: 0 24px !important; border-radius: 999px !important; font-size: 14px !important; font-weight: 700 !important; text-decoration: none !important; border: none !important; transition: all 0.2s ease !important; margin: 5px !important; }
.woocommerce-MyAccount-content .button.primary, .woocommerce-MyAccount-content a[href*="download"], .woocommerce-MyAccount-content .add_payment_method { background-color: var(--md-sys-color-primary, #0b3762) !important; color: #ffffff !important; }
.woocommerce-MyAccount-content .button.delete, .woocommerce-MyAccount-content a[href*="delete"], .woocommerce-MyAccount-content a[href*="cancel"] { background-color: var(--md-sys-color-surface-container-highest, #e0e0e0) !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; }
.woocommerce-MyAccount-content .button:hover { transform: scale(1.05) !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; }

/* My Account Logout (Nuke Override) */
.woocommerce-MyAccount-content p:has(a[href*="logout"]) { background: var(--md-sys-color-surface) !important; border: 1px solid var(--md-sys-color-outline) !important; border-radius: 24px !important; padding: 48px 32px !important; text-align: center !important; box-shadow: 0 12px 32px rgba(0,0,0,0.08) !important; max-width: 500px !important; margin: 60px auto !important; font-size: 18px !important; font-weight: 500 !important; color: var(--md-sys-color-on-surface) !important; }
.woocommerce-MyAccount-content a[href*="logout"] { display: flex !important; align-items: center !important; justify-content: center !important; background-color: #ba1a1a !important; color: #ffffff !important; padding: 0 32px !important; height: 56px !important; border-radius: 999px !important; font-size: 16px !important; font-weight: 700 !important; text-decoration: none !important; transition: all 0.2s ease !important; width: 100% !important; margin-top: 24px !important; margin-left: auto !important; margin-right: auto !important; }
.woocommerce-MyAccount-content a[href*="logout"]:hover { background-color: #93000a !important; transform: scale(1.02) !important; }

/* My Account Downloads */
.woocommerce-MyAccount-content a[href*="download_file"] { display: inline-flex !important; align-items: center !important; gap: 8px !important; background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; padding: 12px 24px !important; border-radius: 999px !important; font-weight: 600 !important; text-decoration: none !important; box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; }
.woocommerce-MyAccount-content a[href*="download_file"]::before { font-family: 'Material Symbols Rounded' !important; content: '\e2c4' !important; font-size: 20px !important; }
.woocommerce-MyAccount-content a[href*="download_file"]:hover { background-color: var(--md-sys-color-secondary) !important; transform: translateY(-2px) !important; }

/* My Account Payments */
.woocommerce-MyAccount-content a[href*="add-payment-method"], .woocommerce-MyAccount-content button#add_payment_method { display: flex !important; align-items: center !important; justify-content: center !important; background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; width: 100% !important; max-width: 300px !important; height: 56px !important; border-radius: 999px !important; font-size: 16px !important; font-weight: 700 !important; margin-top: 24px !important; }
.woocommerce-PaymentMethods-table .button::before, .woocommerce-PaymentMethods-table .button::after { display: none !important; content: none !important; }
.woocommerce-PaymentMethods-table .button { background-color: var(--md-sys-color-surface-container-high) !important; color: var(--md-sys-color-on-surface) !important; border-radius: 999px !important; padding: 10px 20px !important; font-weight: 600 !important; text-decoration: none !important; }
.woocommerce-PaymentMethods-table .button:hover { background-color: var(--md-sys-color-primary) !important; color: #ffffff !important; }

/* My Account Addresses */
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses, .woocommerce-Addresses { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important; gap: 32px !important; background: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; margin-top: 32px !important; width: 100% !important; }
body.woocommerce-account .woocommerce-MyAccount-content .u-column.woocommerce-Address, .woocommerce-Address { background: var(--md-sys-color-surface, #ffffff) !important; border-radius: 28px !important; padding: 32px !important; border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important; box-shadow: 0 4px 16px rgba(0,0,0,0.03) !important; float: none !important; width: 100% !important; box-sizing: border-box !important; transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important; display: flex !important; flex-direction: column !important; text-align: left !important; }
body.woocommerce-account .woocommerce-MyAccount-content .u-column.woocommerce-Address:hover, .woocommerce-Address:hover { transform: translateY(-4px) !important; box-shadow: 0 16px 48px rgba(0,0,0,0.08) !important; border-color: transparent !important; }
body.woocommerce-account .woocommerce-Address header.title { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; margin-bottom: 24px !important; border-bottom: 2px dashed var(--md-sys-color-outline-variant, #eeeeee) !important; padding-bottom: 16px !important; width: 100% !important; gap: 12px !important; text-align: left !important; }
body.woocommerce-account .woocommerce-Address header.title h3 { font-size: 20px !important; font-weight: 800 !important; margin: 0 !important; color: var(--md-sys-color-primary, #0b3762) !important; order: 1 !important; text-align: left !important; }
body.woocommerce-account .woocommerce-Address a.edit { display: inline-flex !important; align-items: center !important; justify-content: center !important; background-color: var(--md-sys-color-surface-container-high, #f2f2f2) !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; height: 40px !important; padding: 0 20px !important; border-radius: 999px !important; font-size: 13px !important; font-weight: 700 !important; text-decoration: none !important; border: none !important; transition: all 0.2s ease !important; margin: 0 !important; order: 2 !important; white-space: nowrap !important; }
body.woocommerce-account .woocommerce-Address a.edit:hover { background-color: var(--md-sys-color-primary, #0b3762) !important; color: #ffffff !important; }
body.woocommerce-account .woocommerce-Address a.edit::before { font-family: 'Material Symbols Rounded' !important; content: 'edit' !important; margin-right: 6px !important; font-size: 16px !important; font-weight: 400 !important; }
body.woocommerce-account .woocommerce-Address address { font-style: normal !important; line-height: 1.8 !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; font-size: 15px !important; text-align: left !important; }

/* My Account Edit Details (Settings) */
body.woocommerce-account form.woocommerce-EditAccountForm { background: var(--md-sys-color-surface, #ffffff) !important; border-radius: 28px !important; padding: 40px !important; border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important; box-shadow: 0 4px 24px rgba(0,0,0,0.02) !important; display: flex !important; flex-direction: column !important; gap: 24px !important; width: 100% !important; box-sizing: border-box !important; }
body.woocommerce-account form.woocommerce-EditAccountForm .form-row { width: 100% !important; max-width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; }
body.woocommerce-account form.woocommerce-EditAccountForm label { font-size: 14px !important; font-weight: 700 !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; margin-bottom: 8px !important; display: block !important; }
body.woocommerce-account form.woocommerce-EditAccountForm input.input-text, body.woocommerce-account form.woocommerce-EditAccountForm input[type="password"] { width: 100% !important; min-width: 100% !important; height: 56px !important; background-color: var(--md-sys-color-surface-container-lowest, #ffffff) !important; border: 1px solid var(--md-sys-color-outline, #c4c4c4) !important; border-radius: 16px !important; padding: 0 20px !important; font-size: 16px !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; transition: all 0.2s ease !important; box-sizing: border-box !important; display: block !important; }
body.woocommerce-account form.woocommerce-EditAccountForm input.input-text:focus, body.woocommerce-account form.woocommerce-EditAccountForm input[type="password"]:focus { border-color: var(--md-sys-color-primary, #0b3762) !important; box-shadow: 0 0 0 2px rgba(11, 55, 98, 0.1) !important; outline: none !important; }
body.woocommerce-account form.woocommerce-EditAccountForm span.description { font-size: 13px !important; color: var(--md-sys-color-outline, #757575) !important; margin-top: 8px !important; display: block !important; font-style: normal !important; }
body.woocommerce-account form.woocommerce-EditAccountForm fieldset { background: var(--md-sys-color-surface-container-low, #f7f7f7) !important; border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important; border-radius: 24px !important; padding: 32px !important; margin-top: 16px !important; display: flex !important; flex-direction: column !important; gap: 20px !important; width: 100% !important; box-sizing: border-box !important; }
body.woocommerce-account form.woocommerce-EditAccountForm fieldset legend { font-size: 20px !important; font-weight: 800 !important; color: var(--md-sys-color-primary) !important; padding: 0 !important; margin-bottom: 8px !important; width: 100% !important; border: none !important; }
body.woocommerce-account form.woocommerce-EditAccountForm button[type="submit"] { background-color: var(--md-sys-color-primary, #0b3762) !important; color: #ffffff !important; height: 56px !important; padding: 0 40px !important; border-radius: 999px !important; font-size: 16px !important; font-weight: 700 !important; border: none !important; cursor: pointer !important; transition: all 0.3s ease !important; margin-top: 16px !important; width: fit-content !important; }
body.woocommerce-account form.woocommerce-EditAccountForm button[type="submit"]:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(11, 55, 98, 0.2) !important; }
@media (min-width: 769px) {
    body.woocommerce-account form.woocommerce-EditAccountForm { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px 32px !important; }
    body.woocommerce-account form.woocommerce-EditAccountForm .form-row, body.woocommerce-account form.woocommerce-EditAccountForm fieldset, body.woocommerce-account form.woocommerce-EditAccountForm p:last-child { grid-column: 1 / -1 !important; }
    body.woocommerce-account form.woocommerce-EditAccountForm .woocommerce-form-row--first { grid-column: 1 / 2 !important; }
    body.woocommerce-account form.woocommerce-EditAccountForm .woocommerce-form-row--last { grid-column: 2 / 3 !important; }
}

/* --------------------------------------------------------------------------
   6. M3 PREMIUM DESKTOP HEADER
   -------------------------------------------------------------------------- */
.m3-header { background-color: var(--md-sys-color-surface, #ffffff); position: sticky; top: 0; z-index: 1000; box-shadow: 0 4px 24px rgba(0,0,0,0.04); border-bottom: 1px solid var(--md-sys-color-surface-container-high, #f0f0f0); transition: all 0.3s ease; }
.m3-header-container { display: flex; align-items: center; justify-content: space-between; max-width: 1400px; margin: 0 auto; padding: 0 24px; height: 80px; }
.m3-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.m3-brand-logo { max-height: 48px; width: auto; }
.m3-brand-name { font-size: 24px; font-weight: 800; color: var(--md-sys-color-primary, #0b3762); letter-spacing: -0.5px; }
.m3-nav-links { display: flex; align-items: center; gap: 8px; }
.m3-nav-links a { text-decoration: none; font-size: 15px; font-weight: 600; color: var(--md-sys-color-on-surface, #1a1a1a); padding: 10px 20px; border-radius: 999px; transition: all 0.2s ease; }
.m3-nav-links a:hover { background-color: var(--md-sys-color-surface-container-high, #f2f2f2); }
.m3-nav-links a.active { background-color: var(--md-sys-color-primary, #0b3762); color: #ffffff; }
.m3-beta-badge { background: linear-gradient(135deg, #e91e63, #9c27b0); color: white; font-size: 10px; font-weight: 800; padding: 3px 8px; border-radius: 999px; margin-left: 6px; vertical-align: middle; }
.m3-header-controls { display: flex; align-items: center; gap: 12px; }
.m3-icon-btn { background: transparent; border: none; cursor: pointer; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--md-sys-color-on-surface, #1a1a1a); transition: all 0.2s ease; text-decoration: none; position: relative; }
.m3-icon-btn:hover { background-color: var(--md-sys-color-surface-container-high, #f2f2f2); transform: scale(1.05); }
.m3-cart-badge { position: absolute; top: 6px; right: 4px; background-color: #ba1a1a; color: white; font-size: 11px; font-weight: 800; height: 18px; min-width: 18px; border-radius: 999px; display: flex; align-items: center; justify-content: center; border: 2px solid var(--md-sys-color-surface, #ffffff); padding: 0 4px; box-sizing: border-box; }
.m3-main-content { flex: 1; width: 100%; max-width: 1400px; margin: 0 auto; padding: 40px 24px; box-sizing: border-box; }

/* ==========================================================================
   7. TRUE MATERIAL 3 QPR3 BOTTOM NAVIGATION (App Masterpiece)
   ========================================================================== */
.m3-bottom-nav { display: none !important; }

@media (max-width: 768px) {
    /* Δίνουμε περισσότερο χώρο κάτω για να χωράει το "ανασηκωμένο" AI κουμπί */
    body { padding-bottom: 110px !important; }

    /* Η Μπάρα (Glassmorphism & Σκιές) */
    .m3-bottom-nav {
        display: flex !important;
        position: fixed !important;
        bottom: 24px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: calc(100% - 32px) !important;
        max-width: 450px !important;
        background-color: rgba(26, 26, 28, 0.85) !important; /* M3 Dark Surface */
        backdrop-filter: blur(16px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        border-radius: 32px !important; /* M3 Large Corner */
        padding: 8px 12px !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        z-index: 999999 !important;
        box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.05) inset !important;
    }

    /* Το κάθε στοιχείο (Item) */
    .m3-bottom-nav-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-decoration: none !important;
        width: 64px !important;
        gap: 4px !important;
        color: #a0a0a5 !important;
        position: relative !important;
        transition: color 0.3s ease !important;
    }

    /* Το M3 Χάπι (Active Indicator) - ΚΡΥΦΟ από προεπιλογή */
    .m3-nav-indicator {
        width: 56px !important;
        height: 32px !important;
        border-radius: 16px !important; /* Πλήρες στρογγύλεμα */
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important; /* M3 Easing */
    }

    /* Το Εικονίδιο */
    .m3-bottom-nav-item .material-symbols-rounded {
        font-size: 24px !important; /* M3 Standard icon size */
        font-variation-settings: 'FILL' 0, 'wght' 400 !important;
        transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;
        z-index: 2 !important;
    }

    /* Τα Labels (Μικρά κείμενα) */
    .m3-nav-label {
        font-size: 11px !important;
        font-weight: 600 !important;
        letter-spacing: 0.3px !important;
        opacity: 0.8 !important;
        transition: all 0.3s ease !important;
        white-space: nowrap !important;
    }

    /* --- ACTIVE STATE (Οταν είμαστε στη σελίδα) --- */
    .m3-bottom-nav-item.active {
        color: #ffffff !important;
    }
    .m3-bottom-nav-item.active .m3-nav-indicator {
        background-color: rgba(242, 139, 0, 0.2) !important; /* Skroutz πορτοκαλί, διαφανές */
    }
    .m3-bottom-nav-item.active .material-symbols-rounded {
        font-variation-settings: 'FILL' 1, 'wght' 500 !important;
        color: #f28b00 !important; /* Skroutz Πορτοκαλί */
    }
    .m3-bottom-nav-item.active .m3-nav-label {
        opacity: 1 !important;
        color: #f28b00 !important;
    }

    /* --- ΤΟ AI ADVISOR BUTTON (Το Κεντρικό FAB που "σπάει" την μπάρα) --- */
    .m3-bottom-nav-item.m3-ai-btn {
        transform: translateY(-24px) !important; /* Βγαίνει προς τα πάνω! */
        color: #ffffff !important;
        width: 72px !important;
    }
    .m3-ai-fab {
        width: 56px !important;
        height: 56px !important;
        border-radius: 20px !important; /* M3 FAB shape */
        background: linear-gradient(135deg, #f28b00, #e91e63) !important; /* Πορτοκαλί προς Μωβ */
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-shadow: 0 8px 24px rgba(242, 139, 0, 0.4) !important;
        transition: transform 0.3s cubic-bezier(0.2, 0, 0, 1), box-shadow 0.3s ease !important;
    }
    .m3-ai-fab .material-symbols-rounded {
        color: #ffffff !important;
        font-size: 28px !important;
        font-variation-settings: 'FILL' 1, 'wght' 400 !important;
    }
    .m3-bottom-nav-item.m3-ai-btn .m3-nav-label {
        margin-top: 8px !important;
        color: #e91e63 !important; /* Το χρώμα του AI */
        font-weight: 800 !important;
        opacity: 1 !important;
    }

    /* To Badge του Καλαθιού (Το νουμεράκι) */
    .m3-bottom-cart-badge {
        position: absolute !important;
        top: -4px !important;
        right: 4px !important;
        background-color: #ba1a1a !important; /* M3 Red */
        color: #ffffff !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        height: 16px !important;
        min-width: 16px !important;
        padding: 0 4px !important;
        border-radius: 999px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 2px solid #1a1a1c !important; /* Cut-out effect */
        z-index: 3 !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   MOBILE HEADER FIX & AI BUTTON CONTRAST
   ========================================================================== */

@media (max-width: 991px) {
    /* 1. ΑΠΟΛΥΤΗ ΕΞΑΦΑΝΙΣΗ του Desktop Menu στα κινητά */
    .m3-nav-links, 
    .m3-header-controls { 
        display: none !important; 
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* 2. Κεντράρισμα του Λογότυπου στο κινητό για απόλυτα Clean εμφάνιση */
    .m3-header-container {
        justify-content: center !important;
        height: 64px !important;
        padding: 0 !important;
    }
    
    /* 3. Επαναφορά του κειμένου "ΔΕΧΡΩ" στο λογότυπο (αφού τώρα έχουμε χώρο) */
    .m3-brand-name {
        display: block !important;
        font-size: 22px !important;
    }
}

@media (max-width: 768px) {
    /* 4. Διόρθωση αντίθεσης (Contrast) στο κείμενο του AI Advisor */
    .m3-bottom-nav-item.m3-ai-btn .m3-nav-label {
        color: #ffb74d !important; /* Φωτεινό, ζεστό πορτοκαλί για να διαβάζεται τέλεια στο σκούρο φόντο */
        text-shadow: 0 1px 4px rgba(0,0,0,0.4) !important;
    }
}

/* ==========================================================================
   BOTTOM NAV - BRANDING COLORS (Dechro Premium Navy)
   ========================================================================== */
@media (max-width: 768px) {
    /* 1. Η Μπάρα γίνεται Σκούρο Μπλε (Dechro Navy) για στιβαρή αντίθεση */
    .m3-bottom-nav {
        background-color: rgba(11, 55, 98, 0.95) !important; /* Το Navy του λογοτύπου σου με 95% αδιαφάνεια */
        backdrop-filter: blur(16px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 16px 40px rgba(11, 55, 98, 0.4), 0 -2px 10px rgba(0,0,0,0.1) !important;
    }

    /* 2. Τα ανενεργά εικονίδια γίνονται ένα απαλό γαλάζιο-γκρι (ώστε να σβήνουν όμορφα στο navy φόντο) */
    .m3-bottom-nav-item { color: #8ba4c1 !important; }

    /* 3. ΤΟ ΕΝΕΡΓΟ ΣΤΟΙΧΕΙΟ (Ολόλευκο για να "σκάει" στο μάτι) */
    .m3-bottom-nav-item.active { color: #ffffff !important; }
    .m3-bottom-nav-item.active .m3-nav-indicator {
        background-color: rgba(255, 255, 255, 0.15) !important; /* Ένα ημιδιάφανο λευκό χάπι */
    }
    .m3-bottom-nav-item.active .material-symbols-rounded,
    .m3-bottom-nav-item.active .m3-nav-label {
        color: #ffffff !important;
    }

    /* 4. AI FAB BUTTON (Κόκκινο Dechro Gradient) */
    .m3-ai-fab {
        background: linear-gradient(135deg, #ff3344, #cc0000) !important; /* Φωτεινό κόκκινο προς βαθύ κόκκινο */
        box-shadow: 0 8px 24px rgba(204, 0, 0, 0.4) !important;
    }
    .m3-ai-fab .material-symbols-rounded { color: #ffffff !important; }
    .m3-bottom-nav-item.m3-ai-btn .m3-nav-label {
        color: #ff8a80 !important; /* Ένα πολύ φωτεινό κοκκινωπό/ροζ κείμενο για να ξεχωρίζει στο Navy */
        text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important;
    }

    /* 5. Το Badge του Καλαθιού (Κόκκινο με Navy περίγραμμα για να κάνει εφέ "τρύπας" στη μπάρα) */
    .m3-bottom-cart-badge {
        background-color: #e3000f !important;
        color: #ffffff !important;
        border-color: #0b3762 !important; /* Ίδιο με το φόντο της μπάρας */
    }
}

/* --------------------------------------------------------------------------
   8. DARK MODE SUPPORT (OS Level & Auto-Detect Ready)
   -------------------------------------------------------------------------- */
html[data-theme="dark"] body.woocommerce-checkout .input-text, html[data-theme="dark"] body.woocommerce-checkout input[type="text"], html[data-theme="dark"] body.woocommerce-checkout input[type="email"], html[data-theme="dark"] body.woocommerce-checkout input[type="tel"], html[data-theme="dark"] body.woocommerce-checkout select, html[data-theme="dark"] body.woocommerce-checkout textarea, body[class*="dark"].woocommerce-checkout .input-text, body[class*="dark"].woocommerce-checkout input[type="text"], body[class*="dark"].woocommerce-checkout input[type="email"], body[class*="dark"].woocommerce-checkout input[type="tel"], body[class*="dark"].woocommerce-checkout select, body[class*="dark"].woocommerce-checkout textarea { background-color: #252528 !important; border: 1px solid #444446 !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
html[data-theme="dark"] body.woocommerce-checkout .select2-container .select2-selection--single, body[class*="dark"].woocommerce-checkout .select2-container .select2-selection--single { background-color: #252528 !important; border: 1px solid #444446 !important; }
html[data-theme="dark"] body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered, body[class*="dark"].woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { color: #ffffff !important; }
html[data-theme="dark"] body.woocommerce-checkout #order_review, body[class*="dark"].woocommerce-checkout #order_review { background-color: #1a1a1c !important; border-color: #333336 !important; }
html[data-theme="dark"] body.woocommerce-checkout #order_review table th, html[data-theme="dark"] body.woocommerce-checkout #order_review table td, body[class*="dark"].woocommerce-checkout #order_review table th, body[class*="dark"].woocommerce-checkout #order_review table td { color: #e3e3e3 !important; border-bottom-color: #333336 !important; }
html[data-theme="dark"] body.woocommerce-checkout #payment, body[class*="dark"].woocommerce-checkout #payment { background-color: #252528 !important; border-color: #444446 !important; }
html[data-theme="dark"] body.woocommerce-checkout #payment div.payment_box, body[class*="dark"].woocommerce-checkout #payment div.payment_box { background-color: #1a1a1c !important; color: #b0b0b0 !important; }
html[data-theme="dark"] body.woocommerce-checkout select[name*="invoice"], body[class*="dark"].woocommerce-checkout select[name*="invoice"] { background-color: #102a43 !important; border-color: #8ab4f8 !important; color: #8ab4f8 !important; -webkit-text-fill-color: #8ab4f8 !important; }

/* Single Product Dark Mode Overrides */
html[data-theme="dark"] .quantity input.qty, body[class*="dark"] .quantity input.qty { background-color: #252528 !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; border: 1px solid #444446 !important; box-shadow: none !important; -webkit-appearance: none !important; }
html[data-theme="dark"] .single_add_to_cart_button, body[class*="dark"] .single_add_to_cart_button { background-color: #ffffff !important; color: #1a1a1c !important; border-radius: 999px !important; font-weight: 800 !important; border: none !important; }
html[data-theme="dark"] .summary [class*="info"], body[class*="dark"] .summary [class*="info"] { background-color: #0b3762 !important; border: 1px solid #173b5c !important; }
html[data-theme="dark"] .summary [class*="info"] *, body[class*="dark"] .summary [class*="info"] * { color: #ffffff !important; }
html[data-theme="dark"] .summary [class*="info"] a, body[class*="dark"] .summary [class*="info"] a { color: #8ab4f8 !important; font-weight: 800 !important; text-decoration: underline !important; background: transparent !important; }

/* My Account Dark Mode Overrides */
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account #customer_login > div { background-color: #1a1a1c !important; border-color: #333336 !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account #customer_login h2 { color: #8ab4f8 !important; border-bottom-color: #333336 !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account .form-row input.input-text, :is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account input[type="text"], :is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account input[type="email"] { background-color: #252528 !important; border-color: #444446 !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account .lost_password a { color: #8ab4f8 !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account #customer_login form button[type="submit"].woocommerce-Button { background-color: #ffffff !important; color: #1a1a1c !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-account #customer_login form button[type="submit"]:hover { background-color: #e6e6e6 !important; }
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) .nsl-container .nsl-button-google { background-color: #1a1a1c !important; color: #e3e3e3 !important; border-color: #444446 !important; }
/* ==========================================================================
   REMOVE FLOATING "SCROLL TO TOP" / WIDGET ICON
   ========================================================================== */
#ast-scroll-top, 
.oceanwp-up-up, 
#scroll-up, 
.scroll-up, 
.scroll-to-top, 
.generate-back-to-top, 
a[href="#top"],
.floating-button,
.wp-dark-mode-floating-switch {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* ==========================================================================
   MOBILE FIXES: ULTIMATE CART & CHECKOUT REDESIGN (Smartphones Only)
   ========================================================================== */

@media (max-width: 768px) {
    
    /* ----------------------------------------------------------------------
       1. ΤΟ ΚΑΛΑΘΙ (Μετατροπή Πίνακα σε M3 Κάρτες Προϊόντων)
       ---------------------------------------------------------------------- */
    /* Δίνουμε λίγο αέρα στη σελίδα του καλαθιού */
    body.woocommerce-cart .woocommerce { padding: 0 16px !important; }
    
    /* Αφαιρούμε το φόντο από το γενικό κουτί για να ξεχωρίζουν οι κάρτες */
    body.woocommerce-cart .woocommerce-cart-form { 
        padding: 0 !important; 
        background: transparent !important; 
        border: none !important; 
        box-shadow: none !important; 
    }
    
    /* Καταστρέφουμε τον πίνακα του WooCommerce */
    body.woocommerce-cart table.shop_table.cart { display: block !important; width: 100% !important; border: none !important; }
    body.woocommerce-cart table.shop_table.cart thead { display: none !important; /* Κρύβουμε τις επικεφαλίδες */ }
    body.woocommerce-cart table.shop_table.cart tbody { display: flex !important; flex-direction: column !important; gap: 20px !important; }
    
    /* Η Κάρτα του κάθε Προϊόντος (Grid Layout μέσα στην Κάρτα!) */
    body.woocommerce-cart table.shop_table.cart tr.cart_item {
        display: grid !important;
        grid-template-columns: 90px 1fr auto !important;
        grid-template-rows: auto auto auto !important;
        gap: 8px 16px !important;
        background: var(--md-sys-color-surface, #ffffff) !important;
        border-radius: 20px !important;
        padding: 16px !important;
        border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.04) !important;
        position: relative !important;
    }

    /* 1. Εικόνα Προϊόντος */
    body.woocommerce-cart table.cart td.product-thumbnail { 
        grid-column: 1 / 2 !important; grid-row: 1 / 4 !important; 
        display: block !important; border: none !important; padding: 0 !important; 
    }
    body.woocommerce-cart table.cart td.product-thumbnail img { 
        width: 100% !important; height: auto !important; border-radius: 12px !important; 
    }

    /* 2. Όνομα Προϊόντος */
    body.woocommerce-cart table.cart td.product-name { 
        grid-column: 2 / 4 !important; grid-row: 1 / 2 !important; 
        display: block !important; border: none !important; padding: 0 !important; text-align: left !important; 
    }
    body.woocommerce-cart table.cart td.product-name a { font-size: 15px !important; font-weight: 700 !important; line-height: 1.3 !important; }

    /* 3. Τιμή (Μονάδας) */
    body.woocommerce-cart table.cart td.product-price { 
        grid-column: 2 / 4 !important; grid-row: 2 / 3 !important; 
        display: block !important; border: none !important; padding: 0 !important; text-align: left !important; 
    }

    /* 4. Ποσότητα */
    body.woocommerce-cart table.cart td.product-quantity { 
        grid-column: 2 / 3 !important; grid-row: 3 / 4 !important; 
        display: flex !important; align-items: center !important; justify-content: flex-start !important; border: none !important; padding: 0 !important; 
    }
    body.woocommerce-cart .quantity input.qty { height: 40px !important; width: 60px !important; }

    /* 5. Σύνολο (Υποσύνολο Προϊόντος) */
    body.woocommerce-cart table.cart td.product-subtotal { 
        grid-column: 3 / 4 !important; grid-row: 3 / 4 !important; 
        display: flex !important; align-items: center !important; justify-content: flex-end !important; border: none !important; padding: 0 !important; 
    }
    
    /* 6. Κουμπί Διαγραφής "Χ" (Μετατρέπεται σε κόκκινο κυκλάκι πάνω δεξιά) */
    body.woocommerce-cart table.cart td.product-remove { 
        position: absolute !important; top: -10px !important; right: -10px !important; 
        background: #ffffff !important; border-radius: 50% !important; box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important; 
        width: 32px !important; height: 32px !important; 
        display: flex !important; align-items: center !important; justify-content: center !important; z-index: 10 !important; border: none !important; padding: 0 !important; 
    }
    body.woocommerce-cart table.cart td.product-remove a.remove { font-size: 22px !important; color: #ba1a1a !important; line-height: 1 !important; margin: 0 !important; padding: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 100% !important; background: transparent !important; }

    /* ----------------------------------------------------------------------
       2. ΚΟΥΠΟΝΙ & ΚΟΥΜΠΙΑ ΕΝΗΜΕΡΩΣΗΣ (Κάτω από τα προϊόντα)
       ---------------------------------------------------------------------- */
    body.woocommerce-cart table.cart tr.actions { 
        display: flex !important; flex-direction: column !important; background: transparent !important; border: none !important; padding: 0 !important; box-shadow: none !important; 
    }
    body.woocommerce-cart table.cart td.actions { 
        display: flex !important; flex-direction: column !important; gap: 16px !important; padding: 16px 0 !important; border: none !important; 
    }
    body.woocommerce .coupon { display: flex !important; flex-direction: column !important; width: 100% !important; gap: 12px !important; }
    body.woocommerce .coupon input.input-text { width: 100% !important; }
    body.woocommerce .coupon .button, body.woocommerce-cart table.cart td.actions > .button { width: 100% !important; justify-content: center !important; }

    /* Σύνολα Καλαθιού (Η Δεξιά Κάρτα που τώρα μπαίνει κάτω) */
    body.woocommerce-cart .cart-collaterals .cart_totals { width: 100% !important; padding: 24px 20px !important; margin-top: 16px !important; }

    /* ----------------------------------------------------------------------
       3. ΤΟ ΤΑΜΕΙΟ (CHECKOUT) ΣΤΑ ΚΙΝΗΤΑ
       ---------------------------------------------------------------------- */
    body.woocommerce-checkout .woocommerce { padding: 0 16px !important; overflow-x: hidden !important; }
    body.woocommerce-checkout form.checkout {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
        padding: 0 !important;
        width: 100% !important;
    }
    
    /* Η αριστερή και η δεξιά κάρτα γίνονται 100% πλάτος */
    body.woocommerce-checkout #customer_details, 
    body.woocommerce-checkout #order_review {
        width: 100% !important;
        padding: 24px 20px !important; /* Μικραίνουμε το padding στα κινητά */
        border-radius: 20px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Τα εσωτερικά στοιχεία Χρέωσης/Αποστολής */
    body.woocommerce-checkout .col2-set .col-1, 
    body.woocommerce-checkout .col2-set .col-2 {
        width: 100% !important;
        float: none !important;
        margin-bottom: 24px !important;
    }

    body.woocommerce-checkout #order_review_heading {
        padding: 0 0 12px 0 !important;
        font-size: 22px !important;
    }

    /* Fix για το κουμπί παραγγελίας */
    body.woocommerce-checkout #place_order {
        white-space: normal !important; /* Επιτρέπει στο κείμενο να πάει σε 2η γραμμή αν είναι τεράστιο */
        height: auto !important;
        min-height: 56px !important;
        padding: 12px 20px !important;
        line-height: 1.4 !important;
    }
}

/* Υποστήριξη Dark Mode για το "Χ" διαγραφής στα κινητά */
:is(html[data-theme="dark"], html.dark, body[class*="dark"]) body.woocommerce-cart table.cart td.product-remove {
    background: #252528 !important;
}

/* ==========================================================================
   ULTIMATE MOBILE CART OVERRIDE (Flawless M3 Cards Layout)
   ========================================================================== */

@media (max-width: 768px) {
    /* 1. Σκοτώνουμε τη συμπεριφορά του πίνακα */
    body.woocommerce-cart table.shop_table.cart,
    body.woocommerce-cart table.shop_table.cart tbody,
    body.woocommerce-cart table.shop_table.cart tr,
    body.woocommerce-cart table.shop_table.cart td,
    body.woocommerce-cart table.shop_table.cart th {
        display: block !important; width: 100% !important; border: none !important; padding: 0 !important; background: transparent !important;
    }

    /* 2. Κρύβουμε τις επικεφαλίδες */
    body.woocommerce-cart table.shop_table.cart thead { display: none !important; }

    /* 3. ΤΟ ΜΥΣΤΙΚΟ ΟΠΛΟ: Σκοτώνουμε τις ενοχλητικές "ταμπέλες" του WooCommerce (π.χ. το σκέτο ":" και το "Προϊόν:") */
    body.woocommerce-cart table.shop_table.cart td::before { display: none !important; content: none !important; }

    /* 4. Κενό ανάμεσα στις κάρτες */
    body.woocommerce-cart table.shop_table.cart tbody { display: flex !important; flex-direction: column !important; gap: 20px !important; }

    /* 5. Η ΚΑΡΤΑ ΤΟΥ ΠΡΟΪΟΝΤΟΣ (Τέλειο, ελαστικό Grid) */
    body.woocommerce-cart table.shop_table.cart tr.cart_item {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 85px 1fr !important; /* Ελαφρώς μικρότερη εικόνα για να αναπνέει το κείμενο */
        grid-template-areas: 
            "img title"
            "img price"
            "img qty"
            "img subtotal" !important;
        gap: 8px 16px !important;
        background: var(--md-sys-color-surface, #ffffff) !important;
        border-radius: 24px !important; 
        padding: 20px !important; /* Πιο ομοιόμορφο padding */
        border: 1px solid var(--md-sys-color-outline-variant, #eeeeee) !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.03) !important;
        align-items: center !important; /* Κεντράρει τα στοιχεία κάθετα */
    }

    /* 6. ΚΟΥΜΠΙ ΔΙΑΓΡΑΦΗΣ "Χ" (Πάνω δεξιά) */
    body.woocommerce-cart table.shop_table.cart td.product-remove {
        position: absolute !important; top: -10px !important; right: -10px !important;
        width: 32px !important; height: 32px !important;
        background: #ffffff !important; border-radius: 50% !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; z-index: 10 !important;
        display: flex !important; align-items: center !important; justify-content: center !important;
        border: 1px solid #eeeeee !important;
    }
    body.woocommerce-cart table.shop_table.cart td.product-remove a {
        color: #ba1a1a !important; font-size: 20px !important; font-weight: 500 !important;
        line-height: 1 !important; text-decoration: none !important;
        display: flex !important; align-items: center !important; justify-content: center !important;
        width: 100% !important; height: 100% !important;
    }

    /* 7. ΕΙΚΟΝΑ (Αριστερά) */
    body.woocommerce-cart table.shop_table.cart td.product-thumbnail { grid-area: img !important; }
    body.woocommerce-cart table.shop_table.cart td.product-thumbnail img { width: 100% !important; height: auto !important; border-radius: 12px !important; box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important; }

    /* 8. ΤΙΤΛΟΣ ΠΡΟΪΟΝΤΟΣ (Όχι πια "Προϊόν: ...") */
    body.woocommerce-cart table.shop_table.cart td.product-name { grid-area: title !important; text-align: left !important; }
    body.woocommerce-cart table.shop_table.cart td.product-name a {
        font-size: 15px !important; font-weight: 700 !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important; line-height: 1.2 !important;
        display: block !important; padding-right: 16px !important; /* Για να μην καβαλάει το X */
    }

    /* 9. ΤΙΜΗ (Πεντακάθαρη) */
    body.woocommerce-cart table.shop_table.cart td.product-price {
        grid-area: price !important; text-align: left !important; font-size: 14px !important; color: var(--md-sys-color-outline, #757575) !important;
    }
    body.woocommerce-cart table.shop_table.cart td.product-price > .amount::before {
        content: "Τιμή: " !important; font-weight: 400 !important; font-size: 13px !important; color: var(--md-sys-color-outline) !important;
    }

    /* 10. ΠΟΣΟΤΗΤΑ (Συμμαζεμένο κουτί) */
    body.woocommerce-cart table.shop_table.cart td.product-quantity {
        grid-area: qty !important; display: flex !important; justify-content: flex-start !important; align-items: center !important;
    }
    body.woocommerce-cart table.shop_table.cart td.product-quantity::before {
        content: "Ποσ.:" !important; margin-right: 8px !important; font-size: 13px !important; color: var(--md-sys-color-outline) !important; display: block !important;
    }
    body.woocommerce-cart .quantity input.qty { width: 60px !important; height: 40px !important; border-radius: 8px !important; font-size: 15px !important; padding: 0 !important; text-align: center !important; }

    /* 11. ΥΠΟΣΥΝΟΛΟ (Μεγάλο μπλε νούμερο) */
    body.woocommerce-cart table.shop_table.cart td.product-subtotal {
        grid-area: subtotal !important; display: flex !important; align-items: center !important; text-align: left !important;
        font-size: 18px !important; font-weight: 800 !important; color: var(--md-sys-color-primary, #0b3762) !important;
    }
    body.woocommerce-cart table.shop_table.cart td.product-subtotal > .amount::before {
        content: "Σύνολο: " !important; font-size: 13px !important; font-weight: 500 !important; color: var(--md-sys-color-outline) !important; margin-right: 6px !important;
    }

    /* --------------------------------------------------------------------------
       12. ΚΟΥΠΟΝΙ & ΚΟΥΜΠΙ "ΕΝΗΜΕΡΩΣΗ ΚΑΛΑΘΙΟΥ" (Δίπλα-δίπλα και καθαρά)
       -------------------------------------------------------------------------- */
    body.woocommerce-cart table.shop_table.cart tr.actions { padding: 16px 0 !important; }
    body.woocommerce-cart table.shop_table.cart td.actions { display: flex !important; flex-direction: column !important; gap: 16px !important; }
    
    body.woocommerce .coupon { display: flex !important; flex-direction: row !important; gap: 8px !important; width: 100% !important; align-items: stretch !important; }
    body.woocommerce .coupon input.input-text { width: 60% !important; height: 48px !important; border-radius: 12px !important; }
    body.woocommerce .coupon .button { width: 40% !important; height: 48px !important; padding: 0 !important; font-size: 13px !important; border-radius: 12px !important; }
    
    /* Κουμπί Ενημέρωσης */
    body.woocommerce-cart table.cart td.actions > .button, 
    body.woocommerce-cart table.cart td.actions > button[name="update_cart"] {
        width: 100% !important; height: 52px !important; border-radius: 999px !important;
        background-color: var(--md-sys-color-surface-container-high, #f0f0f0) !important; color: var(--md-sys-color-on-surface, #1a1a1a) !important;
        border: none !important; box-shadow: none !important; font-size: 15px !important; font-weight: 600 !important;
    }
}

/* ==========================================================================
   ULTIMATE MOBILE LOGIN FIX (Stacking Cards Perfectly)
   ========================================================================== */

@media (max-width: 768px) {
    /* 1. Σπάμε τη διάταξη και τα βάζουμε το ένα κάτω από το άλλο */
    body.woocommerce-account #customer_login {
        display: flex !important;
        flex-direction: column !important; /* Κάθετη διάταξη */
        width: 100% !important;
        gap: 32px !important; /* Κενό ανάμεσα στη Σύνδεση και την Εγγραφή */
        padding: 0 16px !important; /* Αέρας δεξιά-αριστερά από την οθόνη */
        box-sizing: border-box !important;
        margin-top: 24px !important;
    }

    /* 2. Κάθε κάρτα πιάνει το 100% της οθόνης */
    body.woocommerce-account #customer_login > div,
    body.woocommerce-account .u-column1,
    body.woocommerce-account .u-column2 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important; /* Επιβολή πλήρους πλάτους */
        margin: 0 !important;
        padding: 32px 24px !important;
        box-sizing: border-box !important;
    }

    /* 3. Διόρθωση του Google Button (να μην κόβεται το κείμενο) */
    .nsl-container .nsl-button-google {
        width: 100% !important;
        white-space: nowrap !important;
        font-size: 15px !important; /* Ελαφρώς μικρότερο για να χωράει άνετα */
        padding: 0 16px !important;
        box-sizing: border-box !important;
    }
    
    /* 4. Σιγουρεύουμε ότι τα πεδία (inputs) δεν ξεχειλίζουν */
    body.woocommerce-account #customer_login input.input-text, 
    body.woocommerce-account #customer_login input[type="email"], 
    body.woocommerce-account #customer_login input[type="password"] {
        width: 100% !important;
        min-width: 100% !important;
        box-sizing: border-box !important;
    }
}
/* ==========================================================================
   FINAL BUTTON FIXES FOR MOBILE LOGIN (Submit & Google Button)
   ========================================================================== */

@media (max-width: 768px) {
    /* 1. Χωρίζουμε το "Να με θυμάσαι" από το κουμπί για να πάρουν χώρο */
    body.woocommerce-account #customer_login .woocommerce-form-login__rememberme {
        display: block !important;
        margin-bottom: 16px !important;
        width: 100% !important;
    }

    /* 2. Επιβολή M3 Design στο Κουμπί Σύνδεσης/Εγγραφής (Μεγάλο, Μπλε, Full-Width) */
    body.woocommerce-account #customer_login form button[type="submit"],
    body.woocommerce-account #customer_login form input[type="submit"],
    body.woocommerce-account #customer_login form .button {
        width: 100% !important;
        max-width: 100% !important;
        background-color: var(--md-sys-color-primary, #0b3762) !important;
        color: #ffffff !important;
        height: 56px !important;
        border-radius: 999px !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: none !important;
        margin-top: 8px !important;
        box-shadow: 0 4px 12px rgba(11, 55, 98, 0.1) !important;
    }

    /* 3. Διόρθωση του Google Button (Συρρίκνωση κειμένου για να μην κόβεται) */
    .nsl-container .nsl-button-google {
        padding: 0 16px !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
    }
    
    /* Το εικονίδιο G να μην παραμορφώνεται ποτέ */
    .nsl-container .nsl-button-svg-container {
        flex-shrink: 0 !important; 
    }
    
/* Το κείμενο στα κινητά: Κρύβουμε το παλιό και βάζουμε ένα πιο σύντομο! */
    .nsl-container .nsl-button-label-container {
        font-size: 0 !important; /* Κρύβει το αρχικό, μακρύ κείμενο */
        overflow: visible !important;
        margin-left: 12px !important;
    }
    
    .nsl-container .nsl-button-label-container::after {
        content: "Γρήγορη Σύνδεση" !important; /* Το νέο, καθαρό κείμενο για τα κινητά */
        font-size: 15px !important;
        font-weight: 600 !important;
        letter-spacing: -0.2px !important;
        color: var(--md-sys-color-on-surface, #1a1a1a) !important;
        display: inline-block !important;
    }
}