/*
 * Custom styles for WooCommerce notices and their buttons.
 * This will style the "You can only purchase one type of product at a time..." notice
 * and other WooCommerce notices that appear on your site.
 */

/* General styling for all WooCommerce notice types (message, info, error, notice) */
/* This sets the dark background, light text, border-radius, padding, and flexbox for icon alignment. */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-notice {
    background-color: #1a1a2e !important; /* Force Dark background */
    color: #e0e0e0 !important; /* Force Light text */
    border-radius: 8px !important;
    padding: 15px 25px !important; /* Base padding */
    padding-left: 55px !important; /* Increased left padding to make space for the icon */
    margin-bottom: 25px !important;
    border-left: 5px solid !important; /* Colored border (color defined per type below) */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2) !important;
    font-size: 1.1em !important;
    list-style: none !important; /* Remove list bullet */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3) !important;
    position: relative !important; /* Required for absolute positioning of ::before icon */
    z-index: 10 !important;
    text-align: left !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important; /* Use flexbox for icon and text alignment */
    align-items: center !important; /* Vertically align items in the center */
    min-height: 40px !important; /* Ensure a minimum height for the notice box */
}

/* Styling for the ::before icon for all notice types */
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
    font-family: "WooCommerce" !important; /* Assumes WooCommerce icon font. If not, check your theme's font. */
                                        /* (e.g., try 'Font Awesome 5 Free' or 'Font Awesome\ 5 Free') */
    font-weight: 900 !important; /* Necessary for Font Awesome solid icons */
    font-size: 1.6em !important; /* Icon size */
    position: absolute !important; /* Position absolutely within the notice box */
    left: 15px !important; /* Position from the left edge of the notice */
    top: 50% !important; /* Center vertically */
    transform: translateY(-50%) !important; /* Adjust for perfect vertical centering */
    line-height: 1 !important; /* Prevent extra space around icon */
}


/* Specific styling for the ERROR notice (this will apply to your "one product type" message) */
.woocommerce .woocommerce-error {
    border-color: #dc2626 !important; /* Red border */
    color: #ffcccc !important; /* Lighter red text */
    background-color: #331a1a !important; /* Darker red background */
}
.woocommerce .woocommerce-error::before {
    content: "\e016" !important; /* WooCommerce "times" or "error" icon code */
    color: #dc2626 !important; /* Red icon color */
}

/* Specific styling for SUCCESS/MESSAGE notices (e.g., "Product added to cart", "Product removed") */
/* This also styles the "Acer Predator Helios Neo 18" removed. Undo?" notice. */
.woocommerce .woocommerce-message {
    border-color: #00b894 !important; /* Green border */
    /* text and background from general rule above */
}
.woocommerce .woocommerce-message::before {
    content: "\e017" !important; /* WooCommerce "checkmark" icon code */
    color: #00b894 !important; /* Green icon color */
}

/* Specific styling for INFO notices (e.g., "Your basket is currently empty.") */
.woocommerce .woocommerce-info {
    border-color: #0984e3 !important; /* Blue border */
    /* text and background from general rule above */
}
.woocommerce .woocommerce-info::before {
    content: "\e011" !important; /* WooCommerce "info" icon code */
    color: #0984e3 !important; /* Blue icon color */
}


/* Styling for buttons that appear within WooCommerce notices (e.g., "Undo?") */
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button {
    background-color: #333 !important; /* Dark button background */
    color: #fff !important; /* White text */
    border: 1px solid #555 !important;
    padding: 8px 15px !important;
    border-radius: 5px !important;
    margin-left: 650px !important;
    font-size: 0.9em !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important; /* Remove underline from links acting as buttons */
    display: inline-block !important; /* Ensure proper display for spacing */
}

.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-info .button:hover,
.woocommerce .woocommerce-error .button:hover {
    background-color: #dc2626 !important; /* Red on hover */
    border-color: #dc2626 !important;
    box-shadow: 0 2px 5px rgba(220, 38, 38, 0.4) !important;
}






















/* WooCommerce Cart Page Custom Styles */

