/**
 * Custom CSS Snippets
 * 
 * This file consolidates all custom CSS snippets from the
 * "Simple Custom CSS and JS" WordPress plugin.
 * 
 * Consolidated on 2026-04-15 from 20 individual snippets.
 * Do not edit manually — use the child theme CSS or plugin directly.
 */

/* [3524] Tawk.to Mobile Badge */
/* ── Tawk Unread Badge — matches cc_cart_count style ── */
.tawk-unread-badge {
    display: none;
    background-color: #e53935;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    border-radius: 50px;
    text-align: center;
    vertical-align: middle;
    margin-left: 3px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    pointer-events: none;
}

.tawk-unread-badge.has-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* [3488] Hide Query Monitor on Mobile */
@media only screen and (max-width: 767px) {
    #query-monitor-main {
        display: none !important;
    }
}

/* [3179] Xootix SMS CSS */
.xoo-el-sms-consent-text {
	line-height: 1 !important;
}

/* [3101] WPC Quick View Popup Customizations */
/* === WPC Smart Quick View Popup Customizations (Optimized) === */

/* 1. Primary background on all major containers + thumbnails area */
#woosq-popup,
.woosq-popup,
#woosq-popup .woocommerce.single-product.woosq-product,
#woosq-popup .product,
#woosq-popup .summary,
#woosq-popup .summary-content,
#woosq-popup .thumbnails,
.woocommerce.quick-view-product {
    background-color: var(--e-global-color-primary) !important;
}

/* Override thumbnails specific background (plugin sets #f9f9f9) */
.woosq-product .thumbnails {
    background-color: var(--e-global-color-primary) !important;
}

/* 2. Smaller, visible title */
#woosq-popup .product_title.entry-title {
    font-size: 1.45rem !important;
    margin: 0 0 0.5rem !important;
    display: block !important;
    color: var(--e-global-color-text) !important; /* ensure consistency */
}

/* 3. Hide Add to Bag / Add to Cart when product is out of stock */
#woosq-popup .product.outofstock .add_to_cart_button,
#woosq-popup .product.outofstock .single_add_to_cart_button,
#woosq-popup .product.outofstock .button.product_type_simple,
#woosq-popup .product.outofstock .button {
    display: none !important;
}

/* Optional: Show clear out-of-stock notice */
#woosq-popup .product.outofstock .summary-content::before {
    content: "Out of Stock – Sorry!";
    display: block;
    margin: 1rem 0;
    padding: 12px;
    background: rgba(255, 80, 80, 0.2);
    border-radius: 6px;
    color: var(--e-global-color-text) !important;
    text-align: center;
    font-weight: bold;
}

/* 4. Force ALL text + icons to global text color (strong override) */
#woosq-popup,
#woosq-popup *,
.woosq-popup,
.woosq-popup *,
.woocommerce.single-product.woosq-product,
.woocommerce.single-product.woosq-product * {
    color: var(--e-global-color-text) !important;
}

/* Targeted fixes for plugin-hardcoded elements */
.view-details-btn,
.view-details-btn:hover,
.mfp-woosq .mfp-close:before,
.mfp-woosq .mfp-arrow:before,
.mfp-woosq .mfp-preloader:before,
.woosq-product .thumbnails .slick-dots li button:before {
    color: var(--e-global-color-text) !important;
}

/* Links – prevent them from disappearing if global text is similar to bg */
#woosq-popup a,
#woosq-popup a:hover,
#woosq-popup .product_meta a:hover {
    color: var(--e-global-color-accent) !important;
}

/* Remove box-shadow from View Details button (plugin uses shadow + inset effect) */
.view-details-btn {
    box-shadow: none !important;
    background-color: #000000 !important; /* solid black background */
}

/* Make each product meta item (SKU, Category, etc.) appear on its own line */
#woosq-popup .product_meta > span {
    display: block !important;
    margin-bottom: 0.5em !important;
}

/* Remove any border from the Magnific Popup close button */
.mfp-woosq .mfp-close {
    border: none !important;
    background: transparent !important; /* usually already is, but just in case */
}

/* Optional: Slightly better mobile title size */
@media (max-width: 640px) {
    #woosq-popup .product_title.entry-title {
        font-size: 1.3rem !important;
    }
}

/* View Details button: 2px accent border + rounded */
.view-details-btn {
    border-top: 2px solid var(--e-global-color-a495fd4) !important;
}

