/*
Theme Name: LuxeMart Pro
Description: 2030-level WooCommerce fashion theme — speed, SEO, dark/light mode, Shopify-quality UX
Version: 4.9.1
Requires at least: 6.2
Requires PHP: 8.0
WC requires at least: 8.0
WC tested up to: 9.5
Text Domain: luxemart
*/

/* ── TOKENS ── */
:root {
  /* Neutral palette - dark mode default */
  --bg:     #080808;
  --bg1:    #0f0f0f;
  --bg2:    #161616;
  --bg3:    #1e1e1e;
  --bg4:    #262626;
  --bg5:    #2e2e2e;
  --surface:#111;
  --border: #242424;
  --border2:#333;
  --border3:#444;
  --muted:  #4a4a4a;
  --gray:   #777;
  --light:  #aaa;
  --white:  #e8e8e8;
  --pure:   #fff;

  /* Brand */
  --accent:  #e8ff00;
  --accent2: #cfea00;
  --accent3: rgba(232,255,0,.12);
  --sale:    #ff3b30;
  --sale2:   rgba(255,59,48,.12);
  --gold:    #c9a84c;
  --gold2:   rgba(201,168,76,.12);
  --green:   #34c759;
  --green2:  rgba(52,199,89,.12);
  --blue:    #0a84ff;
  --purple:  #bf5af2;

  /* Radii */
  --r1:3px; --r2:6px; --r3:10px; --r4:14px; --r5:20px; --rfull:999px;

  /* Transitions */
  --t:    .15s ease;
  --t2:   .25s ease;
  --ts:   .35s cubic-bezier(.4,0,.2,1);
  --tss:  .5s cubic-bezier(.22,1,.36,1);

  /* Shadows */
  --sh1: 0 1px 3px rgba(0,0,0,.5);
  --sh2: 0 4px 16px rgba(0,0,0,.6);
  --sh3: 0 8px 40px rgba(0,0,0,.7);
  --sh4: 0 20px 80px rgba(0,0,0,.8);
  --glow: 0 0 30px rgba(232,255,0,.2);

  /* Layout */
  --max:  1520px;
  --pad:  clamp(14px,2.5vw,48px);
  --hh:   68px;

  /* Card */
  --card-bg: var(--bg1);
  --card-border: var(--border);
}

/* Light mode */
[data-theme="light"] {
  --bg:    #fafafa;
  --bg1:   #f4f4f4;
  --bg2:   #ececec;
  --bg3:   #e4e4e4;
  --bg4:   #dcdcdc;
  --bg5:   #d4d4d4;
  --surface:#fff;
  --border: #e0e0e0;
  --border2:#ccc;
  --border3:#bbb;
  --muted:  #b0b0b0;
  --gray:   #888;
  --light:  #555;
  --white:  #222;
  --pure:   #111;
  --card-bg: #fff;
  --card-border: #e8e8e8;
  --sh1: 0 1px 3px rgba(0,0,0,.08);
  --sh2: 0 4px 16px rgba(0,0,0,.1);
  --sh3: 0 8px 40px rgba(0,0,0,.12);
}

/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--light);line-height:1.6;overflow-x:hidden;transition:background .3s,color .3s}
a{color:inherit;text-decoration:none;transition:color var(--t)}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
button,input,select,textarea{font-family:inherit}
button{cursor:pointer;border:none;background:none}
::selection{background:var(--accent);color:#000}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r1)}
[data-theme="light"] ::selection{background:var(--accent);color:#000}

/* ── LAYOUT ── */
.lux-wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.lux-section{padding:88px 0}
.lux-section--sm{padding:52px 0}
.lux-section--xs{padding:32px 0}
.lux-section--dark{background:var(--bg1)}
.lux-section--surface{background:var(--surface)}
.lux-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lux-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

/* Section Header */
.lux-sh{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:40px}
.lux-sh__eyebrow{font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.lux-sh__title{font-size:clamp(1.9rem,3.2vw,3rem);font-weight:900;color:var(--white);line-height:1;letter-spacing:-.03em}
.lux-sh__sub{font-size:14px;color:var(--gray);margin-top:8px;max-width:480px}
.lux-sh__link{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);display:flex;align-items:center;gap:5px;transition:color var(--t);flex-shrink:0;border-bottom:1px solid transparent;padding-bottom:1px}
.lux-sh__link:hover{color:var(--accent);border-bottom-color:var(--accent)}

/* ── TOPBAR ── */
#lux-topbar{height:36px;background:var(--accent);display:flex;align-items:center;padding:0 var(--pad);position:relative;overflow:hidden}
.tb-scroll{white-space:nowrap;overflow:hidden;flex:1;position:relative}
.tb-scroll-inner{display:inline-flex;gap:0;animation:tb-scroll 30s linear infinite}
.tb-scroll-inner:hover{animation-play-state:paused}
.tb-item{display:inline-flex;align-items:center;padding:0 32px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#000}
.tb-item::after{content:'✦';margin-left:32px;font-size:8px;opacity:.4}
@keyframes tb-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.tb-actions{display:flex;gap:16px;flex-shrink:0}
.tb-actions a{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(0,0,0,.6);transition:color var(--t)}
.tb-actions a:hover{color:#000}

/* ── HEADER ── */
#lux-header{position:sticky;top:0;z-index:900;height:var(--hh);background:rgba(8,8,8,.96);backdrop-filter:blur(32px) saturate(180%);-webkit-backdrop-filter:blur(32px) saturate(180%);border-bottom:1px solid var(--border);transition:all var(--t2)}
[data-theme="light"] #lux-header{background:rgba(250,250,250,.96)}
#lux-header.scrolled{height:56px;box-shadow:var(--sh2)}
.lux-header-inner{display:flex;align-items:center;gap:16px;height:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}

/* Logo */
.lux-logo a{display:flex;align-items:center;gap:10px}
.lux-logo-text{font-size:20px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--white);white-space:nowrap;line-height:1}
.lux-logo-text em{font-style:normal;color:var(--accent)}

/* Nav */
#lux-nav{flex:1;height:100%;display:flex;align-items:stretch}
#lux-nav>ul{display:flex;align-items:stretch}
#lux-nav>ul>li{position:relative;display:flex;align-items:center}
#lux-nav>ul>li>a{display:flex;align-items:center;gap:5px;padding:0 13px;height:100%;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--gray);border-bottom:2px solid transparent;transition:color var(--t),border-color var(--t);white-space:nowrap}
#lux-nav>ul>li>a:hover,#lux-nav>ul>li.current-menu-item>a{color:var(--white);border-bottom-color:var(--accent)}
/* Mega dropdown */
/* Dropdown sub-menu — works with both .lux-mega and native .sub-menu */
#lux-nav ul li .sub-menu,
#lux-nav ul li .lux-mega{
  position:absolute;top:100%;left:50%;
  transform:translateX(-50%) translateY(-6px);
  background:var(--bg1);
  border:1px solid var(--border);
  border-top:2px solid var(--accent);
  border-radius:0 0 var(--r3) var(--r3);
  min-width:220px;padding:8px 0;
  box-shadow:var(--sh3);
  opacity:0;visibility:hidden;
  transition:opacity var(--t2),visibility var(--t2),transform var(--t2);
  pointer-events:none;z-index:500;
  list-style:none;
}
#lux-nav ul li:hover>.sub-menu,
#lux-nav ul li:hover>.lux-mega,
#lux-nav ul li:focus-within>.sub-menu,
#lux-nav ul li:focus-within>.lux-mega{
  opacity:1;visibility:visible;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
}
#lux-nav ul li .sub-menu li,
#lux-nav ul li .lux-mega li{position:relative;display:block;}
#lux-nav ul li .sub-menu li a,
#lux-nav ul li .lux-mega li a{
  display:flex;align-items:center;gap:8px;
  padding:10px 18px;font-size:13px;
  color:var(--gray);white-space:nowrap;
  border-bottom:none;
  transition:color var(--t),background var(--t),padding-left var(--t);
}
#lux-nav ul li .sub-menu li a:hover,
#lux-nav ul li .lux-mega li a:hover{
  color:var(--white);background:var(--bg3);padding-left:24px;
}
.nav-pill{font-size:8px;font-weight:900;padding:2px 6px;border-radius:var(--r1);line-height:1.5}
.nav-pill--new{background:var(--accent);color:#000}
.nav-pill--sale{background:var(--sale);color:#fff}
.nav-pill--hot{background:var(--gold);color:#000}

/* Search */
.lux-search-wrap{position:relative;flex:1;max-width:380px}
.lux-search-wrap input{width:100%;height:38px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--rfull);padding:0 42px 0 16px;font-size:13px;color:var(--white);transition:all var(--t2)}
.lux-search-wrap input::placeholder{color:var(--muted)}
.lux-search-wrap input:focus{outline:none;border-color:var(--accent);background:var(--bg2);box-shadow:0 0 0 4px var(--accent3)}
.lux-search-btn{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:16px;display:flex;align-items:center;transition:color var(--t)}
.lux-search-btn:hover{color:var(--accent)}
#lux-search-drop{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg1);border:1px solid var(--border);border-radius:var(--r3);box-shadow:var(--sh3);padding:10px;display:none;z-index:300;max-height:440px;overflow-y:auto}
#lux-search-drop.open{display:block}
.sr-head{font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:4px 8px 10px}
.sr-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--r2);transition:background var(--t);text-decoration:none}
.sr-item:hover{background:var(--bg3)}
.sr-item img{width:44px;height:58px;object-fit:cover;border-radius:var(--r2);background:var(--bg3);flex-shrink:0}
.sr-name{font-size:13px;color:var(--white);font-weight:600;line-height:1.3}
.sr-brand{font-size:10px;color:var(--muted);margin-bottom:3px;text-transform:uppercase;letter-spacing:.08em}
.sr-price{font-size:12px;color:var(--accent);font-weight:700}