/* Overall Page Background - Dark & Red Theme */
body.woocommerce-cart {
    background: linear-gradient(to bottom, #0f0f1c, #1a1a2e);
    color: #e0e0e0; /* Light grey text for readability on dark background */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; /* Consistent font */
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Hide default page title (often redundant) */
.woocommerce-cart .entry-title,
.woocommerce-cart .woocommerce-products-header__title,
.woocommerce-cart .page-title {
    display: none;
}

/* Main Cart Content Area - Overall Container */
.woocommerce-cart .woocommerce {
    max-width: 1600px; /* Max width for the entire cart content */
    margin: 100px auto 40px auto; /* Push content down from header, center horizontally */
    padding: 0 20px; /* Padding from screen edges */
    box-sizing: border-box;
    /* Removed flex properties to revert to default stacked layout */
}

/* Styles for messages (error, info, success) */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    background-color: #1a1a2e; /* Dark background */
    color: #e0e0e0; /* Light text */
    border-radius: 8px;
    padding: 15px 25px;
    margin-bottom: 25px;
    border-left: 5px solid; /* Colored border for type distinction */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    font-size: 1.1em;
    list-style: none; /* Remove list bullet */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
    position: relative;
    z-index: 10; /* Ensure messages are on top */
    text-align: left;
    width: 100%; /* Ensure messages span full width */
    box-sizing: border-box;
}

.woocommerce-message {
    border-color: #00b894; /* Green for success */
}

.woocommerce-info {
    border-color: #0984e3; /* Blue for information */
}

.woocommerce-error {
    border-color: #dc2626; /* Red for errors */
    color: #ffcccc; /* Lighter red text for error message */
    background-color: #331a1a; /* Darker red background for error */
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
    background-color: #333;
    color: #fff;
    border: 1px solid #555;
    padding: 8px 15px;
    border-radius: 5px;
    margin-left: 15px;
    font-size: 0.9em;
    box-shadow: none;
    transition: all 0.2s ease;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
    background-color: #dc2626;
    border-color: #dc2626;
    box-shadow: 0 2px 5px rgba(220, 38, 38, 0.4);
}

/* Product List Section (Full Width) */
.woocommerce-cart .woocommerce-cart-form {
    width: 100%; /* Take full width of parent container */
    margin-bottom: 40px; /* Space before totals or other elements */
    box-sizing: border-box;
}

/* Cart Table Container */
.woocommerce-cart table.shop_table {
    background-color: #1a1a2e; /* Dark background */
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 20px;
    border: none;
    width: 100%;
    margin-bottom: 30px;
}

/* Table Headers */
.woocommerce-cart table.shop_table thead th {
    background-color: #0f0f1c; /* Even darker header background */
    color: #fff;
    font-size: 1.1em;
    font-weight: 700;
    text-transform: uppercase;
    border-bottom: 2px solid #2a2a3a; /* Subtle separator */
    padding: 15px 10px;
    text-align: left;
}

/* Table Body Cells - Force Left Alignment for all content */
.woocommerce-cart table.shop_table tbody td {
    border-top: 1px solid #2a2a3a;
    border-bottom: none;
    padding: 15px 10px;
    vertical-align: middle;
    color: #ccc; /* Light grey text */
    text-align: left !important; /* IMPORTANT: Force left alignment for all cell content */
}

/* Remove item (cross mark) */
.woocommerce-cart table.shop_table .product-remove .remove {
    color: #e0e0e0;
    font-size: 1.5em;
    text-decoration: none;
    transition: color 0.3s ease;
    background: transparent;
    border: none;
    padding: 0;
    line-height: 1;
    display: inline-block;
}
.woocommerce-cart table.shop_table .product-remove .remove:hover {
    color: #dc2626; /* Red on hover */
}

/* Product Name */
.woocommerce-cart table.shop_table .product-name a {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}
.woocommerce-cart table.shop_table .product-name a:hover {
    color: #dc2626; /* Red on hover */
}

/* Product Image */
.woocommerce-cart table.shop_table .product-thumbnail img {
    border-radius: 8px;
    width: 80px;
    height: auto;
    box-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

/* Product Price and Subtotal */
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal {
    color: #dc2626; /* Red color */
    font-weight: bold;
    font-size: 1.1em;
}

/* Quantity Input Field */
.woocommerce-cart .quantity .qty {
    width: 70px;
    padding: 8px;
    border: 1px solid #444;
    border-radius: 5px;
    background-color: #2a2a3a; /* Darker input background */
    color: #dc2626; /* Red text */
    font-size: 1em;
    font-weight: 600;
    text-align: center;
    -moz-appearance: textfield;
}
.woocommerce-cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce-cart .quantity .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.woocommerce-cart .quantity .qty:focus {
    outline: none;
    border-color: #dc2626;
    box-shadow: 0 0 5px rgba(220, 38, 38, 0.5);
}

/* Coupon and Update Cart Section */
.woocommerce-cart .coupon,
.woocommerce-cart .actions {
    background-color: #1a1a2e;
    border-radius: 12px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.4);
    padding: 20px;
    display: flex; /* Keep flex for inner elements of coupon/actions */
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 20px;
    margin-bottom: 30px;
    align-items: center;
}

/* Coupon Input Field */
.woocommerce-cart .coupon .input-text {
    flex-grow: 1;
    padding: 12px;
    border: 1px solid #444;
    border-radius: 8px;
    background-color: #2a2a3a;
    color: #e0e0e0;
    font-size: 1em;
}
.woocommerce-cart .coupon .input-text::placeholder {
    color: #888;
}
.woocommerce-cart .coupon .input-text:focus {
    outline: none;
    border-color: #dc2626;
    box-shadow: 0 0 8px rgba(220, 38, 38, 0.5);
}

/* All Buttons (Apply Coupon, Update Basket, Continue Shopping, Shipping Calc) */
.woocommerce-cart .coupon .button.button,
.woocommerce-cart .actions .button.button,
.woocommerce-cart .wc-backward.button,
.woocommerce-cart #calc_shipping .button.button {
    background: #1a1a2e !important; /* Dark background for consistency */
    color: white !important;
    padding: 12px 25px;
    border: 1px solid #444 !important;
    font-size: 1em;
    font-weight: 600;
    text-align: center;
    border-radius: 50px; /* Pill shape */
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
}

