/* ==== TOKENS ==== */
:root {
  --sg-green: #16A34A;
  --sg-green-dark: #15803D;
  --sg-navy: #1E3A5F;
  --sg-orange: #F97316;
  --sg-red: #DC2626;
  --sg-surface: #F6F7F9;
  --sg-border: #E5E7EB;
  --sg-text: #111827;
  --sg-text-muted: #6B7280;
  --sg-radius: 10px;
  --sg-shadow: 0 1px 3px rgba(17,24,39,.08);
  --sg-container: 1440px;
  --sg-font: 'Inter', system-ui, -apple-system, sans-serif;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-latin-ext.woff2') format('woff2');
  font-weight: 400 800; font-display: swap; unicode-range: U+0100-02BA, U+0218-021B, U+1E00-1E9F;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-latin.woff2') format('woff2');
  font-weight: 400 800; font-display: swap; unicode-range: U+0000-00FF;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--sg-font);color:var(--sg-text);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
.sg-container{max-width:var(--sg-container);margin-inline:auto;padding-inline:24px}
@media(max-width:767px){.sg-container{padding-inline:16px}}
.sg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:0;border-radius:var(--sg-radius);font-weight:600}
.sg-btn--green{background:var(--sg-green);color:#fff}
.sg-btn--green:hover{background:var(--sg-green-dark)}
.sg-btn--orange{background:var(--sg-orange);color:#fff}
.sg-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:700}
.sg-badge--sale{background:var(--sg-orange);color:#fff}
.sg-price{font-weight:700;font-variant-numeric:tabular-nums}
.sg-price--old{color:var(--sg-text-muted);text-decoration:line-through;font-weight:400}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ==== HEADER ==== */
.sg-header{position:sticky;top:0;z-index:50;background:#fff}
.sg-icon{display:block;flex:none}

/* Row 1: topbar */
.sg-topbar{background:var(--sg-surface);font-size:13px;color:var(--sg-text-muted);border-bottom:1px solid var(--sg-border)}
.sg-topbar__in{display:flex;align-items:center;gap:24px;min-height:36px}
.sg-topbar__phone{font-weight:600;color:var(--sg-navy)}
.sg-topbar__links{display:flex;gap:16px;margin-left:auto}
.sg-topbar__links a:hover{color:var(--sg-green)}

/* Row 2: masthead */
.sg-masthead__in{display:flex;align-items:center;gap:32px;padding-block:16px}
.sg-logo{display:flex;align-items:center;font-weight:800;font-size:22px;letter-spacing:.5px;flex:none}
/* PNG-ul din brand kit are margini transparente generoase — înălțimea compensează */
.sg-logo__img{display:block;height:60px;width:auto;max-width:260px;object-fit:contain}
.sg-logo__sol{color:var(--sg-green)}
.sg-logo__garden{color:var(--sg-navy)}
/* overflow was previously hidden here to clip the button's square corners into
   the pill shape, but that also clipped the absolutely-positioned results
   dropdown below it — corners are rounded explicitly on the end elements
   instead so the dropdown can overflow visibly (Task 9). */
.sg-search{flex:1;min-width:0;display:flex;position:relative;border:2px solid var(--sg-green);border-radius:var(--sg-radius)}
.sg-search input[type=search]{flex:1;min-width:0;border:0;padding:0 16px;min-height:44px;font:inherit;outline:0;border-radius:calc(var(--sg-radius) - 2px) 0 0 calc(var(--sg-radius) - 2px)}
.sg-search .sg-btn{border-radius:0 calc(var(--sg-radius) - 2px) calc(var(--sg-radius) - 2px) 0;min-height:40px}
.sg-search__results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--sg-border);border-top:0;border-radius:0 0 var(--sg-radius) var(--sg-radius);box-shadow:var(--sg-shadow);z-index:60}
.sg-masthead__actions{display:flex;align-items:center;gap:20px;flex:none}
.sg-action{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;color:var(--sg-text);min-height:44px;justify-content:center}
.sg-action:hover{color:var(--sg-green)}
.sg-count{position:absolute;top:-6px;right:-10px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--sg-orange);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}

/* Row 3: mega nav */
.sg-nav{background:var(--sg-navy)}
.sg-nav__in{display:flex;align-items:center;gap:24px;position:relative}
.sg-nav__all{border-radius:0;min-height:48px}
.sg-nav__quick{display:flex;gap:20px;list-style:none;margin:0;padding:0}
.sg-nav__quick a{display:flex;align-items:center;min-height:48px;color:#fff;font-size:14px}
.sg-nav__quick a:hover{color:var(--sg-orange)}
/* Panou ancorat sub buton (nu full-bleed), conform machetei Lovable */
.sg-mega{position:absolute;top:100%;left:0;width:min(880px,92vw);background:#fff;border:1px solid var(--sg-border);border-top:0;border-radius:0 0 12px 12px;box-shadow:var(--sg-shadow);overflow:hidden;z-index:60}
.sg-mega[hidden]{display:none}
.sg-mega__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 24px;padding:24px}
.sg-mega__col{display:flex;flex-direction:column;gap:5px}
.sg-mega__root{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--sg-navy)}
.sg-mega__root:hover .sg-mega__name{color:var(--sg-green)}
.sg-mega__chip{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:rgba(22,163,74,.1);color:var(--sg-green);flex:none;overflow:hidden}
.sg-mega__chip img{width:22px;height:22px;object-fit:contain}
.sg-mega__chevron{margin-left:auto;color:var(--sg-text-muted);flex:none}
.sg-mega__child{font-size:13px;color:var(--sg-text-muted);padding-left:40px}
.sg-mega__child:hover{color:var(--sg-green)}
.sg-mega__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--sg-surface);border-top:1px solid var(--sg-border);font-size:14px;color:var(--sg-text-muted)}
.sg-mega__foot a{font-weight:600;color:var(--sg-green)}