/* Header actions */
.lux-hactions{display:flex;align-items:center;gap:2px;flex-shrink:0}
.lux-hbtn{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--gray);border-radius:var(--r2);font-size:19px;transition:all var(--t);cursor:pointer}
.lux-hbtn:hover{background:var(--bg3);color:var(--white)}
.lux-hbtn .lux-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;background:var(--accent);color:#000;font-size:9px;font-weight:900;border-radius:var(--rfull);display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}
/* Theme toggle */
.lux-theme-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--r2);transition:background var(--t);font-size:18px;color:var(--gray)}
.lux-theme-toggle:hover{background:var(--bg3);color:var(--white)}
.lux-hamburger{display:none;width:40px;height:40px;align-items:center;justify-content:center;color:var(--white);font-size:22px}

/* ── MOBILE NAV ── */
#lux-mobile-nav{position:fixed;inset:0 auto 0 0;width:min(360px,100vw);background:var(--bg1);border-right:1px solid var(--border);z-index:1000;transform:translateX(-100%);transition:transform var(--tss);display:flex;flex-direction:column;overflow-y:auto}
#lux-mobile-nav.open{transform:translateX(0)}
#lux-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:999;display:none;backdrop-filter:blur(4px)}
#lux-overlay.open{display:block}
.mn-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border)}
.mn-close{font-size:22px;color:var(--gray);transition:color var(--t)}
.mn-close:hover{color:var(--white)}
.mn-search{padding:12px 20px;border-bottom:1px solid var(--border)}
.mn-search input{width:100%;height:42px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:0 16px;font-size:14px;color:var(--white)}
.mn-search input:focus{outline:none;border-color:var(--accent)}
.mn-body{flex:1}
.mn-body a{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-size:14px;font-weight:600;color:var(--light);border-bottom:1px solid var(--border);transition:all var(--t)}
.mn-body a:hover{color:var(--accent);background:var(--bg2);padding-left:28px}
.mn-foot{padding:20px;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--border)}

/* ── CART DRAWER ── */
#lux-cart-drawer{position:fixed;inset:0 0 0 auto;width:min(440px,100vw);background:var(--bg1);border-left:1px solid var(--border);z-index:950;transform:translateX(100%);transition:transform var(--tss);display:flex;flex-direction:column}
#lux-cart-drawer.open{transform:translateX(0)}
#lux-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:940;display:none;backdrop-filter:blur(4px)}
#lux-cart-overlay.open{display:block}
.lcd-head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border)}
.lcd-title{font-size:15px;font-weight:800;color:var(--white);display:flex;align-items:center;gap:10px;letter-spacing:-.02em}
.lcd-cnt{min-width:22px;height:22px;background:var(--accent);color:#000;border-radius:var(--rfull);font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 5px}
.lcd-close{font-size:22px;color:var(--gray);cursor:pointer;transition:color var(--t);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--r2);border:none;background:transparent}
.lcd-close:hover{background:var(--bg3);color:var(--white)}
.lcd-ship{flex-shrink:0;padding:12px 24px;background:var(--bg2);border-bottom:1px solid var(--border)}
.lcd-ship-msg{font-size:12px;color:var(--gray);margin-bottom:8px;line-height:1.4}
.lcd-ship-msg strong{color:var(--accent)}
.lcd-track{height:3px;background:var(--border);border-radius:var(--rfull);overflow:hidden}
.lcd-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:var(--rfull);transition:width .6s var(--tss)}
.lcd-items{flex:1;overflow-y:auto;padding:0 24px}
.lcd-item{display:grid;grid-template-columns:80px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--border);align-items:start}
.lcd-item:last-child{border-bottom:none}
.lcd-item-img{width:80px;aspect-ratio:3/4;object-fit:cover;border-radius:var(--r3);background:var(--bg3);display:block;transition:transform var(--t2)}
.lcd-item-img:hover{transform:scale(1.04)}
.lcd-item-brand{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.lcd-item-name{font-size:13px;font-weight:600;color:var(--white);line-height:1.35;margin-bottom:5px}
.lcd-item-meta{font-size:11px;color:var(--muted);margin-bottom:10px}
/* Qty controls */
.lcd-qty{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;width:fit-content}
.lcd-qty-btn{width:32px;height:30px;background:var(--bg3);color:var(--light);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;border:none;transition:background var(--t),color var(--t)}
.lcd-qty-btn:hover{background:var(--accent);color:#000}
.lcd-qty-val{width:36px;text-align:center;font-size:12px;font-weight:800;color:var(--white);border-left:1px solid var(--border);border-right:1px solid var(--border);line-height:30px}
.lcd-item-price{font-size:15px;font-weight:800;color:var(--white);white-space:nowrap}
.lcd-item-remove{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);cursor:pointer;margin-top:8px;transition:color var(--t);border:none;background:none;padding:0;font-family:inherit}
.lcd-item-remove:hover{color:var(--sale)}
.lcd-foot{flex-shrink:0;padding:20px 24px;border-top:1px solid var(--border);background:var(--bg2)}
.lcd-subtotal{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.lcd-subtotal-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--gray)}
.lcd-subtotal-amount{font-size:22px;font-weight:900;color:var(--white);letter-spacing:-.03em}
.lcd-empty{text-align:center;padding:60px 20px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lcd-empty i{font-size:60px;color:var(--border);margin-bottom:18px}
.lcd-empty h3{font-size:18px;color:var(--white);margin-bottom:8px}
.lcd-empty p{font-size:13px;color:var(--muted);margin-bottom:20px}

/* ── BUTTONS ── */
.lux-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r2);padding:0 22px;height:46px;border:2px solid transparent;cursor:pointer;transition:all var(--t2);white-space:nowrap;font-family:inherit;line-height:1;text-decoration:none;position:relative;overflow:hidden}
.lux-btn::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.1);opacity:0;transition:opacity var(--t)}
.lux-btn:hover::after{opacity:1}
.lux-btn i{font-size:16px}
.lux-btn--primary{background:var(--accent);color:#000;border-color:var(--accent)}
.lux-btn--primary:hover{background:var(--accent2);border-color:var(--accent2);transform:translateY(-1px);box-shadow:0 6px 24px rgba(232,255,0,.3)}
.lux-btn--primary::after{background:rgba(0,0,0,.08)}
.lux-btn--dark{background:var(--bg3);color:var(--white);border-color:var(--border2)}
.lux-btn--dark:hover{background:var(--bg4);border-color:var(--border3)}
.lux-btn--outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.4)}
.lux-btn--outline:hover{background:var(--white);color:#000;border-color:var(--white)}
.lux-btn--ghost{background:transparent;color:var(--gray);border-color:var(--border)}
.lux-btn--ghost:hover{color:var(--white);border-color:var(--border2);background:var(--bg3)}
.lux-btn--sale{background:var(--sale);color:#fff;border-color:var(--sale)}
.lux-btn--sale:hover{filter:brightness(1.1);transform:translateY(-1px)}
.lux-btn--sm{height:34px;padding:0 14px;font-size:10px}
.lux-btn--lg{height:54px;padding:0 32px;font-size:12px}
.lux-btn--xl{height:60px;padding:0 40px;font-size:13px}
.lux-btn--full{width:100%}
.lux-btn--icon{width:44px;height:44px;padding:0;font-size:18px}
.lux-btn--pill{border-radius:var(--rfull)}
.lux-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}

/* ── BADGES ── */
.lux-badge{display:inline-flex;align-items:center;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:var(--r1);line-height:1.5}
.lux-badge--new{background:var(--accent);color:#000}
.lux-badge--sale{background:var(--sale);color:#fff}
.lux-badge--hot{background:var(--gold);color:#000}
.lux-badge--excl{background:transparent;color:var(--gold);border:1px solid var(--gold)}
.lux-badge--oos{background:var(--bg3);color:var(--muted)}
.lux-badge--limited{background:var(--purple);color:#fff}

/* ── HERO ── */
.lux-hero{position:relative;overflow:hidden;min-height:min(94vh,920px);display:flex;align-items:center;background:var(--bg)}
.lux-hero-bg{position:absolute;inset:0}
.lux-hero-bg img{width:100%;height:100%;object-fit:cover}
.lux-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.1) 100%)}
.lux-hero-content{position:relative;z-index:1;padding:clamp(40px,7vw,120px);max-width:720px}
.lux-hero-tag{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);background:var(--accent3);border:1px solid rgba(232,255,0,.25);border-radius:var(--rfull);padding:6px 16px;margin-bottom:24px}
.lux-hero-eyebrow{font-size:13px;font-weight:500;color:rgba(255,255,255,.5);margin-bottom:12px;letter-spacing:.04em}
.lux-hero-title{font-size:clamp(3.2rem,8vw,7.5rem);font-weight:900;line-height:.9;letter-spacing:-.05em;color:var(--pure);margin-bottom:20px}
.lux-hero-title em{font-style:normal;color:var(--accent)}
.lux-hero-sub{font-size:16px;color:rgba(255,255,255,.6);max-width:480px;line-height:1.7;margin-bottom:36px}
.lux-hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.lux-hero-scroll{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px;color:rgba(255,255,255,.25);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.lux-hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,rgba(255,255,255,.3),transparent);animation:scroll-pulse 2s ease infinite}
@keyframes scroll-pulse{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.3)}}
.lux-hero-dots{position:absolute;bottom:40px;right:clamp(28px,5vw,72px);z-index:2;display:flex;gap:8px}
.lux-hero-dot{width:8px;height:8px;border-radius:var(--rfull);background:rgba(255,255,255,.25);cursor:pointer;border:none;transition:all var(--t2)}
.lux-hero-dot.active{width:36px;background:var(--accent)}