.woocommerce-cart .coupon .button.button:hover,
.woocommerce-cart .actions .button.button:hover,
.woocommerce-cart .wc-backward.button:hover,
.woocommerce-cart #calc_shipping .button.button:hover {
    background: linear-gradient(135deg, #dc2626, #b00000) !important; /* Red gradient on hover */
    box-shadow: 0 6px 15px rgba(220, 38, 38, 0.4) !important;
    transform: translateY(-2px);
    color: #fff !important;
    border-color: #dc2626 !important;
}
.woocommerce-cart .coupon .button.button:focus,
.woocommerce-cart .actions .button.button:focus,
.woocommerce-cart .wc-backward.button:focus,
.woocommerce-cart #calc_shipping .button.button:focus {
    outline: none;
    box-shadow: 0 0 10px rgba(220, 38, 38, 0.7);
}

/* Basket Totals Section (Stacked, Centered, Fixed Width) */
.woocommerce-cart .cart-collaterals {
    width: 100%; /* Take full width of parent container */
    max-width: 1400px; /* Limit max width for better readability on large screens */
    margin: 40px auto; /* Center the block and add vertical spacing */
    box-sizing: border-box;
}

/* Cart Totals Box */
.woocommerce-cart .cart_totals {
    background-color: #0f0f1c; /* Changed background for better contrast */
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 30px;
    margin-top: 0;
    border: none;
    width: 100%;
    box-sizing: border-box;
}

.woocommerce-cart .cart_totals h2 {
    color: ##dc2626;
    font-size: 1.8em;
    margin-bottom: 25px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.woocommerce-cart .cart_totals table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 25px;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    padding: 8px 0; /* Reduced vertical padding for a more compact look */
    border-bottom: none; /* Removed border-bottom for horizontal look */
    white-space: nowrap; /* Prevent text from wrapping within cells */
    color: #f8f8f8; /* Brighter text color for general totals text */
}
.woocommerce-cart .cart_totals table th {
    font-weight: 600;
    text-align: left;
    color: #ffffff; /* Explicitly white for clarity */
}
.woocommerce-cart .cart_totals table td {
    text-align: right; /* Keep values right-aligned for totals */
    font-weight: normal;
}

/* Total Price in Cart Totals */
.woocommerce-cart .cart_totals .order-total td {
    color: #dc2626; /* Red color, ensure it stands out */
    font-size: 1.5em;
    font-weight: bold;
    border-bottom: none;
}