/* Add to Bag button: same 2px accent border + rounded (when visible) */
#woosq-popup .add_to_cart_button,
#woosq-popup .single_add_to_cart_button,
#woosq-popup .button.product_type_simple {
    border: 2px solid var(--e-global-color-accent) !important;
    border-radius: 20px !important;
	background-color: var(--e-global-color-primary) !important;
}

/* Add top margin to product meta section */
#woosq-popup .product_meta {
    margin-top: 10px !important;
}

/* Entire popup wrapper: 20px border radius */
#woosq-popup,
.woosq-popup {
    border-radius: 20px !important;
    overflow: hidden !important; /* ensures inner content respects the rounded corners */
}

/* === End customizations === */

/* [2555] Xootix Social Login */
.xoo-sl-loginvia span:nth-child(1), .xoo-sl-loginvia span:nth-child(3) {
    border-bottom: 1px solid var(--e-global-color-text) !important;
}

/* [2118] Ally Accessibility Button */
/* Hide Ally button on mobile by default */
@media (max-width: 767px) {
    #ea11y-root,
    .ea11y-widget-open-button,
    .ea11y-widget-button {
        display: none !important;
    }
}

/* Show it ONLY on the accessibility statement page on mobile */
@media (max-width: 767px) {
    body.page-id-1496 #ea11y-root,
    body.page-id-1496 .ea11y-widget-open-button,
    body.page-id-1496 .ea11y-widget-button {
        display: block !important;
    }
}

/* [2097] View Cart Button */
.added_to_cart {
	display: none !important;
}

/* [2080] Hours */
/* REMOVE BORDERS & COLORS FROM BUSINESS HOURS TABLE (Beaver Builder or similar shortcode) */
.mabel-bhi-businesshours,
.mabel-bhi-businesshours,
.mabel-bhi-businesshours tbody,
.mabel-bhi-businesshours tr,
.mabel-bhi-businesshours td {
    border: none !important;
    border-color: transparent !important;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--e-global-color-text) !important;     /* white text to match your dark theme */
    padding: 8px 0 !important;     /* optional: clean spacing */
}

/* Remove any inline styles overriding */
.elementor-shortcode table.mabel-bhi-businesshours {
    border-color: transparent !important;
}

/* Optional: make current day stand out subtly */
.mabel-bhi-businesshours tr.mbhi-is-current td {
    font-weight: 600 !important;
    color: var(--e-global-color-accent) !important; /* your accent color */
}

/* [2072] WooCommerce Notices */
/* Success Notice, Info, and Error (including the button inside error) */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    background-color: var(--e-global-color-primary) !important;
    border-left: 4px solid var(--e-global-color-accent) !important;
	border-top: 2px solid var(--e-global-color-accent) !important;
    color: var(--e-global-color-text) !important;
}