/* Stats bar */
.lux-hero-stats{position:absolute;bottom:0;left:0;right:0;z-index:2;background:rgba(0,0,0,.55);backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.06);display:grid;grid-template-columns:repeat(4,1fr)}
.lux-hero-stat{padding:18px 24px;text-align:center;border-right:1px solid rgba(255,255,255,.06)}
.lux-hero-stat:last-child{border-right:none}
.lux-hero-stat-val{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:900;color:var(--pure);line-height:1;letter-spacing:-.03em}
.lux-hero-stat-lbl{font-size:10px;color:rgba(255,255,255,.4);margin-top:4px;letter-spacing:.06em}

/* ── TICKER ── */
.lux-ticker{overflow:hidden;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg1)}
.lux-ticker-track{display:flex;white-space:nowrap;animation:lux-tick 40s linear infinite}
.lux-ticker-track:hover{animation-play-state:paused}
.lux-ticker-item{display:inline-flex;align-items:center;padding:0 32px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.15)}
[data-theme="light"] .lux-ticker-item{color:rgba(0,0,0,.2)}
.lux-ticker-item::after{content:'◆';font-size:6px;margin-left:32px;opacity:.25}
@keyframes lux-tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ── CATEGORY CARDS ── */
.lux-cat-grid-hero{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:280px 280px;gap:20px}
.lux-cat-grid-hero>.lux-cat-card:first-child{grid-row:span 2}
.lux-cat-grid-6{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.lux-cat-card{position:relative;overflow:hidden;border-radius:var(--r3);background:var(--bg3);display:flex;align-items:flex-end;cursor:pointer;text-decoration:none;isolation:isolate}
.lux-cat-card:not(.lux-cat-card--tall){aspect-ratio:3/4}
.lux-cat-card--tall{min-height:100%}
.lux-cat-card__bg{position:absolute;inset:0}
.lux-cat-card__bg img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lux-cat-card:hover .lux-cat-card__bg img{transform:scale(1.08)}
.lux-cat-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.4) 40%,rgba(0,0,0,.05) 100%);transition:background var(--t2)}
.lux-cat-card:hover .lux-cat-card__overlay{background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.5) 50%,rgba(0,0,0,.1) 100%)}
.lux-cat-card__body{position:relative;z-index:1;padding:20px;width:100%}
.lux-cat-card__eye{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;display:block;opacity:0;transform:translateY(4px);transition:all var(--t2)}
.lux-cat-card:hover .lux-cat-card__eye{opacity:1;transform:translateY(0)}
.lux-cat-card__name{font-size:clamp(.9rem,2vw,1.4rem);font-weight:800;color:var(--pure);line-height:1.15;letter-spacing:-.025em}
.lux-cat-card__count{font-size:10px;color:rgba(255,255,255,.4);margin-top:5px}
.lux-cat-card__arrow{display:inline-flex;align-items:center;gap:5px;margin-top:12px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);opacity:0;transform:translateX(-6px);transition:all var(--t2)}
.lux-cat-card:hover .lux-cat-card__arrow{opacity:1;transform:translateX(0)}
.lux-cat-card__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:clamp(3rem,7vw,7rem);opacity:.1}

/* ── PRODUCT CARDS ── */
.lux-products-grid{display:grid;gap:1px;background:var(--border)}
.lux-products-grid--4{grid-template-columns:repeat(4,1fr)}
.lux-products-grid--3{grid-template-columns:repeat(3,1fr)}
.lux-products-grid--5{grid-template-columns:repeat(5,1fr)}
.lux-products-grid--2{grid-template-columns:repeat(2,1fr)}

.lux-pcard{display:flex;flex-direction:column;background:var(--card-bg);transition:background var(--t2);isolation:isolate}
.lux-pcard:hover{background:var(--bg2)}

/* Media */
.lux-pcard__media{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--bg2);flex-shrink:0;cursor:pointer}
.lux-pcard__img1{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lux-pcard__img2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s ease}
.lux-pcard:hover .lux-pcard__img1{transform:scale(1.07)}
.lux-pcard:hover .lux-pcard__img2{opacity:1}

/* Badges */
.lux-pcard__badges{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:4px;z-index:2;pointer-events:none}

/* Wishlist */
.lux-pcard__wl{position:absolute;top:12px;right:12px;z-index:3;width:36px;height:36px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border-radius:var(--rfull);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);font-size:17px;cursor:pointer;opacity:0;transition:all var(--t2)}
.lux-pcard:hover .lux-pcard__wl,.lux-pcard__wl.active{opacity:1}
.lux-pcard__wl:hover,.lux-pcard__wl.active{color:var(--sale);background:rgba(255,59,48,.15);border-color:rgba(255,59,48,.3)}

/* ATC bar — slides up */
.lux-pcard__atc-wrap{position:absolute;bottom:0;left:0;right:0;z-index:2;transform:translateY(100%);transition:transform var(--t2)}
.lux-pcard:hover .lux-pcard__atc-wrap{transform:translateY(0)}
.lux-pcard__atc{width:100%;height:46px;background:rgba(8,8,8,.9);backdrop-filter:blur(12px);color:var(--white);border:none;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background var(--t),color var(--t);display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit}
.lux-pcard__atc:hover:not(:disabled){background:var(--accent);color:#000}
.lux-pcard__atc:disabled{background:rgba(30,30,30,.9);color:var(--muted);cursor:not-allowed}

/* Quick view */
.lux-pcard__qv{position:absolute;bottom:46px;right:0;z-index:3;width:42px;height:42px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);border-right:none;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);font-size:16px;cursor:pointer;opacity:0;transition:all var(--t2);border-radius:var(--r2) 0 0 var(--r2)}
.lux-pcard:hover .lux-pcard__qv{opacity:1}
.lux-pcard__qv:hover{color:var(--white);background:rgba(255,255,255,.15)}