/* Checkout Button - Prominent Red */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    display: block;
    width: 100%;
    background: linear-gradient(135deg, #dc2626, #b00000); /* Red gradient */
    color: white;
    padding: 15px 30px;
    border: none;
    font-size: 1.2em;
    font-weight: 700;
    text-align: center;
    border-radius: 50px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(220, 38, 38, 0.4);
    text-transform: uppercase;
    text-decoration: none;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
    background: linear-gradient(135deg, #b00000, #dc2626); /* Reverse gradient on hover */
    box-shadow: 0 12px 25px rgba(220, 38, 38, 0.6);
    transform: translateY(-3px);
    color: #fff;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus {
    outline: none;
    box-shadow: 0 0 15px rgba(220, 38, 38, 0.7);
}

/* Empty Cart Message Styling */
.woocommerce-cart .cart-empty {
    background-color: #1a1a2e;
    color: #e0e0e0;
    padding: 50px;
    text-align: center;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    font-size: 1.2em;
    margin: 40px auto;
    max-width: 800px;
}
.woocommerce-cart .return-to-shop {
    text-align: center;
    margin-top: 30px;
}
.woocommerce-cart .return-to-shop .button {
    background-color: #333;
    color: #e0e0e0;
    padding: 12px 25px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    border: 1px solid #555;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}
.woocommerce-cart .return-to-shop .button:hover {
    background-color: #dc2626;
    color: #fff;
    border-color: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(220, 38, 38, 0.4);
}


/* Responsive Adjustments */
@media (max-width: 768px) {
    .woocommerce-cart .woocommerce {
        margin-top: 80px; /* Adjust top margin for mobile if header is sticky */
        padding: 0 15px;
    }

    .woocommerce-cart .woocommerce-cart-form,
    .woocommerce-cart .cart-collaterals {
        width: 100%; /* Ensure full width on mobile */
        max-width: 100%; /* Ensure they take full width */
        margin-left: auto; /* Re-center on mobile */
        margin-right: auto; /* Re-center on mobile */
    }

    .woocommerce-cart table.shop_table {
        padding: 10px;
    }
    .woocommerce-cart table.shop_table thead th,
    .woocommerce-cart table.shop_table tbody td {
        font-size: 0.9em;
        padding: 10px 5px;
    }
    .woocommerce-cart .coupon,
    .woocommerce-cart .actions {
        flex-direction: column;
        align-items: stretch;
    }
    .woocommerce-cart .coupon .input-text,
    .woocommerce-cart .button,
    .woocommerce-cart input.button,
    .woocommerce-cart .wc-proceed-to-checkout .checkout-button,
    .woocommerce-cart #calc_shipping .button {
        width: 100%;
        text-align: center;
    }
    .woocommerce-cart .cart_totals {
        padding: 20px;
        margin-top: 20px;
    }
    .woocommerce-cart .cart_totals h2 {
        font-size: 1.5em;
        margin-bottom: 20px;
    }
    .woocommerce-cart .wc-proceed-to-checkout .checkout-button {
        font-size: 1.1em;
        padding: 12px 20px;
    }
}
































/* --- WooCommerce Checkout Page Custom Styles --- */

/* Overall Page Background - Dark & Red Theme */
body.woocommerce-checkout {
    background: linear-gradient(to bottom, #0f0f1c, #1a1a2e);
    color: #e0e0e0; /* Light grey text for readability on dark background */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; /* Consistent font */
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Hide default page title (often redundant) */
.woocommerce-checkout .entry-title,
.woocommerce-checkout .woocommerce-products-header__title,
.woocommerce-checkout .page-title {
    display: none;
}

/* Main Checkout Content Area - Overall Container */
.woocommerce-checkout .woocommerce {
    max-width: 1600px; /* Max width for the entire checkout content */
    margin: 100px auto 40px auto; /* Push content down from header, center horizontally */
    padding: 0 20px; /* Padding from screen edges */
    box-sizing: border-box;
}

/* Styles for messages (returning customer, coupon, error, info, success) */
.woocommerce-checkout .woocommerce-form-coupon,
.woocommerce-checkout .woocommerce-form-login,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error {
    background-color: #1a1a2e; /* Dark background */
    color: #e0e0e0; /* Light text */
    border-radius: 8px;
    padding: 15px 25px;
    margin-bottom: 25px;
    border-left: 5px solid; /* Colored border for type distinction */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    font-size: 1.1em;
    list-style: none; /* Remove list bullet */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
    position: relative;
    z-index: 10;
    text-align: left;
    width: 100%;
    box-sizing: border-box;
}

/* Specific colors for different message types */
.woocommerce-checkout .woocommerce-message {
    border-color: #00b894; /* Green for success/info messages like "returning customer" */
}

.woocommerce-checkout .woocommerce-info {
    border-color: #0984e3; /* Blue for general info */
}

.woocommerce-checkout .woocommerce-error {
    border-color: #dc2626; /* Red for errors */
    color: #ffcccc; /* Lighter red text for error message */
    background-color: #331a1a; /* Darker red background for error */
}

.woocommerce-checkout .woocommerce-form-coupon p,
.woocommerce-checkout .woocommerce-form-login p {
    color: #e0e0e0;
    margin-bottom: 15px;
}

.woocommerce-checkout .woocommerce-form-coupon .button,
.woocommerce-checkout .woocommerce-form-login .button {
    background-color: #333;
    color: #fff;
    border: 1px solid #555;
    padding: 8px 15px;
    border-radius: 5px;
    margin-left: 15px;
    font-size: 0.9em;
    box-shadow: none;
    transition: all 0.2s ease;
}

.woocommerce-checkout .woocommerce-form-coupon .button:hover,
.woocommerce-checkout .woocommerce-form-login .button:hover {
    background-color: #dc2626;
    border-color: #dc2626;
    box-shadow: 0 2px 5px rgba(220, 38, 38, 0.4);
}

/* Checkout Form Container - Billing, Shipping, Additional Info */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
    background-color: #1a1a2e; /* Dark background */
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 30px;
    margin-bottom: 30px;
    border: none;
    box-sizing: border-box;
}

/* Headings within sections */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading {
    color: #fff;
    font-size: 1.8em;
    margin-bottom: 25px;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #2a2a3a;
    padding-bottom: 15px;
}

/* Form Row (Individual field container) */
.woocommerce-checkout .form-row {
    margin-bottom: 20px;
}

/* Labels for form fields */
.woocommerce-checkout .form-row label {
    color: #f0f0f0; /* Lighter white for labels */
    font-weight: 600;
    margin-bottom: 8px;
    display: block;
    font-size: 0.95em;
}

.woocommerce-checkout .form-row label.checkbox {
    display: inline-block; /* For remember me, create account checkboxes */
}

.woocommerce-checkout .form-row label abbr.required {
    color: #dc2626; /* Red for required asterisk */
    text-decoration: none;
    font-weight: bold;
    margin-left: 3px;
}

/* Input Fields (Text, Email, Phone, Password, Textarea) */
.woocommerce-checkout .input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select {
    width: 100%;
    padding: 12px;
    border: 1px solid #444;
    border-radius: 8px;
    background-color: #2a2a3a; /* Darker input background */
    color: #e0e0e0; /* Light text input */
    font-size: 1em;
    box-sizing: border-box; /* Include padding and border in element's total width and height */
    transition: all 0.3s ease;
}

.woocommerce-checkout .input-text::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: #888;
}

.woocommerce-checkout .input-text:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
    outline: none;
    border-color: #dc2626; /* Red border on focus */
    box-shadow: 0 0 8px rgba(220, 38, 38, 0.5);
    background-color: #333; /* Slightly lighter on focus */
}

/* Select Dropdown Arrows (if default not suitable) */
/* Note: Custom styling for select dropdown arrows is complex and might require JavaScript for full cross-browser consistency */
.woocommerce-checkout select {
    -webkit-appearance: none; /* Remove default appearance */
    -moz-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;utf8,<svg fill="%23e0e0e0" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>'); /* Custom arrow */
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px; /* Space for arrow */
}