/* Style the "View Bag" button inside the error notice to match */
.woocommerce-error .button.wc-forward {
    background-color: var(--e-global-color-accent) !important;
    color: var(--e-global-color-primary) !important; /* contrasts with accent */
    border: none !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

.woocommerce-error .button.wc-forward:hover {
    background-color: var(--e-global-color-accent-hover, var(--e-global-color-accent)) !important;
    opacity: 0.9 !important;
}

.woocommerce-info::before {
    color: var(--e-global-color-accent) !important;
}
.woocommerce-message::before {
    color: var(--e-global-color-accent) !important;
}

/* Style for WooCommerce Blocks Store Notices (the info banner) */
.wc-block-store-notice,
.wc-block-components-notices .wc-block-components-notice-banner.is-info {
    background-color: var(--e-global-color-primary) !important;
    border-left: 4px solid var(--e-global-color-accent) !important;
    border-top: 2px solid var(--e-global-color-accent) !important;
    color: var(--e-global-color-text) !important;
    border-radius: 0 !important;
    padding: 1em !important;
    margin: 1em 0 !important;
}

/* Style the SVG icon inside the info notice */
.wc-block-components-notice-banner.is-info svg {
    fill: var(--e-global-color-accent) !important;
    color: var(--e-global-color-accent) !important;
    width: 24px !important;
    height: 24px !important;
    flex-shrink: 0;
}

/* Ensure the content text matches */
.wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content {
    color: var(--e-global-color-text) !important;
    font-size: 1em !important;
}

/* [2063] Wishlist Button */
/* Hide all text in the wishlist button */
.alg-wc-wl-btn .alg-wc-wl-btn-text {
    display: none !important;
}

/* Hide the loading spinner (optional, if you don't want it visible) */
.alg-wc-wl-btn .loading {
    display: none;
}

/* Style the button as a minimal heart icon */
.alg-wc-wl-btn {
    background: transparent !important;   /* Remove button background */
    border: none !important;              /* Remove border */
    padding: 8px !important;              /* Adjust spacing around the icon */
    box-shadow: none !important;          /* Remove any shadow */
    min-width: auto !important;           /* Allow button to shrink to icon size */
    width: auto !important;
    height: auto !important;
    text-align: center;
}

/* Ensure only the icon is visible and centered */
.alg-wc-wl-view-state i.fas.fa-heart {
    font-size: 24px;                      /* Adjust heart size as needed */
    margin: 0 !important;
}

/* Default state: Not favorited (white heart outline) */
.alg-wc-wl-view-state-add i.fas.fa-heart {
    color: white !important;
}

/* Favorited state: Filled/colored heart using your accent variable */
.alg-wc-wl-view-state-remove i.fas.fa-heart {
    color: var(--e-global-color-accent) !important;
}

/* Optional: Hover effect for better UX */
.alg-wc-wl-btn:hover i.fas.fa-heart {
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

/* Wishlist counter — hidden state (toggled by JS) */
.alg-wc-wl-counter--hidden {
    display: none !important;
}

/* [2049] Wishlist Modal */
/* 1. Make the entire checkbox wrapper clickable */
.algwcwishlistmodal-checkbox-wrapper {
    cursor: pointer;
    user-select: none; /* Prevent text selection when clicking */
}

/* Make the label cover the entire wrapper area */
.algwcwishlistmodal-checkbox-wrapper label {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    cursor: pointer;
    z-index: 1; /* Place it above the text but below the checkbox SVG */
}

/* Hide the actual checkbox input (visually, but keep it functional) */
.algwcwishlistmodal-checkbox-wrapper input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

/* 2. Vertically align the checkbox with the text */
.algwcwishlistmodal-checkbox-wrapper {
    display: flex !important;
    align-items: center; /* Vertical center alignment */
    position: relative;
    padding: 12px 16px; /* Optional: nicer spacing inside the clickable area */
    gap: 12px; /* Space between checkbox and text */
}

.algwcwishlistmodal-checkbox-wrapper .titlebox {
    flex: 1;
    margin: 0;
    font-size: 16px; /* Adjust if needed */
}

/* Ensure the custom checkbox SVG is centered vertically */
.algwcwishlistmodal-checkbox-wrapper .cbx {
    margin-top: 0;
    flex-shrink: 0;
}

/* 3. Add white border with 20px border-radius to the modal */
.algwcwishlistmodal {
    border: 3px solid white !important;
    border-radius: 20px !important;
    overflow: hidden; /* Ensures content respects the rounded corners */
}

/* Optional: Add a subtle backdrop shadow for better elevation */
.algwcwishlistmodal {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

/* Optional: Slight padding inside the modal for better content spacing */
.algwcwishlistmodal > div {
    padding: 20px;
}

/* [2004] Header Wishlist & Bag Icons */
.cc-compass .licon::before {
    content: "\f290";  /* Font Awesome regular shopping bag (far fa-bag-shopping or far fa-shopping-bag) - elegant outlined style for luxury */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome; /* Adjust version if needed */
    font-weight: 900; /* 900 for solid, 400 for regular */
    font-size: 1.5em; /* Adjust size for elegance */
}

/* Hide the original icon if it still shows */
.cc-compass .licon {
    background: none !important;
    font-style: normal !important;
}

.cc-compass-count {
    background: #000; /* Black for luxury */
    color: #fff;
	border: 2px solid #fff; /* Optional white border for premium contrast/pop */
}

.cc_cart_items_list .ccicon-cart::before {
    content: "\f290";  /* Font Awesome regular shopping bag (far fa-bag-shopping or far fa-shopping-bag) - elegant outlined style for luxury */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome; /* Covers common versions */
    font-weight: 900; /* 900 for solid/filled; use 400 for outlined */
    font-size: 1.4em; /* Slightly larger for luxury elegance - adjust as needed */
}

/* Hide the original cart icon (it might be a background or pseudo) */
.cc_cart_items_list .ccicon-cart {
    background: none !important;
    font-style: normal !important;
    speak: none;
}

/* Make the trigger link a relative container for absolute positioning */
.cc_cart_items_list {
    position: relative;
    display: inline-block; /* Ensures it wraps the icon and count tightly */
    text-decoration: none; /* Clean look */
}

/* Style the shopping bag icon (regular/outlined for elegance) */
.cc_cart_items_list .ccicon-cart::before {
    content: "\f290";  /* fa-regular fa-bag-shopping */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome;
    font-weight: 400; /* Regular style - lighter and more luxurious */
    font-size: 1.6em; /* Adjust size for sophistication - tweak as needed */
    color: #000; /* Or your desired icon color */
    transition: color 0.3s ease, transform 0.3s ease;
}

/* Hide the original cart icon */
.cc_cart_items_list .ccicon-cart {
    background: none !important;
    font-style: normal !important;
    speak: none;
    width: auto;
    height: auto;
}

/* Transform the count into a rounded badge in the upper right */
.cc_cart_items_list .cc_cart_count {
    position: absolute;
    top: -8px;    /* Adjust upward - fine-tune based on your icon size */
    right: -10px; /* Adjust to the right - overlaps the bag elegantly */
    background: #000; /* Sophisticated black */
    color: #fff;
    font-weight: 600;
    font-size: 0.75em; /* Smaller for a subtle luxury feel */
    min-width: 1.4em;
    line-height: 1.4em; /* Centers text vertically */
    text-align: center;
    border-radius: 50%; /* Perfect circle */
    padding: 0 0.4em;
    border: 2px solid #fff; /* Optional white border for premium contrast/pop */
    box-shadow: 0 2px 6px rgba(0,0,0,0.2); /* Subtle shadow for depth */
    z-index: 1;
    transition: all 0.3s ease;
}

/* Optional: Hide badge when cart is empty (if count is 0 or empty) */
.cc_cart_items_list .cc_cart_count:empty,
.cc_cart_items_list .cc_cart_count[data-count="0"] {
    display: none;
}

/* Luxury hover effects */
.cc_cart_items_list:hover .ccicon-cart::before {
    color: var(--e-global-color-accent) !important;
    transform: scale(1.1);
}

.cc_cart_items_list:hover .cc_cart_count {
    background: var(--e-global-color-accent) !important;
    color: #000;
    transform: scale(1.1);
}


/* Make the wishlist link a relative container for positioning */
.alg-wc-wl-icon-wrapper {
    position: relative;
    display: inline-block; /* Wraps tightly around icon and counter */
    text-decoration: none; /* Clean, luxury look */
    line-height: 1; /* Helps with vertical alignment */
}

/* Transform the counter into a rounded badge in the upper right */
.alg-wc-wl-counter {
    position: absolute;
    right: -10px; /* Adjust to the right - overlaps the bag elegantly */
    background: #000 !important; /* Sophisticated black */
    color: #fff;
    font-weight: 600;
    font-size: 0.75em; /* Smaller for a subtle luxury feel */
    min-width: 1.4em;
    text-align: center;
    border-radius: 50%; /* Perfect circle */
    border: 2px solid #fff; /* Optional white border for premium contrast/pop */
    box-shadow: 0 2px 6px rgba(0,0,0,0.2); /* Subtle shadow for depth */
    z-index: 1;
	top: -10px !important;
    transition: all 0.3s ease;
	height: auto !important;
}

/* Optional: Hide counter when empty */
.alg-wc-wl-counter:empty {
    display: none;
}

/* Luxury hover effects - consistent with your bag icon */
.alg-wc-wl-icon-wrapper:hover .alg-wc-wl-icon::before {
    color: var(--e-global-color-accent) !important;
    transform: scale(1.1);
}

.alg-wc-wl-icon-wrapper:hover .alg-wc-wl-counter {
    background: var(--e-global-color-accent) !important;
    color: #000;
    transform: scale(1.1);
}

/* [1319] Payment Methods */
/* GLOBALPAYMENTS GENIUS – MAKE SECURE IFRAMES MATCH YOUR DARK CARD STYLE */
#wc-globalpayments_genius-cc-form iframe,
#globalpayments_genius-card-number iframe,
#globalpayments_genius-card-expiration iframe,
#globalpayments_genius-card-cvv iframe,
#globalpayments_genius-card-holder-name iframe,
#globalpayments_genius-card-submit iframe {
    border-radius: 20px !important;
    border: 2px solid #ffffff !important;
    background: #ffffff !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2) !important;
    height: 52px !important;
    transition: all 0.2s ease !important;
}

/* Focus state – primary color border */
#wc-globalpayments_genius-cc-form iframe:focus,
#globalpayments_genius-card-number iframe:focus,
#globalpayments_genius-card-expiration iframe:focus,
#globalpayments_genius-card-cvv iframe:focus,
#globalpayments_genius-card-holder-name iframe:focus,
.parent-focused iframe,
iframe.focused-field {
    border-color: var(--e-global-color-primary, #000000) !important;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2) !important;
}

/* Submit button iframe – pill shape like Place Order button */
#globalpayments_genius-card-submit iframe {
    border-radius: 30px !important;
    height: 56px !important;
    border: none !important;
}

/* Labels – white to match dark card background */
.wc-globalpayments_genius label,
#payment .payment_method_globalpayments_genius label {
    color: #ffffff !important;
    font-weight: 500 !important;
}

/* Validation errors – visible on dark background */
.woocommerce-globalpayments-validation-error li {
    color: #ff6b6b !important;
    background: rgba(255,107,107,0.15) !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    border-left: 4px solid #ff6b6b !important;
}

/* Field spacing */
#wc-globalpayments_genius-cc-form .form-row {
    margin-bottom: 16px !important;
}