/* Body — NO sizes, minimal */
.lux-pcard__body{padding:14px 14px 18px;flex:1;display:flex;flex-direction:column;gap:3px}
.lux-pcard__brand{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lux-pcard__name{font-size:14px;font-weight:500;color:var(--light);line-height:1.4}
.lux-pcard__name a{color:inherit;transition:color var(--t)}
.lux-pcard__name a:hover{color:var(--white)}
.lux-pcard__price-row{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}
.lux-pcard__price{font-size:15px;font-weight:700;color:var(--white)}
.lux-pcard__price--sale{color:var(--sale)}
.lux-pcard__price--orig{font-size:12px;color:var(--muted);text-decoration:line-through;font-weight:400}
.lux-pcard__rating{display:flex;align-items:center;gap:5px;margin-top:5px}
.lux-stars{color:var(--gold);font-size:11px;letter-spacing:.5px}
.lux-rating-cnt{font-size:10px;color:var(--muted)}
.lux-pcard__colors{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap;align-items:center}
.lux-pcard__color-dot{width:14px;height:14px;border-radius:var(--rfull);border:1.5px solid var(--border);transition:transform var(--t),border-color var(--t);cursor:default}
.lux-pcard__color-dot:hover{transform:scale(1.25);border-color:var(--white)}
.lux-pcard__color-more{font-size:10px;color:var(--muted)}

/* ── SIZE BUTTONS (shop page & product page) ── */
.lux-size-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
/* CSS-only fallback (belt-and-suspenders with the JS hide) — hides
   WooCommerce's native size <select>/table + "Clear" link whenever
   custom size buttons are present. Scoped at .lux-spd because that's
   the actual shared ancestor of .lux-size-grid and form.cart — they
   are siblings, not nested, so this can't be scoped to the form. */
.lux-spd:has(.lux-size-grid) form.cart table.variations,
.lux-spd:has(.lux-size-grid) form.cart .variations,
.lux-spd:has(.lux-size-grid) form.cart a.reset_variations{display:none!important}
.lux-sz-btn{min-width:48px;height:44px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);font-size:12px;font-weight:600;color:var(--gray);display:flex;align-items:center;justify-content:center;padding:0 10px;cursor:pointer;transition:all var(--t2);letter-spacing:.02em;user-select:none}
.lux-sz-btn:hover{border-color:var(--border3);color:var(--white);background:var(--bg3)}
.lux-sz-btn.active{background:var(--white);color:#000;border-color:var(--white);font-weight:800}
.lux-sz-btn.oos{opacity:.3;cursor:not-allowed;text-decoration:line-through}
[data-theme="light"] .lux-sz-btn.active{background:#000;color:#fff;border-color:#000}

/* ── SHOP LAYOUT ── */
.lux-shop-layout{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}
.lux-filter-sidebar{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);overflow:hidden;position:sticky;top:calc(var(--hh) + 16px)}
.lux-fs-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}
.lux-fs-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--white)}
.lux-fs-clear{font-size:11px;font-weight:600;color:var(--accent);cursor:pointer;transition:opacity var(--t)}
.lux-fs-clear:hover{opacity:.7}
.lux-fg{border-bottom:1px solid var(--border)}
.lux-fg-head{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;cursor:pointer;transition:background var(--t);user-select:none}
.lux-fg-head:hover{background:var(--bg3)}
.lux-fg-name{font-size:12px;font-weight:600;color:var(--light)}
.lux-fg-icon{color:var(--muted);font-size:14px;transition:transform var(--t2)}
.lux-fg.open .lux-fg-icon{transform:rotate(180deg)}
.lux-fg-body{padding:8px 18px 14px;display:none}
.lux-fg.open .lux-fg-body{display:block}
.lux-fopt{display:flex;align-items:center;gap:9px;padding:5px 0;cursor:pointer}
.lux-fopt input[type=checkbox],.lux-fopt input[type=radio]{display:none}
.lux-fcheck{width:16px;height:16px;border:1.5px solid var(--border2);border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--t)}
.lux-fopt input:checked~.lux-fcheck{background:var(--accent);border-color:var(--accent)}
.lux-fopt input:checked~.lux-fcheck::after{content:'✓';font-size:10px;font-weight:900;color:#000}
.lux-fopt-label{font-size:12px;color:var(--gray);flex:1;transition:color var(--t)}
.lux-fopt:hover .lux-fopt-label{color:var(--white)}
.lux-fopt-cnt{font-size:10px;color:var(--muted)}
.lux-color-swatches{display:flex;flex-wrap:wrap;gap:7px;padding:4px 0}
.lux-cswatch{width:28px;height:28px;border-radius:var(--rfull);border:2px solid var(--border);cursor:pointer;transition:all var(--t2)}
.lux-cswatch:hover{transform:scale(1.15);border-color:var(--white)}
.lux-cswatch.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}
.lux-price-inputs{display:flex;gap:8px;margin-bottom:10px}
.lux-price-inputs input{width:100%;height:36px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:0 10px;font-size:12px;color:var(--white);text-align:center;font-family:inherit;transition:border-color var(--t)}
.lux-price-inputs input:focus{outline:none;border-color:var(--accent)}
.lux-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border)}
.lux-toolbar-count{font-size:13px;color:var(--muted)}
.lux-toolbar-count strong{color:var(--white)}
.lux-toolbar-right{display:flex;align-items:center;gap:10px}
.lux-sort{height:38px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);padding:0 12px;font-size:12px;color:var(--light);cursor:pointer;min-width:180px;font-family:inherit;transition:border-color var(--t)}
.lux-sort:focus{outline:none;border-color:var(--accent)}
.lux-view-btns{display:flex;gap:4px}
.lux-view-btn{width:36px;height:36px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);display:flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;font-size:16px;transition:all var(--t)}
.lux-view-btn:hover,.lux-view-btn.active{background:var(--bg3);color:var(--white);border-color:var(--border2)}
.lux-filter-toggle-btn{display:none}

/* ── SINGLE PRODUCT ── */
.lux-spd-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:start;padding:32px 0 80px}
.lux-spg{position:sticky;top:calc(var(--hh) + 16px)}
.lux-spg-main{position:relative;aspect-ratio:3/4;border-radius:var(--r3);overflow:hidden;background:var(--bg2);margin-bottom:10px;cursor:crosshair}
.lux-spg-main img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease;transform-origin:var(--ox,50%) var(--oy,50%)}
.lux-spg-main:hover img{transform:scale(1.6)}
.lux-spg-badges{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;gap:5px;z-index:2;pointer-events:none}
.lux-spg-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.lux-spg-thumb{aspect-ratio:3/4;border-radius:var(--r2);overflow:hidden;cursor:pointer;border:2px solid transparent;background:var(--bg3);transition:border-color var(--t2)}
.lux-spg-thumb img{width:100%;height:100%;object-fit:cover}
.lux-spg-thumb:hover{border-color:var(--border3)}
.lux-spg-thumb.active{border-color:var(--accent)}
/* Details */
.lux-spd-brand{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;display:flex;align-items:center;gap:12px}
.lux-spd-brand a{color:var(--muted);transition:color var(--t)}
.lux-spd-brand a:hover{color:var(--accent)}
.lux-spd-verified{display:flex;align-items:center;gap:4px;color:var(--green);font-size:10px;font-weight:600}
.lux-spd-name{font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:900;color:var(--white);line-height:1.15;letter-spacing:-.03em;margin-bottom:10px}
.lux-spd-sku{font-size:11px;color:var(--muted);margin-bottom:10px}
.lux-spd-rating-row{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.lux-spd-divider{height:1px;background:var(--border);margin:20px 0}
.lux-spd-prices{display:flex;align-items:baseline;gap:12px;margin-bottom:24px;flex-wrap:wrap}
.lux-spd-price{font-size:2.4rem;font-weight:900;color:var(--white);letter-spacing:-.04em}
.lux-spd-price--sale{color:var(--sale)}
.lux-spd-orig{font-size:1.2rem;color:var(--muted);text-decoration:line-through;font-weight:400}
.lux-spd-save{font-size:11px;font-weight:700;color:var(--sale);background:var(--sale2);border:1px solid rgba(255,59,48,.2);padding:4px 12px;border-radius:var(--rfull)}
/* Var label */
.lux-var-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.lux-var-label span{color:var(--white);font-weight:600;letter-spacing:0;text-transform:none;font-size:13px}
/* Color swatches on product page */
.lux-prd-colors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.lux-prd-color{width:36px;height:36px;border-radius:var(--rfull);border:2px solid var(--border);cursor:pointer;transition:all var(--t2)}
.lux-prd-color:hover{transform:scale(1.1);border-color:var(--border3)}
.lux-prd-color.active{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}
/* Stock alerts */
.lux-stock-alert{padding:10px 14px;border-radius:var(--r2);font-size:12px;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.lux-stock-alert--low{background:var(--gold2);border:1px solid rgba(201,168,76,.25);color:var(--gold)}
.lux-stock-alert--oos{background:var(--sale2);border:1px solid rgba(255,59,48,.25);color:var(--sale)}
/* ATC area — see .lux-atc-row rule further below (wraps the add-to-cart form + Buy Now button) */
/* Trust */
.lux-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border-radius:var(--r2);overflow:hidden;margin-bottom:16px}
.lux-trust-item{background:var(--bg2);padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.lux-trust-item i{font-size:20px;color:var(--accent)}
.lux-trust-item span{font-size:10px;font-weight:600;color:var(--muted);line-height:1.3}
/* Delivery */
.lux-delivery{border:1px solid var(--border);border-radius:var(--r2);padding:16px;display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.lux-dl-row{display:flex;gap:12px;align-items:flex-start}
.lux-dl-row i{font-size:18px;color:var(--muted);flex-shrink:0;margin-top:1px}
.lux-dl-row strong{display:block;font-size:13px;color:var(--white);margin-bottom:2px}
.lux-dl-row span{font-size:12px;color:var(--muted)}
/* Accordion */
.lux-accordion{border-top:1px solid var(--border)}
.lux-ac{border-bottom:1px solid var(--border)}
.lux-ac-head{display:flex;align-items:center;justify-content:space-between;padding:16px 0;cursor:pointer;user-select:none}
.lux-ac-title{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--light);transition:color var(--t)}
.lux-ac-head:hover .lux-ac-title{color:var(--white)}
.lux-ac-icon{color:var(--muted);font-size:18px;transition:transform var(--t2)}
.lux-ac.open .lux-ac-icon{transform:rotate(45deg)}
.lux-ac-body{padding-bottom:18px;display:none;font-size:13px;color:var(--muted);line-height:1.9}
.lux-ac.open .lux-ac-body{display:block}
/* Sticky ATC */
.lux-sticky-atc{position:fixed;bottom:0;left:0;right:0;z-index:800;background:rgba(8,8,8,.98);backdrop-filter:blur(20px);border-top:1px solid var(--border);padding:14px var(--pad);display:flex;align-items:center;gap:20px;transform:translateY(100%);transition:transform var(--tss)}
[data-theme="light"] .lux-sticky-atc{background:rgba(250,250,250,.98)}
.lux-sticky-atc.show{transform:translateY(0)}
.lux-sticky-img{width:50px;height:66px;object-fit:cover;border-radius:var(--r2);flex-shrink:0}
.lux-sticky-info{flex:1;min-width:0}
.lux-sticky-name{font-size:13px;font-weight:700;color:var(--white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lux-sticky-price{font-size:16px;font-weight:900;color:var(--accent)}

/* ── REVIEWS ── */
.lux-reviews{margin-top:60px}
.lux-reviews-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.lux-rating-big{font-size:5rem;font-weight:900;color:var(--white);line-height:1;letter-spacing:-.06em}
.lux-rating-big-stars{font-size:24px;color:var(--gold);letter-spacing:2px}
.lux-rating-big-sub{font-size:13px;color:var(--muted);margin-top:4px}
.lux-review-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:22px;transition:border-color var(--t2)}
.lux-review-card:hover{border-color:var(--border3)}
.lux-review-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.lux-reviewer-info{display:flex;align-items:center;gap:12px}
.lux-reviewer-avatar{width:42px;height:42px;border-radius:var(--rfull);background:var(--accent3);border:1px solid var(--accent);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:var(--accent);flex-shrink:0}
.lux-reviewer-name{font-size:14px;font-weight:700;color:var(--white);margin-bottom:2px}
.lux-reviewer-date{font-size:11px;color:var(--muted)}
.lux-review-stars{font-size:13px;color:var(--gold)}
.lux-review-text{font-size:14px;color:var(--light);line-height:1.75}
.lux-review-verified{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:var(--green);margin-top:10px}

/* ── FEATURES ── */
.lux-features{display:grid;grid-template-columns:repeat(4,1fr)}
.lux-feature-item{padding:28px 20px;display:flex;align-items:flex-start;gap:14px;border-right:1px solid var(--border);transition:background var(--t2)}
.lux-feature-item:last-child{border-right:none}
.lux-feature-item:hover{background:var(--bg2)}
.lux-feature-item i{font-size:24px;color:var(--accent);flex-shrink:0}
.lux-feature-title{font-size:13px;font-weight:700;color:var(--white);margin-bottom:4px}
.lux-feature-desc{font-size:12px;color:var(--muted);line-height:1.55}

/* ── NEWSLETTER ── */
.lux-newsletter{background:var(--accent);padding:clamp(52px,8vw,100px) var(--pad)}
.lux-nl-inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;max-width:var(--max);margin:0 auto}
.lux-nl-eyebrow{font-size:9px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:rgba(0,0,0,.5);margin-bottom:12px}
.lux-nl-title{font-size:clamp(2.2rem,5.5vw,4rem);font-weight:900;color:#000;line-height:.92;letter-spacing:-.045em;margin-bottom:12px}
.lux-nl-sub{font-size:15px;color:rgba(0,0,0,.6);line-height:1.6}
.lux-nl-form-wrap{display:flex;gap:10px;margin-bottom:10px}
.lux-nl-input{flex:1;height:56px;background:rgba(0,0,0,.1);border:2px solid rgba(0,0,0,.15);border-radius:var(--r2);padding:0 22px;font-size:15px;color:#000;font-family:inherit;transition:border-color var(--t2)}
.lux-nl-input::placeholder{color:rgba(0,0,0,.4)}
.lux-nl-input:focus{outline:none;border-color:rgba(0,0,0,.35)}
.lux-nl-submit{height:56px;background:#000;color:var(--accent);border:none;border-radius:var(--r2);padding:0 30px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;flex-shrink:0;transition:background var(--t2);font-family:inherit}
.lux-nl-submit:hover{background:rgba(0,0,0,.85)}
.lux-nl-note{font-size:11px;color:rgba(0,0,0,.45)}

/* ── FOOTER ── */
.lux-footer{background:var(--bg1);border-top:1px solid var(--border)}
.lux-footer-main{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:clamp(24px,4vw,56px);padding:clamp(52px,7vw,88px) var(--pad);max-width:var(--max);margin:0 auto}
.lux-footer-logo-text{font-size:22px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--white);margin-bottom:14px}
.lux-footer-logo-text em{font-style:normal;color:var(--accent)}
.lux-footer-desc{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:22px;max-width:260px}
.lux-footer-social{display:flex;gap:8px;flex-wrap:wrap}
.lux-soc-btn{width:36px;height:36px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:17px;transition:all var(--t2)}
.lux-soc-btn:hover{background:var(--accent);border-color:var(--accent);color:#000;transform:translateY(-2px)}
.lux-footer-col h4{font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--white);margin-bottom:18px}
.lux-footer-col ul{display:flex;flex-direction:column;gap:10px}
.lux-footer-col ul li a{font-size:13px;color:var(--muted);transition:all var(--t2)}
.lux-footer-col ul li a:hover{color:var(--accent);padding-left:6px}
.lux-footer-bottom{border-top:1px solid var(--border);padding:20px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--max);margin:0 auto;flex-wrap:wrap}
.lux-footer-copy{font-size:12px;color:var(--muted)}
.lux-footer-links{display:flex;gap:20px}
.lux-footer-links a{font-size:12px;color:var(--muted);transition:color var(--t)}
.lux-footer-links a:hover{color:var(--light)}
.lux-pay-row{display:flex;gap:5px;flex-wrap:wrap;align-items:center}
.lux-pay-tag{background:var(--bg3);padding:3px 8px;border-radius:var(--r1);font-size:9px;font-weight:700;color:var(--muted);letter-spacing:.06em}

/* ── MODALS ── */
.lux-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:990;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:all var(--t2)}
.lux-modal-overlay.open{opacity:1;visibility:visible}
.lux-modal{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r4);max-width:660px;width:100%;max-height:90vh;overflow-y:auto;transform:scale(.96) translateY(8px);transition:transform var(--t2)}
.lux-modal-overlay.open .lux-modal{transform:scale(1) translateY(0)}
.lux-modal--wide{max-width:960px}
.lux-modal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg1);z-index:1}
.lux-modal-title{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--white)}
.lux-modal-close{font-size:22px;color:var(--gray);cursor:pointer;transition:color var(--t);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--r2);border:none;background:transparent}
.lux-modal-close:hover{color:var(--white);background:var(--bg3)}
.lux-modal-body{padding:24px}
.lux-qv-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.lux-qv-img{aspect-ratio:3/4;border-radius:var(--r3);overflow:hidden;background:var(--bg3)}
.lux-qv-img img{width:100%;height:100%;object-fit:cover}