/* Mobile drawer (all breakpoints; opened via JS) */
.sg-drawer{position:fixed;inset:0;z-index:100;background:rgba(17,24,39,.45)}
.sg-drawer[hidden]{display:none}
.sg-drawer__panel{position:absolute;top:0;left:0;bottom:0;width:min(320px,85vw);background:#fff;display:flex;flex-direction:column;overflow-y:auto;box-shadow:var(--sg-shadow)}
.sg-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--sg-border)}
.sg-drawer__close{background:none;border:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
.sg-drawer__nav{padding:8px 0;flex:1}
.sg-drawer__group summary{list-style:none;cursor:pointer;display:flex;align-items:center;min-height:48px;padding:0 16px;font-weight:600;color:var(--sg-navy)}
.sg-drawer__group summary::-webkit-details-marker{display:none}
.sg-drawer__group summary::after{content:'+';margin-left:auto;font-size:18px}
.sg-drawer__group[open] summary::after{content:'−'}
.sg-drawer__group-links{display:flex;flex-direction:column;padding:0 16px 12px 24px}
.sg-drawer__group-links a{min-height:36px;display:flex;align-items:center;font-size:14px}
.sg-drawer__link{display:flex;align-items:center;min-height:48px;padding:0 16px;font-weight:600;color:var(--sg-navy)}
.sg-drawer__foot{border-top:1px solid var(--sg-border);padding:16px;display:flex;flex-direction:column;gap:12px}

/* Mobile bottom bar */
.sg-bottombar{position:fixed;bottom:0;left:0;right:0;z-index:90;background:#fff;border-top:1px solid var(--sg-border);display:none;align-items:stretch;justify-content:space-between;box-shadow:0 -1px 6px rgba(17,24,39,.08)}
.sg-bottombar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;min-width:44px;border:0;background:none;font-size:11px;color:var(--sg-text);position:relative}
.sg-bottombar__item .sg-count{top:2px;right:calc(50% - 20px)}

/* ==== FOOTER ==== */
.sg-footer{background:var(--sg-navy);color:#fff;margin-top:48px}
.sg-trustband{display:grid;grid-template-columns:repeat(var(--sg-trust-cols,4),1fr);gap:16px;padding-block:24px;border-bottom:1px solid rgba(255,255,255,.12)}
.sg-trustband__item{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.sg-footer__main{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding-block:40px}
/* wrapper-ul coloanelor trebuie dizolvat în grid, altfel toate coloanele de meniu
   ocupă un singur track în loc de câte una fiecare */
.sg-footer__columns{display:contents}
.sg-footer__heading{font-size:15px;margin:0 0 12px;color:#fff}
.sg-footer__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.sg-footer__menu a{font-size:14px;color:rgba(255,255,255,.75)}
.sg-footer__menu a:hover{color:#fff}
.sg-footer__legal{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:20px;border-top:1px solid rgba(255,255,255,.12);font-size:13px}
.sg-footer__badges{display:flex;gap:10px;flex-wrap:wrap}
.sg-footer__badges .sg-badge{background:rgba(255,255,255,.1);color:#fff;font-weight:600;padding:6px 10px}
.sg-footer__badges .sg-badge:hover{background:rgba(255,255,255,.2)}
.sg-footer__copy{margin:0;color:rgba(255,255,255,.75)}

/* ==== BREAKPOINTS ==== */
@media(max-width:1023px){
  .sg-mega__grid{grid-template-columns:repeat(2,1fr)}
  .sg-footer__main{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
  .sg-topbar{display:none}
  .sg-nav__quick{display:none}
  .sg-mega{position:fixed;inset:0;top:auto;bottom:56px;width:auto;max-height:70vh;overflow-y:auto;border-radius:var(--sg-radius) var(--sg-radius) 0 0}
  .sg-mega__grid{grid-template-columns:1fr}
  /* Row 2 (logo + search + actions) can't fit on one line at phone widths —
     stack it: row 1 = logo + compact icon-only actions (wishlist/account;
     cart is already duplicated in .sg-bottombar so it stays hidden below),
     row 2 = search form, full width. */
  .sg-masthead__in{flex-wrap:wrap;justify-content:space-between;gap:12px 16px;padding-block:12px}
  .sg-search{order:3;flex:1 1 100%}
  .sg-masthead__actions{gap:16px}
  .sg-masthead__actions .sg-action__label{display:none}
  .sg-action--cart{display:none}
  .sg-bottombar{display:flex}
  body{padding-bottom:56px}
  .sg-footer__main{grid-template-columns:1fr;gap:24px}
  .sg-trustband{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:359px){
  .sg-logo{font-size:18px}
  .sg-topbar__in{gap:12px}
}

/* ==== ARCHIVE / PRODUCT LISTING ==== */
.sg-archive{padding-block:24px}
.sg-archive__title{font-size:26px;margin:0 0 16px;color:var(--sg-navy)}
.sg-breadcrumbs:empty{display:none}
.woocommerce-result-count,.woocommerce-ordering{font-size:13px;color:var(--sg-text-muted)}
.sg-listing{display:flex;align-items:flex-start;gap:24px;margin-top:16px}
.sg-filters{flex:0 0 260px}
.sg-filters:empty{display:none}
.sg-grid{
  flex:1;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

/* ==== PRODUCT CARD ==== */
.sg-card{
  position:relative;
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);
  overflow:hidden;
}
.sg-card .sg-badge--sale{position:absolute;top:10px;left:10px;z-index:2}
.sg-card__wish{
  position:absolute;top:8px;right:8px;z-index:2;
  width:36px;height:36px;border-radius:50%;
  background:#fff;border:1px solid var(--sg-border);
  color:var(--sg-text-muted);
  display:flex;align-items:center;justify-content:center;
  line-height:1;
}
.sg-card__wish:hover{color:var(--sg-red);border-color:var(--sg-red)}
.sg-card__media{display:block;aspect-ratio:1/1;background:var(--sg-surface)}
.sg-card__media img{width:100%;height:100%;object-fit:contain}
.sg-card__body{display:flex;flex-direction:column;gap:6px;padding:14px}
.sg-card__brand{font-size:12px;color:var(--sg-text-muted);text-transform:uppercase;letter-spacing:.3px}
.sg-card__title{
  font-size:14px;font-weight:600;color:var(--sg-text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:2.6em;
}
.sg-card__price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.sg-stock{font-size:12px;font-weight:600}
.sg-stock--in{color:var(--sg-green)}
.sg-stock--out{color:var(--sg-red)}
.sg-stock--backorder{color:var(--sg-orange)}
.sg-card__cta{width:100%;margin-top:4px}

@media(min-width:768px){
  .sg-card__cta{opacity:0;pointer-events:none;transition:opacity .15s ease}
  .sg-card:hover .sg-card__cta,
  .sg-card:focus-within .sg-card__cta{opacity:1;pointer-events:auto}
}

@media(max-width:1023px){
  .sg-grid{grid-template-columns:repeat(3,1fr)}
  .sg-filters{flex-basis:220px}
}
@media(max-width:767px){
  .sg-listing{flex-direction:column}
  .sg-filters{flex-basis:auto;width:100%}
  .sg-grid{grid-template-columns:repeat(2,1fr);gap:12px}
}

/* ==== FILTER SIDEBAR (Task 5) ==== */
.sg-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.sg-chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;border-radius:999px;
  background:var(--sg-surface);border:1px solid var(--sg-border);
  color:var(--sg-text);font-size:12px;text-decoration:none;
}
.sg-chip:hover{border-color:var(--sg-green);color:var(--sg-green-dark)}
.sg-chip--clear{background:transparent;border-style:dashed;color:var(--sg-text-muted)}

.sg-filters__form{display:flex;flex-direction:column}
.sg-filters__group{border-bottom:1px solid var(--sg-border);padding:12px 0}
.sg-filters__group summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--sg-text);list-style:revert}
.sg-filters__price{display:flex;align-items:center;gap:8px;margin-top:10px}
.sg-filters__price input{width:0;flex:1;padding:6px 8px;border:1px solid var(--sg-border);border-radius:6px;font:inherit}
.sg-filters__brand-search{width:100%;margin:10px 0 8px;padding:6px 8px;border:1px solid var(--sg-border);border-radius:6px;font:inherit}
.sg-filters__brand-list{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto}
.sg-filters__brand-item{padding:4px 0}
.sg-filters__brand-item.sg-is-hidden{display:none}
.sg-filters__brand-item label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.sg-filters__brand-count{color:var(--sg-text-muted);margin-left:auto}
.sg-filters__checkbox,.sg-filters__radio{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:8px;cursor:pointer}
.sg-filters__submit{width:100%;margin-top:14px}
.sg-filters__close,.sg-filters__backdrop{display:none}
.sg-filters__toggle{display:none}

.sg-grid{transition:opacity .15s ease}
.sg-grid[aria-busy="true"]{opacity:.5;pointer-events:none}
.sg-grid > .woocommerce-info{grid-column:1/-1}

body.sg-filters-locked{overflow:hidden}

@media(max-width:767px){
  .sg-filters{
    position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;
    max-height:80vh;overflow-y:auto;
    background:#fff;border-radius:16px 16px 0 0;
    box-shadow:0 -8px 24px rgba(17,24,39,.2);
    padding:16px;z-index:60;
    transform:translateY(100%);
    transition:transform .25s ease;
  }
  .sg-filters.sg-filters--open{transform:translateY(0)}
  /* No-JS fallback: the toggle is a plain <a href="#sg-filters">; :target opens the sheet. */
  .sg-filters:target{transform:none}
  .sg-filters__form{background:#fff;position:relative;z-index:1}
  .sg-filters__close{
    display:flex;align-items:center;justify-content:center;
    color:var(--sg-text);text-decoration:none;
    position:sticky;top:0;margin-left:auto;
    width:32px;height:32px;border-radius:50%;
    border:1px solid var(--sg-border);background:#fff;
    font-size:18px;line-height:1;z-index:1;
  }
  .sg-filters__backdrop{
    display:block;position:fixed;inset:0;
    background:rgba(17,24,39,.45);
    opacity:0;pointer-events:none;transition:opacity .25s ease;
  }
  .sg-filters--open .sg-filters__backdrop{opacity:1;pointer-events:auto}
  .sg-filters__toggle{
    display:inline-flex;align-items:center;gap:6px;
    margin:12px 0;padding:9px 18px;border-radius:999px;
    background:var(--sg-green);color:#fff;border:0;
    font-weight:600;font-size:13px;cursor:pointer;
  }
}

/* ==== SINGLE PRODUCT (Task 6) ==== */
.sg-single-product{padding-block:24px}
.sg-breadcrumbs-slot:empty{display:none}

.sg-single-product .product{position:relative;display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
/* flex-basis trebuie să scadă gap-ul de 40px, altfel 55%+45%+gap > 100% și summary cade pe rândul următor */
.sg-single-product .product > .woocommerce-product-gallery{flex:1 1 calc(55% - 20px);max-width:calc(55% - 20px)}
.sg-single-product .product > .summary{flex:1 1 calc(45% - 20px);max-width:calc(45% - 20px);display:flex;flex-direction:column;gap:14px}
.sg-single-product .onsale{
  position:absolute;top:0;left:0;z-index:2;
  display:inline-block;padding:4px 10px;border-radius:6px;
  background:var(--sg-orange);color:#fff;font-size:12px;font-weight:700;
}

/* Gallery: vertical thumbs column (~80px) left of the main image */
.woocommerce-product-gallery{display:flex;flex-direction:row;gap:12px;align-items:flex-start}
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery .flex-viewport{order:2;flex:1;min-width:0;background:var(--sg-surface);border-radius:var(--sg-radius);overflow:hidden}
.woocommerce-product-gallery__image img{width:100%;aspect-ratio:1/1;object-fit:contain;display:block}
.woocommerce-product-gallery .flex-control-nav{
  order:1;flex:0 0 80px;width:80px;
  display:flex;flex-direction:column;gap:8px;
  list-style:none;margin:0;padding:0;max-height:520px;overflow-y:auto;
}
.woocommerce-product-gallery .flex-control-nav li{width:100%}
.woocommerce-product-gallery .flex-control-nav img{
  width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:6px;
  border:2px solid var(--sg-border);cursor:pointer;background:var(--sg-surface);
}
.woocommerce-product-gallery .flex-control-nav .flex-active img{border-color:var(--sg-green)}

/* Summary column */
.product_title{font-size:26px;line-height:1.25;margin:0;color:var(--sg-navy)}
.woocommerce-product-rating{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--sg-text-muted)}
.sg-price-block{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.sg-price--big{font-size:30px}
.sg-savings{flex-basis:100%;margin:0;color:var(--sg-orange);font-weight:600;font-size:14px}
.sg-stock{margin:0}
.woocommerce-product-details__short-description{color:var(--sg-text-muted);font-size:14px;line-height:1.6}
.summary form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0}
.summary .quantity{display:inline-flex;align-items:center;border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden}
.summary .qty{width:52px;min-height:44px;border:0;text-align:center;font:inherit;-moz-appearance:textfield}
.summary .qty::-webkit-inner-spin-button,.summary .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.sg-qty__btn{width:36px;min-height:44px;border:0;background:var(--sg-surface);color:var(--sg-navy);font-size:18px;font-weight:700;line-height:1}
.sg-qty__btn:hover{background:var(--sg-border)}
.single_add_to_cart_button{min-height:48px;padding:0 28px;border-radius:var(--sg-radius);background:var(--sg-green);color:#fff;font-weight:700;border:0}
.single_add_to_cart_button:hover{background:var(--sg-green-dark)}
.single_add_to_cart_button.disabled{opacity:.5;cursor:not-allowed}

.sg-benefits{
  display:flex;flex-wrap:wrap;gap:20px;list-style:none;margin:4px 0 0;padding:14px 0;
  border-top:1px solid var(--sg-border);border-bottom:1px solid var(--sg-border);
}
.sg-benefits__item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--sg-text)}

.product_meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--sg-text-muted);margin:0}
.product_meta a{color:var(--sg-green-dark)}
.sg-product-brand a{font-weight:600}

/* Tabs: Descriere / Specificații / Recenzii */
.woocommerce-tabs{margin-top:48px}
.woocommerce-tabs ul.tabs{display:flex;gap:24px;list-style:none;margin:0;padding:0;border-bottom:2px solid var(--sg-border)}
.woocommerce-tabs ul.tabs li{margin:0}
.woocommerce-tabs ul.tabs li a{display:inline-block;padding:12px 0;font-weight:600;font-size:14px;color:var(--sg-text-muted)}
.woocommerce-tabs ul.tabs li.active a{color:var(--sg-navy);border-bottom:2px solid var(--sg-green);margin-bottom:-2px}
.woocommerce-Tabs-panel{padding-top:20px;font-size:14px;line-height:1.7;color:var(--sg-text)}
.woocommerce-product-attributes{width:100%;border-collapse:collapse}
.woocommerce-product-attributes th,.woocommerce-product-attributes td{padding:10px 12px;text-align:left;font-size:14px;border-bottom:1px solid var(--sg-border)}
.woocommerce-product-attributes tr:nth-child(even){background:var(--sg-surface)}

/* Related products */
.related.products,.upsells.products{margin-top:48px}
.related.products h2,.upsells.products h2{font-size:22px;margin:0 0 16px;color:var(--sg-navy)}
.related.products ul.products,.upsells.products ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

@media(max-width:1023px){
  .sg-single-product .product > .woocommerce-product-gallery,
  .sg-single-product .product > .summary{flex:1 1 100%;max-width:100%}
  .related.products ul.products,.upsells.products ul.products{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:767px){
  .woocommerce-product-gallery .flex-control-nav{flex:0 0 64px;width:64px;max-height:320px}
  .related.products ul.products,.upsells.products ul.products{grid-template-columns:repeat(2,1fr);gap:12px}
  .woocommerce-tabs ul.tabs{gap:16px;overflow-x:auto}
}

/* ==== GENERIC PAGE (Task 7 prerequisite) ==== */
.sg-page{padding-block:24px}

/* ==== CART (Task 7) ==== */
.sg-cart{display:block}
.sg-cart__items{min-width:0}

table.shop_table.cart{width:100%;border-collapse:collapse;margin:0 0 24px}
table.shop_table.cart th{
  text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.3px;
  color:var(--sg-text-muted);padding:0 8px 12px;border-bottom:1px solid var(--sg-border);
}
table.shop_table.cart td{padding:16px 8px;border-bottom:1px solid var(--sg-border);vertical-align:middle}
table.shop_table.cart .product-thumbnail img{width:72px;height:72px;object-fit:contain;border-radius:var(--sg-radius);background:var(--sg-surface)}
table.shop_table.cart .product-name a{font-weight:600;color:var(--sg-text)}
table.shop_table.cart .product-name a:hover{color:var(--sg-green-dark)}
table.shop_table.cart .product-price,
table.shop_table.cart .product-subtotal{font-weight:600;color:var(--sg-navy);white-space:nowrap}
table.shop_table.cart .product-remove{width:32px}
table.shop_table.cart .product-remove a.remove{
  display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:50%;
  color:var(--sg-text-muted);font-size:18px;line-height:1;
}
table.shop_table.cart .product-remove a.remove:hover{background:var(--sg-surface);color:var(--sg-red)}
table.shop_table.cart .product-quantity .quantity{display:inline-flex;border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden}
table.shop_table.cart .product-quantity .qty{width:56px;min-height:40px;border:0;text-align:center;font:inherit;-moz-appearance:textfield}
table.shop_table.cart .product-quantity .qty::-webkit-inner-spin-button,
table.shop_table.cart .product-quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
table.shop_table.cart tr.actions td{border-bottom:0;padding-top:20px}
table.shop_table.cart .coupon{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
table.shop_table.cart .coupon .input-text{
  min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;width:180px;max-width:100%;
}
table.shop_table.cart .button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 20px;border:0;border-radius:var(--sg-radius);
  background:var(--sg-surface);color:var(--sg-navy);font-weight:600;cursor:pointer;
}
table.shop_table.cart .coupon .button{background:var(--sg-green);color:#fff}
table.shop_table.cart .coupon .button:hover{background:var(--sg-green-dark)}
table.shop_table.cart td.actions .button[name="update_cart"]:hover{background:var(--sg-border)}

.sg-cart__summary{margin-top:24px}
.cart-collaterals{background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:20px}
.cart-collaterals .cart_totals h2{font-size:18px;margin:0 0 16px;color:var(--sg-navy)}
.cart-collaterals table.shop_table{width:100%;border-collapse:collapse;margin:0 0 16px}
.cart-collaterals table.shop_table th,
.cart-collaterals table.shop_table td{padding:10px 0;border-bottom:1px solid var(--sg-border);font-size:14px;text-align:left}
.cart-collaterals table.shop_table tr:last-child th,
.cart-collaterals table.shop_table tr:last-child td{border-bottom:0}
.cart-collaterals table.shop_table .order-total th,
.cart-collaterals table.shop_table .order-total td{
  border-top:2px solid var(--sg-border);border-bottom:0;padding-top:14px;
}
.cart-collaterals .order-total th{font-size:15px;color:var(--sg-navy)}
.cart-collaterals .order-total .amount{font-size:20px;font-weight:800;color:var(--sg-navy)}
.cart-collaterals .cart_totals table.shop_table td{text-align:right}
.cart-collaterals .wc-proceed-to-checkout{padding:0}
.cart-collaterals .checkout-button{
  display:flex;align-items:center;justify-content:center;width:100%;
  min-height:48px;border-radius:var(--sg-radius);background:var(--sg-green);
  color:#fff;font-weight:700;
}
.cart-collaterals .checkout-button:hover{background:var(--sg-green-dark)}
.cart-collaterals .woocommerce-shipping-calculator .shipping-calculator-button{color:var(--sg-green-dark);font-size:13px}
.cart-collaterals .shipping-calculator-form .form-row{margin:8px 0}
.cart-collaterals .shipping-calculator-form select,
.cart-collaterals .shipping-calculator-form input{
  width:100%;min-height:40px;padding:0 10px;border:1px solid var(--sg-border);
  border-radius:6px;font:inherit;
}

@media(min-width:1024px){
  .sg-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
  .sg-cart__summary{margin-top:0;position:sticky;top:24px}
}

/* Free-shipping progress bar */
.sg-shipping-bar{background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:14px 16px;margin-bottom:16px}
.sg-shipping-bar__track{height:8px;border-radius:999px;background:var(--sg-border);overflow:hidden}
.sg-shipping-bar__fill{height:100%;background:var(--sg-green);border-radius:999px;transition:width .3s ease}
.sg-shipping-bar--done .sg-shipping-bar__fill{background:var(--sg-green-dark)}
.sg-shipping-bar__msg{margin:10px 0 0;font-size:13px;color:var(--sg-text)}
.sg-shipping-bar--done .sg-shipping-bar__msg{color:var(--sg-green-dark);font-weight:600}

/* ==== CHECKOUT (Task 7 — CSS-only, no template override) ==== */
.sg-checkout-steps{
  display:flex;align-items:center;gap:10px;list-style:none;
  margin:0 0 28px;padding:0;
}
.sg-checkout-steps__item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--sg-text-muted)}
.sg-checkout-steps__item:not(:last-child)::after{
  content:"";width:24px;height:1px;background:var(--sg-border);margin-left:10px;
}
.sg-checkout-steps__num{
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:50%;background:var(--sg-surface);
  color:var(--sg-text-muted);font-weight:700;font-size:12px;
}
.sg-checkout-steps__item--active{color:var(--sg-navy);font-weight:600}
.sg-checkout-steps__item--active .sg-checkout-steps__num{background:var(--sg-green);color:#fff}

form.checkout.woocommerce-checkout{max-width:100%}
/* Conținutul (facturare + livrare + note) pe O coloană, stivuit; rezumatul stă
   în dreapta. Înainte, col2-set punea billing | note una lângă alta → coloana
   din mijloc rămânea aproape goală. */
.col2-set#customer_details{display:block}
.col2-set#customer_details > .col-1,
.col2-set#customer_details > .col-2{width:100%;min-width:0}
/* Fiecare secțiune = card alb, ca panoul «Comanda ta». */
.woocommerce-billing-fields,
.woocommerce-additional-fields{
  background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:22px;
}
.woocommerce-billing-fields{margin:0 0 20px}
.woocommerce-additional-fields{margin:20px 0 0}
/* Câmpurile de livrare (alt destinatar) sunt goale până bifezi „altă adresă" —
   le facem card doar când chiar au conținut, altfel rămânea o casetă goală. */
.woocommerce-shipping-fields:has(*){
  background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);
  padding:22px;margin:0 0 20px;
}
#ship-to-different-address{margin:0 0 8px;font-weight:600}
#ship-to-different-address label{display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer}
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading{font-size:18px;margin:0 0 16px;color:var(--sg-navy)}
.woocommerce-billing-fields .form-row,
.woocommerce-shipping-fields .form-row,
.woocommerce-additional-fields .form-row{margin-bottom:14px}
.woocommerce-billing-fields .form-row:last-child,
.woocommerce-additional-fields .form-row:last-child{margin-bottom:0}
.woocommerce-billing-fields label,
.woocommerce-shipping-fields label,
.woocommerce-additional-fields label{display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:4px}
/* Compactare: câmpurile scurte câte 2 pe linie (prenume|nume, oraș|județ,
   cod poștal|telefon). Consecutive + 50% se împerechează singure; câmpurile
   „wide" (țară, stradă, email) forțează rând nou. */
@media(min-width:560px){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{
    display:flex;flex-wrap:wrap;column-gap:16px;
  }
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper > .form-row{
    flex:1 1 100%;min-width:0;
  }
  .woocommerce-checkout #billing_first_name_field,
  .woocommerce-checkout #billing_last_name_field,
  .woocommerce-checkout #billing_city_field,
  .woocommerce-checkout #billing_state_field,
  .woocommerce-checkout #billing_postcode_field,
  .woocommerce-checkout #billing_phone_field,
  .woocommerce-checkout #shipping_first_name_field,
  .woocommerce-checkout #shipping_last_name_field,
  .woocommerce-checkout #shipping_city_field,
  .woocommerce-checkout #shipping_state_field,
  .woocommerce-checkout #shipping_postcode_field{
    flex:1 1 calc(50% - 8px);
  }
  .woocommerce-checkout form.checkout .select2-container{width:100%!important}
}
form.checkout input.input-text,
form.checkout select,
form.checkout textarea{
  width:100%;min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;background:#fff;
}
form.checkout input.input-text:focus,
form.checkout select:focus,
form.checkout textarea:focus{outline:0;border-color:var(--sg-green)}
form.checkout textarea{min-height:80px;padding:10px 12px}
form.checkout .select2-container .select2-selection--single{min-height:44px;border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
form.checkout .select2-container .select2-selection__rendered{line-height:44px;padding-left:12px}
form.checkout .select2-container .select2-selection__arrow{height:42px}

#order_review_heading{margin-top:24px}
#order_review .woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse;margin:0 0 16px}
#order_review .woocommerce-checkout-review-order-table th,
#order_review .woocommerce-checkout-review-order-table td{padding:10px 0;border-bottom:1px solid var(--sg-border);font-size:14px;text-align:left}
#order_review .woocommerce-checkout-review-order-table tr:last-child th,
#order_review .woocommerce-checkout-review-order-table tr:last-child td{border-bottom:0}
#order_review .woocommerce-checkout-review-order-table .order-total th,
#order_review .woocommerce-checkout-review-order-table .order-total td{
  border-top:2px solid var(--sg-border);border-bottom:0;padding-top:14px;
}
#order_review .order-total th{font-size:15px;color:var(--sg-navy)}
#order_review .order-total .amount{font-size:20px;font-weight:800;color:var(--sg-navy)}
#order_review td.product-total,
#order_review .cart-subtotal td,
#order_review .order-total td{text-align:right}

#order_review,
.woocommerce-checkout-payment{background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:20px}
ul.woocommerce-shipping-methods,
ul.wc_payment_methods{list-style:none;margin:0 0 16px;padding:0}
ul.woocommerce-shipping-methods li,
ul.wc_payment_methods li.wc_payment_method{padding:10px 0;border-bottom:1px solid var(--sg-border);font-size:14px}
ul.woocommerce-shipping-methods li:last-child,
ul.wc_payment_methods li.wc_payment_method:last-child{border-bottom:0}
ul.wc_payment_methods label{font-weight:600;color:var(--sg-text)}
.payment_box{margin-top:10px;padding:12px;background:#fff;border:1px solid var(--sg-border);border-radius:8px;font-size:13px;color:var(--sg-text-muted)}

#place_order,
.woocommerce-checkout .button[name="woocommerce_checkout_place_order"]{
  display:flex;align-items:center;justify-content:center;width:100%;
  min-height:48px;border:0;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:700;font-size:15px;cursor:pointer;
}
#place_order:hover{background:var(--sg-green-dark)}

.woocommerce-additional-fields{margin-top:20px}
.woocommerce-terms-and-conditions-wrapper{margin:16px 0}

@media(min-width:1024px){
  form.checkout.woocommerce-checkout{
    display:grid;grid-template-columns:minmax(0,1fr) 420px;
    column-gap:32px;align-items:start;
  }
  #customer_details{grid-column:1;grid-row:1/3}
  #order_review_heading{grid-column:2;grid-row:1;margin-top:0}
  #order_review{grid-column:2;grid-row:2;position:sticky;top:24px}
}
@media(max-width:767px){
  .sg-checkout-steps{gap:6px}
  .sg-checkout-steps__label{display:none}
  .sg-checkout-steps__item:not(:last-child)::after{width:14px}
}

/* ==== HOMEPAGE (Task 8) ==== */
.sg-home-section{margin-block:40px}
.sg-section-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.sg-section-head h2{font-size:24px;font-weight:800;color:var(--sg-navy);margin:0}
.sg-section-head__link{margin-left:auto;font-weight:600;font-size:14px;color:var(--sg-green)}
.sg-section-head__link:hover{color:var(--sg-green-dark)}

/* Hero carousel + promo cards */
.sg-hero{margin-top:24px}
.sg-hero--with-promos{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px}
.sg-hero__carousel{position:relative;border-radius:var(--sg-radius);overflow:hidden;min-width:0}
.sg-hero__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.sg-hero__track::-webkit-scrollbar{display:none}
.sg-hero__slide{position:relative;flex:0 0 100%;scroll-snap-align:start;min-height:340px;display:flex;align-items:center;padding:40px;color:#fff}
.sg-hero__content{position:relative;z-index:1;max-width:560px}
.sg-hero__pre{margin:0;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.85}
.sg-hero__title{margin:8px 0 12px;font-size:36px;line-height:1.15;font-weight:800}
.sg-hero__sub{margin:0 0 20px;font-size:16px;opacity:.92}
.sg-hero__img{position:absolute;right:40px;bottom:0;max-height:90%;width:auto;object-fit:contain}
.sg-hero__dots{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:8px;z-index:2}
.sg-hero__dot{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.5)}
.sg-hero__dot[aria-current="true"]{background:#fff}
.sg-hero__promos{display:grid;gap:20px;min-width:0}
.sg-promo{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:160px;padding:24px;border-radius:var(--sg-radius);color:#fff}
.sg-promo__title{margin:0;font-size:18px;font-weight:800}
.sg-promo__sub{margin:0;font-size:14px;opacity:.9}
.sg-promo__link{margin-top:8px;font-weight:700;font-size:14px}
.sg-promo__link:hover{text-decoration:underline}
@media(max-width:1023px){
  .sg-hero--with-promos{grid-template-columns:1fr}
  .sg-hero__promos{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
  .sg-hero__slide{min-height:260px;padding:24px}
  .sg-hero__title{font-size:26px}
  .sg-hero__promos{grid-template-columns:1fr}
}

/* Category cards */
.sg-home-categories__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sg-cat-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;text-align:center;background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.sg-cat-card:hover{border-color:var(--sg-green);box-shadow:var(--sg-shadow)}
.sg-cat-card__media{display:flex;align-items:center;justify-content:center;width:96px;height:96px;color:var(--sg-green)}
.sg-cat-card__media img{width:100%;height:100%;object-fit:contain}
.sg-cat-card__name{font-size:14px;font-weight:600;color:var(--sg-text)}
.sg-cat-card__count{font-size:12px;color:var(--sg-text-muted)}
@media(max-width:1023px){.sg-home-categories__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.sg-home-categories__grid{grid-template-columns:repeat(2,1fr);gap:12px}}

/* Deals countdown */
.sg-countdown{display:inline-flex;align-items:center;gap:3px;padding:6px 12px;border-radius:8px;background:#FEF2F2;color:var(--sg-red);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}

/* Product tabs (CSS-toggled radios; panels also carry .sg-grid) */
.sg-tabs__radio{position:absolute;opacity:0;pointer-events:none}
.sg-tabs__nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.sg-tabs__label{padding:10px 18px;border:1px solid var(--sg-border);border-radius:999px;font-size:14px;font-weight:600;color:var(--sg-text);cursor:pointer}
.sg-tabs__label:hover{border-color:var(--sg-green);color:var(--sg-green-dark)}
.sg-tabs .sg-tabs__panel{display:none}
#sg-tab-popular:checked ~ .sg-tabs__panel--popular,
#sg-tab-new:checked ~ .sg-tabs__panel--new,
#sg-tab-featured:checked ~ .sg-tabs__panel--featured{display:grid}
#sg-tab-popular:checked ~ .sg-tabs__nav .sg-tabs__label[for="sg-tab-popular"],
#sg-tab-new:checked ~ .sg-tabs__nav .sg-tabs__label[for="sg-tab-new"],
#sg-tab-featured:checked ~ .sg-tabs__nav .sg-tabs__label[for="sg-tab-featured"]{background:var(--sg-green);border-color:var(--sg-green);color:#fff}
.sg-tabs__radio:focus-visible ~ .sg-tabs__nav{outline:2px solid var(--sg-green);outline-offset:4px;border-radius:8px}

/* Guides */
.sg-guides__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sg-guide-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.sg-guide-card__media img{width:100%;aspect-ratio:16/9;object-fit:cover}
.sg-guide-card__body{display:flex;flex-direction:column;gap:8px;padding:16px;flex:1}
.sg-guide-card__title{margin:0;font-size:16px;line-height:1.35}
.sg-guide-card__title a:hover{color:var(--sg-green-dark)}
.sg-guide-card__excerpt{margin:0;font-size:13px;color:var(--sg-text-muted)}
.sg-guide-card__link{margin-top:auto;font-size:14px;font-weight:600;color:var(--sg-green)}
@media(max-width:767px){.sg-guides__grid{grid-template-columns:1fr}}

/* Brand cards */
.sg-brands__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sg-brand-card{display:flex;align-items:center;justify-content:center;min-height:72px;padding:8px;background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);font-size:15px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--sg-navy);text-align:center}
.sg-brand-card:hover{border-color:var(--sg-green);color:var(--sg-green)}
@media(max-width:767px){.sg-brands__grid{grid-template-columns:repeat(2,1fr);gap:12px}}

/* ==== SEARCH DROPDOWN + RESULTS PAGE (Task 9) ==== */
.sg-search__results{max-height:70vh;overflow-y:auto;padding:8px 0}
.sg-search__results[hidden]{display:none}
.sg-search__empty{margin:0;padding:16px;font-size:13px;color:var(--sg-text-muted);text-align:center}
.sg-search__cats{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 10px;border-bottom:1px solid var(--sg-border);margin-bottom:6px}
.sg-search__cat{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:var(--sg-surface);font-size:12px;color:var(--sg-text)}
.sg-search__cat:hover,.sg-search__cat.sg-is-active{background:var(--sg-green);color:#fff}
.sg-search__products{list-style:none;margin:0;padding:0}
.sg-search__product{display:flex;align-items:center;gap:12px;padding:8px 12px}
.sg-search__product:hover,.sg-search__product.sg-is-active{background:var(--sg-surface)}
.sg-search__product img{flex:none;width:44px;height:44px;object-fit:contain;background:var(--sg-surface);border-radius:6px}
.sg-search__product-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.sg-search__product-title{font-size:13px;color:var(--sg-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sg-search__product-meta{display:flex;align-items:center;gap:10px;font-size:12px}
.sg-search__product-price{font-weight:700;color:var(--sg-navy)}
.sg-search__more{display:block;padding:12px;text-align:center;font-weight:600;font-size:13px;color:var(--sg-green);border-top:1px solid var(--sg-border)}
.sg-search__more:hover,.sg-search__more.sg-is-active{background:var(--sg-surface)}

.sg-search-results .sg-archive__title{font-size:24px}
.sg-search-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.sg-search-list__item{padding-bottom:16px;border-bottom:1px solid var(--sg-border)}
.sg-search-list__title{font-size:16px;font-weight:700;color:var(--sg-navy)}
.sg-search-list__title:hover{color:var(--sg-green-dark)}
.sg-search-list__excerpt{margin-top:6px;font-size:14px;color:var(--sg-text-muted)}
.sg-search-list__empty{color:var(--sg-text-muted)}

/* Home trust band */
.sg-home-trust{display:grid;grid-template-columns:repeat(var(--sg-trust-cols,4),1fr);gap:20px}
.sg-home-trust__item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.sg-home-trust__item .sg-icon{color:var(--sg-green)}
.sg-home-trust__text{display:flex;flex-direction:column;gap:2px}
.sg-home-trust__text strong{font-size:14px}
.sg-home-trust__text span{font-size:12px;color:var(--sg-text-muted)}
@media(max-width:767px){.sg-home-trust{grid-template-columns:repeat(2,1fr);gap:12px}}

/* ==== Brands index (/producatori/) + brand archive banner (Task 16) ==== */
.sg-brands-index__intro{margin:0 0 20px;color:var(--sg-text-muted);font-size:14px}
.sg-brands-index__search-wrap{margin-bottom:24px}
.sg-brands-index__search{width:100%;max-width:420px;min-height:44px;padding:0 16px;border:1px solid var(--sg-border);border-radius:var(--sg-radius);font:inherit}
.sg-brands-index__section-title{font-size:18px;margin:0 0 12px;color:var(--sg-navy)}
.sg-brands-index__top{margin-bottom:32px}

.sg-brands-index__az{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.sg-az-chip{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--sg-border);border-radius:8px;background:#fff;font-weight:600;font-size:13px;color:var(--sg-text)}
.sg-az-chip:not(:disabled):hover{border-color:var(--sg-green);color:var(--sg-green-dark)}
.sg-az-chip.sg-is-active{background:var(--sg-green);border-color:var(--sg-green);color:#fff}
.sg-az-chip:disabled{opacity:.35;cursor:not-allowed}
.sg-az-chip--all{font-weight:700}

.sg-brands-index__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.sg-brand-idx-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);text-align:center}
.sg-brand-idx-card:hover{border-color:var(--sg-green);box-shadow:var(--sg-shadow)}
.sg-brand-idx-card__media{display:flex;align-items:center;justify-content:center;width:100%;height:64px}
.sg-brand-idx-card__media img{max-width:100%;max-height:100%;object-fit:contain}
.sg-brand-idx-card__name-fallback{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--sg-navy)}
.sg-brand-idx-card__label{font-size:13px;font-weight:600;color:var(--sg-text)}
.sg-brand-idx-card__count{font-size:12px;color:var(--sg-text-muted)}
.sg-brand-idx-card.sg-is-hidden{display:none}
.sg-brands-index__empty{color:var(--sg-text-muted)}
@media(max-width:1279px){.sg-brands-index__grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1023px){.sg-brands-index__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.sg-brands-index__grid{grid-template-columns:repeat(2,1fr);gap:12px}}

.sg-brand-banner{display:flex;align-items:center;gap:24px;padding:24px;margin-bottom:20px;background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.sg-brand-banner__media{flex:none;display:flex;align-items:center;justify-content:center;width:140px;height:100px}
.sg-brand-banner__media img{max-width:100%;max-height:100%;object-fit:contain}
.sg-brand-banner__name-fallback{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--sg-navy);text-align:center}
.sg-brand-banner__title{margin:0 0 6px;font-size:24px;color:var(--sg-navy)}
.sg-brand-banner__desc{font-size:14px;color:var(--sg-text-muted);margin-bottom:8px}
.sg-brand-banner__desc p{margin:0 0 8px}
.sg-brand-banner__count{margin:0;font-size:13px;font-weight:600;color:var(--sg-green-dark)}
@media(max-width:767px){.sg-brand-banner{flex-direction:column;text-align:center}}

/* ==== Wishlist-lite (Task 18) ==== */
/* Filled/saved heart state — shared by the card button (.sg-card__wish) and
   the single-product button (.sg-product-wish) below; toggled by theme.js. */
.sg-card__wish.sg-is-wished{color:#fff;background:var(--sg-red);border-color:var(--sg-red)}

.sg-product-wish{
  display:inline-flex;align-items:center;gap:8px;
  min-height:40px;padding:0 16px;margin-bottom:8px;
  border:1px solid var(--sg-border);border-radius:var(--sg-radius);
  background:#fff;color:var(--sg-text);font-weight:600;font-size:14px;
}
.sg-product-wish:hover{border-color:var(--sg-red);color:var(--sg-red)}
.sg-product-wish__icon{font-size:16px;line-height:1}
.sg-product-wish.sg-is-wished{background:var(--sg-red);border-color:var(--sg-red);color:#fff}

.sg-wishlist__loading,.sg-wishlist__noscript{color:var(--sg-text-muted);font-size:14px}
.sg-wishlist__grid{margin-top:16px}
.sg-wishlist-card__actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.sg-wishlist-card__add.sg-is-disabled{background:var(--sg-text-muted);pointer-events:none}
.sg-wishlist-card__remove{background:#fff;border:1px solid var(--sg-border);color:var(--sg-text-muted)}
.sg-wishlist-card__remove:hover{border-color:var(--sg-red);color:var(--sg-red)}
.sg-wishlist__empty{padding:48px 16px;text-align:center;background:var(--sg-surface);border-radius:var(--sg-radius)}
.sg-wishlist__empty-text{max-width:480px;margin:0 auto 20px;color:var(--sg-text-muted)}
.sg-wishlist__empty-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media(max-width:767px){.sg-wishlist__grid{grid-template-columns:repeat(2,1fr)}}

/* ==== 404 (Task 18) ==== */
.sg-404{max-width:720px;padding-block:48px;text-align:center}
.sg-404__code{margin:0;font-size:64px;font-weight:800;color:var(--sg-border);line-height:1}
.sg-404__title{margin:0 0 12px;font-size:26px;color:var(--sg-navy)}
.sg-404__lead{margin:0 auto 28px;max-width:520px;color:var(--sg-text-muted)}
.sg-404__search{display:flex;gap:8px;max-width:480px;margin:0 auto 40px}
.sg-404__search input[type="search"]{flex:1;min-height:44px;padding:0 16px;border:1px solid var(--sg-border);border-radius:var(--sg-radius);font:inherit}
.sg-404__categories{margin-bottom:32px}
.sg-404__categories-title{font-size:18px;margin:0 0 16px;color:var(--sg-navy)}
.sg-404__categories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:left}
.sg-404__cat{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.sg-404__cat:hover{border-color:var(--sg-green);box-shadow:var(--sg-shadow)}
.sg-404__cat-name{font-weight:600;font-size:14px;color:var(--sg-text)}
.sg-404__cat-count{font-size:12px;color:var(--sg-text-muted)}
@media(max-width:767px){.sg-404__search{flex-direction:column}.sg-404__categories-grid{grid-template-columns:1fr 1fr}}

/* ==== Single blog post (Task 18) ==== */
.sg-single-post{max-width:820px;padding-block:32px}
.sg-post__title{margin:0 0 8px;font-size:28px;color:var(--sg-navy)}
.sg-post__meta{margin:0 0 20px;font-size:13px;color:var(--sg-text-muted)}
.sg-post__thumb{margin-bottom:24px;border-radius:var(--sg-radius);overflow:hidden}
.sg-post__content{font-size:16px;line-height:1.7}
.sg-post__content p{margin:0 0 1em}

/* ==== BREADCRUMBS ==== */
.sg-breadcrumbs{margin:16px 0 4px}
.sg-breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;color:var(--sg-text-muted)}
.sg-breadcrumbs__item{display:flex;align-items:center;gap:4px}
.sg-breadcrumbs__item:not(:last-child)::after{content:"›";color:var(--sg-border);font-size:14px;line-height:1}
.sg-breadcrumbs__link{color:var(--sg-text-muted);transition:color .15s}
.sg-breadcrumbs__link:hover{color:var(--sg-green)}
.sg-breadcrumbs__current{color:var(--sg-text);font-weight:500}
@media(max-width:767px){
  .sg-breadcrumbs{margin-top:12px}
  .sg-breadcrumbs__list{font-size:12px;white-space:nowrap;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .sg-breadcrumbs__list::-webkit-scrollbar{display:none}
}

/* ============================================================
   ==== AUDIT FIXES (visual-audit.md, 9 findings) ====
   Tokens only — no new hardcoded brand colors. Tints use
   color-mix() against the existing --sg-* tokens instead of
   inventing new hex values.
   ============================================================ */

/* ---- Finding 1: WooCommerce notices (.woocommerce-message/-error/-info) ---- */
.woocommerce-notices-wrapper{margin:0 0 20px}
.woocommerce-message,
.woocommerce-info{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  margin:0 0 16px;padding:14px 16px;
  background:#fff;border:1px solid var(--sg-border);border-left:4px solid var(--sg-border);
  border-radius:var(--sg-radius);font-size:14px;line-height:1.5;color:var(--sg-text);
}
.woocommerce-message{
  border-left-color:var(--sg-green);
  background:color-mix(in srgb, var(--sg-green) 8%, #fff);
}
.woocommerce-message::before{
  content:"\2713";flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;background:var(--sg-green);color:#fff;
  font-size:12px;font-weight:700;line-height:1;
}
.woocommerce-info{border-left-color:var(--sg-navy);background:var(--sg-surface)}
.woocommerce-info::before{
  content:"i";flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;background:var(--sg-navy);color:#fff;
  font-size:12px;font-weight:700;font-style:normal;line-height:1;
}
.woocommerce-error{
  position:relative;margin:0 0 16px;padding:14px 16px 14px 46px;
  list-style:none;color:var(--sg-text);
  background:color-mix(in srgb, var(--sg-red) 6%, #fff);
  border:1px solid var(--sg-border);border-left:4px solid var(--sg-red);
  border-radius:var(--sg-radius);font-size:14px;line-height:1.5;
}
.woocommerce-error::before{
  content:"!";position:absolute;left:16px;top:14px;
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;background:var(--sg-red);color:#fff;
  font-size:12px;font-weight:700;line-height:1;
}
.woocommerce-error li{list-style:none;margin:0 0 6px}
.woocommerce-error li:last-child{margin-bottom:0}
.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:36px;padding:0 16px;margin-left:auto;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:600;font-size:13px;white-space:nowrap;
}
.woocommerce-error a.button{margin-left:0;margin-top:6px}
.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-error a.button:hover{background:var(--sg-green-dark)}

/* ---- Finding 2: pagination (.woocommerce-pagination / ul.page-numbers) ----
   Also styles the Recenzii-tab comment pagination, which reuses the same
   `woocommerce-pagination` wrapper + `type=list` page-numbers markup. */
.woocommerce-pagination{margin:32px 0 8px}
.woocommerce-pagination ul.page-numbers{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  list-style:none;margin:0;padding:0;
}
.woocommerce-pagination .page-numbers li{margin:0}
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span{
  display:flex;align-items:center;justify-content:center;
  min-width:40px;min-height:40px;padding:0 10px;
  border:1px solid var(--sg-border);border-radius:8px;
  font-size:13px;font-weight:600;color:var(--sg-text);background:#fff;
}
.woocommerce-pagination .page-numbers a:hover{
  border-color:var(--sg-green);background:var(--sg-surface);color:var(--sg-green-dark);
}
.woocommerce-pagination .page-numbers .current{
  background:var(--sg-green);border-color:var(--sg-green);color:#fff;
}
.woocommerce-pagination .page-numbers .dots{border:0;background:none;color:var(--sg-text-muted)}
@media(max-width:767px){
  .woocommerce-pagination .page-numbers a,
  .woocommerce-pagination .page-numbers span{min-width:36px;min-height:36px;padding:0 6px;font-size:12px}
}

/* ---- Finding 4: sort/ordering select (.woocommerce-ordering select.orderby) ----
   CSS-only chevron (no SVG data-URI) so the arrow color stays a token. */
.woocommerce-ordering{position:relative;display:inline-block}
.woocommerce-ordering select.orderby{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  min-height:40px;padding:0 34px 0 14px;
  border:1px solid var(--sg-border);border-radius:var(--sg-radius);
  background:#fff;font:inherit;font-size:13px;color:var(--sg-text);cursor:pointer;
}
.woocommerce-ordering select.orderby:hover{border-color:var(--sg-green)}
.woocommerce-ordering select.orderby:focus{outline:0;border-color:var(--sg-green)}
.woocommerce-ordering::after{
  content:"";position:absolute;top:50%;right:15px;width:7px;height:7px;
  border-right:2px solid var(--sg-text-muted);border-bottom:2px solid var(--sg-text-muted);
  transform:translateY(-65%) rotate(45deg);pointer-events:none;
}

/* ---- Finding 5: empty cart (.wc-empty-cart-message) + "Înapoi la magazin" ---- */
.wc-empty-cart-message{
  padding:48px 16px;text-align:center;background:var(--sg-surface);border-radius:var(--sg-radius);
}
.wc-empty-cart-message .cart-empty{
  display:block;max-width:480px;margin:0 auto;padding:0;border:0;background:none;
  font-size:15px;color:var(--sg-text-muted);
}
.wc-empty-cart-message .cart-empty::before{display:none}
p.return-to-shop{text-align:center;margin:20px 0 0}
.return-to-shop .button.wc-backward{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 24px;border:0;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:700;
}
.return-to-shop .button.wc-backward:hover{background:var(--sg-green-dark)}

/* ---- Finding 6: filter sidebar checkboxes ---- */
.sg-filters__checkbox input[type=checkbox],
.sg-filters__radio input[type=radio]{accent-color:var(--sg-green);width:16px;height:16px;flex:none}

/* ---- Finding 7 (secondary list): quantity inputs — focus/hover polish ----
   Borders/radius already match theme inputs (see SINGLE PRODUCT / CART
   sections above); this only adds the missing interaction states. */
.summary .quantity:focus-within,
table.shop_table.cart .product-quantity .quantity:focus-within{border-color:var(--sg-green)}
.summary .qty:focus,
table.shop_table.cart .product-quantity .qty:focus{outline:0}

/* ---- Finding 7 (secondary): /contul-meu/ login + register forms ---- */
#customer_login.col2-set{display:block}
#customer_login h2{font-size:20px;margin:0 0 16px;color:var(--sg-navy)}
@media(min-width:640px){
  #customer_login.col2-set{display:flex;align-items:flex-start;gap:32px}
  #customer_login .col-1,
  #customer_login .col-2{flex:1 1 0;min-width:0}
}
.woocommerce-form-login,
.woocommerce-form-register{display:block}
.woocommerce-form-login .form-row,
.woocommerce-form-register .form-row{margin-bottom:14px}
.woocommerce-form-login .form-row:not(.form-row-wide),
.woocommerce-form-register .form-row:not(.form-row-wide){
  display:flex;align-items:center;flex-wrap:wrap;gap:12px;
}
.woocommerce-form-login label,
.woocommerce-form-register label{
  display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:4px;
}
.woocommerce-form-login .input-text,
.woocommerce-form-register .input-text{
  width:100%;min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;background:#fff;
}
.woocommerce-form-login .input-text:focus,
.woocommerce-form-register .input-text:focus{outline:0;border-color:var(--sg-green)}
.woocommerce-form-login__rememberme{
  display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400;
  color:var(--sg-text-muted);cursor:pointer;margin-bottom:0;
}
.woocommerce-form-login__rememberme input[type=checkbox]{accent-color:var(--sg-green);width:16px;height:16px}
.woocommerce-form-login button.woocommerce-button,
.woocommerce-form-register button.woocommerce-button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 24px;margin-left:auto;border:0;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:700;font-size:14px;cursor:pointer;
}
.woocommerce-form-login button.woocommerce-button:hover,
.woocommerce-form-register button.woocommerce-button:hover{background:var(--sg-green-dark)}
.woocommerce-LostPassword{margin:4px 0 0}
.woocommerce-LostPassword a,
.woocommerce-form-register p a{color:var(--sg-green-dark);font-weight:600}
.woocommerce-LostPassword a:hover,
.woocommerce-form-register p a:hover{text-decoration:underline}

/* Toggle „afișează parola" (ochiul). WooCommerce injectează butonul .show-password-input
   prin JS, dar iconița lui vine din CSS-ul default WC — dezactivat aici
   (woocommerce_enqueue_styles → empty). Îl redesenăm self-contained, ca SVG mask. */
.woocommerce form .password-input{display:block;position:relative;width:100%;flex:1 1 100%}
.woocommerce form .password-input .input-text{padding-right:44px}
.woocommerce form .show-password-input{
  position:absolute;top:0;right:0;height:100%;width:44px;margin:0;padding:0;
  border:0;background:transparent;cursor:pointer;color:var(--sg-text-muted);
  display:flex;align-items:center;justify-content:center;
}
.woocommerce form .show-password-input::after{
  content:"";width:20px;height:20px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.woocommerce form .show-password-input:hover{color:var(--sg-green-dark)}
.woocommerce form .show-password-input.display-password{color:var(--sg-green)}
.woocommerce form .show-password-input.display-password::after{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E");
}

/* Account dashboard nav (logged-in /contul-meu/).
   Grid-ul trebuie pe .woocommerce (părintele direct al nav+content), NU pe
   main.sg-page: shortcode-ul [woocommerce_my_account] învelește tot într-un
   <div class="woocommerce">, care e singurul copil al main → punând grid-ul pe
   main, nav+content ajungeau amândouă strânse în coloana de 240px. */
body.woocommerce-account .sg-page .woocommerce:has(.woocommerce-MyAccount-navigation){
  display:block;
}
@media(min-width:768px){
  body.woocommerce-account .sg-page .woocommerce:has(.woocommerce-MyAccount-navigation){
    display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start;
  }
}
/* notices-wrapper e primul copil al .woocommerce: spanuiește tot rândul (când
   are notificări) și dispare când e gol, ca să nu ocupe o coloană din grid. */
body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper{grid-column:1/-1}
body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper:empty{display:none}
.woocommerce-MyAccount-navigation{margin-bottom:24px}
.woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0;padding:0;display:flex;flex-direction:column;
  border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden;background:#fff;
}
.woocommerce-MyAccount-navigation li{margin:0}
.woocommerce-MyAccount-navigation a{
  display:flex;align-items:center;min-height:44px;padding:0 16px;
  font-size:14px;font-weight:600;color:var(--sg-text);border-bottom:1px solid var(--sg-border);
}
.woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}
.woocommerce-MyAccount-navigation a:hover{background:var(--sg-surface);color:var(--sg-green-dark)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--sg-green);color:#fff}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-MyAccount-content table.shop_table{width:100%;border-collapse:collapse;margin:0 0 16px}
.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.shop_table td{
  padding:10px 8px;border-bottom:1px solid var(--sg-border);font-size:14px;text-align:left;
}

/* Formulare din contul-meu (editare cont / adrese) + resetare parolă.
   CSS-ul default WooCommerce e dezactivat — le stilizăm la fel ca login/register. */
.woocommerce-EditAccountForm,
.woocommerce-address-fields,
.woocommerce-ResetPassword{max-width:640px}
.woocommerce-EditAccountForm .form-row,
.woocommerce-address-fields .form-row,
.woocommerce-ResetPassword .form-row{margin-bottom:14px}
.woocommerce-EditAccountForm label,
.woocommerce-address-fields label,
.woocommerce-ResetPassword label{
  display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:4px;
}
.woocommerce-EditAccountForm .input-text,
.woocommerce-address-fields .input-text,
.woocommerce-ResetPassword .input-text{
  width:100%;min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;background:#fff;
}
.woocommerce-EditAccountForm .input-text:focus,
.woocommerce-address-fields .input-text:focus,
.woocommerce-ResetPassword .input-text:focus{outline:0;border-color:var(--sg-green)}
/* nume/prenume pe două coloane la lățime suficientă */
@media(min-width:560px){
  .woocommerce-EditAccountForm .form-row-first,
  .woocommerce-address-fields .form-row-first{float:left;width:calc(50% - 8px)}
  .woocommerce-EditAccountForm .form-row-last,
  .woocommerce-address-fields .form-row-last{float:right;width:calc(50% - 8px)}
}
.woocommerce-EditAccountForm .clear,
.woocommerce-address-fields .clear{clear:both}
/* nota „display name" */
.woocommerce-EditAccountForm span em{
  display:block;margin-top:4px;font-size:12px;font-style:normal;color:var(--sg-text-muted);
}
/* fieldset «Schimbare parolă» */
.woocommerce-EditAccountForm fieldset{
  border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:16px;margin:8px 0 20px;
}
.woocommerce-EditAccountForm fieldset legend{
  padding:0 6px;font-size:15px;font-weight:700;color:var(--sg-navy);
}
/* butonul de submit (Salvează / Salvează adresa / Resetează) */
.woocommerce-EditAccountForm button.button,
.woocommerce-address-fields button.button,
.woocommerce-ResetPassword button.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 24px;border:0;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:700;font-size:14px;cursor:pointer;
}
.woocommerce-EditAccountForm button.button:hover,
.woocommerce-address-fields button.button:hover,
.woocommerce-ResetPassword button.button:hover{background:var(--sg-green-dark)}
/* Selecturi în formulare de cont (Țară/regiune etc.) — aliniate cu inputurile. */
.woocommerce-EditAccountForm select,
.woocommerce-address-fields select{
  width:100%;min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;background:#fff;
}
.woocommerce-address-fields .select2-container{width:100%!important}
.woocommerce-address-fields .select2-container .select2-selection--single{min-height:44px;border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
.woocommerce-address-fields .select2-container .select2-selection__rendered{line-height:44px;padding-left:12px}
.woocommerce-address-fields .select2-container .select2-selection__arrow{height:42px}

/* Pagina «Adresă» (overview): fiecare adresă = card, cu buton clar de editare
   (înainte linkul „Editează…" arăta ca text simplu, la fel ca adresa). */
.woocommerce-Address{
  background:#fff;border:1px solid var(--sg-border);border-radius:var(--sg-radius);
  padding:22px;margin-top:16px;
}
.woocommerce-Addresses.col2-set{display:grid;gap:20px}
@media(min-width:640px){.woocommerce-Addresses.col2-set{grid-template-columns:1fr 1fr}}
.woocommerce-Address-title{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  gap:12px;margin:0 0 12px;
}
.woocommerce-Address-title h2{font-size:18px;margin:0;color:var(--sg-navy)}
.woocommerce-Address-title .edit{
  display:inline-flex;align-items:center;gap:6px;padding:7px 16px;
  border:1px solid var(--sg-green);border-radius:var(--sg-radius);
  font-size:13px;font-weight:600;color:var(--sg-green-dark);white-space:nowrap;
}
.woocommerce-Address-title .edit:hover{background:var(--sg-green);border-color:var(--sg-green);color:#fff}
.woocommerce-Address address{font-style:normal;line-height:1.7;color:var(--sg-text);font-size:14px}

/* Titlul paginii Coș (înlocuiește vechea bandă goală de page-builder). */
.sg-cart-title{font-size:28px;font-weight:800;color:var(--sg-navy);margin:0 0 20px}

/* ---- Finding 8: review/comment form + reviews list spacing ---- */
.woocommerce-Reviews-title{font-size:20px;margin:0 0 20px;color:var(--sg-navy)}
.woocommerce-Reviews .commentlist{list-style:none;margin:0 0 32px;padding:0}
.woocommerce-Reviews .commentlist li.comment{margin:0}
.woocommerce-Reviews .comment_container{
  display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--sg-border);
}
.woocommerce-Reviews .commentlist li:first-child .comment_container{padding-top:0}
.woocommerce-Reviews .comment_container img{border-radius:50%;flex:none}
.woocommerce-Reviews .comment-text{flex:1;min-width:0}
.woocommerce-Reviews .comment-text .star-rating{margin-bottom:6px}
.woocommerce-Reviews .meta{margin:0 0 8px;font-size:13px;color:var(--sg-text-muted)}
.woocommerce-Reviews .woocommerce-review__author{color:var(--sg-text);font-weight:700}
.woocommerce-Reviews .description p{margin:0;font-size:14px;line-height:1.6;color:var(--sg-text)}
.woocommerce-noreviews{color:var(--sg-text-muted)}

/* Read-only star rating (average rating + per-review rating) — Unicode glyph
   double-layer trick, no external icon font needed. */
.star-rating{
  overflow:hidden;position:relative;height:1.2em;line-height:1.2;
  width:5.4em;font-size:14px;letter-spacing:2px;
}
.star-rating::before{
  content:"\2605\2605\2605\2605\2605";position:absolute;top:0;left:0;
  color:var(--sg-border);
}
.star-rating span{overflow:hidden;position:absolute;top:0;left:0;height:100%;padding-top:1.5em}
.star-rating span::before{
  content:"\2605\2605\2605\2605\2605";position:absolute;top:0;left:0;
  color:var(--sg-orange);
}

#review_form_wrapper{margin-top:32px}
#reply-title,
.comment-reply-title{font-size:18px;margin:0 0 16px;color:var(--sg-navy);display:block}
.comment-form-rating{margin-bottom:16px}
.comment-form-rating label{
  display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:6px;
}
.comment-form-rating #rating{display:none}
.comment-form-rating p.stars{
  display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px;
  margin:0;padding:0;width:max-content;
}
.comment-form-rating p.stars a{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;font-size:0;line-height:1;color:var(--sg-border);text-decoration:none;
}
.comment-form-rating p.stars a::before{content:"\2605";font-size:20px}
.comment-form-rating p.stars a:hover,
.comment-form-rating p.stars a:hover ~ a,
.comment-form-rating p.stars a.active,
.comment-form-rating p.stars a.active ~ a{color:var(--sg-orange)}
.comment-form-comment,
.comment-form-author,
.comment-form-email,
.comment-form-url{margin-bottom:14px}
.comment-form label{display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:4px}
.comment-form input[type=text],
.comment-form input[type=email],
.comment-form input[type=url],
.comment-form textarea{
  width:100%;min-height:44px;padding:0 12px;border:1px solid var(--sg-border);
  border-radius:var(--sg-radius);font:inherit;background:#fff;
}
.comment-form textarea{min-height:120px;padding:10px 12px;resize:vertical}
.comment-form input:focus,
.comment-form textarea:focus{outline:0;border-color:var(--sg-green)}
.comment-form .form-submit{margin:6px 0 0}
.comment-form #submit{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 28px;border:0;border-radius:var(--sg-radius);
  background:var(--sg-green);color:#fff;font-weight:700;font-size:14px;cursor:pointer;
}
.comment-form #submit:hover{background:var(--sg-green-dark)}
.woocommerce-verification-required,
p.must-log-in{color:var(--sg-text-muted)}

/* ---- Finding 9: search-results card thumbnails — defensive clamp ----
   Belt-and-braces so a missing/`-scaled` fallback attachment can never
   blow out the grid, regardless of the .sg-card__media aspect-ratio box. */
.sg-card__media{overflow:hidden}
.sg-card__media img{max-width:100%;max-height:100%}

/* ==== CONTACT ([sg_contact]) ==== */
.sg-contact{display:grid;gap:32px;margin:8px 0}
@media(min-width:860px){.sg-contact{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start}}
.sg-contact__list{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:14px}
.sg-contact__list li{display:grid;gap:2px}
.sg-contact__k{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--sg-text-muted)}
.sg-contact__list a{color:var(--sg-green-dark);font-weight:600}
.sg-contact__hours{white-space:pre-line}
.sg-contact__map{border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden}
.sg-contact__map iframe{display:block;width:100%;height:280px;border:0}
.sg-contact__formwrap{background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:24px}
.sg-contact__title{font-size:20px;margin:0 0 16px;color:var(--sg-navy)}
.sg-form .sg-field{margin-bottom:14px}
.sg-form label{display:block;font-size:13px;font-weight:600;color:var(--sg-text);margin-bottom:4px}
.sg-form input,.sg-form textarea{width:100%;padding:0 12px;min-height:44px;border:1px solid var(--sg-border);border-radius:var(--sg-radius);font:inherit;background:#fff}
.sg-form textarea{min-height:120px;padding:10px 12px;resize:vertical}
.sg-form input:focus,.sg-form textarea:focus{outline:0;border-color:var(--sg-green)}
@media(min-width:520px){.sg-form .sg-field-row{display:flex;gap:14px}.sg-form .sg-field-row .sg-field{flex:1 1 0;min-width:0}}
.sg-form .sg-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.sg-form .sg-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;color:var(--sg-text-muted);margin:4px 0 16px}
.sg-form .sg-consent input{width:16px;height:16px;min-height:0;accent-color:var(--sg-green);margin-top:2px;flex:none}
.sg-form .sg-consent a{color:var(--sg-green-dark);font-weight:600}
.sg-form__submit{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 26px;border:0;border-radius:var(--sg-radius);background:var(--sg-green);color:#fff;font-weight:700;font-size:15px;cursor:pointer}
.sg-form__submit:hover{background:var(--sg-green-dark)}
.sg-form__submit:disabled{opacity:.6;cursor:default}
.sg-form__msg{margin:12px 0 0;font-size:14px;font-weight:600}
.sg-form__msg:empty{margin:0}
.sg-form__msg.is-ok{color:var(--sg-green-dark)}
.sg-form__msg.is-err{color:var(--sg-red)}

/* ==== RETRAGERE ([sg_withdrawal]) ==== */
.sg-withdrawal{max-width:680px;margin:8px 0}
.sg-withdrawal__intro{margin:0 0 20px;color:var(--sg-text)}
.sg-withdrawal__intro a{color:var(--sg-green-dark);font-weight:600}
.sg-withdrawal__form{background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:24px}
.sg-form__type{border:0;padding:0;margin:0 0 14px}
.sg-form__type legend{font-size:13px;font-weight:600;color:var(--sg-text);padding:0;margin-bottom:6px}
.sg-form__type label{display:inline-flex;align-items:center;gap:8px;margin:0 20px 6px 0;font-weight:600;font-size:14px;color:var(--sg-text);cursor:pointer}
.sg-form__type input{width:16px;height:16px;min-height:0;accent-color:var(--sg-green)}

/* ==== Omnibus (cel mai mic preț 30 zile) — casetă subtilă, valoare bold ==== */
.sg-omnibus{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:6px;padding:5px 10px;background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius);font-size:12px;color:var(--sg-text-muted);line-height:1.35}
.sg-omnibus strong{color:var(--sg-navy);font-weight:700}
.sg-price-block .sg-omnibus{margin-top:10px;font-size:13px;padding:8px 12px}
.sg-price-block .sg-omnibus__label::after{content:":"}
.sg-price-block .sg-omnibus__val{font-size:15px}

/* ==== Quick view ==== */
.sg-card__quickview{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);z-index:3;padding:8px 16px;border:0;border-radius:var(--sg-radius);background:rgba(30,58,95,.92);color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease}
.sg-card:hover .sg-card__quickview{opacity:1;pointer-events:auto}
.sg-card__quickview:hover{background:var(--sg-navy)}
@media(hover:none){.sg-card__quickview{display:none}}
.sg-qv[hidden]{display:none}
.sg-qv{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}
.sg-qv__backdrop{position:absolute;inset:0;background:rgba(17,24,39,.55)}
.sg-qv__dialog{position:relative;background:#fff;border-radius:var(--sg-radius);max-width:840px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 14px 44px rgba(0,0,0,.28)}
.sg-qv__close{position:absolute;top:8px;right:12px;z-index:2;border:0;background:transparent;font-size:30px;line-height:1;color:var(--sg-text-muted);cursor:pointer}
.sg-qv__close:hover{color:var(--sg-text)}
.sg-qv__body{display:grid;gap:24px;padding:28px}
@media(min-width:640px){.sg-qv__body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.sg-qv__media{background:var(--sg-surface);border-radius:var(--sg-radius);display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px}
.sg-qv__media img{max-width:100%;max-height:340px;object-fit:contain}
.sg-qv__title{font-size:20px;margin:0 0 10px;color:var(--sg-navy)}
.sg-qv__rating{margin-bottom:8px}
.sg-qv__excerpt{font-size:14px;line-height:1.6;color:var(--sg-text);margin:12px 0}
.sg-qv__excerpt p{margin:0 0 8px}
.sg-qv__actions{margin:16px 0}
.sg-qv__link{display:inline-block;font-weight:600;color:var(--sg-green-dark)}
.sg-qv__link:hover{text-decoration:underline}
body.sg-qv-open{overflow:hidden}

/* ==== GPSR (Informații de siguranță) ==== */
.sg-gpsr__title{font-size:18px;margin:0 0 14px;color:var(--sg-navy)}
.sg-gpsr__safety{font-size:14px;line-height:1.6;color:var(--sg-text);margin:0 0 16px}
.sg-gpsr__block{font-size:14px;line-height:1.6;color:var(--sg-text);margin:0 0 14px;padding:12px 14px;background:var(--sg-surface);border:1px solid var(--sg-border);border-radius:var(--sg-radius)}