/* Order Review Section */
.woocommerce-checkout #order_review {
    background-color: #0f0f1c; /* Changed background for better contrast */
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 30px;
    margin-top: 0;
    border: none;
    box-sizing: border-box;
}

/* Order Review Table */
.woocommerce-checkout #order_review table.shop_table {
    background-color: transparent; /* Transparent for table background, use parent */
    border-radius: 0;
    box-shadow: none;
    border: none;
    width: 100%;
    margin-bottom: 25px;
}

.woocommerce-checkout #order_review table.shop_table tbody td,
.woocommerce-checkout #order_review table.shop_table tfoot td,
.woocommerce-checkout #order_review table.shop_table tfoot th {
    padding: 10px 0;
    border-bottom: 1px dashed #2a2a3a; /* Dashed separator */
    color: #e0e0e0;
}

.woocommerce-checkout #order_review table.shop_table tfoot th {
    font-weight: 600;
    text-align: left;
    color: #ffffff;
}

.woocommerce-checkout #order_review table.shop_table .product-name {
    color: #fff;
}

.woocommerce-checkout #order_review table.shop_table .product-total {
    color: #dc2626; /* Red for item totals */
    font-weight: bold;
}

/* Order Total in Review */
.woocommerce-checkout #order_review table.shop_table .order-total th,
.woocommerce-checkout #order_review table.shop_table .order-total td {
    border-top: 2px solid #dc2626; /* Stronger top border for total */
    border-bottom: none;
    font-size: 1.5em;
    font-weight: bold;
    color: #dc2626; /* Red for the final total */
    padding-top: 15px;
}

/* Payment Methods Section */
.woocommerce-checkout #payment {
    background-color: #1a1a2e; /* Dark background */
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.4);
    padding: 20px;
    border: 1px solid #2a2a3a;
}

.woocommerce-checkout #payment ul.wc_payment_methods {
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-checkout #payment ul.wc_payment_methods li {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #2a2a3a; /* Dashed separator between methods */
}
.woocommerce-checkout #payment ul.wc_payment_methods li:last-child {
    border-bottom: none; /* No border for the last one */
    margin-bottom: 0;
    padding-bottom: 0;
}

.woocommerce-checkout #payment .payment_box {
    background-color: #0f0f1c; /* Even darker for payment details box */
    color: #ccc;
    padding: 15px;
    border-radius: 6px;
    margin-top: 10px;
    border: 1px solid #2a2a3a;
    font-size: 0.95em;
    box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
}

.woocommerce-checkout #payment .payment_box p {
    margin-bottom: 10px;
}
.woocommerce-checkout #payment .payment_box p:last-child {
    margin-bottom: 0;
}

/* Privacy Policy and Terms Checkbox */
.woocommerce-checkout #payment .terms {
    margin-top: 20px;
    margin-bottom: 25px;
    font-size: 0.9em;
    color: #e0e0e0;
}

.woocommerce-checkout #payment .terms input[type="checkbox"] {
    margin-right: 8px;
    /* Basic styling for checkbox, advanced styling needs more code */
    width: 18px;
    height: 18px;
    vertical-align: middle;
    background-color: #2a2a3a;
    border: 1px solid #444;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    position: relative;
    top: -1px;
}

.woocommerce-checkout #payment .terms input[type="checkbox"]:checked {
    background-color: #dc2626; /* Red when checked */
    border-color: #dc2626;
}

.woocommerce-checkout #payment .terms input[type="checkbox"]:checked::after {
    content: '✔'; /* Checkmark symbol */
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
}

.woocommerce-checkout #payment .terms a {
    color: #dc2626; /* Red links */
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}
.woocommerce-checkout #payment .terms a:hover {
    color: #ff4d4d;
    text-decoration: underline;
}

/* Place Order Button - Prominent Red */
.woocommerce-checkout #place_order {
    display: block;
    width: 100%;
    background: linear-gradient(135deg, #dc2626, #b00000); /* Red gradient */
    color: white;
    padding: 18px 30px; /* Slightly larger button */
    border: none;
    font-size: 1.3em; /* Larger font size */
    font-weight: 700;
    text-align: center;
    border-radius: 50px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(220, 38, 38, 0.4);
    text-transform: uppercase;
    text-decoration: none;
    margin-top: 30px; /* Space above button */
}
.woocommerce-checkout #place_order:hover {
    background: linear-gradient(135deg, #b00000, #dc2626); /* Reverse gradient on hover */
    box-shadow: 0 12px 25px rgba(220, 38, 38, 0.6);
    transform: translateY(-3px);
    color: #fff;
}
.woocommerce-checkout #place_order:focus {
    outline: none;
    box-shadow: 0 0 15px rgba(220, 38, 38, 0.7);
}


/* Responsive Adjustments for Checkout Page */
@media (max-width: 992px) {
    .woocommerce-checkout .woocommerce-checkout-review-order-table,
    .woocommerce-checkout #payment {
        width: 100%; /* Ensure order review and payment are full width on smaller screens */
        float: none;
    }
}