/* ── TOASTS ── */
#lux-toasts{position:fixed;top:calc(var(--hh) + 16px);right:20px;z-index:995;display:flex;flex-direction:column;gap:10px;max-width:360px;pointer-events:none}
.lux-toast{display:flex;align-items:flex-start;gap:12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r3);padding:14px 16px;box-shadow:var(--sh3);pointer-events:all;animation:lux-tin .2s ease}
.lux-toast--success{border-left:3px solid var(--green)}
.lux-toast--error{border-left:3px solid var(--sale)}
.lux-toast--info{border-left:3px solid var(--accent)}
.lux-toast .toast-icon{font-size:18px;flex-shrink:0;margin-top:1px}
.lux-toast--success .toast-icon{color:var(--green)}
.lux-toast--error .toast-icon{color:var(--sale)}
.lux-toast--info .toast-icon{color:var(--accent)}
.lux-toast-msg{font-size:13px;color:var(--light);line-height:1.4;flex:1}
.lux-toast-close{color:var(--muted);cursor:pointer;font-size:14px;flex-shrink:0;transition:color var(--t);background:none;border:none;margin-top:1px}
.lux-toast-close:hover{color:var(--white)}
@keyframes lux-tin{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}

/* ── BREADCRUMB ── */
.lux-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:14px 0 6px;font-size:12px;color:var(--muted)}
.lux-breadcrumb a{color:var(--muted);transition:color var(--t)}
.lux-breadcrumb a:hover{color:var(--white)}
.lux-breadcrumb-sep{color:var(--border2)}
.lux-breadcrumb-current{color:var(--light)}

/* ── PAGINATION ── */
.lux-pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:56px;flex-wrap:wrap}
.lux-pg{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--muted);background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);transition:all var(--t);cursor:pointer;text-decoration:none}
.lux-pg:hover{color:var(--white);border-color:var(--border2);background:var(--bg3)}
.lux-pg.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:900}
.lux-pg--nav{width:auto;padding:0 14px;font-size:11px;font-weight:700;letter-spacing:.06em}

/* ── BACK TO TOP ── */
#lux-btt{position:fixed;bottom:28px;right:28px;width:44px;height:44px;background:var(--accent);color:#000;border-radius:var(--r2);display:flex;align-items:center;justify-content:center;font-size:19px;cursor:pointer;z-index:800;opacity:0;visibility:hidden;transition:all var(--t2);box-shadow:0 4px 20px rgba(232,255,0,.4);border:none}
#lux-btt.show{opacity:1;visibility:visible}
#lux-btt:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(232,255,0,.5)}

/* ── PROMO ── */
.lux-promo{position:relative;overflow:hidden;border-radius:var(--r3);min-height:290px;display:flex;align-items:center;text-decoration:none;isolation:isolate}
.lux-promo-bg{position:absolute;inset:0}
.lux-promo-bg img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}
.lux-promo:hover .lux-promo-bg img{transform:scale(1.05)}
.lux-promo-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.9) 0%,rgba(0,0,0,.25) 100%)}
.lux-promo-body{position:relative;z-index:1;padding:clamp(24px,4vw,52px)}
.lux-promo-tag{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);border:1px solid rgba(232,255,0,.3);padding:4px 12px;border-radius:var(--rfull);margin-bottom:14px}
.lux-promo-title{font-size:clamp(1.7rem,3.8vw,2.8rem);font-weight:900;color:var(--pure);line-height:1;letter-spacing:-.03em;margin-bottom:10px}
.lux-promo-sub{font-size:13px;color:rgba(255,255,255,.65);margin-bottom:22px;line-height:1.55}

