/* Import DM Sans cu greutăți necesare (400, 700, 900) */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;700;900&display=swap');

/* ========= Paleta Luxia ========= */
:root{
  --luxia-ink: #2b2730;
  --luxia-muted: #6b6470;

  --luxia-accent: #5b2465;
  --luxia-accent-2: #7e3b8f;
  --luxia-green: #65c18c;

  --luxia-surface: #ffffff;
  --luxia-tint: #f7f3f8;

  --luxia-ring: rgba(91,36,101,.22);
  --luxia-ring-weak: rgba(91,36,101,.14);

  --luxia-grad-soft: linear-gradient(180deg, rgba(91,36,101,.06) 0%, rgba(101,193,140,.06) 100%);

  --luxia-shadow-1: 0 8px 24px rgba(19,18,23,.08);
  --luxia-shadow-2: 0 12px 30px rgba(19,18,23,.12);

  --luxia-gold: linear-gradient(90deg,#6e4a0a 0%,#b07a12 10%,#d0a232 28%,#f6e08a 50%,#d0a232 72%,#b07a12 90%,#6e4a0a 100%);
}

/* ===== Page Title pe single product ===== */
.luxia-ptb { background:var(--luxia-surface); }
.luxia-ptb .luxia-page-title{
  margin:18px 0 10px;
  line-height:1.15;
  font-size:clamp(28px,5vw,48px);
  color:var(--luxia-accent);
  border-bottom:1px solid #f2f2f2;
  padding-bottom:8px;
}

/* ===== Bara de categorii ===== */
.luxia-cat-only{
  background:var(--luxia-surface);
  position:relative;
  z-index: 10;
  margin-top: 6px;      /* mai aproape de titlu */
  margin-bottom: 64px;  /* spațiu față de shop */
}
@media (max-width: 768px){
  .luxia-cat-only{ margin-top: 6px; margin-bottom: 48px; }
}

/* containerul meniului */
.luxia-cat-only .luxia-catbar{
  position: sticky;
  top: var(--luxia-offset, 0px);
  background:var(--luxia-surface);
  z-index:20;
  border:0;
}

/* DOAR linia aurie de jos (deasupra NU mai avem linie) */
.luxia-cat-only .luxia-catbar::after{
  content:'';
  position:absolute; left:0; right:0; bottom:0;
  height:3px; background:var(--luxia-gold); pointer-events:none;
}
.luxia-cat-only .luxia-catbar::before{ display:none !important; }

/* lista de categorii */
.luxia-cat-only .luxia-catbar .luxia-catmenu{
  display:flex; flex-wrap:wrap; gap:22px 30px;
  list-style:none; margin:0; padding:12px 0;
}

/* item + link – DM Sans 400, puțin mai mare */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem{ position:relative; }
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-catlink{
  position:relative;
  display:inline-flex; align-items:center; gap:10px;
  padding:9px 12px;
  border-radius:12px;
  text-decoration:none;
  font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:400;
  font-size: clamp(15px, 1.6vw, 17px);
  color:var(--luxia-ink) !important;
  transition: color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  border:1px solid transparent !important;
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-catlink:hover,
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem:focus-within > .luxia-catlink{
  background: var(--luxia-grad-soft) !important;
  color: var(--luxia-accent) !important;
  border-color: var(--luxia-ring-weak) !important;
  box-shadow: 0 1px 2px rgba(19,18,23,.05) !important;
}
/* accent discret sub link la hover */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-catlink::before{
  content:''; position:absolute; left:10px; right:10px; bottom:4px; height:2px;
  background: linear-gradient(90deg, var(--luxia-accent), var(--luxia-green));
  transform: scaleX(0); transform-origin: 0 50%;
  transition: transform .22s ease;
  border-radius: 2px;
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-catlink:hover::before,
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem:focus-within > .luxia-catlink::before{
  transform: scaleX(1);
}

/* indicator săgeată pe itemii cu copii */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem.has-children > .luxia-catlink::after{
  content:''; width:8px; height:8px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform: rotate(45deg); opacity:.9; margin-left:2px;
  transition: transform .18s ease;
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem.open > .luxia-catlink::after{ transform: rotate(225deg); }

/* Submeniul – hit-area mai generoasă, blur subtil */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu{
  position:absolute; top:100%; left:0; min-width:220px;
  background: var(--luxia-surface);
  border:1px solid rgba(91,36,101,.12);
  border-radius:14px;
  box-shadow: var(--luxia-shadow-2);
  list-style:none; margin:10px 0 0 0; padding:8px 0;
  opacity:0; visibility:hidden; transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s;
  pointer-events:none; z-index:50;
  -webkit-backdrop-filter: saturate(125%) blur(6px);
  backdrop-filter: saturate(125%) blur(6px);
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu::before{
  content:''; position:absolute; top:-10px; left:0; right:0; height:10px; /* zonă tampon pentru mouse */
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu::after{
  content:''; position:absolute; top:-7px; left:24px; width:12px; height:12px;
  background: var(--luxia-surface);
  border-left:1px solid rgba(91,36,101,.12);
  border-top:1px solid rgba(91,36,101,.12);
  transform: rotate(45deg);
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu li a{
  display:block; padding:10px 14px; text-decoration:none; line-height:1.2;
  font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:400;
  color:var(--luxia-ink) !important;
  transition: background .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
  white-space:nowrap; border-radius:10px; margin:3px 8px;
}
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu li a:hover,
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-submenu li a:focus{
  background: var(--luxia-grad-soft) !important;
  color: var(--luxia-accent) !important;
  box-shadow: 0 0 0 1px var(--luxia-ring-weak) inset;
}

/* deschidere: hover / focus-within / clasa .open (touch) */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem:hover > .luxia-submenu,
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem:focus-within > .luxia-submenu,
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem.open > .luxia-submenu{
  opacity:1; visibility:visible; transform: translateY(0);
  pointer-events:auto;
}

/* focus ring accesibil */
.luxia-cat-only .luxia-catbar .luxia-catmenu .luxia-catitem > .luxia-catlink:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px var(--luxia-ring) !important;
}

/* mobil / tabletă */
@media (max-width:1024px){
  .luxia-cat-only .luxia-catbar{ position:static; z-index:1; }
}

/* ====== Grilă responsivă pentru listele de categorii ====== */
.woocommerce ul.products.luxia-catgrid{
  display:grid !important;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
}
@media (max-width:1200px){
  .woocommerce ul.products.luxia-catgrid{ grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:768px){
  .woocommerce ul.products.luxia-catgrid{ grid-template-columns:repeat(2, 1fr); gap:18px; }
}

/* ====== Cardurile categorie (template + fallback) ====== */
.luxia-catcard .woocommerce-LoopCategory-link{ display:block; text-decoration:none; }

/* Card custom (content-product_cat.php) */
.luxia-card{
  position:relative; display:block;
  aspect-ratio:3 / 4; border-radius:16px; overflow:hidden;
  background:#f5f5f5; box-shadow: var(--luxia-shadow-1);
  transition:transform .25s ease, box-shadow .25s ease;
}
.luxia-catcard:hover .luxia-card{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(0,0,0,.10); }
.luxia-card__media, .luxia-card__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.luxia-catcard:hover .luxia-card__media img{ transform:scale(1.04); }

/* Titlu overlay – DM Sans Black 900 */
.luxia-card__title{
  position:absolute; left:18px; top:16px; z-index:2;
  font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:900; /* Black */
  font-size:clamp(16px,1.6vw,22px);
  color:var(--luxia-accent);
  text-shadow:0 1px 2px rgba(255,255,255,.35);
}
.luxia-card__arrow{
  position:absolute; left:14px; bottom:14px; z-index:2; width:44px; height:44px; border-radius:999px;
  background:rgba(255,255,255,.92); color:#333;
  display:inline-flex; align-items:center; justify-content:center;
  box-shadow:0 4px 12px rgba(0,0,0,.10); transition:transform .25s ease, background .25s ease, color .25s ease;
}
.luxia-catcard:hover .luxia-card__arrow{ transform:translateX(3px); }

/* Fallback Woo standard (când nu e folosit template-ul personalizat) */
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link{
  position:relative; display:block; aspect-ratio:3 / 4; border-radius:16px; overflow:hidden;
  background:#f5f5f5; box-shadow: var(--luxia-shadow-1);
  transition:transform .25s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link:hover{
  transform:translateY(-2px); box-shadow:0 14px 30px rgba(0,0,0,.10);
}
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .35s ease;
}
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link:hover img{ transform:scale(1.04); }

/* Titlul implicit Woo – DM Sans Black 900 */
.woocommerce ul.products li.product-category h2.woocommerce-loop-category__title{
  position:absolute; left:18px; top:16px; margin:0; z-index:2;
  font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:900; /* Black */
  font-size:clamp(16px,1.6vw,22px);
  color:var(--luxia-accent); text-shadow:0 1px 2px rgba(255,255,255,.35);
}
.woocommerce ul.products li.product-category h2.woocommerce-loop-category__title .count{ display:none !important; }
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link::after{
  content:''; position:absolute; left:14px; bottom:14px; z-index:2; width:44px; height:44px; border-radius:999px; background:rgba(255,255,255,.92); box-shadow:0 4px 12px rgba(0,0,0,.10);
}
.woocommerce ul.products li.product-category a.woocommerce-LoopCategory-link::before{
  content:''; position:absolute; left:28px; bottom:28px; z-index:3; width:18px; height:18px; border-right:2px solid #333; border-top:2px solid #333; transform:rotate(45deg);
}
.woocommerce ul.products li.product-category{ text-align:left; border:0; background:transparent; padding:0 !important; }
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{ padding:0 !important; }

/* ascunde contorul (x products) peste tot */
.woocommerce ul.products li.product-category .count{ display:none !important; }

/* ====== Ascunde orice „Filters” rezidual din temă/plugin-uri ====== */
.woocommerce .ohio-shop-toolbar,
.woocommerce .oh-shop-toolbar,
.woocommerce .ohio-filters,
.woocommerce .oh-filters,
.woocommerce .shop-filters,
.woocommerce .filters,
.woocommerce .filters-panel,
.woocommerce .filters-toggle,
.woocommerce .woocommerce-sidebar,
.woocommerce .prdctfltr_wc,
.woocommerce .woof_sid_auto_shortcode,
.woocommerce .wpf_layout_vertical,
.woocommerce .yith-woocommerce-ajax-product-filter,
.woocommerce .yith-woo-ajax-navigation{
  display:none !important;
}
.woocommerce a[class*="filter"], .woocommerce button[class*="filter"],
.woocommerce a[href*="filter"],  .woocommerce button[name*="filter"]{
  display:none !important;
}

/* ===== Overlay meniu/header (pentru mega-menu / mobile) – #612166 @ 30% ===== */
.clb-dropdown-overlay,
.clb-menu-overlay,
.clb-header__overlay,
.menu-overlay {
  background: rgba(97, 33, 102, 0.3) !important;
}
.clb-header:before,
.site-header:before,
.header:before {
  background: rgba(97, 33, 102, 0.3) !important;
}
.clb-mobile-menu__overlay,
.mobile-menu-overlay,
.clb-mobile-panel__overlay {
  background: rgba(97, 33, 102, 0.3) !important;
}

/* ===========================================================
   OVERRIDE TITLU SHOP — DM Sans 900 (mai gros) cu prioritate
   =========================================================== */
html body .luxia-ptb .luxia-page-title,
html body .woocommerce .woocommerce-products-header__title.page-title,
html body .woocommerce-products-header__title.page-title,
html body .clb-page-title h1,
html body .ohio-page-title h1,
html body .page-title h1,
html body .page-title__title {
  font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  font-weight: 900 !important; /* Black — mai gros */
  font-variation-settings: 'wght' 900; /* ajută pe fonturile variabile */
  letter-spacing: -0.015em;
}



/* ===================================================================
   Ascunde etichetele „In stock / Out of stock / stoc” în LISTELE shop
   (shop, categorie, tag). Nu atinge single product!
   =================================================================== */
.woocommerce.archive ul.products li.product .stock,
.woocommerce.archive ul.products li.product .out-of-stock,
.woocommerce.archive ul.products li.product .in-stock,
.woocommerce.archive ul.products li.product .availability,
.woocommerce.archive ul.products li.product .badge,
.woocommerce.archive ul.products li.product .product-badges,
.woocommerce.archive ul.products li.product .product_badges,
.woocommerce.archive ul.products li.product .product-label,
.woocommerce.archive ul.products li.product .ohio-product-badges,
.woocommerce.archive ul.products li.product .ohio-product__badges,
.woocommerce.archive ul.products li.product [class*="stock"]{
  display:none !important;
}

/* ===================================================================
   Ascunde și pe pagina de produs (single-product)
   =================================================================== */
.single-product .product .stock,
.single-product .product .out-of-stock,
.single-product .product .in-stock,
.single-product .product .availability,
.single-product .product .badge,
.single-product .product .product-badges,
.single-product .product .product_badges,
.single-product .product .product-label,
.single-product .product .ohio-product-badges,
.single-product .product .ohio-product__badges,
.single-product .product [class*="stock"]{
  display:none !important;
}