/* Payment box breathing room */
.payment_box.payment_method_globalpayments_genius {
    padding: 24px !important;
    background: transparent !important;
    border-radius: 24px !important;
}

/* [1311] Termly Banner */
/* This will work even if the hash changes */
[class*="termly-styles-closeTag"] g {
  fill: white !important;
}

/* [1291] Checkout */
/* WOO BLOCKS CHECKOUT – FORCE WHITE INPUTS EVERYWHERE (coupon, email, address, notes, etc.) */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-textarea,
.wc-block-checkout .wc-block-components-select select,
.wc-block-checkout .wc-block-components-totals-coupon__input input,
.wc-block-checkout input[type="text"],
.wc-block-checkout input[type="email"],
.wc-block-checkout input[type="tel"],
.wc-block-checkout textarea,
.wc-block-checkout #coupon_code {

    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #000000 !important;
    caret-color: #000000 !important;
    border: 2px solid #ddd !important;
    transition: none !important;
}

/* Focus state – nuclear override */
.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-block-components-textarea:focus,
.wc-block-checkout .wc-block-components-select select:focus,
.wc-block-checkout .wc-block-components-totals-coupon__input input:focus,
.wc-block-checkout input:focus,
.wc-block-checkout textarea:focus,
.wc-block-checkout #coupon_code:focus {

    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #000000 !important;
    border-color: var(--ast-global-color-0) !important;   /* optional: your primary color on focus */
    box-shadow: none !important;
    outline: none !important;
}