/* ── CART ── */
.lux-cart-layout{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start;padding:40px 0 88px}
.lux-cart-title{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:var(--white);letter-spacing:-.04em;margin-bottom:28px}
.lux-cart-item{display:grid;grid-template-columns:100px 1fr auto;gap:18px;padding:24px 0;border-bottom:1px solid var(--border)}
.lux-cart-item-img{width:100px;aspect-ratio:3/4;object-fit:cover;border-radius:var(--r3);background:var(--bg3)}
.lux-cart-item-brand{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.lux-cart-item-name{font-size:15px;font-weight:600;color:var(--white);margin-bottom:6px;line-height:1.3}
.lux-cart-item-meta{font-size:12px;color:var(--muted);margin-bottom:14px}
.lux-qty-sm{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;width:fit-content}
.lux-qty-sm-btn{width:34px;height:34px;background:var(--bg2);color:var(--light);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;font-size:16px;transition:all var(--t);font-family:inherit}
.lux-qty-sm-btn:hover{background:var(--accent);color:#000}
.lux-qty-sm-val{width:40px;text-align:center;font-size:13px;font-weight:800;color:var(--white);border-left:1px solid var(--border);border-right:1px solid var(--border);line-height:34px}
.lux-cart-item-price{font-size:17px;font-weight:800;color:var(--white);text-align:right;white-space:nowrap}
.lux-cart-item-remove{font-size:11px;color:var(--muted);cursor:pointer;transition:color var(--t);text-decoration:underline;margin-top:6px;display:flex;align-items:center;gap:4px;text-align:right;justify-content:flex-end;background:none;border:none;font-family:inherit;padding:0}
.lux-cart-item-remove:hover{color:var(--sale)}
/* Summary */
.lux-cs-box{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r3);overflow:hidden;position:sticky;top:calc(var(--hh)+16px)}
.lux-cs-head{padding:16px 22px;border-bottom:1px solid var(--border);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--white)}
.lux-cs-body{padding:18px 22px}
.lux-cs-row{display:flex;justify-content:space-between;padding:5px 0;font-size:13px;color:var(--muted)}
.lux-cs-row strong{color:var(--white)}
.lux-cs-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:14px;margin-top:10px}
.lux-cs-total-label{font-size:14px;color:var(--white);font-weight:700}
.lux-cs-total-amount{font-size:26px;font-weight:900;color:var(--white);letter-spacing:-.03em}
.lux-coupon-form{display:flex;gap:8px;margin:14px 0}
.lux-coupon-input{flex:1;height:42px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:0 14px;font-size:13px;color:var(--white);font-family:inherit}
.lux-coupon-input::placeholder{color:var(--muted)}
.lux-coupon-input:focus{outline:none;border-color:var(--accent)}
.lux-cs-foot{padding:0 22px 22px}
.lux-cs-secure{font-size:11px;color:var(--muted);text-align:center;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:5px}

/* ── CHECKOUT ── */
.lux-co-layout{display:grid;grid-template-columns:1fr 400px;gap:40px;align-items:start;padding:36px 0 80px}
.lux-co-steps{display:flex;border-bottom:1px solid var(--border);margin-bottom:32px;overflow-x:auto}
.lux-co-step{display:flex;align-items:center;gap:8px;padding:14px 18px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}
.lux-co-step.active{color:var(--white);border-bottom-color:var(--accent)}
.lux-co-step.done{color:var(--green)}
.lux-co-section-title{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--white);padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:18px}
.lux-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lux-form-group{display:flex;flex-direction:column;gap:6px}
.lux-form-group--full{grid-column:1/-1}
.lux-form-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.lux-form-input,.lux-form-select{height:48px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);padding:0 16px;font-size:14px;color:var(--white);width:100%;transition:border-color var(--t2),box-shadow var(--t2);font-family:inherit}
.lux-form-input::placeholder{color:var(--muted)}
.lux-form-input:focus,.lux-form-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent3)}

/* ── ACCOUNT ── */
.lux-account-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;padding:36px 0 80px;align-items:start}
.lux-acc-sidebar{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);overflow:hidden;position:sticky;top:calc(var(--hh)+16px)}
.lux-acc-user{padding:24px;border-bottom:1px solid var(--border);text-align:center}
.lux-acc-avatar{width:64px;height:64px;border-radius:var(--rfull);background:var(--accent3);border:2px solid rgba(232,255,0,.25);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:var(--accent)}
.lux-acc-name{font-size:15px;font-weight:700;color:var(--white);margin-bottom:3px}
.lux-acc-email{font-size:11px;color:var(--muted)}
.lux-acc-nav a{display:flex;align-items:center;gap:10px;padding:13px 18px;font-size:13px;color:var(--muted);border-left:2px solid transparent;transition:all var(--t2)}
.lux-acc-nav a i{font-size:17px;flex-shrink:0}
.lux-acc-nav a:hover,.lux-acc-nav a.active{color:var(--white);background:var(--bg3);border-left-color:var(--accent)}
.lux-acc-nav a.logout:hover{color:var(--sale);border-left-color:var(--sale)}
.lux-acc-content{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);overflow:hidden}
.lux-acc-content-head{padding:16px 22px;border-bottom:1px solid var(--border);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--white)}
.lux-acc-content-body{padding:22px}
.lux-acc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.lux-acc-stat{background:var(--bg3);border-radius:var(--r2);padding:18px;text-align:center}
.lux-acc-stat-val{font-size:2rem;font-weight:900;color:var(--white);margin-bottom:4px;line-height:1}
.lux-acc-stat-lbl{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lux-orders-table{width:100%;border-collapse:collapse}
.lux-orders-table th{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}
.lux-orders-table td{font-size:13px;color:var(--light);padding:12px;border-bottom:1px solid var(--border);vertical-align:middle}
.lux-orders-table tr:last-child td{border-bottom:none}
.lux-orders-table tr:hover td{background:var(--bg3)}
.lux-order-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--rfull);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.lux-order-status--processing{background:rgba(10,132,255,.1);color:var(--blue)}
.lux-order-status--completed{background:var(--green2);color:var(--green)}
.lux-order-status--pending{background:var(--gold2);color:var(--gold)}
.lux-order-status--cancelled{background:var(--sale2);color:var(--sale)}
.lux-order-status--on-hold{background:var(--bg3);color:var(--gray)}