@media (max-width: 768px) {
    .woocommerce-checkout .woocommerce {
        margin-top: 80px;
        padding: 0 15px;
    }

    .woocommerce-checkout .col2-set .col-1,
    .woocommerce-checkout .col2-set .col-2 {
        width: 100%; /* Make billing/shipping columns stack */
        float: none;
        margin-right: 0;
        margin-bottom: 30px; /* Space between stacked columns */
    }

    .woocommerce-checkout .woocommerce-billing-fields,
    .woocommerce-checkout .woocommerce-shipping-fields,
    .woocommerce-checkout .woocommerce-additional-fields,
    .woocommerce-checkout #order_review,
    .woocommerce-checkout #payment {
        padding: 20px;
        margin-bottom: 20px;
    }

    .woocommerce-checkout h3,
    .woocommerce-checkout #order_review_heading {
        font-size: 1.5em;
        margin-bottom: 20px;
        padding-bottom: 10px;
    }

    .woocommerce-checkout .input-text,
    .woocommerce-checkout textarea,
    .woocommerce-checkout select {
        padding: 10px;
        font-size: 0.9em;
    }

    .woocommerce-checkout #order_review table.shop_table tbody td,
    .woocommerce-checkout #order_review table.shop_table tfoot td,
    .woocommerce-checkout #order_review table.shop_table tfoot th {
        font-size: 0.95em;
        padding: 8px 0;
    }

    .woocommerce-checkout #order_review table.shop_table .order-total th,
    .woocommerce-checkout #order_review table.shop_table .order-total td {
        font-size: 1.3em;
        padding-top: 10px;
    }

    .woocommerce-checkout #place_order {
        font-size: 1.1em;
        padding: 15px 20px;
        margin-top: 20px;
    }

    .woocommerce-checkout .woocommerce-message,
    .woocommerce-checkout .woocommerce-info,
    .woocommerce-checkout .woocommerce-error,
    .woocommerce-checkout .woocommerce-form-coupon,
    .woocommerce-checkout .woocommerce-form-login {
        font-size: 1em;
        padding: 15px;
    }
    .woocommerce-checkout .woocommerce-message .button,
    .woocommerce-checkout .woocommerce-info .button,
    .woocommerce-checkout .woocommerce-error .button,
    .woocommerce-checkout .woocommerce-form-coupon .button,
    .woocommerce-checkout .woocommerce-form-login .button {
        display: block;
        width: 100%;
        margin-left: 0;
        margin-top: 10px;
        box-sizing: border-box;
    }
}


























































/* --- WooCommerce Checkout Page Custom Styles --- */

/* ... (all your existing CSS for the checkout page) ... */

/* Target and hide ONLY the "Order notes" (Additional Information) text area and its heading */
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper, /* This targets the wrapper around the actual field */
.woocommerce-checkout #order_comments_field, /* The specific ID for the order notes textarea field */
.woocommerce-checkout .woocommerce-additional-fields h3 { /* The heading for additional information */
    display: none !important;
}

/* If the heading is still visible for some reason, also try this: */
.woocommerce-checkout .woocommerce-additional-fields > h3 {
    display: none !important;
}



/* Hide WooCommerce page titles */
.woocommerce .entry-title {
    display: none !important;
}

























































/* --- WooCommerce My Account Page Custom Styles --- */

