/* =========================================================================
   PUDROVE — główny arkusz frontu
   Paleta: zmienne z style.css (--pud-*). Mobile-first (od 390 px).
   Sekcje: baza/typografia · przyciski · pigułki wariantów · karta produktu ·
           siatka · mega menu · side cart · quick view · rabaty.
   ========================================================================= */

/* ---------- BAZA / TYPOGRAFIA ---------- */
body{font-family:var(--pud-sans);font-weight:300;color:var(--pud-graphite);background:var(--pud-beige);line-height:1.65}
h1,h2,h3,h4,.pud-serif{font-family:var(--pud-serif);font-weight:500;line-height:1.14;color:var(--pud-graphite)}
a{color:inherit}
.pud-eyebrow{font-family:var(--pud-sans);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--pud-plum);display:block;margin-bottom:12px}

/* ---------- PRZYCISKI ---------- */
.pud-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--pud-sans);font-weight:500;font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:14px 26px;border-radius:var(--pud-radius);background:var(--pud-plum);color:#fff;transition:.25s;border:1px solid var(--pud-plum);cursor:pointer;text-align:center}
.pud-btn:hover{background:var(--pud-plum-deep);border-color:var(--pud-plum-deep);color:#fff}
.pud-btn--ghost{background:transparent;color:var(--pud-plum)}
.pud-btn--ghost:hover{background:var(--pud-plum);color:#fff}
.pud-btn--cart{background:var(--pud-graphite);border-color:var(--pud-graphite)}
.pud-btn--cart:hover{background:var(--pud-plum);border-color:var(--pud-plum)}
.pud-btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}

/* ---------- PIGUŁKI WARIANTÓW (element krytyczny) ---------- */
.pud-pills{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.pud-pill{font-family:var(--pud-sans);font-size:12px;font-weight:500;letter-spacing:.02em;padding:7px 12px;border-radius:30px;border:1px solid var(--pud-border);color:var(--pud-graphite);background:#fff;transition:.18s;line-height:1;cursor:pointer}
.pud-pill:hover{border-color:var(--pud-plum)}
.pud-pill.is-active{background:var(--pud-plum);color:#fff;border-color:var(--pud-plum)}
.pud-pill:focus-visible{outline:2px solid var(--pud-plum);outline-offset:2px}
.pud-pill--sample{padding:5px 10px;font-size:10.5px;display:inline-flex;flex-direction:column;align-items:center;line-height:1.1}
.pud-pill--sample small{font-size:8px;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.pud-pill--out{text-decoration:line-through;color:#b3a99d;background:var(--pud-beige);cursor:not-allowed}
.pud-pill--out:hover{border-color:var(--pud-border)}
.pud-pills--mini .pud-pill{font-size:11px;padding:6px 10px}
/* Ukryty natywny select Woo (steruje logiką w tle) */
.pud-native-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}
.pud-variation-row{margin-bottom:16px}
.pud-variation-label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#8a7f74;margin-bottom:8px}

/* ---------- KARTA PRODUKTU (siatka) ---------- */
/* Wymuszamy grid nad domyślnym floatowym layoutem WooCommerce (wyższa specyficzność + reset). */
.woocommerce ul.products,ul.products{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0;margin:0}
@media(min-width:720px){.woocommerce ul.products,ul.products{grid-template-columns:repeat(3,1fr);gap:20px}}
@media(min-width:1024px){.woocommerce ul.products.columns-4,ul.products.columns-4{grid-template-columns:repeat(4,1fr)}}
/* Neutralizacja floatów/szerokości z woocommerce.css (przez które karty były wąskie). */
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;clear:none!important}
.woocommerce ul.products li.product::before,.woocommerce ul.products li.product::after{display:none}
.pud-card{background:var(--pud-surface);border:1px solid var(--pud-border);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:.25s;list-style:none}
.pud-card:hover{box-shadow:0 22px 44px -26px rgba(43,37,35,.4);transform:translateY(-3px)}
.pud-card__media{position:relative;aspect-ratio:1/1;background:radial-gradient(80% 70% at 50% 40%,var(--pud-beige),var(--pud-beige-warm));overflow:hidden}
.pud-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.pud-card__link{display:block;height:100%}
.pud-badge{position:absolute;top:12px;left:12px;z-index:3;background:var(--pud-rose);color:var(--pud-graphite);font-family:var(--pud-sans);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:30px}
.pud-badge--new{background:var(--pud-plum);color:#fff}
.pud-quick-view{position:absolute;left:50%;bottom:12px;transform:translateX(-50%) translateY(8px);opacity:0;background:rgba(253,251,247,.95);color:var(--pud-graphite);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:9px 16px;border-radius:30px;transition:.25s;white-space:nowrap;cursor:pointer}
.pud-card:hover .pud-quick-view{opacity:1;transform:translateX(-50%) translateY(0)}
.pud-quick-view.is-loading{opacity:.6}
.pud-card__body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.pud-card__cat{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9a8f83}
.pud-card__name{font-family:var(--pud-sans);font-size:13px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;margin:6px 0 8px;line-height:1.4}
.pud-card__name a{text-decoration:none}
.pud-card__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:6px}
.pud-card__price,.pud-qv__price{font-family:var(--pud-serif);font-size:22px;font-weight:600;color:var(--pud-plum)}
.pud-card__price del,.pud-qv__price del{color:#b3a99d;font-size:15px;font-weight:400;margin-right:6px}
.pud-card .pud-btn--cart{padding:10px 14px;font-size:10px}
/* Gwiazdki oceny */
.star-rating{color:var(--pud-plum);font-size:13px}
.woocommerce .star-rating span::before{color:var(--pud-plum)}

/* Przyciski WooCommerce (nadpisanie domyślnego akcentu Woo → śliwka marki) */
.woocommerce .single_add_to_cart_button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce input.button,
.woocommerce #respond input#submit{
  background:var(--pud-plum)!important;color:#fff!important;border-radius:var(--pud-radius)!important;
  font-family:var(--pud-sans)!important;text-transform:uppercase;letter-spacing:.08em;font-weight:500!important
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button:hover{background:var(--pud-plum-deep)!important}
/* Karta w siatce: przycisk „Do koszyka" grafitowy (spójnie z podglądem) */
.woocommerce ul.products li.product .pud-btn--cart{background:var(--pud-graphite)!important}
.woocommerce ul.products li.product .pud-btn--cart:hover{background:var(--pud-plum)!important}

/* ---------- MEGA MENU ---------- */
.pud-nav{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.pud-nav__item{position:relative}
.pud-nav__link{font-family:var(--pud-sans);font-size:13px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;padding:22px 0;display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.pud-chev{font-size:9px;opacity:.6}
.pud-mega{position:absolute;top:100%;left:-24px;min-width:600px;background:var(--pud-surface);border:1px solid var(--pud-border);border-radius:6px;box-shadow:0 24px 50px -24px rgba(43,37,35,.35);padding:26px 28px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;z-index:70}
.pud-nav__item.has-mega:hover .pud-mega,.pud-nav__item.has-mega:focus-within .pud-mega{opacity:1;visibility:visible;transform:translateY(0)}
.pud-mega__title{font-family:var(--pud-sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--pud-plum);margin-bottom:10px;display:block;text-decoration:none}
.pud-mega__list{list-style:none;margin:0;padding:0}
.pud-mega__list a{display:block;font-size:14px;padding:5px 0;color:#5c534d;text-decoration:none;transition:.15s}
.pud-mega__list a:hover{color:var(--pud-plum);padding-left:5px}

/* ---------- SIDE CART (off-canvas) ---------- */
.pud-no-scroll{overflow:hidden}
.pud-side-cart-overlay{position:fixed;inset:0;background:rgba(43,37,35,.5);opacity:0;transition:.3s;z-index:9998}
.pud-side-cart-overlay.is-open{opacity:1}
.pud-side-cart{position:fixed;top:0;right:0;height:100%;width:min(400px,92vw);background:var(--pud-surface);box-shadow:-20px 0 60px -30px rgba(43,37,35,.5);transform:translateX(100%);transition:.32s cubic-bezier(.22,.61,.36,1);z-index:9999;display:flex;flex-direction:column}
.pud-side-cart.is-open{transform:translateX(0)}
.pud-side-cart__head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--pud-border)}
.pud-side-cart__title{font-family:var(--pud-serif);font-size:22px;font-weight:600}
.pud-side-cart__close{font-size:26px;line-height:1;background:none;border:none;cursor:pointer;color:var(--pud-graphite)}
.pud-side-cart .widget_shopping_cart_content{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column}
.pud-mini-cart{list-style:none;margin:0;padding:0;flex:1}
.pud-mini-cart__item{display:grid;grid-template-columns:60px 1fr auto;gap:12px;align-items:start;padding:14px 0;border-bottom:1px solid var(--pud-border);position:relative}
.pud-mini-cart__img img{width:60px;height:60px;object-fit:cover;border-radius:5px}
.pud-mini-cart__name{font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;display:block;margin-bottom:4px}
.pud-mini-cart__qty{font-size:13px;color:#726960}
.pud-mini-cart__remove{position:absolute;top:12px;right:0;font-size:16px;color:#b3a99d;text-decoration:none;line-height:1}
.pud-mini-cart__remove:hover{color:var(--pud-plum)}
.pud-side-cart__footer{padding-top:16px;margin-top:auto}
.pud-side-cart__total{display:flex;justify-content:space-between;align-items:center;font-size:16px;padding:14px 0;border-top:1px solid var(--pud-border)}
.pud-side-cart__total strong{font-family:var(--pud-serif);font-size:22px;color:var(--pud-plum)}
.pud-side-cart__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.pud-side-cart__empty{text-align:center;color:#726960;padding:40px 0}

/* Komunikat progów rabatowych */
.pud-disc-note{background:var(--pud-rose);color:var(--pud-graphite);border-radius:6px;padding:12px 14px;font-size:13px;text-align:center;margin-bottom:16px}
.pud-disc-note b{color:var(--pud-plum-deep)}
.pud-disc-note--max{background:var(--pud-rose-light)}

/* ---------- QUICK VIEW (modal) ---------- */
.pud-qv-modal{position:fixed;inset:0;z-index:10000;display:none}
.pud-qv-modal.is-open{display:block}
.pud-qv-overlay{position:absolute;inset:0;background:rgba(43,37,35,.55)}
.pud-qv-dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(880px,94vw);max-height:90vh;overflow:auto;background:var(--pud-surface);border-radius:10px;padding:32px}
.pud-qv-close{position:absolute;top:14px;right:16px;font-size:26px;background:none;border:none;cursor:pointer;color:var(--pud-graphite)}
.pud-qv{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.pud-qv__img img{width:100%;border-radius:8px}
.pud-qv__cat{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9a8f83}
.pud-qv__name{font-size:30px;margin:8px 0}
.pud-qv__price{margin:12px 0}
.pud-qv__desc{font-size:14px;color:#5c534d;margin-bottom:16px}
.pud-qv__add{margin-top:8px}
.pud-qv__more{display:inline-block;margin-top:14px;font-size:13px;color:var(--pud-plum);border-bottom:1px solid var(--pud-plum);text-decoration:none}
@media(max-width:640px){.pud-qv{grid-template-columns:1fr}}

/* ---------- POPUP (newsletter/login) — zamiennik Popup Buildera Pro ---------- */
.pud-popup{position:fixed;inset:0;z-index:10001;display:none}
.pud-popup.is-open{display:block}
.pud-popup__overlay{position:absolute;inset:0;background:rgba(43,37,35,.55)}
.pud-popup__box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(460px,92vw);background:var(--pud-surface);border-radius:10px;padding:36px;text-align:center}
.pud-popup__box h3{font-size:30px;margin-bottom:10px}
.pud-popup__close{position:absolute;top:12px;right:14px;font-size:24px;background:none;border:none;cursor:pointer}

/* ---------- RESPONSYWNOŚĆ ---------- */
@media(max-width:860px){
  .pud-nav{display:none}
  .pud-mega{position:static;min-width:0;grid-template-columns:1fr;box-shadow:none;opacity:1;visibility:visible;transform:none}
}