/* Placeholder text – dark gray on white */
.wc-block-checkout input::placeholder,
.wc-block-checkout textarea::placeholder {
    color: #666666 !important;
    opacity: 1 !important;
}

/* Astra dark mode override (just in case) */
.ast-theme-dark .wc-block-checkout input,
.ast-theme-dark .wc-block-checkout textarea {
    background-color: #ffffff !important;
}

/* MAKE "ENTER CODE" LABEL VISIBLE – GRAY TEXT (COUPON FIELD ONLY) */
.wc-block-components-totals-coupon__input label,
.wc-block-components-text-input label[for*="wc-block-components-totals-coupon"] {
    color: #666666 !important;   /* dark gray – change to #000000 if you want pure black */
    opacity: 1 !important;
}

/* [1249] Shop */
.woocommerce ul.products li.product .woocommerce-placeholder {
    border: none !important;
	border-radius: 20px !important;
}

.woocommerce ul.products li.product a img {
    border: none !important;
	border-radius: 20px !important;
}

/* [1081] Reward Points */
/* WP Swings Points Redemption Notice – WHITE TEXT ONLY */
.woocommerce-message.wps_wpr_cart_redemption__notice,
.woocommerce-message .wps_wpr_cart_redemption__notice {
    color: #ffffff !important;
}

/* Also catch the "You need X more points" and similar messages */
.woocommerce-message.wps_wpr_cart_redemption__notice a,
.woocommerce-message.wps_wpr_cart_redemption__notice strong,
.woocommerce-message.wps_wpr_cart_redemption__notice span {
    color: #ffffff !important;
}

/* Optional: If you also want a slightly darker background so white text pops */
.woocommerce-message.wps_wpr_cart_redemption__notice {
    background-color: #222222 !important;   /* dark gray */
    border-color: #444444 !important;
}

/* [1076] Close Button for Login */
/* Enlarge close button & cross icon on MOBILE (phones, under 768px) */
@media (max-width: 767px) {
    .xoo-el-close {
        font-size: 30px !important;    /* Bigger button */
        line-height: 1 !important;     /* Keeps it centered */
        width: 40px !important;        /* Optional: wider touch area */
        height: 40px !important;
    }
    .xoo-el-icon-cross {
        font-size: 30px !important;    /* Bigger cross icon */
    }
}