/* Overall Page Background - Dark & Red Theme */
body.woocommerce-account {
    background: linear-gradient(to bottom, #0f0f1c, #1a1a2e);
    color: #e0e0e0; /* Light grey text for readability on dark background */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; /* Consistent font */
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Hide default page title (often redundant) */
.woocommerce-account .entry-title,
.woocommerce-account .woocommerce-products-header__title,
.woocommerce-account .page-title {
    display: none;
}

/* Main My Account Content Area - Overall Container */
.woocommerce-account .woocommerce {
    max-width: 1600px; /* Max width for the entire content */
    margin: 100px auto 40px auto; /* Push content down from header, center horizontally */
    padding: 0 20px; /* Padding from screen edges */
    box-sizing: border-box;
    display: flex; /* Use flexbox for side-by-side navigation and content */
    gap: 30px; /* Space between navigation and content */
    align-items: flex-start; /* Align items to the top */
}

/* My Account Navigation Menu */
.woocommerce-account .woocommerce-MyAccount-navigation {
    flex: 0 0 280px; /* Fixed width for navigation */
    background-color: #1a1a2e;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 20px;
    box-sizing: border-box;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link {
    margin-bottom: 5px; /* Space between links */
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a {
    display: block;
    padding: 12px 15px;
    color: #ccc; /* Default link color */
    text-decoration: none;
    font-weight: 600;
    border-radius: 8px;
    transition: all 0.3s ease;
    border: 1px solid transparent; /* For hover effect */
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
    background-color: #2a2a3a; /* Darker background on hover */
    color: #fff;
    border-color: #444;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
    background: linear-gradient(135deg, #dc2626, #b00000); /* Red gradient for active link */
    color: #fff;
    border-color: #dc2626;
    box-shadow: 0 4px 10px rgba(220, 38, 38, 0.4);
}

/* My Account Content Area */
.woocommerce-account .woocommerce-MyAccount-content {
    flex-grow: 1; /* Take up remaining space */
    background-color: #1a1a2e;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    padding: 30px;
    box-sizing: border-box;
    min-height: 400px; /* Ensure a minimum height */
}

/* Headings within content sections */
.woocommerce-account .woocommerce-MyAccount-content h1,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: #fff;
    font-size: 1.8em;
    margin-bottom: 25px;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #2a2a3a;
    padding-bottom: 15px;
}

/* Paragraphs within content */
.woocommerce-account .woocommerce-MyAccount-content p {
    color: #e0e0e0;
    margin-bottom: 1em;
}

.woocommerce-account .woocommerce-MyAccount-content p strong {
    color: #fff; /* Make strong text stand out */
}

/* Links within content */
.woocommerce-account .woocommerce-MyAccount-content a {
    color: #dc2626; /* Red links */
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}
.woocommerce-account .woocommerce-MyAccount-content a:hover {
    color: #ff4d4d;
    text-decoration: underline;
}

/* Tables (Orders, Downloads) */
.woocommerce-account table.shop_table,
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-MyAccount-downloads {
    background-color: #0f0f1c; /* Even darker background for tables */
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    padding: 15px;
    border: none;
    width: 100%;
    margin-top: 25px;
    box-sizing: border-box;
    border-collapse: collapse; /* Ensure proper table borders */
}

.woocommerce-account table.shop_table thead th,
.woocommerce-account .woocommerce-orders-table thead th,
.woocommerce-account .woocommerce-MyAccount-downloads thead th {
    background-color: #0f0f1c; /* Keep header consistent */
    color: #fff;
    font-size: 1.0em;
    font-weight: 700;
    text-transform: uppercase;
    border-bottom: 2px solid #2a2a3a;
    padding: 12px 10px;
    text-align: left;
}

.woocommerce-account table.shop_table tbody td,
.woocommerce-account .woocommerce-orders-table tbody td,
.woocommerce-account .woocommerce-MyAccount-downloads tbody td {
    border-top: 1px solid #2a2a3a;
    padding: 12px 10px;
    vertical-align: middle;
    color: #ccc;
    text-align: left; /* Default to left for content */
}

/* Specific styling for Order Status */
.woocommerce-orders-table__cell-order-status .woocommerce-orders-table__header.woocommerce-orders-table__header--order-status,
.woocommerce-orders-table__cell-order-status {
    text-align: center; /* Center align status if desired */
}
.woocommerce-orders-table__cell-order-status mark {
    background-color: transparent; /* Remove default yellow background */
    padding: 5px 10px;
    border-radius: 5px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.85em;
    border: 1px solid; /* Add border for status colors */
}

/* Example Order Status Colors (adjust as needed) */
.woocommerce-orders-table__cell-order-status mark.processing {
    color: #00b894; /* Green */
    border-color: #00b894;
}
.woocommerce-orders-table__cell-order-status mark.on-hold {
    color: #0984e3; /* Blue */
    border-color: #0984e3;
}
.woocommerce-orders-table__cell-order-status mark.completed {
    color: #28a745; /* Darker Green */
    border-color: #28a745;
}
.woocommerce-orders-table__cell-order-status mark.cancelled,
.woocommerce-orders-table__cell-order-status mark.failed,
.woocommerce-orders-table__cell-order-status mark.refunded {
    color: #dc2626; /* Red */
    border-color: #dc2626;
}
.woocommerce-orders-table__cell-order-status mark.pending {
    color: #ffc107; /* Yellow */
    border-color: #ffc107;
}

/* "View" Button in Orders Table */
.woocommerce-orders-table__cell-order-actions .button {
    background-color: #333 !important;
    color: #fff !important;
    padding: 8px 15px;
    border: 1px solid #555 !important;
    border-radius: 50px !important; /* Pill shape */
    font-size: 0.9em;
    transition: all 0.3s ease;
    text-transform: uppercase;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}
.woocommerce-orders-table__cell-order-actions .button:hover {
    background: linear-gradient(135deg, #dc2626, #b00000) !important;
    border-color: #dc2626 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(220, 38, 38, 0.4);
}

/* Dashboard "From your account dashboard..." text */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    font-size: 1.1em;
    color: #f0f0f0;
}

/* Account Details and Address Forms */
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields__field-wrapper {
    margin-top: 25px;
}

.woocommerce-account .form-row {
    margin-bottom: 20px;
}

.woocommerce-account .form-row label {
    color: #f0f0f0;
    font-weight: 600;
    margin-bottom: 8px;
    display: block;
    font-size: 0.95em;
}

.woocommerce-account .form-row label abbr.required {
    color: #dc2626;
    text-decoration: none;
    font-weight: bold;
    margin-left: 3px;
}

/* Input Fields (Text, Email, Password) */
.woocommerce-account .input-text,
.woocommerce-account textarea,
.woocommerce-account select {
    width: 100%;
    padding: 12px;
    border: 1px solid #444;
    border-radius: 8px;
    background-color: #2a2a3a;
    color: #e0e0e0;
    font-size: 1em;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.woocommerce-account .input-text::placeholder,
.woocommerce-account textarea::placeholder {
    color: #888;
}

.woocommerce-account .input-text:focus,
.woocommerce-account textarea:focus,
.woocommerce-account select:focus {
    outline: none;
    border-color: #dc2626;
    box-shadow: 0 0 8px rgba(220, 38, 38, 0.5);
    background-color: #333;
}

/* Password strength meter */
.woocommerce-password-strength {
    background-color: #0f0f1c;
    border-radius: 5px;
    padding: 5px 10px;
    margin-top: 10px;
    color: #ccc;
    font-size: 0.9em;
}
.woocommerce-password-strength.strong { color: #00b894; }
.woocommerce-password-strength.good { color: #8bc34a; }
.woocommerce-password-strength.short,
.woocommerce-password-strength.bad { color: #dc2626; }

/* Save Changes Button */
.woocommerce-account button[type="submit"].button {
    background: linear-gradient(135deg, #dc2626, #b00000); /* Red gradient */
    color: white;
    padding: 12px 25px;
    border: none;
    font-size: 1.1em;
    font-weight: 700;
    text-align: center;
    border-radius: 50px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(220, 38, 38, 0.4);
    text-transform: uppercase;
    text-decoration: none;
    margin-top: 20px;
    display: inline-block; /* For better button behavior */
}
.woocommerce-account button[type="submit"].button:hover {
    background: linear-gradient(135deg, #b00000, #dc2626); /* Reverse gradient on hover */
    box-shadow: 0 12px 25px rgba(220, 38, 38, 0.6);
    transform: translateY(-3px);
    color: #fff;
}
.woocommerce-account button[type="submit"].button:focus {
    outline: none;
    box-shadow: 0 0 15px rgba(220, 38, 38, 0.7);
}


/* Styles for messages (error, info, success) - consistent with cart/checkout */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    background-color: #1a1a2e; /* Dark background */
    color: #e0e0e0; /* Light text */
    border-radius: 8px;
    padding: 15px 25px;
    margin-bottom: 25px;
    border-left: 5px solid; /* Colored border for type distinction */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    font-size: 1.1em;
    list-style: none; /* Remove list bullet */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
    position: relative;
    z-index: 10;
    text-align: left;
    width: 100%;
    box-sizing: border-box;
}

.woocommerce-account .woocommerce-message {
    border-color: #00b894; /* Green for success */
}

.woocommerce-account .woocommerce-info {
    border-color: #0984e3; /* Blue for information */
}

.woocommerce-account .woocommerce-error {
    border-color: #dc2626; /* Red for errors */
    color: #ffcccc; /* Lighter red text for error message */
    background-color: #331a1a; /* Darker red background for error */
}

.woocommerce-account .woocommerce-message .button,
.woocommerce-account .woocommerce-info .button,
.woocommerce-account .woocommerce-error .button {
    background-color: #333;
    color: #fff;
    border: 1px solid #555;
    padding: 8px 15px;
    border-radius: 5px;
    margin-left: 15px;
    font-size: 0.9em;
    box-shadow: none;
    transition: all 0.2s ease;
}

.woocommerce-account .woocommerce-message .button:hover,
.woocommerce-account .woocommerce-info .button:hover,
.woocommerce-account .woocommerce-error .button:hover {
    background-color: #dc2626;
    border-color: #dc2626;
    box-shadow: 0 2px 5px rgba(220, 38, 38, 0.4);
}


/* Responsive Adjustments for My Account Page */
@media (max-width: 992px) {
    .woocommerce-account .woocommerce {
        flex-direction: column; /* Stack navigation and content vertically */
        gap: 20px;
        margin-top: 80px;
        padding: 0 15px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        flex: none; /* Remove fixed width */
        width: 100%; /* Take full width */
        padding: 15px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex; /* Make navigation links horizontal */
        flex-wrap: wrap;
        gap: 5px; /* Space between horizontal links */
        justify-content: center; /* Center the links */
    }

    .woocommerce-account .woocommerce-MyAccount-navigation-link {
        margin-bottom: 0; /* Remove vertical margin for horizontal layout */
    }

    .woocommerce-account .woocommerce-MyAccount-navigation-link a {
        padding: 10px 12px;
        font-size: 0.9em;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 20px;
    }

    .woocommerce-account .woocommerce-MyAccount-content h1,
    .woocommerce-account .woocommerce-MyAccount-content h2,
    .woocommerce-account .woocommerce-MyAccount-content h3 {
        font-size: 1.5em;
        margin-bottom: 20px;
        padding-bottom: 10px;
    }

    .woocommerce-account table.shop_table,
    .woocommerce-account .woocommerce-orders-table,
    .woocommerce-account .woocommerce-MyAccount-downloads {
        padding: 10px;
    }

    .woocommerce-account table.shop_table thead th,
    .woocommerce-account table.shop_table tbody td {
        font-size: 0.9em;
        padding: 8px 5px;
    }

    .woocommerce-account button[type="submit"].button {
        width: 100%; /* Full width button on smaller screens */
        font-size: 1em;
        padding: 12px 20px;
    }

    .woocommerce-account .woocommerce-message,
    .woocommerce-account .woocommerce-info,
    .woocommerce-account .woocommerce-error {
        font-size: 1em;
        padding: 15px;
    }
}

