/*
Theme Name: Catalyst Labs Research
Theme URI: https://catalystlabsresearch.com
Author: Catalyst Labs Research LLC
Author URI: https://catalystlabsresearch.com
Description: Custom WooCommerce theme for Catalyst Labs Research LLC.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: Private
Text Domain: catalyst-labs
Tags: dark, e-commerce, woocommerce
*/

/* ===== RESET ===== */
:root{--font-body:'Inter',sans-serif;--bg-dark:#05070a;--max-width:1200px;--tr:0.3s ease;--rad:14px;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--bg-dark);color:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;transition:opacity var(--tr);}
a:hover{opacity:0.8;}
img{max-width:100%;height:auto;display:block;}
button{cursor:pointer;font-family:inherit;}
input,textarea,select{font-family:inherit;}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 35px;border-radius:4px;font-weight:700;font-size:0.9rem;letter-spacing:1px;text-transform:uppercase;transition:all var(--tr);border:none;}
.btn--dark{background:#000;color:#fff;border:1px solid #000;}
.btn--dark:hover{background:#333;}
.btn--full{width:100%;}

/* ===== ANNOUNCEMENT BAR (scheme-5: #333) ===== */
.announcement-bar{background:#333;color:#fff;text-align:center;padding:10px 16px;font-size:0.8rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;}

/* ===== HEADER (scheme-1: white) ===== */
.header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e6e6e6;}
.header__inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;gap:24px;}
.header__logo img{height:32px;width:auto;}
.header__logo span{white-space:nowrap;}
.header__nav{display:flex;gap:24px;flex:1;justify-content:center;}
.header__nav a{font-size:0.875rem;font-weight:500;color:rgba(0,0,0,0.55);transition:color var(--tr);}
.header__nav a:hover,.header__nav a.active{color:#000;opacity:1;}
.header__actions{display:flex;align-items:center;gap:14px;}
.header__action-btn{background:none;border:none;color:rgba(0,0,0,0.45);padding:6px;transition:color var(--tr);position:relative;display:flex;align-items:center;}
.header__action-btn:hover{color:#000;opacity:1;}
.header__cart-count{position:absolute;top:-2px;right:-6px;background:#000;color:#fff;font-size:0.6rem;font-weight:700;min-width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.header__menu-btn{display:none;background:none;border:none;color:#000;padding:4px;}

/* ===== ACCOUNT DROPDOWN ===== */
.account-dropdown{position:relative;}
.account-btn{background:none;border:none;color:rgba(0,0,0,0.45);padding:6px;transition:color var(--tr);cursor:pointer;display:flex;align-items:center;}
.account-btn:hover{color:#000;}
.account-panel{position:absolute;top:calc(100% + 10px);right:0;width:250px;background:#fff;border:1px solid #e6e6e6;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.12);opacity:0;pointer-events:none;transform:translateY(-8px);transition:all 0.25s ease;z-index:50;overflow:hidden;}
.account-panel.open{opacity:1;pointer-events:all;transform:translateY(0);}
.account-panel__user{display:flex;align-items:center;gap:10px;padding:14px 16px;}
.account-panel__avatar{width:34px;height:34px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:0.85rem;color:#000;flex-shrink:0;}
.account-panel__name{font-size:0.85rem;font-weight:600;color:#000;}
.account-panel__email{font-size:0.75rem;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;}
.account-panel__links{padding:6px 0;}
.account-panel__link{display:block;padding:9px 16px;font-size:0.85rem;color:rgba(0,0,0,0.6);transition:all var(--tr);}
.account-panel__link:hover{background:rgba(0,0,0,0.03);color:#000;opacity:1;}
.account-panel__divider{height:1px;background:#eee;margin:4px 0;}
.account-panel__link--danger{color:#e74c3c;}
.account-panel__link--danger:hover{background:rgba(231,76,60,0.05);}

/* ===== AGE GATE ===== */
#entry-screen-overlay{position:fixed;inset:0;z-index:9999999;display:flex;justify-content:center;align-items:center;background:#05070a;overflow:hidden;transition:opacity 0.8s ease;}
#entry-screen-overlay.hidden{opacity:0;pointer-events:none;}
.center-stack{display:flex;flex-direction:column;align-items:center;position:relative;z-index:10;width:100%;padding:20px;}
.lava-background{position:absolute;inset:0;z-index:-1;filter:blur(30px);}
.blob{position:absolute;border-radius:50%;opacity:0.6;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;}
@keyframes floatA{0%{transform:translate(0,0) rotate(0deg);border-radius:30% 70% 70% 30%/30% 30% 70% 70%}100%{transform:translate(60px,40px) rotate(45deg);border-radius:70% 30% 30% 70%/70% 70% 30% 30%}}
@keyframes floatB{0%{transform:translate(0,0) rotate(0deg);border-radius:60% 40% 30% 70%/60% 30% 70% 40%}100%{transform:translate(-60px,-40px) rotate(-45deg);border-radius:40% 60% 70% 30%/40% 70% 30% 60%}}
.entry-content{width:500px;max-width:100%;padding:30px;text-align:center;color:#fff;background:rgba(255,255,255,0.05);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,0.1);box-shadow:0 15px 35px rgba(0,0,0,0.5);}
.entry-logo{display:block;margin-bottom:20px;max-width:300px;height:auto;filter:drop-shadow(0 5px 15px rgba(0,0,0,0.3));}
.entry-h2{font-size:2rem;margin-bottom:10px;letter-spacing:2px;text-transform:uppercase;}
.entry-p{margin-bottom:25px;font-size:0.95rem;color:#ccc;line-height:1.5;}
.button-group{display:flex;gap:20px;justify-content:center;margin-bottom:20px;}
.entry-btn{padding:12px 40px;font-size:0.9rem;text-transform:uppercase;font-weight:700;letter-spacing:1px;border-radius:4px;transition:all 0.3s ease;}
.solid{background:#fff;color:#000;border:1px solid #fff;}
.outline{background:transparent;color:#fff;border:1px solid #fff;}
.outline:hover{background:#fff;color:#000;}
.remember-me-wrapper{display:flex;align-items:center;justify-content:center;gap:8px;font-size:0.85rem;color:#999;}

/* ===== PARTICLE HERO ===== */
.particle-hero-container{position:relative;width:100%;background:#05070a;overflow:hidden;display:flex;justify-content:center;align-items:center;text-align:center;}
#particle-canvas{position:absolute;inset:0;z-index:1;}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:20px;padding-bottom:60px;}
.hero-badge{position:absolute;bottom:30px;z-index:3;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);backdrop-filter:blur(5px);color:#fff;padding:10px 25px;border-radius:50px;font-size:0.85rem;letter-spacing:1px;text-transform:uppercase;}
.hero-element{opacity:0;animation:heroEntrance 1s cubic-bezier(0.2,0.8,0.2,1) forwards;}
.hero-logo{height:auto;filter:drop-shadow(0 10px 20px rgba(0,0,0,0.5));}
.hero-slogan{font-size:1.2rem;letter-spacing:1px;max-width:600px;line-height:1.5;text-transform:uppercase;}
.hero-btn{display:inline-block;padding:12px 35px;background:#1d3686;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:0.9rem;border-radius:4px;transition:transform 0.2s;}
.hero-btn:hover{transform:scale(1.05);opacity:1;}
@keyframes heroEntrance{0%{opacity:0;transform:translateY(30px) scale(0.95)}100%{opacity:1;transform:translateY(0) scale(1)}}

/* ===== BEST SELLERS (white bg) ===== */
.best-sellers-section{background:#fff;padding:48px 24px;color:#000;}
.best-sellers__inner{max-width:var(--max-width);margin:0 auto;}
.best-sellers__title{font-size:1.5rem;font-weight:400;color:#000;}
.best-sellers__inner ul.products{grid-template-columns:repeat(5,1fr)!important;}

/* ==========================================================================
   WOOCOMMERCE — COMPLETE OVERRIDES
   ========================================================================== */

/* Shop page wrapper */
.woocommerce-page main{background:#fff;color:#000;}
.woocommerce-page .page-title,.woocommerce-page h1.page-title{font-size:2rem!important;font-weight:700!important;color:#000!important;margin-bottom:8px!important;}
.woocommerce .woocommerce-result-count{color:rgba(0,0,0,0.4);font-size:0.85rem;}
.woocommerce .woocommerce-ordering select{background:#fff;border:1px solid #ddd;color:#000;padding:8px 12px;border-radius:8px;font-size:0.85rem;}

/* ===== SHOP CATEGORY TABS ===== */
.cl-shop-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap;}
.cl-tab{display:inline-block;padding:8px 20px;border:1px solid #ddd;border-radius:100px;font-size:0.8rem;font-weight:500;color:rgba(0,0,0,0.6);transition:all var(--tr);text-decoration:none;}
.cl-tab:hover{border-color:#000;color:#000;opacity:1;}
.cl-tab--active{background:#000;color:#fff!important;border-color:#000;}
.cl-tab--active:hover{background:#333;opacity:1;}

/* ===== PRODUCT GRID ===== */
.woocommerce ul.products,
ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important;list-style:none!important;padding:0!important;margin:0!important;}
.woocommerce ul.products li.product,
ul.products li.product{margin:0!important;padding:0!important;width:100%!important;float:none!important;background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden;position:relative;list-style:none!important;transition:all 0.3s ease;}
ul.products li.product::before{display:none!important;}
ul.products li.product:hover{border-color:#ddd;box-shadow:0 4px 20px rgba(0,0,0,0.06);}

/* Product images */
ul.products li.product a img,
ul.products li.product .attachment-woocommerce_thumbnail{width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover;display:block;background:#f8f8f8;transition:transform 0.4s ease;border-radius:0;}
ul.products li.product:hover a img{transform:scale(1.03);}
/* Placeholder image fix */
ul.products li.product .woocommerce-placeholder{background:#f5f5f5;aspect-ratio:1/1;width:100%;}

/* Product info */
ul.products li.product .woocommerce-loop-product__title{font-size:0.9rem!important;font-weight:500!important;padding:12px 14px 4px!important;color:#000!important;line-height:1.3;display:block;}
ul.products li.product .price{font-size:1.1rem!important;color:rgba(0,0,0,0.75)!important;padding:0 14px!important;margin-bottom:10px!important;display:block;}
ul.products li.product .price del{color:rgba(0,0,0,0.35)!important;font-size:0.85rem;}
ul.products li.product .price ins{text-decoration:none;font-weight:500;}

/* Add to Cart button */
ul.products li.product .button,
ul.products li.product a.button,
ul.products li.product .add_to_cart_button,
ul.products li.product a.add_to_cart_button,
ul.products li.product .ajax_add_to_cart{display:block!important;width:calc(100% - 28px)!important;margin:0 14px 14px!important;padding:10px 16px!important;background:#000!important;color:#fff!important;border:none!important;border-radius:var(--rad)!important;font-weight:600!important;font-size:0.8rem!important;text-transform:uppercase!important;letter-spacing:0.05em!important;text-align:center!important;transition:background var(--tr)!important;cursor:pointer!important;}
ul.products li.product .button:hover,
ul.products li.product a.button:hover{background:#333!important;}
ul.products li.product .added_to_cart{display:none!important;}

/* Badges */
.cl-badge{position:absolute;top:12px;right:12px;z-index:2;border-radius:100px;font-size:0.7rem;font-weight:700;padding:5px 12px;pointer-events:none;}
.cl-badge--soldout{background:#eef1ea;color:#000;}
.cl-badge--backorder{background:#1d3686;color:#fff;}
.woocommerce span.onsale{display:none!important;}

/* ===== SINGLE PRODUCT PAGE ===== */
.woocommerce div.product{color:#000;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:20px 0 60px;}
.woocommerce div.product div.images{border-radius:12px;overflow:hidden;background:#f8f8f8;}
.woocommerce div.product div.images img{width:100%;border-radius:0;}
.woocommerce div.product .product_title{font-size:1.8rem;font-weight:700;color:#000;margin-bottom:8px;}
.woocommerce div.product p.price{font-size:1.6rem;color:#000;margin-bottom:20px;font-weight:500;}
.woocommerce div.product .woocommerce-product-details__short-description{color:rgba(0,0,0,0.65);line-height:1.7;margin-bottom:24px;font-size:0.95rem;}
.woocommerce div.product .quantity .qty{border:1px solid #ddd;border-radius:8px;padding:10px 14px;width:70px;font-size:1rem;text-align:center;}
.woocommerce div.product .single_add_to_cart_button{background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:14px 40px!important;font-weight:700!important;font-size:0.9rem!important;text-transform:uppercase!important;letter-spacing:0.05em!important;border:none!important;transition:background var(--tr)!important;}
.woocommerce div.product .single_add_to_cart_button:hover{background:#333!important;}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:0;border-top:1px solid #eee;padding-top:32px;}
.woocommerce div.product .woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:4px;padding:0;margin:0 0 24px;border:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:none;background:none;padding:0;margin:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:8px 20px;border:1px solid #ddd;border-radius:100px;font-size:0.8rem;font-weight:500;color:rgba(0,0,0,0.5);display:block;transition:all var(--tr);}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{background:#000;color:#fff;border-color:#000;}
.woocommerce div.product .woocommerce-tabs .panel{color:rgba(0,0,0,0.7);line-height:1.7;}
.woocommerce div.product .product_meta{margin-top:20px;font-size:0.8rem;color:rgba(0,0,0,0.4);}
.woocommerce div.product .product_meta span{display:block;margin-bottom:4px;}

/* ===== LOGIN & REGISTER (My Account) ===== */
.woocommerce-account:not(.logged-in) .woocommerce{max-width:900px;margin:0 auto;}
.woocommerce form.login,.woocommerce form.register{background:#fff;border:1px solid #eee;border-radius:16px;padding:32px;box-shadow:0 2px 16px rgba(0,0,0,0.04);}
.woocommerce form .form-row{margin-bottom:16px;}
.woocommerce form .form-row label{display:block;font-size:0.8rem;font-weight:600;color:rgba(0,0,0,0.5);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{width:100%;border:1px solid #ddd;border-radius:10px;padding:12px 16px;font-size:0.9rem;color:#000;background:#fff;transition:border-color var(--tr);}
.woocommerce form .form-row input.input-text:focus{border-color:#000;outline:none;box-shadow:0 0 0 3px rgba(0,0,0,0.06);}
.woocommerce form.login .button,.woocommerce form.register .button,.woocommerce-MyAccount-content .button,.woocommerce button.button{background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:12px 28px!important;font-weight:700!important;font-size:0.85rem!important;text-transform:uppercase!important;letter-spacing:0.05em!important;border:none!important;cursor:pointer!important;transition:background var(--tr)!important;}
.woocommerce form.login .button:hover,.woocommerce form.register .button:hover,.woocommerce button.button:hover{background:#333!important;}
.woocommerce form.login .lost_password a{font-size:0.85rem;color:rgba(0,0,0,0.4);}
.woocommerce h2,.woocommerce-account h2{font-size:1.4rem;font-weight:700;color:#000;margin-bottom:16px;}
.woocommerce h3{font-size:1.1rem;font-weight:700;color:#000;margin-bottom:12px;}

/* ===== MY ACCOUNT (logged in) ===== */
.woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:220px 1fr;gap:32px;}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;}
.woocommerce-MyAccount-navigation ul li{margin-bottom:2px;}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:10px 16px;border-radius:10px;font-size:0.9rem;color:rgba(0,0,0,0.55);transition:all var(--tr);}
.woocommerce-MyAccount-navigation ul li a:hover{background:rgba(0,0,0,0.03);color:#000;opacity:1;}
.woocommerce-MyAccount-navigation ul li.is-active a{background:rgba(0,0,0,0.05);color:#000;font-weight:600;}
.woocommerce-MyAccount-content{color:#000;min-height:400px;}
.woocommerce-MyAccount-content p{line-height:1.7;color:rgba(0,0,0,0.7);}

/* Orders table */
.woocommerce-orders-table{width:100%;border-collapse:collapse;}
.woocommerce-orders-table th{text-align:left;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;color:rgba(0,0,0,0.4);padding:12px 16px;border-bottom:1px solid #eee;}
.woocommerce-orders-table td{padding:14px 16px;border-bottom:1px solid #f5f5f5;font-size:0.9rem;color:#000;}
.woocommerce-orders-table .button{font-size:0.75rem!important;padding:8px 16px!important;}

/* Addresses */
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.woocommerce-Address{background:#f9f9f9;border-radius:12px;padding:20px;border:1px solid #eee;}
.woocommerce-Address header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.woocommerce-Address address{font-style:normal;line-height:1.7;color:rgba(0,0,0,0.7);font-size:0.9rem;}

/* ===== CART ===== */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce{color:#000;}
.woocommerce table.shop_table{border:1px solid #eee;border-radius:12px;overflow:hidden;border-collapse:collapse;width:100%;}
.woocommerce table.shop_table th{background:#f9f9f9;font-weight:600;color:#000;padding:14px 16px;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;border:none;border-bottom:1px solid #eee;}
.woocommerce table.shop_table td{padding:16px;border:none;border-bottom:1px solid #f5f5f5;vertical-align:middle;}
.woocommerce table.shop_table img{width:60px;height:60px;object-fit:cover;border-radius:8px;}
.woocommerce .cart-collaterals .cart_totals{background:#f9f9f9;border-radius:12px;padding:24px;border:1px solid #eee;}
.woocommerce .cart .button,.woocommerce .checkout .button,.woocommerce #place_order{background:#000!important;color:#fff!important;border-radius:var(--rad)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:0.05em!important;padding:14px 36px!important;border:none!important;font-size:0.85rem!important;}
.woocommerce .cart .button:hover,.woocommerce .checkout .button:hover{background:#333!important;}

/* ===== CONTENT PAGES (About, Contact, Policy) ===== */
.cl-page-hero{padding:80px 24px 40px;text-align:center;background:var(--bg-dark);}
.cl-page-hero h1{font-size:2.2rem;letter-spacing:0.03em;color:#fff;}
.cl-page-body{max-width:var(--max-width);margin:0 auto;padding:60px 24px;color:rgba(255,255,255,0.8);line-height:1.8;}
.cl-page-body h2{color:#fff;margin-bottom:12px;}
.cl-page-body p{margin-bottom:14px;}
.cl-page-body a{color:#6495ed;}
.cl-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:48px;}
.cl-disclaimer{text-align:center;padding:28px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:10px;}
.cl-contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:48px;}
.cl-contact-item{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:rgba(255,255,255,0.7);}
.cl-contact-item svg{flex-shrink:0;}
.cl-form-group{margin-bottom:14px;}
.cl-form-group label{display:block;font-size:0.8rem;color:rgba(255,255,255,0.5);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px;}
.cl-form-group input,.cl-form-group textarea{width:100%;padding:12px 16px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.12);border-radius:8px;color:#fff;font-size:0.9rem;transition:border-color var(--tr);}
.cl-form-group input:focus,.cl-form-group textarea:focus{outline:none;border-color:rgba(255,255,255,0.35);}
.cl-form-group textarea{resize:vertical;}

/* ===== ABOUT SECTION (homepage) ===== */
.about-section-container{position:relative;padding:100px 20px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.about-content-grid{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;gap:60px;max-width:1200px;width:100%;margin:0 auto;}
.reveal-on-scroll{opacity:0;transform:translateY(60px);transition:all 1s cubic-bezier(0.2,0.8,0.2,1);}
.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0);}
.delay-1{transition-delay:0.1s;}
.delay-2{transition-delay:0.3s;}
.delay-3{transition-delay:0.5s;}

/* ===== PULL QUOTE ===== */
.statement-section{padding:100px 20px;text-align:center;display:flex;justify-content:center;align-items:center;}
.statement-container{max-width:900px;margin:0 auto;}
.statement-text{font-weight:700;line-height:1.2;margin:0 0 20px;letter-spacing:-0.5px;}
.statement-link{display:inline-block;text-decoration:underline;text-underline-offset:4px;font-size:1rem;opacity:0.8;transition:opacity 0.2s;margin-top:10px;}
.statement-link:hover{opacity:1;}

/* ===== CONTACT GRADIENT ===== */
.contact-v4-container{width:100%;display:flex;justify-content:center;align-items:center;text-align:center;}
.contact-inner-wrapper{width:100%;margin:0 auto;padding:0 20px;display:flex;flex-direction:column;align-items:center;}
.text-group h2{font-size:2.5rem;margin-bottom:10px;letter-spacing:2px;text-transform:uppercase;line-height:1.1;text-align:center;}
.subtitle{font-size:1.2rem;letter-spacing:1px;text-align:center;opacity:0.9;}
.social-grid{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;}
.social-card{display:flex;flex-direction:column;align-items:center;color:#fff;min-width:100px;transition:transform 0.3s ease;}
.social-card:hover{transform:translateY(-10px);opacity:1;}
.icon-box{width:80px;height:80px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:15px;transition:all 0.3s ease;backdrop-filter:blur(5px);}
.social-icon{width:50%;height:50%;opacity:0.8;transition:opacity 0.3s;}
.social-card:hover .icon-box{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.3);box-shadow:0 0 20px rgba(255,255,255,0.1);}
.social-card:hover .social-icon{opacity:1;}
.social-card span{font-size:0.9rem;letter-spacing:1px;text-transform:uppercase;font-weight:700;opacity:0.7;transition:opacity 0.3s;}
.social-card:hover span{opacity:1;}

/* ===== FOOTER ===== */
.footer{background:#0a0a0a;border-top:1px solid rgba(255,255,255,0.06);color:#fff;}
.footer__top{padding:48px 24px;text-align:center;border-bottom:1px solid rgba(255,255,255,0.06);}
.footer__email-section h3{font-size:1.3rem;margin-bottom:8px;}
.footer__email-section p{color:#999;margin-bottom:20px;font-size:0.9rem;}
.email-form{display:flex;gap:12px;max-width:480px;margin:0 auto;}
.email-form__input{flex:1;padding:12px 16px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.15);border-radius:4px;color:#fff;font-size:0.9rem;}
.email-form__input:focus{outline:none;border-color:rgba(255,255,255,0.4);}
.footer__inner{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:48px 24px;}
.footer__logo{width:100px;margin-bottom:16px;}
.footer__brand p{color:#999;font-size:0.85rem;line-height:1.6;}
.footer__links h4,.footer__contact h4{font-size:0.8rem;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:16px;}
.footer__links a{display:block;color:#999;font-size:0.85rem;margin-bottom:10px;}
.footer__links a:hover{color:#fff;opacity:1;}
.footer__contact p{color:#999;font-size:0.85rem;}
.footer__contact a{color:rgba(255,255,255,0.7);}
.footer__bottom{max-width:var(--max-width);margin:0 auto;padding:20px 24px;border-top:1px solid rgba(255,255,255,0.06);text-align:center;}
.footer__bottom p{color:#999;font-size:0.8rem;}

/* ===== MOBILE MENU ===== */
.mobile-menu{position:fixed;inset:0;z-index:200;pointer-events:none;}
.mobile-menu.open{pointer-events:all;}
.mobile-menu__overlay{position:absolute;inset:0;background:rgba(0,0,0,0.7);opacity:0;transition:opacity var(--tr);}
.mobile-menu.open .mobile-menu__overlay{opacity:1;}
.mobile-menu__panel{position:absolute;left:0;top:0;bottom:0;width:280px;background:#0a0a0a;border-right:1px solid rgba(255,255,255,0.06);transform:translateX(-100%);transition:transform 0.35s cubic-bezier(0.16,1,0.3,1);padding:24px;}
.mobile-menu.open .mobile-menu__panel{transform:translateX(0);}
.mobile-menu__close{background:none;border:none;color:#fff;font-size:1.8rem;position:absolute;top:16px;right:16px;}
.mobile-menu__nav{padding-top:48px;display:flex;flex-direction:column;gap:4px;}
.mobile-menu__nav a{padding:12px 0;font-size:1rem;color:rgba(255,255,255,0.7);border-bottom:1px solid rgba(255,255,255,0.06);}

/* ===== SEARCH OVERLAY ===== */
.search-overlay{position:fixed;inset:0;z-index:300;background:rgba(5,7,10,0.95);backdrop-filter:blur(16px);display:flex;align-items:flex-start;justify-content:center;padding-top:120px;opacity:0;pointer-events:none;transition:opacity 0.35s ease;}
.search-overlay.open{opacity:1;pointer-events:all;}
.search-overlay__inner{width:90%;max-width:600px;}
.search-overlay__input{width:100%;padding:16px 24px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.15);border-radius:10px;color:#fff;font-size:1.1rem;}
.search-overlay__input:focus{outline:none;border-color:rgba(255,255,255,0.4);}
.search-overlay__close{position:absolute;top:24px;right:24px;background:none;border:none;color:#fff;font-size:2rem;}

/* ===== WOOCOMMERCE NOTICES ===== */
.woocommerce-message,.woocommerce-info{background:#f0faf0;border:1px solid #c3e6c3;border-radius:10px;padding:14px 20px;color:#2d6a2d;margin-bottom:20px;font-size:0.9rem;}
.woocommerce-message::before,.woocommerce-info::before{color:#2d6a2d;}
.woocommerce-error{background:#fdf0f0;border:1px solid #e6c3c3;border-radius:10px;padding:14px 20px;color:#6a2d2d;margin-bottom:20px;font-size:0.9rem;list-style:none;}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  .header__nav{display:none;}
  .header__menu-btn{display:flex;}
  .woocommerce ul.products,ul.products{grid-template-columns:repeat(2,1fr)!important;}
  .woocommerce div.product{grid-template-columns:1fr!important;}
  .woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr;}
  .woocommerce-MyAccount-navigation ul{display:flex;gap:4px;overflow-x:auto;padding-bottom:12px;border-bottom:1px solid #eee;margin-bottom:20px;}
  .woocommerce-MyAccount-navigation ul li a{white-space:nowrap;padding:8px 14px;font-size:0.8rem;}
  .woocommerce-Addresses{grid-template-columns:1fr;}
  .about-content-grid{flex-direction:column;}
  .footer__inner{grid-template-columns:1fr 1fr;}
  .cl-about-grid{grid-template-columns:1fr;}
  .cl-contact-grid{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .woocommerce ul.products,ul.products{grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .footer__inner{grid-template-columns:1fr;}
  .email-form{flex-direction:column;}
  .statement-text{font-size:28px!important;}
  .best-sellers__inner ul.products{grid-template-columns:repeat(2,1fr)!important;}
}

/* ==========================================================================
   v1.2 FIXES — Cart, Checkout, Account, Text Visibility
   ========================================================================== */

/* ===== CART PAGE — Professional Layout ===== */
.woocommerce-cart main{background:#fff!important;}
.woocommerce-cart .cl-page-hero{padding:40px 24px 20px;background:#fff!important;}
.woocommerce-cart .cl-page-hero h1{color:#000!important;font-size:1.8rem;}
.woocommerce-cart .woocommerce{color:#000;}
.woocommerce table.shop_table{width:100%;border:none;border-collapse:collapse;}
.woocommerce table.shop_table thead{display:table-header-group;}
.woocommerce table.shop_table th{background:#f9f9f9;font-weight:600;color:#000;padding:14px 16px;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;border:none;border-bottom:2px solid #eee;text-align:left;}
.woocommerce table.shop_table td{padding:20px 16px;border:none;border-bottom:1px solid #f0f0f0;vertical-align:middle;color:#000;font-size:0.9rem;}
.woocommerce table.shop_table td.product-name a{color:#000;font-weight:500;text-decoration:none;}
.woocommerce table.shop_table td.product-name a:hover{color:#1d3686;opacity:1;}
.woocommerce table.shop_table td.product-thumbnail img{width:80px!important;height:80px!important;object-fit:cover;border-radius:10px;border:1px solid #f0f0f0;}
.woocommerce table.shop_table td.product-price,.woocommerce table.shop_table td.product-subtotal{font-weight:600;color:#000;font-size:1rem;}
.woocommerce table.shop_table td.product-quantity .qty{width:70px;padding:10px;border:1px solid #ddd;border-radius:8px;text-align:center;font-size:0.9rem;color:#000;background:#fff;}
.woocommerce table.shop_table td.product-remove a{color:#ccc;font-size:1.2rem;transition:color 0.2s;}
.woocommerce table.shop_table td.product-remove a:hover{color:#e74c3c;opacity:1;}
.woocommerce td.actions{padding:20px 16px!important;background:#f9f9f9;border-radius:0 0 12px 12px;}
.woocommerce td.actions .coupon input{border:1px solid #ddd;border-radius:8px;padding:10px 14px;font-size:0.85rem;color:#000;margin-right:8px;background:#fff;}
.woocommerce td.actions .coupon .button{background:#fff!important;color:#000!important;border:1px solid #ddd!important;border-radius:var(--rad)!important;padding:10px 20px!important;font-size:0.8rem!important;}
.woocommerce td.actions .coupon .button:hover{background:#f5f5f5!important;}
.woocommerce td.actions > .button{float:right;}

/* Cart totals */
.woocommerce .cart-collaterals{margin-top:32px;}
.woocommerce .cart-collaterals .cart_totals{background:#fff;border-radius:16px;padding:28px;border:1px solid #eee;box-shadow:0 2px 12px rgba(0,0,0,0.04);}
.woocommerce .cart-collaterals .cart_totals h2{font-size:1.2rem;font-weight:700;color:#000;margin-bottom:16px;}
.woocommerce .cart-collaterals .cart_totals table{border:none;}
.woocommerce .cart-collaterals .cart_totals table th{background:none;font-weight:500;color:rgba(0,0,0,0.5);text-transform:none;letter-spacing:0;font-size:0.9rem;padding:12px 0;border-bottom:1px solid #f5f5f5;}
.woocommerce .cart-collaterals .cart_totals table td{padding:12px 0;border-bottom:1px solid #f5f5f5;color:#000;font-weight:600;text-align:right;}
.woocommerce .cart-collaterals .cart_totals .order-total td{font-size:1.2rem;font-weight:700;border-bottom:none;}
.woocommerce .cart-collaterals .wc-proceed-to-checkout a{display:block;width:100%;text-align:center;background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:16px!important;font-weight:700!important;font-size:0.9rem!important;text-transform:uppercase!important;letter-spacing:0.06em!important;margin-top:16px;border:none!important;}
.woocommerce .cart-collaterals .wc-proceed-to-checkout a:hover{background:#333!important;opacity:1;}

/* ===== CHECKOUT PAGE — Full Styling ===== */
.woocommerce-checkout main{background:#fff!important;}
.woocommerce-checkout .cl-page-hero{background:#fff!important;padding:40px 24px 10px;}
.woocommerce-checkout .cl-page-hero h1{color:#000!important;font-size:1.8rem;}
.woocommerce-checkout .woocommerce{color:#000;}
/* Form fields */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout h3#order_review_heading{font-size:1.2rem;font-weight:700;color:#000;margin-bottom:16px;margin-top:8px;}
.woocommerce-checkout .form-row label{display:block!important;font-size:0.8rem!important;font-weight:600!important;color:rgba(0,0,0,0.55)!important;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px!important;}
.woocommerce-checkout .form-row label .required{color:#e74c3c;}
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection{border:1px solid #ddd!important;border-radius:10px!important;padding:12px 16px!important;font-size:0.9rem!important;color:#000!important;background:#fff!important;width:100%;transition:border-color var(--tr);}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus{border-color:#000!important;outline:none!important;box-shadow:0 0 0 3px rgba(0,0,0,0.06)!important;}
.woocommerce-checkout .select2-container--default .select2-selection--single{height:auto!important;border:1px solid #ddd!important;border-radius:10px!important;padding:12px 16px!important;}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{color:#000!important;line-height:1.4!important;padding:0!important;}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%!important;transform:translateY(-50%);right:12px!important;}

/* Ship to different address checkbox */
.woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address{display:flex;align-items:center;gap:10px;margin:24px 0 16px;font-size:1rem;font-weight:600;color:#000;cursor:pointer;}
.woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address input{width:18px;height:18px;accent-color:#000;cursor:pointer;}

/* Order review / payment */
.woocommerce-checkout #order_review{background:#f9f9f9;border-radius:16px;padding:24px;border:1px solid #eee;margin-top:8px;}
.woocommerce-checkout #order_review table{border:none;width:100%;}
.woocommerce-checkout #order_review table th{background:none;font-weight:500;color:rgba(0,0,0,0.5);text-transform:none;letter-spacing:0;font-size:0.85rem;padding:10px 0;border-bottom:1px solid #eee;}
.woocommerce-checkout #order_review table td{padding:10px 0;border-bottom:1px solid #eee;color:#000;font-size:0.9rem;}
.woocommerce-checkout #order_review table .order-total th,.woocommerce-checkout #order_review table .order-total td{font-weight:700;font-size:1.1rem;border-bottom:none;padding-top:16px;}
.woocommerce-checkout #order_review table td .amount{font-weight:600;}
.woocommerce-checkout #order_review table .product-name{color:#000;}
.woocommerce-checkout #order_review table .product-name .product-quantity{color:rgba(0,0,0,0.4);}

/* Payment methods */
.woocommerce-checkout #payment{background:#fff;border-radius:16px;border:1px solid #eee;padding:24px;margin-top:20px;}
.woocommerce-checkout #payment ul.payment_methods{list-style:none!important;padding:0!important;margin:0 0 16px!important;border:none!important;}
.woocommerce-checkout #payment ul.payment_methods li{padding:14px 16px;border:1px solid #eee;border-radius:12px;margin-bottom:8px!important;background:#fff;transition:all 0.2s;}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked),
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input:checked ~ *{border-color:#000;}
.woocommerce-checkout #payment ul.payment_methods li label{font-size:0.9rem;font-weight:600;color:#000;cursor:pointer;display:flex;align-items:center;gap:10px;}
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{accent-color:#000;width:16px;height:16px;}
.woocommerce-checkout #payment .payment_box{background:#f9f9f9!important;border-radius:10px;padding:16px!important;margin-top:12px;color:rgba(0,0,0,0.65)!important;font-size:0.85rem;line-height:1.6;border:none!important;}
.woocommerce-checkout #payment .payment_box::before{display:none!important;}
.woocommerce-checkout #payment .payment_box p{color:rgba(0,0,0,0.65)!important;}

/* Place order button */
.woocommerce-checkout #place_order{display:block;width:100%;background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:16px 36px!important;font-weight:700!important;font-size:0.9rem!important;text-transform:uppercase!important;letter-spacing:0.06em!important;border:none!important;cursor:pointer!important;margin-top:16px;transition:background var(--tr)!important;}
.woocommerce-checkout #place_order:hover{background:#333!important;}

/* Privacy policy text */
.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:0.8rem;color:rgba(0,0,0,0.4);margin-top:12px;}
.woocommerce-checkout .woocommerce-privacy-policy-text a{color:#1d3686;}

/* Terms checkbox */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-top:12px;}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label{font-size:0.85rem;color:rgba(0,0,0,0.6);display:flex;align-items:center;gap:8px;}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input{accent-color:#000;width:16px;height:16px;}

/* ===== ACCOUNT PAGE — Text Visibility Fixes ===== */
/* Address page headers — fix invisible text */
.woocommerce-Address header h3,
.woocommerce-Address header .edit,
.woocommerce-Addresses .woocommerce-Address-title h3{color:#000!important;font-size:1rem!important;}
.woocommerce-Address header a,.woocommerce-Addresses a{color:#1d3686!important;font-size:0.85rem;}
.woocommerce-Addresses .woocommerce-Address-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
/* Fix any invisible text on account pages */
.woocommerce-MyAccount-content,.woocommerce-MyAccount-content p,.woocommerce-MyAccount-content td,.woocommerce-MyAccount-content th,.woocommerce-MyAccount-content label,.woocommerce-MyAccount-content span,.woocommerce-MyAccount-content div,.woocommerce-MyAccount-content address{color:#000!important;}
.woocommerce-MyAccount-content a{color:#1d3686!important;}
.woocommerce-MyAccount-content .woocommerce-message,.woocommerce-MyAccount-content .woocommerce-info{color:#2d6a2d!important;}

/* Dashboard greeting text */
.woocommerce-MyAccount-content > p:first-child{font-size:0.95rem;line-height:1.7;color:rgba(0,0,0,0.7)!important;}
.woocommerce-MyAccount-content > p:first-child a{font-weight:600;}

/* Account details form */
.woocommerce-EditAccountForm label{display:block;font-size:0.8rem;font-weight:600;color:rgba(0,0,0,0.55)!important;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px;}
.woocommerce-EditAccountForm input{color:#000!important;}
.woocommerce-EditAccountForm fieldset{border:1px solid #eee;border-radius:12px;padding:20px;margin-top:20px;}
.woocommerce-EditAccountForm legend{font-weight:600;color:#000!important;font-size:0.9rem;padding:0 8px;}

/* ===== WooCommerce Checkout Block Styles (for new block-based checkout) ===== */
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-text-input textarea{border:1px solid #ddd!important;border-radius:10px!important;color:#000!important;}
.wp-block-woocommerce-checkout label{color:rgba(0,0,0,0.55)!important;}
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button{background:#000!important;border-radius:var(--rad)!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:0.05em!important;}

/* ===== Custom payment gateway plugin styles ===== */
.woocommerce-checkout #payment .payment_method_custom_gateway label,
.woocommerce-checkout #payment .payment_method_woo_custom_gateway label{font-weight:600;color:#000;}
.woocommerce-checkout #payment .payment_method_custom_gateway .payment_box,
.woocommerce-checkout #payment .payment_method_woo_custom_gateway .payment_box{color:rgba(0,0,0,0.65)!important;}
.woocommerce-checkout #payment .payment_method_custom_gateway .payment_box p,
.woocommerce-checkout #payment .payment_method_woo_custom_gateway .payment_box p{color:rgba(0,0,0,0.65)!important;}

/* ===== Thank You page ===== */
.woocommerce-thankyou-order-received{background:#f0faf0;border:1px solid #c3e6c3;border-radius:12px;padding:20px;color:#2d6a2d;font-weight:600;font-size:1rem;margin-bottom:24px;}
.woocommerce-order-details{color:#000;}
.woocommerce-order-details th{color:#000!important;}
.woocommerce-order-details td{color:#000!important;}
.woocommerce-customer-details address{color:#000!important;font-style:normal;line-height:1.7;}

/* ===== General text color safety net for WooCommerce pages ===== */
.woocommerce-page main *:not(.header *):not(.announcement-bar *):not(.footer *):not(.hero-element):not(.hero-slogan):not(.hero-btn):not(.hero-badge):not([class*="entry-"]):not(.about-section-container *):not(.contact-v4-container *):not(.social-card *):not(.cl-page-hero *):not(.cl-page-body *){
  /* Don't override dark sections */
}

/* ===== Best sellers responsive ===== */
@media(max-width:900px){
  .best-sellers__inner ul.products{grid-template-columns:repeat(3,1fr)!important;}
}
@media(max-width:600px){
  .best-sellers__inner ul.products{grid-template-columns:repeat(2,1fr)!important;}
}

/* ==========================================================================
   v1.3 — SHOPIFY-QUALITY CART & CHECKOUT
   Block-based (new) + Classic (legacy) WooCommerce support
   ========================================================================== */

/* ===== BLOCK-BASED CART (wc/cart block) ===== */
.wp-block-woocommerce-cart,.wc-block-cart{color:#000!important;font-family:var(--font-body)!important;}
.wc-block-cart .wc-block-cart__main{flex:2!important;}
.wc-block-cart .wc-block-cart__sidebar{flex:1!important;}

/* Cart items */
.wc-block-cart-items .wc-block-cart-items__row{padding:24px 0!important;border-bottom:1px solid #f0f0f0!important;display:grid!important;grid-template-columns:100px 1fr auto!important;gap:20px!important;align-items:center!important;}
.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image{width:100px!important;height:100px!important;border-radius:12px!important;overflow:hidden!important;background:#f5f5f5;flex-shrink:0!important;}
.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img{width:100%!important;height:100%!important;object-fit:cover!important;}
.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product{display:flex!important;flex-direction:column!important;gap:4px!important;}
.wc-block-cart-item__product-name{font-size:1rem!important;font-weight:600!important;color:#000!important;text-decoration:none!important;}
.wc-block-cart-item__product-name:hover{color:#1d3686!important;}
.wc-block-cart-item__individual-price{font-size:0.9rem!important;color:rgba(0,0,0,0.5)!important;}
.wc-block-cart-item__total .wc-block-formatted-money-amount{font-size:1.1rem!important;font-weight:700!important;color:#000!important;}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector{border:1px solid #ddd!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important;}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector input{font-size:0.95rem!important;color:#000!important;width:48px!important;text-align:center!important;border:none!important;font-weight:600!important;}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector button{background:none!important;border:none!important;color:#000!important;padding:6px 10px!important;font-size:1.1rem!important;}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector button:hover{background:#f5f5f5!important;}
.wc-block-cart-item__remove-link{color:rgba(0,0,0,0.35)!important;font-size:0.8rem!important;text-decoration:underline!important;text-underline-offset:2px!important;margin-top:4px!important;}
.wc-block-cart-item__remove-link:hover{color:#e74c3c!important;}

/* Cart totals sidebar */
.wc-block-cart__totals-title{font-size:1.2rem!important;font-weight:700!important;color:#000!important;margin-bottom:16px!important;}
.wc-block-components-totals-wrapper{background:#f9f9f9!important;border-radius:16px!important;padding:24px!important;border:1px solid #eee!important;}
.wc-block-components-totals-item{display:flex!important;justify-content:space-between!important;padding:12px 0!important;border-bottom:1px solid #f0f0f0!important;font-size:0.9rem!important;}
.wc-block-components-totals-item__label{color:rgba(0,0,0,0.6)!important;}
.wc-block-components-totals-item__value{font-weight:600!important;color:#000!important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-weight:700!important;color:#000!important;font-size:1rem!important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-weight:700!important;font-size:1.2rem!important;}

/* Proceed to checkout button */
.wc-block-cart__submit-container .wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button{display:block!important;width:100%!important;background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:16px 24px!important;font-weight:700!important;font-size:0.9rem!important;text-transform:uppercase!important;letter-spacing:0.06em!important;border:none!important;cursor:pointer!important;text-align:center!important;transition:background var(--tr)!important;margin-top:12px!important;}
.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:#333!important;}

/* ===== BLOCK-BASED CHECKOUT ===== */
.wp-block-woocommerce-checkout,.wc-block-checkout{color:#000!important;font-family:var(--font-body)!important;}
.wc-block-checkout__main{flex:1.3!important;}
.wc-block-checkout__sidebar{flex:0.7!important;}

/* Section headings */
.wc-block-components-checkout-step__heading,.wc-block-checkout__actions_row .wc-block-components-checkout-step__title{font-size:1.1rem!important;font-weight:700!important;color:#000!important;margin-bottom:12px!important;}
.wc-block-components-checkout-step__description{font-size:0.85rem!important;color:rgba(0,0,0,0.5)!important;}

/* Form inputs */
.wc-block-components-text-input,.wc-block-components-combobox{margin-bottom:12px!important;}
.wc-block-components-text-input label,.wc-block-components-combobox label{font-size:0.8rem!important;font-weight:500!important;color:rgba(0,0,0,0.55)!important;text-transform:uppercase!important;letter-spacing:0.03em!important;}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,.wc-block-components-combobox .wc-block-components-combobox-control input{border:1px solid #ddd!important;border-radius:10px!important;padding:14px 16px!important;font-size:0.95rem!important;color:#000!important;background:#fff!important;transition:border-color var(--tr)!important;}
.wc-block-components-text-input input:focus,.wc-block-components-combobox .wc-block-components-combobox-control input:focus{border-color:#000!important;box-shadow:0 0 0 3px rgba(0,0,0,0.06)!important;outline:none!important;}
.wc-block-components-text-input.is-active label{color:#000!important;font-weight:600!important;}

/* Select / dropdown */
select,.wc-block-components-combobox-control select{border:1px solid #ddd!important;border-radius:10px!important;padding:14px 16px!important;color:#000!important;background:#fff!important;font-size:0.95rem!important;width:100%!important;-webkit-appearance:none!important;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 16px center!important;}

/* Checkbox styling */
.wc-block-components-checkbox .wc-block-components-checkbox__input,
.wc-block-checkout__use-address-for-billing .wc-block-components-checkbox__input{width:20px!important;height:20px!important;accent-color:#000!important;border-radius:4px!important;}
.wc-block-components-checkbox .wc-block-components-checkbox__label{font-size:0.9rem!important;color:rgba(0,0,0,0.7)!important;margin-left:4px!important;}

/* Saved address display */
.wc-block-components-address-card{background:#f9f9f9!important;border:1px solid #eee!important;border-radius:12px!important;padding:18px 20px!important;font-size:0.95rem!important;color:#000!important;line-height:1.6!important;}
.wc-block-components-address-card__edit{color:#1d3686!important;font-size:0.85rem!important;font-weight:600!important;}
.wc-block-components-address-card__address-section{color:#000!important;}

/* Shipping notice */
.wc-block-components-notice-banner{border-radius:12px!important;padding:16px 20px!important;font-size:0.9rem!important;}
.wc-block-components-notice-banner.is-error{background:#fef3e7!important;border:1px solid #f5c882!important;color:#8a6d3b!important;}
.wc-block-components-notice-banner.is-success{background:#f0faf0!important;border:1px solid #c3e6c3!important;color:#2d6a2d!important;}
.wc-block-components-notice-banner svg{flex-shrink:0!important;}

/* Order summary in sidebar */
.wc-block-components-order-summary{border:1px solid #eee!important;border-radius:16px!important;overflow:hidden!important;background:#f9f9f9!important;}
.wc-block-components-order-summary-item{padding:16px 20px!important;border-bottom:1px solid #f0f0f0!important;display:grid!important;grid-template-columns:56px 1fr auto!important;gap:14px!important;align-items:center!important;}
.wc-block-components-order-summary-item:last-child{border-bottom:none!important;}
.wc-block-components-order-summary-item__image{width:56px!important;height:56px!important;border-radius:8px!important;overflow:hidden!important;position:relative!important;}
.wc-block-components-order-summary-item__image img{width:100%!important;height:100%!important;object-fit:cover!important;}
.wc-block-components-order-summary-item__quantity{position:absolute!important;top:-6px!important;right:-6px!important;background:#000!important;color:#fff!important;border-radius:50%!important;width:20px!important;height:20px!important;font-size:0.7rem!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:700!important;}
.wc-block-components-order-summary-item__description{display:flex!important;flex-direction:column!important;gap:2px!important;}
.wc-block-components-order-summary-item__description .wc-block-components-product-name{font-size:0.9rem!important;font-weight:600!important;color:#000!important;}
.wc-block-components-order-summary-item__total-price{font-weight:700!important;color:#000!important;font-size:0.95rem!important;}
.wc-block-components-order-summary-item__individual-price{font-size:0.8rem!important;color:rgba(0,0,0,0.4)!important;}

/* Totals area */
.wc-block-components-totals-wrapper,.wc-block-components-panel{background:transparent!important;padding:0 20px!important;}
.wc-block-components-totals-item{padding:10px 0!important;display:flex!important;justify-content:space-between!important;}
.wc-block-components-totals-item__label{color:rgba(0,0,0,0.55)!important;font-size:0.9rem!important;}
.wc-block-components-totals-item__value .wc-block-formatted-money-amount{font-weight:600!important;color:#000!important;}
.wc-block-components-totals-footer-item{padding:16px 0!important;border-top:2px solid #eee!important;margin-top:8px!important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-size:1.05rem!important;font-weight:700!important;color:#000!important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value .wc-block-formatted-money-amount{font-size:1.2rem!important;font-weight:700!important;}

/* Payment method selection */
.wc-block-components-radio-control .wc-block-components-radio-control__option{padding:16px 18px!important;border:1px solid #eee!important;border-radius:12px!important;margin-bottom:8px!important;background:#fff!important;transition:all 0.2s!important;cursor:pointer!important;}
.wc-block-components-radio-control .wc-block-components-radio-control__option--checked{border-color:#000!important;box-shadow:0 0 0 1px #000!important;}
.wc-block-components-radio-control__label{font-size:0.95rem!important;font-weight:600!important;color:#000!important;}
.wc-block-components-radio-control__description{font-size:0.85rem!important;color:rgba(0,0,0,0.5)!important;margin-top:4px!important;}
.wc-block-components-radio-control__input{accent-color:#000!important;width:18px!important;height:18px!important;}

/* Payment box descriptions */
.wc-block-components-radio-control-accordion-content{background:#f9f9f9!important;border-radius:10px!important;padding:16px!important;margin-top:10px!important;color:rgba(0,0,0,0.65)!important;font-size:0.85rem!important;line-height:1.6!important;}
.wc-block-components-radio-control-accordion-content p{color:rgba(0,0,0,0.65)!important;}

/* Place order button (block) */
.wc-block-components-checkout-place-order-button{display:block!important;width:100%!important;background:#000!important;color:#fff!important;border-radius:var(--rad)!important;padding:18px 24px!important;font-weight:700!important;font-size:0.95rem!important;text-transform:uppercase!important;letter-spacing:0.06em!important;border:none!important;cursor:pointer!important;margin-top:16px!important;}
.wc-block-components-checkout-place-order-button:hover{background:#333!important;}

/* Return to cart link */
.wc-block-components-checkout-return-to-cart-button{color:#1d3686!important;font-size:0.85rem!important;font-weight:500!important;display:flex!important;align-items:center!important;gap:4px!important;margin-top:12px!important;}

/* Express checkout */
.wc-block-components-express-payment{margin-bottom:20px!important;}

/* ===== CLASSIC CART ENHANCEMENTS ===== */
/* Make sure product info is visible in classic cart too */
.woocommerce table.shop_table .product-thumbnail{width:100px!important;}
.woocommerce table.shop_table .product-thumbnail img{width:100px!important;height:100px!important;object-fit:cover!important;border-radius:12px!important;border:1px solid #f0f0f0!important;}
.woocommerce table.shop_table .product-name{font-weight:600!important;color:#000!important;}
.woocommerce table.shop_table .product-price .woocommerce-Price-amount,
.woocommerce table.shop_table .product-subtotal .woocommerce-Price-amount{font-weight:600!important;color:#000!important;font-size:1rem!important;}
.woocommerce table.shop_table .product-quantity .quantity .qty{width:70px!important;padding:10px!important;border:1px solid #ddd!important;border-radius:10px!important;text-align:center!important;font-size:0.95rem!important;font-weight:600!important;}

/* ===== GENERAL WC BLOCK COMPONENTS ===== */
.wc-block-components-sidebar-layout{gap:40px!important;}
.wc-block-components-main{flex:1.4!important;}
.wc-block-components-sidebar{flex:0.6!important;position:sticky!important;top:100px!important;}

/* All text in WC blocks should be visible */
.wc-block-checkout *,.wc-block-cart *{color:inherit;}
.wc-block-checkout{color:#000!important;}
.wc-block-cart{color:#000!important;}

/* ===== Shipping zone fix message styling ===== */
.woocommerce-shipping-destination{font-size:0.85rem;color:rgba(0,0,0,0.5);}

/* ==========================================================================
   v1.4 — POLISH PASS: Payment clipping, addresses, cart/checkout sizing
   ========================================================================== */

/* ===== PAYMENT METHOD RADIO BUTTONS — Fix text clipping ===== */
/* The radio + label were overlapping, cutting off first characters */
.wc-block-components-radio-control .wc-block-components-radio-control__option{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  padding:18px 22px 18px 52px!important;position:relative!important;
  border:1px solid #e0e0e0!important;border-radius:12px!important;margin-bottom:10px!important;
  background:#fff!important;transition:all 0.2s!important;cursor:pointer!important;
}
.wc-block-components-radio-control .wc-block-components-radio-control__option--checked{
  border-color:#000!important;background:#fafafa!important;
  box-shadow:0 0 0 1px #000!important;
}
.wc-block-components-radio-control__input{
  position:absolute!important;left:18px!important;top:20px!important;
  width:20px!important;height:20px!important;accent-color:#000!important;
  margin:0!important;flex-shrink:0!important;
}
.wc-block-components-radio-control__label{
  font-size:0.95rem!important;font-weight:600!important;color:#000!important;
  display:block!important;width:100%!important;padding-left:0!important;
  line-height:1.4!important;word-break:break-word!important;
}
.wc-block-components-radio-control__description{
  font-size:0.85rem!important;color:rgba(0,0,0,0.45)!important;
  margin-top:2px!important;padding-left:0!important;
  line-height:1.5!important;
}
/* Payment content/instructions box */
.wc-block-components-radio-control-accordion-content{
  background:#f5f6f8!important;border-radius:10px!important;
  padding:18px 20px!important;margin-top:12px!important;margin-left:-30px!important;
  width:calc(100% + 30px)!important;
  color:rgba(0,0,0,0.7)!important;font-size:0.88rem!important;line-height:1.7!important;
}
.wc-block-components-radio-control-accordion-content p{color:rgba(0,0,0,0.7)!important;margin-bottom:8px!important;}
.wc-block-components-radio-control-accordion-content p:last-child{margin-bottom:0!important;}

/* Classic checkout payment methods (non-block) */
.woocommerce-checkout #payment ul.payment_methods li{
  padding:18px 22px 18px 52px!important;position:relative!important;
}
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{
  position:absolute!important;left:18px!important;top:22px!important;
  width:20px!important;height:20px!important;
}
.woocommerce-checkout #payment ul.payment_methods li label{
  display:block!important;font-size:0.95rem!important;font-weight:600!important;
  color:#000!important;padding-left:0!important;
}

/* ===== CART — Clean professional layout (reference: Shopify-style) ===== */
/* Reset all WooCommerce block cart defaults */
.wc-block-cart-items,.wc-block-cart-items table,.wc-block-cart-items tbody{
  display:block!important;width:100%!important;
}
.wc-block-cart-items thead{
  display:grid!important;grid-template-columns:1fr 1fr 1fr!important;
  padding:0 0 16px!important;border-bottom:1px solid #e5e5e5!important;margin-bottom:0!important;
}
.wc-block-cart-items thead th{
  font-size:0.7rem!important;text-transform:uppercase!important;
  letter-spacing:0.1em!important;color:rgba(0,0,0,0.4)!important;
  font-weight:600!important;padding:0!important;border:none!important;
  background:none!important;
}

/* Each cart row */
.wc-block-cart-items .wc-block-cart-items__row{
  display:grid!important;
  grid-template-columns:120px 1fr 140px 120px!important;
  gap:0!important;align-items:center!important;
  padding:28px 0!important;border-bottom:1px solid #e5e5e5!important;
  border-top:none!important;margin:0!important;
  background:none!important;box-shadow:none!important;
}
/* Kill ALL internal borders/lines inside cart rows */
.wc-block-cart-items__row *{border:none!important;box-shadow:none!important;}
/* Re-add only the row divider */
.wc-block-cart-items .wc-block-cart-items__row{border-bottom:1px solid #e5e5e5!important;}

/* Product image — flush left, no extra border/margin */
.wc-block-cart-items__row .wc-block-cart-item__image{
  width:110px!important;height:130px!important;
  border-radius:0!important;overflow:hidden!important;
  border:none!important;background:none!important;
  margin:0!important;padding:0!important;
  flex-shrink:0!important;
}
.wc-block-cart-items__row .wc-block-cart-item__image img{
  width:100%!important;height:100%!important;object-fit:cover!important;
  border-radius:6px!important;display:block!important;
}

/* Product info — name and price stacked, left of quantity */
.wc-block-cart-item__product{
  display:flex!important;flex-direction:column!important;gap:4px!important;
  justify-content:center!important;padding-left:20px!important;
}
.wc-block-cart-item__product-name{
  font-size:1rem!important;font-weight:500!important;color:#000!important;
  text-decoration:none!important;line-height:1.3!important;
}
.wc-block-cart-item__product-name:hover{color:#555!important;opacity:1!important;}
/* Hide the per-item price under name — we show total on the right */
.wc-block-cart-item__individual-price{display:none!important;}
/* Show price under product name instead */
.wc-block-cart-item__prices{
  font-size:0.9rem!important;color:rgba(0,0,0,0.5)!important;
}

/* Quantity — centered */
.wc-block-cart-item__quantity{
  display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;
  gap:8px!important;padding:0 24px!important;
}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector{
  border:none!important;border-radius:0!important;
  display:inline-flex!important;align-items:center!important;
  background:none!important;gap:0!important;overflow:visible!important;
}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector input{
  width:40px!important;font-size:1.1rem!important;font-weight:400!important;
  text-align:center!important;border:none!important;
  background:transparent!important;color:#000!important;
  -moz-appearance:textfield!important;padding:0!important;
}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector input::-webkit-inner-spin-button,
.wc-block-cart-item__quantity .wc-block-components-quantity-selector input::-webkit-outer-spin-button{
  -webkit-appearance:none!important;margin:0!important;
}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector button{
  background:none!important;border:none!important;color:rgba(0,0,0,0.35)!important;
  padding:4px 6px!important;font-size:1rem!important;
  cursor:pointer!important;transition:color 0.2s!important;
  line-height:1!important;
}
.wc-block-cart-item__quantity .wc-block-components-quantity-selector button:hover{
  color:#000!important;
}
/* Remove link — small, under quantity */
.wc-block-cart-item__remove-link,.wc-block-cart-item__remove-icon{
  display:none!important;
}

/* Price/Total column — right aligned */
.wc-block-cart-item__total{
  text-align:right!important;padding-right:0!important;
}
.wc-block-cart-item__total .wc-block-formatted-money-amount{
  font-size:1.1rem!important;font-weight:500!important;color:#000!important;
}

/* ===== Cart Totals Sidebar ===== */
.wc-block-cart__totals-title{
  font-size:1.1rem!important;font-weight:700!important;color:#000!important;
  margin-bottom:16px!important;text-transform:uppercase!important;
  letter-spacing:0.04em!important;
}
.wc-block-components-totals-wrapper{
  background:transparent!important;border:none!important;
  border-radius:0!important;padding:0!important;
}
.wc-block-components-totals-item{
  display:flex!important;justify-content:space-between!important;
  padding:12px 0!important;border-bottom:1px solid #f0f0f0!important;
  font-size:0.9rem!important;
}
.wc-block-components-totals-item__label{color:rgba(0,0,0,0.55)!important;font-weight:400!important;}
.wc-block-components-totals-item__value{font-weight:600!important;color:#000!important;}
.wc-block-components-totals-item__value .wc-block-formatted-money-amount{font-weight:600!important;}
.wc-block-components-totals-footer-item{
  border-top:2px solid #e5e5e5!important;border-bottom:none!important;
  margin-top:8px!important;padding-top:16px!important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font-weight:700!important;color:#000!important;font-size:1rem!important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value .wc-block-formatted-money-amount{
  font-size:1.2rem!important;font-weight:700!important;
}

/* Proceed to checkout */
.wc-block-cart__submit-container .wc-block-cart__submit-button,
.wc-block-cart__submit-button{
  display:block!important;width:100%!important;
  background:#000!important;color:#fff!important;
  border-radius:var(--rad)!important;padding:18px 24px!important;
  font-weight:700!important;font-size:0.9rem!important;
  text-transform:uppercase!important;letter-spacing:0.06em!important;
  border:none!important;cursor:pointer!important;text-align:center!important;
  transition:background 0.2s!important;margin-top:16px!important;
}
.wc-block-cart__submit-button:hover{background:#333!important;}

/* Coupon section */
.wc-block-components-totals-coupon{border:none!important;padding:0!important;}

/* ===== Classic cart table ===== */
.woocommerce table.shop_table{
  width:100%!important;border-collapse:collapse!important;
  border:none!important;border-spacing:0!important;
}
.woocommerce table.shop_table thead th{
  font-size:0.7rem!important;text-transform:uppercase!important;
  letter-spacing:0.1em!important;color:rgba(0,0,0,0.4)!important;
  font-weight:600!important;padding:0 16px 16px!important;
  border-bottom:1px solid #e5e5e5!important;border-top:none!important;
  background:none!important;
}
.woocommerce table.shop_table td{
  vertical-align:middle!important;padding:28px 16px!important;
  border-bottom:1px solid #e5e5e5!important;border-top:none!important;
}
.woocommerce table.shop_table .product-thumbnail{width:110px!important;padding-left:0!important;}
.woocommerce table.shop_table .product-thumbnail img{
  width:110px!important;height:130px!important;object-fit:cover!important;
  border-radius:6px!important;border:none!important;display:block!important;
}
.woocommerce table.shop_table .product-name a{
  font-weight:500!important;color:#000!important;font-size:1rem!important;
  text-decoration:none!important;
}
.woocommerce table.shop_table .product-price .woocommerce-Price-amount,
.woocommerce table.shop_table .product-subtotal .woocommerce-Price-amount{
  font-weight:500!important;color:#000!important;font-size:1rem!important;
}
.woocommerce table.shop_table .product-quantity .qty{
  width:50px!important;padding:8px!important;border:none!important;
  text-align:center!important;font-size:1rem!important;font-weight:400!important;
  background:transparent!important;color:#000!important;
}
.woocommerce table.shop_table .product-remove a{
  color:rgba(0,0,0,0.2)!important;font-size:1.2rem!important;
}
.woocommerce table.shop_table .product-remove a:hover{color:#e74c3c!important;}
.woocommerce td.actions{
  border-bottom:none!important;padding:20px 0!important;background:none!important;
}

/* ===== CHECKOUT — Larger order summary items ===== */
.wc-block-components-order-summary-item{
  padding:18px 22px!important;gap:16px!important;
  grid-template-columns:64px 1fr auto!important;
}
.wc-block-components-order-summary-item__image{
  width:64px!important;height:64px!important;border-radius:10px!important;
  border:1px solid #f0f0f0!important;
}
.wc-block-components-order-summary-item__description .wc-block-components-product-name{
  font-size:0.92rem!important;font-weight:600!important;
}
.wc-block-components-order-summary-item__total-price{
  font-size:1rem!important;font-weight:700!important;
}

/* Checkout form inputs — larger */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea{
  padding:16px 18px!important;font-size:1rem!important;
  border-radius:12px!important;
}
.wc-block-components-combobox .wc-block-components-combobox-control input{
  padding:16px 18px!important;font-size:1rem!important;border-radius:12px!important;
}

/* Checkout layout spacing */
.wc-block-components-sidebar-layout{gap:48px!important;}
.wc-block-components-main{flex:1.5!important;}
.wc-block-components-sidebar{flex:0.6!important;}

/* ===== ACCOUNT — Address Cards Fix ===== */
/* Nuclear override — WooCommerce applies gradient/colored text to address headers */
.woocommerce-Addresses .woocommerce-Address{
  background:#f9f9f9!important;border:1px solid #eee!important;
  border-radius:14px!important;padding:24px!important;
}
/* Override EVERY possible heading selector inside address cards */
.woocommerce-Address .woocommerce-Address-title,
.woocommerce-Address header,
.woocommerce-Addresses .col-1 header,
.woocommerce-Addresses .col-2 header{
  display:flex!important;justify-content:space-between!important;
  align-items:center!important;margin-bottom:14px!important;
  padding-bottom:12px!important;border-bottom:1px solid #e8e8e8!important;
}
.woocommerce-Address .woocommerce-Address-title h2,
.woocommerce-Address .woocommerce-Address-title h3,
.woocommerce-Address header h2,
.woocommerce-Address header h3,
.woocommerce-Addresses h2,
.woocommerce-Addresses h3,
.woocommerce-Addresses .col-1 h2,
.woocommerce-Addresses .col-1 h3,
.woocommerce-Addresses .col-2 h2,
.woocommerce-Addresses .col-2 h3,
.woocommerce-MyAccount-content .woocommerce-Addresses h2,
.woocommerce-MyAccount-content .woocommerce-Addresses h3,
.woocommerce-column--billing-address h2,
.woocommerce-column--shipping-address h2,
.woocommerce-column--billing-address h3,
.woocommerce-column--shipping-address h3{
  color:#000!important;font-size:1rem!important;font-weight:700!important;
  margin:0!important;background:none!important;-webkit-background-clip:unset!important;
  -webkit-text-fill-color:#000!important;background-clip:unset!important;
  text-fill-color:#000!important;
}
.woocommerce-Address .woocommerce-Address-title a,
.woocommerce-Address header a,
.woocommerce-Addresses .col-1 a,
.woocommerce-Addresses .col-2 a{
  color:#000!important;font-size:0.8rem!important;font-weight:600!important;
  text-transform:uppercase!important;letter-spacing:0.04em!important;
  background:#fff!important;border:1px solid #ddd!important;
  padding:6px 14px!important;border-radius:8px!important;
  transition:all var(--tr)!important;text-decoration:none!important;
  -webkit-text-fill-color:#000!important;
}
.woocommerce-Address .woocommerce-Address-title a:hover,
.woocommerce-Address header a:hover{
  background:#000!important;color:#fff!important;border-color:#000!important;
  opacity:1!important;-webkit-text-fill-color:#fff!important;
}
.woocommerce-Address address{
  font-style:normal!important;line-height:1.7!important;
  color:#333!important;font-size:0.95rem!important;
}

/* ===== SHOP TABS — Ensure active state works on category archive pages ===== */
.cl-shop-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap;padding:0;}
.cl-tab{display:inline-flex;align-items:center;gap:4px;padding:9px 22px;border:1px solid #ddd;border-radius:100px;font-size:0.85rem;font-weight:500;color:rgba(0,0,0,0.55);transition:all var(--tr);text-decoration:none!important;}
.cl-tab:hover{border-color:#000;color:#000;opacity:1!important;}
.cl-tab--active,.cl-tab--active:hover{background:#000!important;color:#fff!important;border-color:#000!important;opacity:1!important;}

/* ===== CHECKOUT — Shipping method selector ===== */
.wc-block-components-shipping-rates-control{margin-top:8px;}
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option{
  padding:14px 18px 14px 48px!important;border-radius:10px!important;
}
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__label{
  font-size:0.9rem!important;
}
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__secondary-label{
  font-weight:600!important;color:#000!important;
}

/* ===== FIX: Checkout "use same address" checkbox area ===== */
.wc-block-checkout__use-address-for-billing{
  margin:16px 0!important;padding:14px 18px!important;
  background:#f9f9f9!important;border-radius:10px!important;
  border:1px solid #eee!important;
}
.wc-block-checkout__use-address-for-billing .wc-block-components-checkbox__label{
  font-size:0.92rem!important;font-weight:500!important;color:#000!important;
}

/* ===== GENERAL FIX: Ensure all WooCommerce block text is black ===== */
.wc-block-checkout__form *,
.wc-block-cart__main *,
.wc-block-cart__sidebar *,
.wc-block-checkout__sidebar *{
  color:inherit;
}
.wc-block-checkout__form,
.wc-block-cart__main,
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar{
  color:#000!important;
}

/* ===== Place order button — ensure full width and visible ===== */
.wc-block-components-checkout-place-order-button{
  display:block!important;width:100%!important;
  background:#000!important;color:#fff!important;
  border-radius:var(--rad)!important;padding:18px 24px!important;
  font-weight:700!important;font-size:0.95rem!important;
  text-transform:uppercase!important;letter-spacing:0.06em!important;
  border:none!important;cursor:pointer!important;
}
.wc-block-components-checkout-place-order-button:hover{background:#222!important;}

/* ===== Mobile responsive for payment options ===== */
@media(max-width:600px){
  .wc-block-components-radio-control .wc-block-components-radio-control__option{
    padding:16px 16px 16px 46px!important;
  }
  .wc-block-components-radio-control__input{left:14px!important;}
  .wc-block-cart-items .wc-block-cart-items__row{
    grid-template-columns:80px 1fr!important;gap:14px!important;
  }
  .wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image{
    width:80px!important;height:80px!important;
  }
  .wc-block-components-sidebar-layout{flex-direction:column!important;gap:24px!important;}
}

/* ==========================================
   FIX: Misaligned WooCommerce Block Borders
============================================= */

/* 1. Target the specific internal wrappers that hold the default borders */
.wp-block-woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap,
.wp-block-woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-details,
.wp-block-woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__product,
.wp-block-woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__total,
.wp-block-woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__quantity {
    border: none !important;
}

/* 2. Kill the pseudo-elements WooCommerce uses for dividers */
.wp-block-woocommerce-cart .wc-block-cart-items__row::before,
.wp-block-woocommerce-cart .wc-block-cart-items__row::after,
.wp-block-woocommerce-cart .wc-block-cart-item__wrap::before,
.wp-block-woocommerce-cart .wc-block-cart-item__wrap::after {
    display: none !important;
    content: none !important;
    border: none !important;
}

/* ===== Custom Add to Cart Toast Notification ===== */
.cl-cart-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    background: #000;
    color: #fff;
    padding: 16px 24px;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.15);
    z-index: 99999;
    transform: translateY(100px);
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 0.95rem;
    font-weight: 500;
}

.cl-cart-toast.show {
    transform: translateY(0);
    opacity: 1;
}

.cl-cart-toast a {
    background: #fff;
    color: #000;
    padding: 8px 14px;
    border-radius: 6px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    text-decoration: none;
    transition: opacity 0.2s;
}

.cl-cart-toast a:hover {
    opacity: 0.8;
}

@media(max-width: 600px) {
    .cl-cart-toast {
        bottom: 16px;
        right: 16px;
        left: 16px;
        justify-content: space-between;
    }
}

/* ==========================================================================
   v1.5 — CHECKOUT OVERHAUL (Professional & Fluid)
========================================================================== */

/* --- 1. Fix Input & Label Overlap (Floating Labels) --- */
.wp-block-woocommerce-checkout .wc-block-components-text-input {
    position: relative !important;
    background: #fff !important;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input label {
    position: absolute !important;
    top: 8px !important;
    left: 16px !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    color: rgba(0,0,0,0.45) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important; /* Kills the weird default float animation */
}
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-text-input textarea {
    padding: 24px 16px 8px !important; /* Pushes text securely below the label */
    line-height: 1.4 !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    height: auto !important;
    border: 1px solid #ddd !important;
    border-radius: 10px !important;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input.is-active input:focus {
    border-color: #000 !important;
    box-shadow: 0 0 0 1px #000 !important;
}

/* --- 2. Order Summary Sidebar Polish --- */
/* Remove the nested grey/white box effect, make it one unified panel */
.wc-block-checkout__sidebar {
    background: #fafafa !important;
    border: 1px solid #eaeaea !important;
    border-radius: 16px !important;
    padding: 32px !important;
}
.wc-block-components-order-summary {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}
/* Clean up the inner panel wrap */
.wc-block-components-panel, 
.wc-block-components-panel__content {
    padding: 0 !important;
    background: transparent !important;
}

/* --- 3. Order Summary Items (Images & Text) --- */
.wc-block-components-order-summary-item {
    display: grid !important;
    grid-template-columns: 64px 1fr auto !important;
    gap: 16px !important;
    align-items: center !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid #eaeaea !important;
    background: transparent !important;
}
/* Fix the squished/bordered images so they fill the box entirely */
.wc-block-components-order-summary-item__image {
    width: 64px !important;
    height: 64px !important;
    border-radius: 10px !important;
    border: 1px solid #e0e0e0 !important;
    padding: 0 !important; /* Removes the white void around the image */
    background: #fff !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    box-shadow: none !important;
}
.wc-block-components-order-summary-item__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important; /* Forces image to stretch nicely */
    object-position: center !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

/* Fix text wrapping and squishing */
.wc-block-components-order-summary-item__description {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    justify-content: center !important;
    padding: 0 !important;
}
.wc-block-components-product-name {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #000 !important;
    line-height: 1.3 !important;
    white-space: normal !important; /* Prevents awkward line breaks */
}
/* Hide the redundant grey sub-price under the product name */
.wc-block-components-order-summary-item__individual-price {
    display: none !important;
}
.wc-block-components-order-summary-item__total-price {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #000 !important;
    text-align: right !important;
}

/* --- 4. Radio Buttons Vertical Alignment (Shipping) --- */
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important; /* Vertically centers the circle with text */
    padding: 16px 20px !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 12px !important;
    margin-bottom: 12px !important;
    position: relative !important;
}
.wc-block-components-radio-control__input {
    position: static !important; /* Fixes detached radio circles */
    margin: 0 16px 0 0 !important;
    flex-shrink: 0 !important;
    width: 20px !important;
    height: 20px !important;
}
.wc-block-components-radio-control__label-group {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    width: 100% !important;
    align-items: center !important;
}
.wc-block-components-radio-control__label {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
}

/* Checkbox Alignment Fix */
.wc-block-checkout__use-address-for-billing {
    display: flex !important;
    align-items: center !important;
    padding: 16px 20px !important;
    border: 1px solid #eaeaea !important;
    border-radius: 12px !important;
    background: #fafafa !important;
    margin-top: 16px !important;
}
.wc-block-checkout__use-address-for-billing .wc-block-components-checkbox__input {
    margin-right: 12px !important;
    margin-top: 0 !important;
}

/* ==========================================
   v1.6 — Payment & Shipping Layout Fixes
============================================= */

/* 1. Fix the grey description box breaking out of the container */
.wc-block-components-radio-control-accordion-content {
    margin-left: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin-top: 14px !important;
}

/* 2. Fix the weird black border artifacts & corners */
.wc-block-components-radio-control .wc-block-components-radio-control__option {
    overflow: hidden !important; /* Clips the inner corners cleanly */
    box-shadow: none !important; /* Removes overlapping shadow artifacts */
    border: 1px solid #ddd !important; /* Reset to clean grey */
    padding: 16px 20px !important; /* Fixes internal spacing */
}

/* 3. Make the active selected option clean and bold */
.wc-block-components-radio-control .wc-block-components-radio-control__option--checked {
    border: 2px solid #000 !important; 
    box-shadow: none !important;
    background-color: #fafafa !important;
}

/* 4. Fix Radio Button Alignment */
.wc-block-components-radio-control__input {
    position: static !important;
    margin: 0 12px 0 0 !important;
    width: 18px !important;
    height: 18px !important;
}
.wc-block-components-radio-control__label {
    padding-left: 0 !important;
    display: inline-block !important;
}

/* 5. Remove any random theme bullet points bleeding through */
.wc-block-components-radio-control li::before,
.wc-block-components-radio-control li::after {
    display: none !important;
    content: none !important;
}