/* Enlarge close button & cross icon on TABLET (768px to 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
    .xoo-el-close {
        font-size: 28px !important;    /* Slightly smaller than mobile if you want */
        line-height: 1 !important;
        width: 38px !important;
        height: 38px !important;
    }
    .xoo-el-icon-cross {
        font-size: 28px !important;
    }
}

/* [1046] FiboSearch */
/* ==========================
   FIBOSEARCH – FINAL 2025 FIXES (DEFAULT POSITIONING RESTORED)
   ========================== */

/* 1. DETAILS PANEL – WIDE + ALWAYS ON TOP + DEFAULT POSITIONING (no left/right overrides) */
.dgwt-wcas-search-wrapp .dgwt-wcas-details-wrapp.woocommerce,
.dgwt-wcas-details-wrapp.woocommerce {
    max-width: 95vw !important;     /* responsive cap */
    min-width: 520px !important;    /* minimum for usability */
    position: absolute !important;  /* ensure absolute positioning */
    z-index: 1000000000 !important; /* ultra-high z-index beats plugin's 999999998 + any theme overlays */
    box-shadow: 0 20px 60px rgba(0,0,0,0.7) !important; /* stronger shadow for dark theme */
    border-radius: 12px !important; /* slight rounding for modern look */
    /* NO left/right/top/transform overrides – lets FiboSearch default positioning connect to suggestions */
}

/* PRODUCT TITLE IN DETAILS PANEL → WHITE TEXT */
.dgwt-wcas-details-product-title,
.dgwt-wcas-details-product-title a,
.dgwt-wcas-details-product-title a:hover {
    color: #ffffff !important;
    font-weight: 600 !important;        /* optional – makes it pop on dark bg */
}

/* Extra z-index boost for body stacking context (fixes "behind" issues) */
/*body .dgwt-wcas-search-wrapp {
    position: relative !important;
    z-index: 1000000000 !important;
}*/

/* 2. INPUT – WHITE BACKGROUND FROM FIRST MILLISECOND (no black flash on focus) */
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-is-detail-box .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-has-submit .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.woocommerce .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-style-pirx .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.js-dgwt-wcas-layout-classic .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-layout-classic .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.js-dgwt-wcas-mobile-overlay-enabled .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-mounted .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.js-dgwt-wcas-search-darkoverl-mounted .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-suggestions-wrapp-initialized .dgwt-wcas-search-input,
.dgwt-wcas-search-wrapp.dgwt-wcas-active .dgwt-wcas-search-input {
    background: #ffffff !important;                  /* white background */
    background-color: #ffffff !important;            /* double-check for overrides */
    color: #000000 !important;                       /* black text */
    caret-color: #000000 !important;                 /* black cursor */
    border: 2px solid transparent !important;        /* no border flash */
    outline: none !important;                        /* kill outline */
    box-shadow: none !important;                     /* no shadow flash */
    transition: none !important;                     /* disable transitions to prevent color flash */
}

/* KILL WHITE FLASH – FORCE BLACK MOBILE OVERLAY FROM THE VERY FIRST MILLISECOND */
.dgwt-wcas-om-bar,
.js-dgwt-wcas-overlay-mobile,
.dgwt-wcas-search-wrapp-mobile,
.dgwt-wcas-style-pirx .dgwt-wcas-om-bar,
.dgwt-wcas-style-pirx.js-dgwt-wcas-search-darkoverl-mounted,
.dgwt-wcas-search-darkoverl-on .dgwt-wcas-om-bar,
.dgwt-wcas-mobile-overlay-trigger-active .dgwt-wcas-om-bar {
    background: #000000 !important;
    background-color: #000000 !important;
    transition: none !important;
}

/* Ensure the overlay itself never flashes white */
.js-dgwt-wcas-overlay-mobile.dgwt-wcas-overlay-mobile {
    background: rgba(0,0,0,0.98) !important;
}