/* ── WOO OVERRIDES ── */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info{background:var(--accent3);border:1px solid rgba(232,255,0,.2);border-left:3px solid var(--accent);color:var(--light);padding:12px 16px;border-radius:var(--r2);margin-bottom:16px;font-size:13px;list-style:none}
.woocommerce-notices-wrapper .woocommerce-error{background:var(--sale2);border:1px solid rgba(255,59,48,.2);border-left:3px solid var(--sale);color:var(--light);padding:12px 16px;border-radius:var(--r2);margin-bottom:16px;list-style:none;font-size:13px}
.woocommerce form .form-row label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:6px}
.woocommerce form .input-text,.woocommerce form select,.woocommerce-page form .input-text{background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;color:var(--white)!important;padding:12px 16px!important;font-size:14px!important;width:100%!important;transition:border-color var(--t2)!important}
.woocommerce form .input-text:focus,.woocommerce form select:focus{outline:none!important;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent3)!important}
.woocommerce button.button,.woocommerce input.button,.woocommerce a.button{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:48px!important;padding:0 24px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;border-radius:var(--r2)!important;background:var(--accent)!important;color:#000!important;border:none!important;cursor:pointer!important;transition:all var(--t2)!important}
.woocommerce button.button:hover{background:var(--accent2)!important;transform:translateY(-1px)!important}
.woocommerce .quantity .qty{background:var(--bg2);border:1px solid var(--border);color:var(--white);padding:0 14px;height:48px;font-size:15px;font-weight:700;text-align:center;border-radius:var(--r2)}
.woocommerce-Price-amount{color:var(--white)!important}
.woocommerce ins .woocommerce-Price-amount{color:var(--sale)!important}
.woocommerce del .woocommerce-Price-amount{color:var(--muted)!important}
/* Comments / Reviews */
.woocommerce #reviews #comments ol.commentlist li{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:20px;margin-bottom:14px}
.woocommerce #reviews .comment-text p.meta{color:var(--muted);font-size:12px}
.woocommerce #reviews #reply-title,
.woocommerce #reviews #review_form_wrapper{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:24px;margin-top:20px}
.woocommerce .star-rating{color:var(--gold)}

/* ── LIGHT MODE FIXES ── */
[data-theme="light"] .lux-pcard{background:var(--card-bg)}
[data-theme="light"] .lux-pcard:hover{background:var(--bg2)}
[data-theme="light"] .lux-pcard__img2{mix-blend-mode:multiply}
[data-theme="light"] .lux-hero-bg::after{background:linear-gradient(110deg,rgba(250,250,250,.95) 0%,rgba(250,250,250,.7) 45%,rgba(250,250,250,.1) 100%)}
[data-theme="light"] .lux-hero-title{color:#0a0a0a}
[data-theme="light"] .lux-hero-sub{color:rgba(0,0,0,.6)}
[data-theme="light"] #lux-topbar{background:var(--accent)}

/* ── RESPONSIVE ── */
@media(max-width:1280px){
  .lux-products-grid--5{grid-template-columns:repeat(4,1fr)}
  .lux-cat-grid-6{grid-template-columns:repeat(4,1fr)}
  .lux-footer-main{grid-template-columns:1.5fr repeat(3,1fr)}
}
@media(max-width:1024px){
  #lux-nav{display:none}
  .lux-hamburger{display:flex}
  .lux-search-wrap{max-width:220px}
  .lux-shop-layout{grid-template-columns:1fr}
  .lux-filter-sidebar{position:static;display:none}
  .lux-filter-sidebar.open{display:block}
  .lux-filter-toggle-btn{display:flex!important}
  .lux-spd-wrap{grid-template-columns:1fr}
  .lux-spg{position:static}
  .lux-cart-layout{grid-template-columns:1fr}
  .lux-cs-box{position:static}
  .lux-co-layout{grid-template-columns:1fr}
  .lux-account-layout{grid-template-columns:1fr}
  .lux-acc-sidebar{position:static}
  .lux-cat-grid-hero{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .lux-cat-grid-hero .lux-cat-card:first-child{grid-column:span 2;grid-row:span 1;aspect-ratio:21/9;min-height:unset}
  .lux-qv-layout{grid-template-columns:1fr}
  .lux-hero-stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  :root{--hh:58px}
  .lux-products-grid--4,.lux-products-grid--3{grid-template-columns:repeat(2,1fr)}
  .lux-cat-grid-6{grid-template-columns:repeat(3,1fr)}
  .lux-features{grid-template-columns:repeat(2,1fr)}
  .lux-nl-inner{grid-template-columns:1fr;gap:36px}
  .lux-footer-main{grid-template-columns:1fr 1fr;gap:28px}
  .lux-footer-bottom{flex-direction:column;text-align:center}
  .lux-section{padding:60px 0}
  #lux-cart-drawer{width:100%}
  .lux-acc-stats{grid-template-columns:1fr 1fr}
  .lux-grid-2{grid-template-columns:1fr}
  .lux-hero-stats{display:none}
  .lux-hero{min-height:72vh}
}
@media(max-width:480px){
  .lux-products-grid--4,.lux-products-grid--3{grid-template-columns:repeat(2,1fr);gap:1px}
  .lux-cat-grid-6{grid-template-columns:repeat(2,1fr)}
  .lux-features{grid-template-columns:1fr}
  .lux-footer-main{grid-template-columns:1fr}
  .lux-form-grid{grid-template-columns:1fr}
  .lux-trust{grid-template-columns:1fr}
  .lux-search-wrap{display:none}
  #lux-topbar .tb-actions{display:none}
  .lux-hero-title{font-size:clamp(2.8rem,13vw,5rem)}
  #lux-btt{bottom:18px;right:18px}
}

/* ── UTILITIES ── */
.lux-text-accent{color:var(--accent)!important}
.lux-text-sale{color:var(--sale)!important}
.lux-text-muted{color:var(--muted)!important}
.lux-text-white{color:var(--white)!important}
.lux-hidden{display:none!important}
.lux-no-scroll{overflow:hidden!important}
.lux-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.lux-skeleton{background:linear-gradient(90deg,var(--bg3) 25%,var(--bg4) 50%,var(--bg3) 75%);background-size:200% 100%;animation:skeleton 1.5s infinite}
@keyframes skeleton{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ── YOAST SEO BREADCRUMB COMPATIBILITY ── */
.yoast-breadcrumb,.rank-math-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:14px 0;font-size:12px;color:var(--muted)}
.yoast-breadcrumb a,.rank-math-breadcrumb a{color:var(--muted);transition:color var(--t)}
.yoast-breadcrumb a:hover,.rank-math-breadcrumb a:hover{color:var(--white)}

/* ── WOOCOMMERCE FORM GLOBAL ── */
.woocommerce form .form-row{margin-bottom:14px}
.woocommerce form .form-row label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:6px}
.woocommerce form .form-row label .required{color:var(--sale);border:none}
.woocommerce form .form-row .input-text,.woocommerce form .form-row input[type=text],.woocommerce form .form-row input[type=email],.woocommerce form .form-row input[type=tel],.woocommerce form .form-row input[type=password],.woocommerce form .form-row textarea,.woocommerce form select{background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;color:var(--white)!important;padding:12px 16px!important;font-size:14px!important;width:100%!important;font-family:inherit!important;transition:border-color var(--t2),box-shadow var(--t2)!important;height:auto!important}
.woocommerce form .form-row .input-text:focus,.woocommerce form select:focus{outline:none!important;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent3)!important}
.woocommerce form .form-row.woocommerce-invalid .input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:var(--sale)!important}
.woocommerce form .form-row.woocommerce-validated .input-text{border-color:var(--green)!important}

/* ── WOOCOMMERCE BUTTONS ── */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:46px!important;padding:0 24px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;border-radius:var(--r2)!important;background:var(--accent)!important;color:#000!important;border:none!important;cursor:pointer!important;font-family:inherit!important;transition:all var(--t2)!important;text-decoration:none!important}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce #respond input#submit:hover{background:var(--accent2)!important;transform:translateY(-1px)!important}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--bg3)!important;color:var(--white)!important}

/* ── WOOCOMMERCE CHECKOUT PAYMENT ── */
.woocommerce-checkout #payment{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r3);padding:24px;margin-top:20px}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;padding:0;margin:0 0 16px}
.woocommerce-checkout #payment ul.payment_methods li{padding:12px 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:6px}
.woocommerce-checkout #payment ul.payment_methods li:last-child{border-bottom:none}
.woocommerce-checkout #payment ul.payment_methods li label{color:var(--light);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px}
.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{accent-color:var(--accent);width:16px;height:16px}
.woocommerce-checkout #payment .payment_box{background:var(--bg2);border-radius:var(--r2);padding:14px 16px;margin-top:8px;font-size:13px;color:var(--muted);line-height:1.7}
.woocommerce-checkout #payment .payment_box p{margin:0}
.woocommerce-checkout #payment #place_order{width:100%;height:56px;font-size:14px!important;font-weight:800!important;border-radius:var(--r2)!important;letter-spacing:.05em!important;margin-top:0!important}
#order_review_heading{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--white);margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.woocommerce-terms-and-conditions-wrapper{font-size:12px;color:var(--muted);margin-top:14px;line-height:1.7}
.woocommerce-terms-and-conditions-wrapper a{color:var(--accent)}
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{display:flex;align-items:flex-start;gap:8px;cursor:pointer;color:var(--muted)}
.woocommerce-terms-and-conditions-wrapper input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;margin-top:2px}

/* ── ORDER REVIEW TABLE ── */
.woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse;font-size:13px}
.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:10px 0;border-bottom:1px solid var(--border);color:var(--light);text-align:left}
.woocommerce-checkout-review-order-table th{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.woocommerce-checkout-review-order-table .order-total td,.woocommerce-checkout-review-order-table .order-total th{color:var(--white);font-weight:800;font-size:16px;border-bottom:none;padding-top:14px}
.woocommerce-checkout-review-order-table .cart-subtotal td,.woocommerce-checkout-review-order-table .cart-subtotal th{border-top:1px solid var(--border)}

/* ── WC NOTICES ── */
.woocommerce-notices-wrapper .woocommerce-message{background:rgba(52,199,89,.08);border:1px solid rgba(52,199,89,.2);border-left:3px solid var(--green);color:var(--light);padding:12px 16px;border-radius:var(--r2);margin-bottom:16px;font-size:13px;list-style:none}
.woocommerce-notices-wrapper .woocommerce-info{background:var(--accent3);border:1px solid rgba(232,255,0,.2);border-left:3px solid var(--accent);color:var(--light);padding:12px 16px;border-radius:var(--r2);margin-bottom:16px;font-size:13px;list-style:none}
.woocommerce-notices-wrapper .woocommerce-error{background:rgba(255,59,48,.08);border:1px solid rgba(255,59,48,.2);border-left:3px solid var(--sale);color:var(--light);padding:12px 16px;border-radius:var(--r2);margin-bottom:16px;list-style:none;font-size:13px}

/* ── PRODUCT VARIATIONS (WC native) ── */
.woocommerce div.product form.cart .variations{width:100%;border-collapse:collapse;margin-bottom:16px}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{padding:0 0 10px;vertical-align:top;line-height:1.5}
.woocommerce div.product form.cart .variations label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.woocommerce div.product form.cart .variations select{background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;color:var(--white)!important;height:46px!important;padding:0 14px!important;font-size:13px!important;width:100%!important;cursor:pointer}
.woocommerce div.product form.cart .variations .reset_variations{font-size:11px;color:var(--muted);display:inline-block;margin-top:6px}
.woocommerce div.product form.cart .single_add_to_cart_button{width:100%;height:52px!important;font-size:13px!important;margin-top:4px}
.woocommerce div.product form.cart .quantity{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;width:fit-content;margin-bottom:12px}
.woocommerce div.product form.cart .quantity .qty{background:var(--bg2);border:none!important;color:var(--white)!important;height:46px;width:52px;text-align:center;font-size:16px;font-weight:700}
.lux-qty-btn{width:42px;height:46px;flex-shrink:0;border:none;background:transparent;color:var(--white);font-size:18px;line-height:1;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.lux-qty-btn:hover{background:rgba(255,255,255,.08)}
.lux-qty-btn--minus{border-right:1px solid var(--border)}
.lux-qty-btn--plus{border-left:1px solid var(--border)}
.lux-qty-btn:active{background:rgba(255,255,255,.14)}

/* ── ATC ROW + BUY NOW ──
   Primary action (quantity + Add to Cart) gets the full row so it never
   wraps; Buy Now sits below as a clear secondary action — previously
   both competed for space in one flex row and Add to Cart (the actual
   primary CTA) was the one losing and wrapping onto its own line under
   Buy Now, which read as backwards. */
.lux-atc-row{display:flex;flex-direction:column;gap:12px}
.lux-atc-row form.cart{width:100%;margin:0}
.lux-atc-row .js-buynow{width:100%;height:52px!important;font-size:12px!important;letter-spacing:.1em!important;margin-top:0;background:transparent!important;border:1px solid var(--border)!important;color:var(--white)!important}
.lux-atc-row .js-buynow:hover{border-color:var(--white)!important}

/* ── ATC ROW POLISH — quantity + button side by side ── */
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}
.woocommerce div.product form.cart .variations{flex-basis:100%}
.woocommerce div.product form.cart .quantity{margin-bottom:0;flex-shrink:0}
.woocommerce div.product form.cart .quantity .qty{-moz-appearance:textfield}
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-width:180px;margin-top:0!important;font-size:12px!important;letter-spacing:.1em!important;box-shadow:0 4px 18px rgba(232,255,0,.18)}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{box-shadow:0 6px 24px rgba(232,255,0,.3)}
@media(max-width:480px){
  .woocommerce div.product form.cart .quantity{width:100%}
  .woocommerce div.product form.cart .single_add_to_cart_button{width:100%}
}

/* ── WC STARS / RATING ── */
.woocommerce .star-rating,.star-rating{color:var(--gold)!important;font-size:14px}
.woocommerce .star-rating span,.star-rating span{color:var(--gold)!important}
.woocommerce .star-rating span::before,.star-rating span::before{color:var(--gold)!important}
.woocommerce-product-rating{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.woocommerce-product-rating .woocommerce-review-link{font-size:12px;color:var(--muted)}

/* ── REVIEWS / COMMENTS ── */
.woocommerce #reviews #comments ol.commentlist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}
.woocommerce #reviews #comments ol.commentlist li{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:20px;margin:0}
.woocommerce #reviews #comments ol.commentlist li .comment-text{margin:0}
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta{font-size:12px;color:var(--muted);margin-bottom:8px}
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta strong{color:var(--white)}
.woocommerce #reviews #comments ol.commentlist li .comment-text .description p{font-size:14px;color:var(--light);line-height:1.75;margin:0}
.woocommerce #reviews #comments ol.commentlist li .meta .verified{color:var(--green);font-size:11px}
#review_form_wrapper,#respond{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:24px;margin-top:20px}

/* Custom review form */
#lux-review-form-wrapper{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r3);padding:24px;margin-top:20px}
#lux-review-form-wrapper h3{font-size:14px;font-weight:700;color:var(--white);margin-bottom:18px}
.lux-review-stars-input{display:inline-flex;gap:4px;font-size:26px;line-height:1;cursor:pointer}
.lux-star-pick{color:var(--gold);transition:transform .1s}
.lux-star-pick:hover{transform:scale(1.15)}
#lux-review-form-wrapper input[type=text]:focus,
#lux-review-form-wrapper input[type=email]:focus,
#lux-review-form-wrapper textarea:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent3)}
#reply-title,#review_form_wrapper h3{font-size:14px;font-weight:700;color:var(--white);margin-bottom:18px}
.comment-form-rating label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}
.stars a{color:var(--border);font-size:22px;transition:color var(--t)}
.stars a:hover,.stars a.active{color:var(--gold)}
.comment-form p label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:6px}
.comment-form p input[type=text],.comment-form p input[type=email],.comment-form p textarea{background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;color:var(--white)!important;padding:12px 16px!important;font-size:14px!important;width:100%!important;transition:border-color var(--t2)!important}
.comment-form p input:focus,.comment-form p textarea:focus{outline:none!important;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent3)!important}

/* ── WOOCOMMERCE BLOCK CHECKOUT/CART COMPATIBILITY ──
   The rules above only style the CLASSIC shortcode checkout template.
   If your Checkout/Cart pages use the newer WooCommerce Blocks
   (Gutenberg) editor instead of the [woocommerce_checkout]/[woocommerce_cart]
   shortcode, these rules bring it in line with the theme. For the most
   consistent, fully-designed result we still recommend switching the
   Checkout page back to the classic shortcode — see theme docs. */
.wp-block-woocommerce-checkout,.wp-block-woocommerce-cart{color:var(--light)}
.wc-block-components-text-input input,
.wc-block-components-textarea textarea,
.wc-block-components-address-form select,
.wc-block-components-combobox input,
.wc-block-components-select select,
.wc-block-checkout__form select{
  background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;
  color:var(--white)!important;height:48px!important;padding:0 16px!important;font-size:14px!important;font-family:inherit!important
}
.wc-block-components-textarea textarea{height:auto!important;padding:12px 16px!important}
.wc-block-components-text-input label,
.wc-block-components-checkbox label,
.wc-block-components-radio-control__label{color:var(--muted)!important;font-size:12px!important;font-family:inherit!important}
.wc-block-components-text-input,.wc-block-components-select{margin-bottom:14px!important}
.wc-block-components-text-input input:focus,
.wc-block-components-address-form select:focus{outline:none!important;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent3)!important}
.wc-block-components-title,.wc-block-checkout__title{color:var(--white)!important;font-weight:900!important;letter-spacing:-.02em!important}
.wc-block-components-panel,.wc-block-components-order-summary,
.wc-block-checkout__payment-method,.wc-block-components-totals-wrapper{
  background:var(--bg1)!important;border:1px solid var(--border)!important;border-radius:var(--r3)!important;
  padding:16px 20px!important;color:var(--light)!important
}
.wc-block-components-radio-control__option{background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;padding:10px 14px!important;margin-bottom:8px!important}
.wc-block-components-radio-control__input{accent-color:var(--accent)!important}
.wc-block-components-checkbox__input{accent-color:var(--accent)!important}
.wc-block-components-totals-item__value,.wc-block-components-totals-item__label{color:var(--light)!important}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{color:var(--white)!important;font-weight:800!important}
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout-order-summary-block .components-button.is-primary,
.wc-block-cart__submit-button{
  background:var(--accent)!important;color:#000!important;border:none!important;border-radius:var(--r2)!important;
  height:56px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important;width:100%!important
}
.wc-block-components-checkout-place-order-button:hover,.wc-block-cart__submit-button:hover{background:var(--accent2)!important}
.wc-block-components-order-summary-item__description,.wc-block-components-order-summary-item__quantity{color:var(--muted)!important}
.wc-block-components-notice-banner{border-radius:var(--r2)!important}

/* Broader fallback — catches any field WooCommerce Blocks renders,
   regardless of exact component class name (these change between
   WooCommerce versions) */
.wp-block-woocommerce-checkout input[type=text],
.wp-block-woocommerce-checkout input[type=email],
.wp-block-woocommerce-checkout input[type=tel],
.wp-block-woocommerce-checkout input[type=number],
.wp-block-woocommerce-checkout input[type=search],
.wp-block-woocommerce-checkout select,
.wp-block-woocommerce-checkout textarea,
.wp-block-woocommerce-cart input[type=text],
.wp-block-woocommerce-cart input[type=number],
.wp-block-woocommerce-cart select{
  background:var(--bg2)!important;border:1px solid var(--border)!important;border-radius:var(--r2)!important;
  color:var(--white)!important;font-family:inherit!important
}
.wp-block-woocommerce-checkout button,
.wp-block-woocommerce-cart button{font-family:inherit!important}
.wp-block-woocommerce-checkout,.wp-block-woocommerce-cart{background:transparent!important}


.woocommerce-account .woocommerce{display:block}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}
.woocommerce-MyAccount-content{font-size:14px;color:var(--light);line-height:1.8}
.woocommerce-Address-title h3{font-size:14px;font-weight:700;color:var(--white);margin-bottom:12px}

/* ── PRICE DISPLAY ── */
.woocommerce-Price-amount{color:var(--white)!important;font-weight:700}
.woocommerce ins .woocommerce-Price-amount{color:var(--sale)!important}
.woocommerce del .woocommerce-Price-amount{color:var(--muted)!important;font-weight:400}
.woocommerce ins{text-decoration:none}

/* ── LIGHT MODE WC FIXES ── */
[data-theme="light"] .woocommerce form .form-row .input-text,
[data-theme="light"] .woocommerce form select{background:var(--bg2)!important;color:var(--white)!important}
[data-theme="light"] .woocommerce-checkout #payment{background:var(--bg1)}
[data-theme="light"] .woocommerce-checkout #payment .payment_box{background:var(--bg2)}

/* ── SCREEN READER / A11Y ── */
.screen-reader-text{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link{position:absolute;left:-999px;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:6px;top:6px;width:auto;height:auto;padding:8px 16px;background:var(--accent);color:#000;z-index:9999;border-radius:var(--r2)}

/* ── PRINT ── */
@media print{
  #lux-topbar,#lux-header,.lux-hamburger,#lux-cart-drawer,
  #lux-mobile-nav,#lux-btt,.lux-sticky-atc,footer.lux-footer{display:none!important}
  body{color:#000!important;background:#fff!important}
}