/* Focused states with high specificity */
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:focus,
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:active,
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:hover,
.dgwt-wcas-search-wrapp.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:focus-within {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

/* Placeholder consistent on white bg */
.dgwt-wcas-search-input::placeholder,
.dgwt-wcas-search-input:focus::placeholder {
    color: #555555 !important;
    opacity: 1 !important;
}

/* FIBOSEARCH MOBILE INPUT – WHITE FOREVER (NO BLACK FLASH ON FOCUS) */
.dgwt-wcas-search-input,
.dgwt-wcas-search-input:focus,
.dgwt-wcas-search-input:active,
.dgwt-wcas-search-input:hover,
.dgwt-wcas-search-input:focus-within,
.dgwt-wcas-search-wrapp-mobile .dgwt-wcas-search-input,
.dgwt-wcas-mobile-overlay-trigger-active .dgwt-wcas-search-input,
.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input,
.dgwt-wcas-style-pirx .dgwt-wcas-search-input,
.js-dgwt-wcas-om-bar .dgwt-wcas-search-input,
.dgwt-wcas-search-filled .dgwt-wcas-search-input {

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    caret-color: #000000 !important;
    border: 2px solid transparent !important;
    outline: none !important;
    box-shadow: none !important;
    transition: none !important;   /* kills any flash animation */
}

/* Extra nuclear override for focus state in Pirx mobile overlay */
.dgwt-wcas-style-pirx.js-dgwt-wcas-mobile-overlay-trigger-active .dgwt-wcas-search-input:focus,
.dgwt-wcas-style-pirx.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Optional: subtle primary-color border on focus for better UX */
.dgwt-wcas-search-input:focus {
    border-color: var(--e-global-color-accent) !important;
}

/* 3. QUANTITY BUTTONS – FIXED: centered icons, working hover, fully clickable */
.dgwt-wcas-pd-addtc .quantity.buttons_added {
    display: flex !important;
    align-items: stretch !important;
    border: 2px solid var(--e-global-color-accent) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    height: 48px !important;
    margin: 12px 0 !important;
    background: transparent !important;
}

/* Minus & Plus – proper centering + hover + clickable */
.dgwt-wcas-pd-addtc .quantity.buttons_added .minus,
.dgwt-wcas-pd-addtc .quantity.buttons_added .plus {
    background: var(--e-global-color-accent) !important;
    color: #ffffff !important;
    width: 48px !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 24px !important;
    font-weight: bold !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    user-select: none !important;
}

/* Hover effect */
.dgwt-wcas-pd-addtc .quantity.buttons_added .minus:hover,
.dgwt-wcas-pd-addtc .quantity.buttons_added .plus:hover {
    background: #000000 !important;
    color: var(--e-global-color-accent) !important;
}

/* Input field */
.dgwt-wcas-pd-addtc .quantity.buttons_added input.qty {
    width: 70px !important;
    height: auto !important;
    border: none !important;
    border-left: 2px solid var(--e-global-color-accent) !important;
    border-right: 2px solid var(--e-global-color-accent) !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    background: #ffffff !important;
    color: #000000 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Kill any inherited Woo nonsense that blocks clicks */
.dgwt-wcas-pd-addtc .quantity.buttons_added a {
    box-shadow: none !important;
    text-decoration: none !important;
}

/* 4. ADD TO CART BUTTON (unchanged) */
.dgwt-wcas-pd-addtc .add_to_cart_button,
.dgwt-wcas-pd-addtc .button.product_type_simple {
    background: var(--e-global-color-accent) !important;
    border: 2px solid var(--e-global-color-accent) !important;
    color: #ffffff !important;
    border-radius: 20px !important;
    padding: 12px 24px !important;
    font-weight: 600 !important;
    margin-top: 8px !important;
}
.dgwt-wcas-pd-addtc .add_to_cart_button:hover,
.dgwt-wcas-pd-addtc .button.product_type_simple:hover {
    background: #000000 !important;
    color: var(--e-global-color-accent) !important;
}

/* NUCLEAR FIX – OVERRIDE FIBOSEARCH'S INLINE BLACK BACKGROUND ON FOCUS */
.dgwt-wcas-search-input:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    caret-color: #000000 !important;
}

/* Extra insurance – target the exact mobile overlay focus state */
.dgwt-wcas-mobile-overlay-trigger-active .dgwt-wcas-search-input:focus,
.dgwt-wcas-search-darkoverl-on .dgwt-wcas-search-input:focus,
.dgwt-wcas-style-pirx .dgwt-wcas-search-input:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}
/* FINAL NUCLEAR FIX – KILLS BLACK INPUT ON FOCUS (targets the actual focus class) */
.dgwt-wcas-search-focused .dgwt-wcas-search-input,
.dgwt-wcas-search-focused.dgwt-wcas-search-input,
.dgwt-wcas-search-input.dgwt-wcas-search-focused {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}
/* ASTRA DARK MODE – STOP FORCING BLACK INPUT ON FIBOSEARCH FOCUS */
.ast-dark-mode-enabled .dgwt-wcas-search-input,
.ast-dark-mode-enabled .dgwt-wcas-search-input:focus,
.ast-dark-mode-enabled .dgwt-wcas-search-input:active,
.ast-dark-mode-enabled .dgwt-wcas-search-input:hover,
.ast-dark-mode-enabled .dgwt-wcas-search-focused .dgwt-wcas-search-input,
.ast-dark-mode-enabled.dgwt-wcas-search-focused .dgwt-wcas-search-input,
.ast-dark-mode-enabled .dgwt-wcas-style-pirx .dgwt-wcas-search-input,
.ast-dark-mode-enabled .dgwt-wcas-mobile-overlay-trigger-active .dgwt-wcas-search-input {

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    caret-color: #000000 !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* BEAT ASTRA DARK MODE – KEEP FIBOSEARCH INPUT WHITE ON FOCUS FOREVER */
.ast-dark-mode-enable .dgwt-wcas-search-input:focus,
.ast-theme .dgwt-wcas-search-input:focus,
input[type="search"].dgwt-wcas-search-input:focus,
.dgwt-wcas-search-wrapp input[type="search"]:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    caret-color: #000000 !important;
    border-color: var(--e-global-color-accent) !important; /* Your primary on focus */
    box-shadow: none !important;
    outline: none !important;
    transition: none !important;
}

/* Extra layer for dynamic Astra vars */
.dgwt-wcas-search-input:focus {
    --ast-form-input-focus-bg: #ffffff !important;
    --ast-form-input-focus-text: #000000 !important;
}

/* === ULTIMATE FIX FOR WHITE TEXT ON WHITE QUANTITY INPUT === */
.dgwt-wcas-details-wrapp input,
.dgwt-wcas-details-wrapp input.qty,
.dgwt-wcas-details-wrapp input[type="number"],
.dgwt-wcas-pd-addtc .quantity.buttons_added input.qty,
.dgwt-wcas-pd-addtc input[name="js-dgwt-wcas-quantity"] {
    color: #000000 !important;
}

/* Ensure background stays white */
.dgwt-wcas-pd-addtc .quantity.buttons_added input.qty {
    background: #ffffff !important;
}

/* Prevent placeholder from being white too */
.dgwt-wcas-pd-addtc .quantity.buttons_added input.qty::placeholder {
    color: #888 !important;
}

/* [917] Caddy */
/* CADDY CART – BLACK BG + WHITE BORDER + WHITE ICON FOREVER (EVEN ON HOVER) */
.cc-compass {
    background: #000000 !important;
    border: 3px solid #FFFFFF !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.6) !important;
}

/* Force white icon & count – normal + hover + active + focus */
.cc-compass .licon,
.cc-compass .cc-compass-count,
.cc-compass:hover .licon,
.cc-compass:hover .cc-compass-count,
.cc-compass:active .licon,
.cc-compass:active .cc-compass-count,
.cc-compass:focus .licon,
.cc-compass:focus .cc-compass-count,
.cc-compass * {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    stroke: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    opacity: 1 !important;
}

/* Kill any background/overlay that Caddy adds on hover */
.cc-compass::before,
.cc-compass::after,
.cc-compass:hover::before,
.cc-compass:hover::after {
    background: transparent !important;
    opacity: 0 !important;
}

/* Optional hover lift – keeps everything white */
.cc-compass:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(255,255,255,0.3) !important;
}

.cc-fs-meter-used {
	background-color: var(--e-global-color-accent) !important;
}

/* 1. Cart quantity input */
.cc_item_quantity:focus,
input.cc_item_quantity:focus,
.ast-dark-mode-enable .cc_item_quantity:focus {
    color: var(--e-global-color-primary) !important;;           /* white text */
    caret-color: var(--e-global-color-primary) !important;;     /* white cursor */
}

/* 2. Custom coupon input field – stay white on focus */
#cc_coupon_code,
#cc_coupon_code:focus,
.ast-dark-mode-enable #cc_coupon_code:focus,
.cc-coupon-form input[type="text"]:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    border-color: var(--e-global-color-accent) !important;
}

.cc_item_quantity_plus.cc-qty-disabled {
    pointer-events: none;
    opacity: 0.4;
    cursor: not-allowed;
}

.cc-fs-meter-used.cc-bar-active {
    background: var(--e-global-color-accent) !important;
}

.cc-fs-meter-used {
    background-color: var(--e-global-color-accent) !important;
}

