/*
Theme Name: DO-KAWY
Theme URI: https://do-kawy.pl
Description: Autorski motyw WooCommerce dla palarni kawy specialty DO-KAWY.pl. Jasny, edytorski, produktowo-zorientowany layout (Fraunces + Inter, akcent terakota). Odwzorowanie projektu Claude Design „DO-KAWY Strona Główna".
Author: KowalCraft / Kris
Version: 1.0.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
WC requires at least: 8.0
WC tested up to: 10.9
Text Domain: dokawy
*/

/* ============================================================
   TOKENY
   ============================================================ */
:root{
  --dk-bg:#FFFFFF;
  --dk-warm:#EFE7D9;
  --dk-light:#FAFAF8;
  --dk-ink:#2A231D;
  --dk-muted:#6B6055;
  --dk-faint:#9A8E7E;
  --dk-accent:#B4552D;
  --dk-accent-hover:#C9662F;
  --dk-accent-dark:#8F3F1F;
  --dk-sand:#C99A6A;
  --dk-sand-2:#E0B183;
  --dk-green:#3B6B4A;
  --dk-line:#ECECEC;
  --dk-line-2:#E1D8C9;
  --dk-line-3:#EBE3D6;
  --dk-line-4:#C9BCA8;
  --dk-cream:#F3EEE6;
  --dk-container:1320px;
  --dk-serif:'Fraunces',Georgia,'Times New Roman',serif;
  --dk-sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}

/* ============================================================
   RESET / BAZA
   ============================================================ */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.dokawy{
  margin:0;
  background:var(--dk-bg);
  font-family:var(--dk-sans);
  color:var(--dk-ink);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.dokawy img{max-width:100%;height:auto;display:block}
.dokawy a{color:inherit;text-decoration:none}
.dokawy a.dk-link{color:var(--dk-accent);font-weight:600;font-size:15px}
.dokawy a.dk-link:hover{color:var(--dk-accent-dark)}
.dokawy button{font-family:inherit}
.dokawy ::selection{background:var(--dk-accent);color:var(--dk-cream)}
.dokawy :focus-visible{outline:2px solid var(--dk-accent);outline-offset:2px;border-radius:6px}
@keyframes dk-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.dk-container{max-width:var(--dk-container);margin:0 auto;padding-left:40px;padding-right:40px}

/* Nagłówki sekcji (eyebrow + h2) */
.dk-eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--dk-accent)}
.dk-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.dk-sec-head h2{font-family:var(--dk-serif);font-size:36px;font-weight:500;letter-spacing:-.01em;margin:6px 0 0;line-height:1.1}
.dk-section{padding-top:76px}

/* ============================================================
   PASEK PROMOCYJNY (marquee)
   ============================================================ */
.dk-announce{background:var(--dk-ink);color:var(--dk-cream);overflow:hidden;white-space:nowrap;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:11px 0}
.dk-announce__track{display:inline-flex;gap:56px;padding-left:56px;animation:dk-marq 28s linear infinite;will-change:transform}
.dk-announce__track span{display:inline-block}

/* ============================================================
   NAV
   ============================================================ */
.dk-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--dk-line)}

/* GÓRNA BELKA: logo · szukajka · akcje */
.dk-topbar__inner{max-width:var(--dk-container);margin:0 auto;padding:16px 40px;display:flex;align-items:center;gap:28px}
.dk-logo{font-family:var(--dk-serif);font-size:25px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:center;gap:11px;flex-shrink:0}
.dk-logo svg{flex-shrink:0}
.dk-logo .dot{color:var(--dk-accent)}
.dk-logo span{white-space:nowrap}

/* Szukajka (środek belki) */
.dk-search{flex:1;max-width:560px;margin:0 auto;position:relative;display:flex}
.dk-search__input{width:100%;border:1px solid var(--dk-line-4);background:var(--dk-light);border-radius:100px;padding:12px 54px 12px 20px;font-family:inherit;font-size:14.5px;color:var(--dk-ink);outline:none;transition:border-color .15s,background .15s}
.dk-search__input:focus{border-color:var(--dk-accent);background:#fff}
.dk-search__input::placeholder{color:var(--dk-faint)}
.dk-search__btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:none;border-radius:50%;background:var(--dk-ink);color:var(--dk-cream);display:grid;place-items:center;cursor:pointer;transition:background .15s}
.dk-search__btn:hover{background:var(--dk-accent)}

/* Akcje po prawej */
.dk-nav__actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.dk-icon-btn{background:none;border:1px solid var(--dk-line-4);border-radius:100px;width:42px;height:42px;cursor:pointer;font-size:16px;display:grid;place-items:center;color:var(--dk-ink);transition:border-color .15s;text-decoration:none}
.dk-icon-btn:hover{border-color:var(--dk-ink)}
.dk-cart-btn{background:var(--dk-ink);color:var(--dk-cream) !important;border:none;border-radius:100px;padding:0 20px;height:46px;cursor:pointer;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:10px;transition:background .15s;text-decoration:none;line-height:1}
.dk-cart-btn:hover{background:var(--dk-accent)}
.dk-cart-btn__ico{flex-shrink:0;display:block}
.dk-cart-btn__label{color:var(--dk-cream);white-space:nowrap}
.dk-cart-btn .count{background:var(--dk-accent);color:#fff;border-radius:100px;font-size:12px;font-weight:700;min-width:21px;height:21px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;line-height:1;flex-shrink:0}
.dk-cart-btn:hover .count{background:#fff;color:var(--dk-accent)}
.dk-burger{display:none;background:none;border:1px solid var(--dk-line-4);border-radius:100px;width:42px;height:42px;cursor:pointer;color:var(--dk-ink);font-size:18px}

/* DOLNA BELKA: menu kategorii */
.dk-menubar{border-top:1px solid var(--dk-line)}
.dk-menubar__inner{max-width:var(--dk-container);margin:0 auto;padding:0 40px}
.dk-menu{display:flex;gap:34px;list-style:none;font-size:16.5px;font-weight:600;margin:0;padding:0;justify-content:center;flex-wrap:wrap}
.dk-item{position:relative}
.dk-item__link{display:inline-flex;align-items:center;gap:6px;padding:15px 0;cursor:pointer;white-space:nowrap}
.dk-item__link:hover{color:var(--dk-accent)}
.dk-caret{font-size:10px;opacity:.55;transition:transform .15s}
.dk-item:hover .dk-caret{transform:rotate(180deg)}
.dk-item__toggle{display:none}

/* Mega-panel (desktop: hover) — szerokość pod treść, nazwy w jednej linii */
.dk-mega{position:absolute;top:100%;left:0;display:none;padding-top:8px;z-index:60}
.dk-item--more .dk-mega{left:auto;right:0}
.dk-has-mega:hover .dk-mega,.dk-has-mega:focus-within .dk-mega{display:block}
.dk-mega__inner{background:#fff;border:1px solid var(--dk-line);border-radius:18px;box-shadow:0 16px 48px rgba(42,35,29,.14);padding:22px 28px;display:grid;grid-template-columns:repeat(2,max-content);column-gap:44px;row-gap:0;min-width:360px}
.dk-item--more .dk-mega__inner{grid-template-columns:max-content;min-width:240px}
.dk-mega__link{display:block;padding:8px 0;font-size:15px;color:var(--dk-muted);line-height:1.35;white-space:nowrap}
.dk-mega__link:hover{color:var(--dk-accent)}
.dk-mega__all{display:block;grid-column:1/-1;margin-top:12px;padding-top:14px;border-top:1px solid var(--dk-line);font-weight:600;font-size:14px;color:var(--dk-accent);white-space:nowrap}
.dk-mega__all:hover{color:var(--dk-accent-dark)}

/* ============================================================
   HERO
   ============================================================ */
.dk-hero{max-width:var(--dk-container);margin:0 auto;padding:24px 40px 0}
.dk-hero__frame{border-radius:28px;overflow:hidden;position:relative;height:600px;background:var(--dk-ink)}
.dk-hero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dk-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,11,.82) 0%,rgba(20,15,11,.5) 42%,rgba(20,15,11,.1) 100%)}
.dk-hero__content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 64px;color:var(--dk-cream);max-width:640px}
.dk-hero__eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--dk-sand-2);margin-bottom:18px}
.dk-hero h1{font-family:var(--dk-serif);font-size:68px;line-height:1;font-weight:500;letter-spacing:-.02em;margin:0 0 22px}
.dk-hero p{font-size:18px;line-height:1.6;color:#E7DDCF;max-width:460px;margin:0 0 34px}
.dk-hero__cta{display:flex;gap:12px;flex-wrap:wrap}

/* Przyciski */
.dk-btn{display:inline-block;border-radius:100px;font-weight:600;font-size:15px;cursor:pointer;border:none;line-height:1;transition:background .15s,border-color .15s,color .15s}
.dk-btn--primary{background:var(--dk-accent);color:#fff;padding:16px 32px}
.dk-btn--primary:hover{background:var(--dk-accent-hover)}
.dk-btn--ghost{border:1px solid rgba(243,238,230,.45);color:var(--dk-cream);padding:16px 32px;font-weight:500;background:transparent}
.dk-btn--ghost:hover{border-color:var(--dk-cream);background:rgba(243,238,230,.08)}

/* ============================================================
   PASEK ZAUFANIA
   ============================================================ */
.dk-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--dk-line);border:1px solid var(--dk-line);border-radius:18px;overflow:hidden;margin-top:24px}
.dk-trust__cell{background:var(--dk-light);padding:20px 24px}
.dk-trust__big{font-family:var(--dk-serif);font-size:26px;font-weight:600;color:var(--dk-accent)}
.dk-trust__small{font-size:13.5px;color:var(--dk-muted);margin-top:2px}

/* ============================================================
   KATEGORIE
   ============================================================ */
.dk-cats__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dk-cat{border-radius:22px;overflow:hidden;position:relative;min-height:270px;display:flex;flex-direction:column;padding:18px;color:var(--dk-cream);transition:transform .2s,box-shadow .2s}
.dk-cat:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(42,35,29,.22)}
.dk-cat__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
/* Zdjęcie produktu na czystej, jasnej karcie u góry (normalny przepływ — pewne) */
.dk-cat .dk-cat__photo{position:relative;z-index:1;width:100%;height:150px;object-fit:contain;background:var(--dk-cream);border-radius:16px;padding:16px;box-shadow:0 10px 24px rgba(0,0,0,.20);transition:transform .25s}
.dk-cat:hover .dk-cat__photo{transform:translateY(-2px)}
/* Scrim pod tekstem — czytelność nazwy na gradiencie */
.dk-cat::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(to top,rgba(20,15,11,.7) 0%,rgba(20,15,11,0) 100%);z-index:1}
.dk-cat__count{position:relative;z-index:2;margin-top:auto;padding-top:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-cream);opacity:.92;font-weight:600;text-shadow:0 1px 10px rgba(0,0,0,.5)}
.dk-cat__name{position:relative;z-index:2;font-family:var(--dk-serif);font-size:26px;font-weight:600;margin-top:3px;color:var(--dk-cream);text-shadow:0 1px 10px rgba(0,0,0,.5)}

/* ============================================================
   PRODUKTY
   ============================================================ */
.dk-filters{display:flex;gap:8px;flex-wrap:wrap}
.dk-chip{border:1px solid var(--dk-line-4);background:transparent;color:var(--dk-ink);border-radius:100px;padding:9px 18px;font-size:13.5px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.dk-chip:hover{border-color:var(--dk-ink)}
.dk-chip.is-active{background:var(--dk-ink);color:var(--dk-cream);border-color:var(--dk-ink)}
.dk-products__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dk-card{background:#fff;border-radius:20px;padding:16px;border:1px solid var(--dk-line-3);position:relative;transition:border-color .15s}
.dk-card:hover{border-color:#D8CDBD}
.dk-card__tag{position:absolute;top:24px;left:24px;z-index:2;color:#fff;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:100px}
.dk-card__fav{position:absolute;top:22px;right:22px;z-index:2;width:36px;height:36px;border-radius:50%;background:rgba(243,238,230,.9);border:none;cursor:pointer;font-size:15px;color:var(--dk-ink);display:grid;place-items:center;transition:background .15s}
.dk-card__fav:hover{background:#fff}
.dk-card__media{border-radius:14px;overflow:hidden;aspect-ratio:1;margin-bottom:16px;position:relative;display:block}
.dk-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dk-card__ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(42,35,29,.28)}
.dk-card__ph svg{width:38%;height:38%}
.dk-card__origin{font-size:12px;color:var(--dk-faint);letter-spacing:.04em;text-transform:uppercase}
.dk-card__name{font-family:var(--dk-serif);font-size:20px;font-weight:500;margin:3px 0 6px;line-height:1.15}
.dk-card__name a:hover{color:var(--dk-accent)}
.dk-card__notes{font-size:13px;color:var(--dk-muted);line-height:1.45;margin-bottom:14px;min-height:19px}
.dk-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.dk-card__price{font-family:var(--dk-serif);font-size:19px;font-weight:600}
.dk-card__price del{color:var(--dk-faint);font-weight:400;font-size:15px;margin-right:6px}
/* color !important — reset `.dokawy a{color:inherit}` (0,1,1) bije `.dk-add` inaczej */
.dk-add,.dk-add:visited{background:var(--dk-ink);color:var(--dk-cream) !important;border:none;border-radius:100px;padding:10px 18px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;text-decoration:none}
.dk-add:hover{background:var(--dk-accent);color:var(--dk-cream) !important}
.dk-card.is-hidden{display:none}
.dk-products__grid.is-loading{opacity:.45;pointer-events:none;transition:opacity .15s}
.dk-empty{grid-column:1/-1;text-align:center;color:var(--dk-muted);padding:40px 0;font-size:15px}

/* ============================================================
   HISTORIA / O NAS
   ============================================================ */
.dk-story__box{background:var(--dk-warm);border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr}
.dk-story__text{padding:60px 56px;display:flex;flex-direction:column;justify-content:center}
.dk-story__text h2{font-family:var(--dk-serif);font-size:42px;font-weight:500;letter-spacing:-.015em;line-height:1.08;margin:12px 0 20px}
.dk-story__text p{font-size:16px;line-height:1.65;color:#5A5044;margin:0 0 16px}
.dk-story__stats{display:flex;gap:36px;margin-top:12px;flex-wrap:wrap}
.dk-story__stat b{font-family:var(--dk-serif);font-size:32px;font-weight:600;color:var(--dk-ink);display:block}
.dk-story__stat span{font-size:13px;color:var(--dk-muted)}
.dk-story__media{position:relative;min-height:420px;background:#C9B79A}
.dk-story__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ============================================================
   SUBSKRYPCJA
   ============================================================ */
.dk-sub__box{background:var(--dk-ink);color:var(--dk-cream);border-radius:28px;padding:56px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;position:relative;overflow:hidden}
.dk-sub__glow{position:absolute;left:-80px;bottom:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle at 40% 40%,var(--dk-accent),#5A2610);opacity:.4}
.dk-sub__text{position:relative}
.dk-sub__text .dk-eyebrow{color:var(--dk-sand)}
.dk-sub__text h2{font-family:var(--dk-serif);font-size:42px;font-weight:500;letter-spacing:-.015em;line-height:1.08;margin:12px 0 18px}
.dk-sub__text p{font-size:16px;line-height:1.6;color:#D8CDBD;margin:0 0 26px;max-width:440px}
.dk-sub__steps{position:relative;display:flex;flex-direction:column;gap:12px}
.dk-step{background:rgba(243,238,230,.07);border:1px solid rgba(243,238,230,.14);border-radius:16px;padding:18px 20px;display:flex;gap:14px;align-items:center}
.dk-step__num{width:40px;height:40px;border-radius:50%;background:var(--dk-accent);color:#fff;display:grid;place-items:center;font-family:var(--dk-serif);font-size:18px;flex-shrink:0}
.dk-step__t{font-weight:600;font-size:15px}
.dk-step__d{font-size:13.5px;color:#C0B4A4}

/* ============================================================
   NEWSLETTER
   ============================================================ */
.dk-news__box{border:1px dashed var(--dk-line-4);border-radius:24px;padding:48px;text-align:center}
.dk-news__box h2{font-family:var(--dk-serif);font-size:34px;font-weight:500;letter-spacing:-.01em;margin:0 0 10px}
.dk-news__box p{font-size:15.5px;color:var(--dk-muted);max-width:480px;margin:0 auto 24px}
.dk-news__form{display:flex;gap:10px;max-width:460px;margin:0 auto}
.dk-news__form input{flex:1;border:1px solid var(--dk-line-4);background:#fff;border-radius:100px;padding:14px 22px;font-size:15px;font-family:inherit;color:var(--dk-ink);outline:none}
.dk-news__form input:focus{border-color:var(--dk-accent)}
.dk-news__submit{background:var(--dk-ink);color:var(--dk-cream);border:none;border-radius:100px;padding:0 28px;font-weight:600;font-size:15px;cursor:pointer;white-space:nowrap;transition:background .15s}
.dk-news__submit:hover{background:var(--dk-accent)}

/* ============================================================
   STOPKA
   ============================================================ */
.dk-footer{max-width:var(--dk-container);margin:56px auto 0;padding:48px 40px 40px}
.dk-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--dk-line-2)}
.dk-footer__brand-logo{font-family:var(--dk-serif);font-size:24px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:center;gap:11px;margin-bottom:14px}
.dk-footer__brand p{font-size:14px;color:var(--dk-muted);line-height:1.6;max-width:280px;margin:0}
.dk-footer__head{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-faint);margin-bottom:14px}
.dk-footer__col ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14.5px;margin:0;padding:0}
.dk-footer__col a:hover{color:var(--dk-accent)}
.dk-footer__socialbar{display:flex;align-items:center;gap:22px;padding:18px 0;border-bottom:1px solid var(--dk-line-2);font-size:14.5px}
.dk-footer__socialbar-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-faint)}
.dk-footer__socialbar a{font-weight:500}
.dk-footer__socialbar a:hover{color:var(--dk-accent)}
.dk-footer__bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;font-size:13px;color:var(--dk-faint);flex-wrap:wrap;gap:12px}
.dk-footer__ecm{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--dk-muted)}
.dk-footer__ecm-pre{color:var(--dk-faint)}
.dk-footer__ecm-cta{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--dk-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.dk-footer__ecm-cta svg{flex-shrink:0;transition:transform .15s}
.dk-footer__ecm:hover .dk-footer__ecm-cta{color:var(--dk-accent-dark)}
.dk-footer__ecm:hover .dk-footer__ecm-cta svg{transform:translate(1px,-1px)}

/* ============================================================
   WOOCOMMERCE — sklep / kategorie / produkt (kontener, bez sidebaru)
   ============================================================ */
.dk-woo{padding-top:48px;padding-bottom:72px}
.dk-woo .woocommerce-products-header{margin-bottom:6px}
.dk-woo h1,.dk-woo .woocommerce-products-header__title,.dk-woo .page-title{font-family:var(--dk-serif);font-size:38px;font-weight:500;letter-spacing:-.01em;line-height:1.1;margin:0 0 8px}
.dk-woo .term-description{color:var(--dk-muted);font-size:15px;line-height:1.6;margin-bottom:18px;max-width:760px}
.dk-woo .woocommerce-result-count{color:var(--dk-faint);font-size:13.5px;margin:0}
.dk-woo .woocommerce-ordering{margin-bottom:8px}
.dk-woo .woocommerce-ordering select{border:1px solid var(--dk-line-4);border-radius:100px;padding:9px 18px;font-family:inherit;font-size:14px;background:#fff;color:var(--dk-ink)}

/* Siatka produktów */
.dk-woo ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:22px 0 0;padding:0;list-style:none}
.dk-woo ul.products::before,.dk-woo ul.products::after{display:none !important}
.dk-woo ul.products li.product{width:auto !important;margin:0 !important;padding:14px;float:none !important;background:#fff;border:1px solid var(--dk-line-3);border-radius:18px;text-align:left;transition:border-color .15s;clear:none !important}
.dk-woo ul.products li.product:hover{border-color:#D8CDBD}
.dk-woo ul.products li.product a img{border-radius:12px;margin:0 0 12px;aspect-ratio:1;object-fit:cover}
.dk-woo ul.products li.product .woocommerce-loop-product__title{font-family:var(--dk-serif);font-size:16.5px;font-weight:500;line-height:1.25;padding:0 0 6px;color:var(--dk-ink)}
.dk-woo ul.products li.product .price{color:var(--dk-ink);font-family:var(--dk-serif);font-size:17px;font-weight:600;display:block;margin-bottom:12px}
.dk-woo ul.products li.product .price del{color:var(--dk-faint);font-weight:400;font-size:14px;margin-right:6px}
.dk-woo ul.products li.product .price ins{text-decoration:none}
.dk-woo ul.products li.product .onsale{background:var(--dk-accent);color:#fff;border-radius:100px;padding:4px 11px;font-size:11px;font-weight:600;min-height:0;min-width:0;line-height:1.4;top:12px;right:12px;margin:0}
.dk-woo ul.products li.product .star-rating{font-size:12px;margin-bottom:8px;color:var(--dk-accent)}

/* Przyciski (Do koszyka / Dowiedz się więcej) */
.dk-woo .button,.dk-woo a.button,.dk-woo button.button,.dk-woo .added_to_cart{background:var(--dk-ink);color:var(--dk-cream);border-radius:100px;padding:10px 18px;font-weight:600;font-size:13.5px;border:none;line-height:1.2;display:inline-block;transition:background .15s}
.dk-woo .button:hover,.dk-woo a.button:hover,.dk-woo button.button:hover,.dk-woo .added_to_cart:hover{background:var(--dk-accent);color:var(--dk-cream)}
.dk-woo ul.products li.product .button{margin-top:2px}

/* Paginacja — jednolite, okrągłe (WAŻNE: !important bije core WC .woocommerce nav.woocommerce-pagination) */
.dk-woo .woocommerce-pagination{margin-top:44px;text-align:center}
.dk-woo .woocommerce-pagination ul{border:none !important;display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0;padding:0}
.dk-woo .woocommerce-pagination ul li{border:none !important;border-right:none !important;margin:0;overflow:visible}
.dk-woo .woocommerce-pagination ul li a,
.dk-woo .woocommerce-pagination ul li span{box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;border:1px solid var(--dk-line-4);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--dk-ink);font-weight:500;font-size:14.5px;line-height:1;transition:border-color .15s,background .15s,color .15s}
.dk-woo .woocommerce-pagination ul li a:hover{border-color:var(--dk-ink);background:none;color:var(--dk-accent)}
.dk-woo .woocommerce-pagination ul li span.current{background:var(--dk-ink);color:var(--dk-cream);border-color:var(--dk-ink)}
.dk-woo .woocommerce-pagination ul li a.next,
.dk-woo .woocommerce-pagination ul li a.prev{font-size:18px}

/* Przycisk „na górę" */
.dk-top{position:fixed;right:24px;bottom:24px;z-index:80;width:48px;height:48px;border-radius:50%;border:none;background:var(--dk-ink);color:var(--dk-cream);cursor:pointer;display:grid;place-items:center;box-shadow:0 10px 30px rgba(42,35,29,.28);opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s,background .15s}
.dk-top.is-visible{opacity:1;transform:translateY(0)}
.dk-top:hover{background:var(--dk-accent)}
.dk-top[hidden]{display:none}
@media (max-width:768px){.dk-top{right:16px;bottom:16px;width:44px;height:44px}}

/* Komunikaty Woo */
.dk-woo .woocommerce-message,.dk-woo .woocommerce-info,.dk-woo .woocommerce-error{border-top-color:var(--dk-accent);border-radius:12px}

/* ============================================================
   STRONY (page / wpis / koszyk / checkout)
   ============================================================ */
.dk-page{padding-top:48px;padding-bottom:72px}
.dk-page__head{margin-bottom:22px}
.dk-page__title{font-family:var(--dk-serif);font-size:40px;font-weight:500;letter-spacing:-.015em;line-height:1.1;margin:0}
.dk-page__meta{color:var(--dk-faint);font-size:13.5px;margin-top:8px}
.dk-page__thumb{margin:0 0 24px;border-radius:20px;overflow:hidden}
.dk-page__content{max-width:820px;font-size:16px;line-height:1.75;color:#443c33}
.dk-page__content h2{font-family:var(--dk-serif);font-size:26px;font-weight:500;margin:30px 0 12px;color:var(--dk-ink)}
.dk-page__content h3{font-family:var(--dk-serif);font-size:20px;font-weight:600;margin:24px 0 10px;color:var(--dk-ink)}
.dk-page__content p{margin:0 0 16px}
.dk-page__content a{color:var(--dk-accent);text-decoration:underline}
.dk-page__content ul,.dk-page__content ol{margin:0 0 16px 22px}
.dk-page__content li{margin-bottom:6px}
.dk-page--wc{max-width:var(--dk-container)}
.dk-page--wc .dk-page__content{max-width:none;font-size:inherit;line-height:inherit;color:inherit}
/* linki wewnątrz koszyka/checkoutu: bez podkreśleń i akcentu z prozy stron */
.dk-page--wc .dk-page__content a{color:inherit;text-decoration:none}
.dk-page--wc .dk-page__content a.dk-link,.dk-page--wc .dk-page__content .dk-cart-continue{color:var(--dk-muted)}
.dk-page--wc .dk-page__content .dk-coupon__toggle{color:var(--dk-accent)}

/* ============================================================
   KUPON (rabat −15%)
   ============================================================ */
.dk-news__box .dk-eyebrow{display:block;margin-bottom:10px}
.dk-news__result{margin-top:20px}
.dk-coupon{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;background:var(--dk-warm);border:1px dashed var(--dk-accent);border-radius:100px;padding:12px 22px}
.dk-coupon__label{font-size:14px;color:var(--dk-muted)}
.dk-coupon__code{font-family:var(--dk-serif);font-size:20px;font-weight:600;letter-spacing:.02em;color:var(--dk-accent-dark)}
.dk-coupon__copy{background:var(--dk-ink);color:var(--dk-cream);border:none;border-radius:100px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer}
.dk-coupon__copy:hover{background:var(--dk-accent)}
.dk-coupon__note{font-size:14.5px;color:var(--dk-muted);margin:14px auto 0;max-width:420px;line-height:1.5}
.dk-coupon__note strong{color:var(--dk-ink);font-weight:600}
.dk-coupon__err{color:var(--dk-accent-dark);font-size:14px;margin:8px 0 0}

/* ============================================================
   KARTA PRODUKTU (single product)
   ============================================================ */
.dk-woo div.product .product_title{font-family:var(--dk-serif);font-size:34px;font-weight:500;letter-spacing:-.01em;line-height:1.12;margin:0 0 10px}
.dk-woo div.product .woocommerce-product-gallery__wrapper,
.dk-woo div.product .woocommerce-product-gallery img{border-radius:18px}
.dk-woo div.product p.price,.dk-woo div.product span.price{font-family:var(--dk-serif);font-size:26px;font-weight:600;color:var(--dk-ink)}
.dk-woo div.product p.price del{color:var(--dk-faint);font-weight:400;font-size:20px}
.dk-woo div.product p.price ins{text-decoration:none}
.dk-woo div.product .woocommerce-product-details__short-description{color:var(--dk-muted);font-size:15.5px;line-height:1.7;margin:16px 0}
.dk-woo div.product .stock.in-stock{color:var(--dk-green);font-size:13.5px;font-weight:600}
.dk-woo div.product form.cart{margin:22px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.dk-woo div.product form.cart .quantity input.qty{width:72px;height:48px;border:1px solid var(--dk-line-4);border-radius:100px;text-align:center;font-family:inherit;font-size:15px}
.dk-woo div.product form.cart .single_add_to_cart_button{background:var(--dk-ink);color:var(--dk-cream);border:none;border-radius:100px;padding:15px 32px;font-weight:600;font-size:15px;cursor:pointer;transition:background .15s}
.dk-woo div.product form.cart .single_add_to_cart_button:hover{background:var(--dk-accent)}
.dk-woo div.product .product_meta{font-size:13px;color:var(--dk-faint);margin-top:18px;border-top:1px solid var(--dk-line);padding-top:16px}
.dk-woo div.product .product_meta a{color:var(--dk-muted)}
.dk-woo div.product .product_meta a:hover{color:var(--dk-accent)}

/* Zakładki produktu — bez brzydkiego nagłówka „Opis", czytelny tekst */
.dk-woo .woocommerce-tabs{margin-top:44px}
.dk-woo .woocommerce-tabs ul.tabs{border:none;padding:0;margin:0 0 22px;display:flex;gap:8px;flex-wrap:wrap}
.dk-woo .woocommerce-tabs ul.tabs::before{display:none}
.dk-woo .woocommerce-tabs ul.tabs li{background:var(--dk-light);border:1px solid var(--dk-line-3);border-radius:100px;margin:0}
.dk-woo .woocommerce-tabs ul.tabs li::before,.dk-woo .woocommerce-tabs ul.tabs li::after{display:none}
.dk-woo .woocommerce-tabs ul.tabs li a{padding:10px 20px;font-weight:600;font-size:14px;color:var(--dk-muted)}
.dk-woo .woocommerce-tabs ul.tabs li.active{background:var(--dk-ink);border-color:var(--dk-ink)}
.dk-woo .woocommerce-tabs ul.tabs li.active a{color:var(--dk-cream)}
.dk-woo .woocommerce-Tabs-panel{max-width:840px;font-size:15.5px;line-height:1.8;color:#443c33}
.dk-woo .woocommerce-Tabs-panel>h2:first-child{display:none}
.dk-woo .woocommerce-Tabs-panel p{margin:0 0 14px}
.dk-woo .woocommerce-Tabs-panel strong{color:var(--dk-ink);font-weight:600}
.dk-woo .woocommerce-Tabs-panel ul,.dk-woo .woocommerce-Tabs-panel ol{margin:0 0 14px 22px}
.dk-woo .woocommerce-Tabs-panel li{margin-bottom:5px}
.dk-woo table.shop_attributes{border:1px solid var(--dk-line);border-radius:12px;overflow:hidden;border-collapse:separate}
.dk-woo table.shop_attributes th,.dk-woo table.shop_attributes td{padding:10px 14px;border-bottom:1px solid var(--dk-line);font-size:14px}
.dk-woo .related.products{margin-top:56px;border-top:1px solid var(--dk-line);padding-top:36px}
.dk-woo .related.products>h2{font-family:var(--dk-serif);font-size:28px;font-weight:500;margin-bottom:20px}

/* ============================================================
   KOSZYK (dk-cartpage) — konwersja
   ============================================================ */
.dk-cartpage__title{font-family:var(--dk-serif);font-size:38px;font-weight:500;letter-spacing:-.01em;margin:8px 0 26px;display:flex;align-items:baseline;gap:14px}
.dk-cartpage__count{font-family:var(--dk-sans);font-size:14px;color:var(--dk-faint);font-weight:500}
.dk-cartpage__grid{display:grid;grid-template-columns:1fr 396px;gap:32px;align-items:start}

/* Produkty */
.dk-cart-table{width:100%;border-collapse:collapse}
.dk-cart-row{border-bottom:1px solid var(--dk-line)}
.dk-cart-row td{padding:18px 0;vertical-align:top}
.dk-cart-row__thumb{width:96px}
.dk-cart-row__thumb img{width:84px;height:84px;object-fit:cover;border-radius:14px;border:1px solid var(--dk-line-3);background:var(--dk-light)}
.dk-cart-row__info{padding-left:16px !important;padding-right:16px !important}
.dk-cart-row__name{font-family:var(--dk-serif);font-size:16.5px;font-weight:500;line-height:1.3;margin-bottom:3px}
.dk-cart-row__name a:hover{color:var(--dk-accent)}
.dk-cart-row__unit{font-size:13px;color:var(--dk-muted);margin-bottom:12px}
.dk-cart-row__unit-label{color:var(--dk-faint)}
.dk-cart-row__controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.dk-cart-row__total{text-align:right;font-family:var(--dk-serif);font-size:18px;font-weight:600;white-space:nowrap}

/* Stepper ilości */
.dk-qty{display:inline-flex;align-items:center;border:1px solid var(--dk-line-4);border-radius:100px;overflow:hidden}
.dk-qty__btn{width:34px;height:36px;background:none;border:none;cursor:pointer;font-size:16px;color:var(--dk-ink);transition:background .12s}
.dk-qty__btn:hover{background:var(--dk-warm)}
.dk-qty .quantity{margin:0}
.dk-qty input.qty{width:40px;height:36px;border:none;text-align:center;font-family:inherit;font-size:14.5px;font-weight:600;color:var(--dk-ink);outline:none;-moz-appearance:textfield;appearance:textfield;background:transparent}
.dk-qty input.qty::-webkit-outer-spin-button,.dk-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.dk-cart-row__remove{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--dk-faint) !important;font-weight:500}
.dk-cart-row__remove:hover{color:#C0392B !important}

/* Kupon + akcje */
.dk-cart-actions td{padding:16px 0 4px;}
.dk-cart-actions td{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
/* details koszyka — NADPISUJE pill .dk-coupon ze strony głównej (ta sama klasa!) */
details.dk-coupon{display:block;flex:1;min-width:260px;background:none;border:none;border-radius:0;padding:0}
.dk-coupon__toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:600;color:var(--dk-accent);list-style:none;background:var(--dk-warm);border:1px dashed var(--dk-accent);border-radius:100px;padding:12px 22px}
.dk-coupon__toggle::-webkit-details-marker{display:none}
.dk-coupon__toggle:hover{color:var(--dk-accent-dark)}
.dk-coupon__row{display:flex;gap:8px;margin-top:12px;max-width:440px;flex-wrap:wrap}
.dk-coupon__input{flex:1;border:1px solid var(--dk-line-4);border-radius:100px;padding:11px 18px;font-size:14px;font-family:inherit;outline:none;min-width:220px}
.dk-coupon__input:focus{border-color:var(--dk-accent)}
.dk-coupon__input.has-error{border-color:#C0392B}
/* Błąd kuponu wstrzykiwany przez wc-cart.js (core CSS zdjęty — stylujemy sami) */
body.woocommerce-cart .coupon-error-notice{display:block;flex-basis:100%;width:100%;margin:8px 0 0;padding:0;font-size:13px;font-weight:500;color:#C0392B;line-height:1.4;text-align:left}
.dk-coupon__btn{background:var(--dk-ink);color:var(--dk-cream);border:none;border-radius:100px;padding:0 20px;font-size:13.5px;font-weight:600;cursor:pointer}
.dk-coupon__btn:hover{background:var(--dk-accent)}
.dk-cart-continue{font-size:14px;font-weight:500;color:var(--dk-muted)}
.dk-cart-continue:hover{color:var(--dk-accent)}
.dk-cart-update{background:none;border:1px solid var(--dk-line-4);color:var(--dk-ink);border-radius:100px;padding:10px 20px;font-size:13.5px;font-weight:600;cursor:pointer}
.dk-cart-update:hover{border-color:var(--dk-ink)}
.dk-cart-update:disabled{opacity:.4;cursor:default}

/* Podsumowanie (sticky) */
.dk-cartpage__summary{position:sticky;top:96px}
.dk-summary{background:var(--dk-light);border:1px solid var(--dk-line);border-radius:22px;padding:26px}
.dk-summary__title{font-family:var(--dk-serif);font-size:23px;font-weight:500;margin:0 0 16px}
.dk-summary__table{width:100%;border-collapse:collapse;margin:0}
.dk-summary__table th{font-weight:500;font-size:14.5px;color:var(--dk-muted);text-align:left;padding:9px 0}
.dk-summary__table td{text-align:right;font-size:14.5px;font-weight:600;padding:9px 0}
.dk-summary__row--discount th,.dk-summary__row--discount td{color:var(--dk-green)}
.dk-summary__coupon-code{background:#fff;border:1px dashed var(--dk-line-4);border-radius:8px;padding:2px 8px;font-size:12px;letter-spacing:.04em;margin-left:4px}
.dk-summary__total th,.dk-summary__total td{border-top:1px solid var(--dk-line-2);padding-top:16px;font-family:var(--dk-serif)}
.dk-summary__total th{font-size:17px;color:var(--dk-ink);font-weight:600}
.dk-summary__total td{font-size:26px;font-weight:600;color:var(--dk-ink)}
.dk-summary .woocommerce-remove-coupon{font-size:12px;margin-left:6px;color:#C0392B}

/* Pasek darmowej dostawy */
.dk-fsbar{background:#fff;border:1px solid var(--dk-line-3);border-radius:16px;padding:14px 16px;margin-bottom:18px}
.dk-fsbar__text{margin:0 0 10px;font-size:13.5px;color:var(--dk-ink)}
.dk-fsbar__text strong{color:var(--dk-accent)}
.dk-fsbar__text--ok{color:var(--dk-green);font-weight:600}
.dk-fsbar__track{height:8px;background:var(--dk-warm);border-radius:100px;overflow:hidden}
.dk-fsbar__fill{height:100%;background:linear-gradient(90deg,var(--dk-accent),var(--dk-accent-hover));border-radius:100px;transition:width .4s ease}
.dk-fsbar.is-reached .dk-fsbar__fill{background:var(--dk-green)}

/* Dostawy */
.dk-shipping__cell{padding:12px 0 !important}
.dk-shipping__head{font-size:14.5px;font-weight:500;color:var(--dk-muted);margin-bottom:10px;text-align:left}
.dk-shipping__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.dk-shipping__item input.shipping_method{position:absolute;opacity:0;pointer-events:none}
.dk-shipping__label{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--dk-line-3);border-radius:14px;padding:11px 14px;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-align:left}
.dk-shipping__item.is-chosen .dk-shipping__label,.dk-shipping__item input:checked+.dk-shipping__label{border-color:var(--dk-accent);box-shadow:0 0 0 1px var(--dk-accent)}
.dk-shipping__radio{width:18px;height:18px;border:2px solid var(--dk-line-4);border-radius:50%;flex-shrink:0;position:relative}
.dk-shipping__item input:checked+.dk-shipping__label .dk-shipping__radio{border-color:var(--dk-accent)}
.dk-shipping__item input:checked+.dk-shipping__label .dk-shipping__radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--dk-accent)}
.dk-shipping__ico{color:var(--dk-muted);display:grid;place-items:center;flex-shrink:0}
.dk-shipping__name{flex:1;font-size:14px;font-weight:500;line-height:1.25}
.dk-shipping__price{font-size:14px;font-weight:600;white-space:nowrap}
.dk-shipping__free{color:var(--dk-green);font-weight:700}
.dk-shipping__dest{font-size:12.5px;color:var(--dk-faint);margin:10px 0 0;text-align:left}

/* CTA */
.dk-checkout-cta{display:flex !important;align-items:center;justify-content:center;gap:10px;background:var(--dk-accent) !important;color:#fff !important;border-radius:100px !important;padding:17px 24px !important;font-size:16px !important;font-weight:700 !important;text-align:center;margin-top:18px;transition:background .15s;border:none !important;line-height:1.2 !important}
.dk-checkout-cta:hover{background:var(--dk-accent-hover) !important}

/* Płatności */
.dk-paybadges{margin-top:16px;font-size:12.5px;color:var(--dk-faint)}
.dk-paybadges__label{display:block;margin-bottom:8px}
.dk-paybadges__list{display:flex;gap:6px;flex-wrap:wrap}
.dk-paybadge{background:#fff;border:1px solid var(--dk-line-3);border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;color:var(--dk-ink)}

/* Trust */
.dk-trust-list{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--dk-line-2);display:flex;flex-direction:column;gap:9px}
.dk-trust-list li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--dk-muted)}
.dk-trust-list svg{color:var(--dk-accent);flex-shrink:0}

/* Upsell */
.dk-cart-upsell{margin-top:36px;border-top:1px solid var(--dk-line);padding-top:24px}
.dk-cart-upsell__title{font-family:var(--dk-serif);font-size:21px;font-weight:500;margin:0 0 16px}
.dk-cart-upsell__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dk-cart-upsell__item{background:#fff;border:1px solid var(--dk-line-3);border-radius:16px;padding:14px}
.dk-cart-upsell__thumb{display:block;border-radius:10px;overflow:hidden;aspect-ratio:1;background:var(--dk-light);margin-bottom:12px}
.dk-cart-upsell__thumb img{width:100%;height:100%;object-fit:cover}
.dk-cart-upsell__name{font-size:14px;line-height:1.4;font-weight:500;margin-bottom:10px}
.dk-cart-upsell__name a:hover{color:var(--dk-accent)}
.dk-cart-upsell__foot{display:flex;align-items:center;justify-content:space-between;gap:8px}
.dk-cart-upsell__price{font-family:var(--dk-serif);font-size:14.5px;font-weight:600}
.dk-cart-upsell__add{width:32px;height:32px;border-radius:50%;background:var(--dk-ink);color:var(--dk-cream) !important;display:grid;place-items:center;font-size:18px;font-weight:600;flex-shrink:0;transition:background .15s}
.dk-cart-upsell__add:hover{background:var(--dk-accent)}

/* Pusty koszyk */
.dk-cart-empty{text-align:center;padding:64px 20px}
.dk-cart-empty__ico{margin-bottom:18px;display:inline-block}
.dk-cart-empty__title{font-family:var(--dk-serif);font-size:32px;font-weight:500;margin:0 0 10px}
.dk-cart-empty__text{color:var(--dk-muted);font-size:15.5px;margin:0 0 26px}

/* Mobilny sticky pasek */
.dk-cart-stickybar{display:none}

/* Mobilny tytuł produktu — widoczny tylko ≤768px (media query niżej) */
.dk-product-title--mobile{display:none}

/* Blokada podczas AJAX-przeliczania (WooCommerce blockUI) */
.dk-cartpage .blockUI.blockOverlay{border-radius:22px;opacity:.5 !important}

/* Powiadomienia na koszyku (core CSS WC jest zdjęty — stylujemy sami) */
body.woocommerce-cart .woocommerce-message,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error{background:#fff;border:1px solid var(--dk-line-3);border-left:4px solid var(--dk-green);border-radius:14px;padding:14px 18px;margin:0 0 18px;font-size:14.5px;color:var(--dk-ink);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
body.woocommerce-cart .woocommerce-info{border-left-color:var(--dk-accent)}
body.woocommerce-cart .woocommerce-error{border-left-color:#C0392B}
body.woocommerce-cart .woocommerce-error li{list-style:none;margin:0}
body.woocommerce-cart .woocommerce-message a,
body.woocommerce-cart .woocommerce-info a,
body.woocommerce-cart .woocommerce-error a{color:var(--dk-accent);font-weight:600}
body.woocommerce-cart .woocommerce-message a:hover{color:var(--dk-accent-dark)}
body.woocommerce-cart .woocommerce-message a.button,
body.woocommerce-cart .woocommerce-info a.button{background:var(--dk-ink);color:var(--dk-cream);border-radius:100px;padding:8px 16px;font-size:13px}

/* Dostępność: klasa chowająca etykiety czytnikowe (dawał ją core WC) */
.dokawy .screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);word-wrap:normal !important;border:0;padding:0;margin:-1px}

/* ============================================================
   ZAMÓWIENIE (klasyczny checkout) — stylistyka jak koszyk
   ============================================================ */
body.woocommerce-checkout .dk-page__title{display:none}
.dk-page--wc h1.dk-checkout-title{font-family:var(--dk-serif);font-size:38px;font-weight:500;letter-spacing:-.01em;margin:8px 0 26px}

/* Kupon / logowanie nad formularzem */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{border-left-color:var(--dk-accent)}
body.woocommerce-checkout form.checkout_coupon{background:var(--dk-light);border:1px solid var(--dk-line);border-radius:16px;padding:18px;margin:0 0 22px;max-width:520px;display:flex;gap:10px;flex-wrap:wrap}
body.woocommerce-checkout form.checkout_coupon p{margin:0}
body.woocommerce-checkout form.checkout_coupon .form-row{flex:1;min-width:180px}
body.woocommerce-checkout form.checkout_coupon input.input-text{width:100%;border:1px solid var(--dk-line-4);border-radius:100px;padding:11px 18px;font-size:14px;font-family:inherit;outline:none}
body.woocommerce-checkout form.checkout_coupon button{background:var(--dk-ink);color:var(--dk-cream);border:none;border-radius:100px;padding:11px 22px;font-size:14px;font-weight:600;cursor:pointer}
body.woocommerce-checkout form.checkout_coupon button:hover{background:var(--dk-accent)}

/* Layout: dane po lewej, zamówienie po prawej (sticky) */
form.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:12px 36px;align-items:start}
form.woocommerce-checkout #customer_details,form.woocommerce-checkout #order_review{min-width:0}
form.woocommerce-checkout #customer_details{grid-column:1;grid-row:1/span 2;display:block}
#order_review table,#order_review td,#order_review th,.dk-shipping__cell,.dk-shipping__list,.dk-shipping__label{min-width:0}
#order_review table.woocommerce-checkout-review-order-table{table-layout:fixed}
form.woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;font-family:var(--dk-serif);font-size:23px;font-weight:500;margin:0 0 4px}
form.woocommerce-checkout #order_review{grid-column:2;grid-row:2;align-self:start;position:sticky;top:96px}

/* Nagłówki sekcji formularza */
#customer_details h3,.woocommerce-additional-fields h3{font-family:var(--dk-serif);font-size:23px;font-weight:500;margin:0 0 14px}
.woocommerce-additional-fields{margin-top:18px}
#ship-to-different-address{font-size:16px}
#ship-to-different-address label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:500}
#ship-to-different-address input{width:18px;height:18px;accent-color:var(--dk-accent)}

/* Pola formularza */
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
form.woocommerce-checkout .form-row{margin:0;padding:0;display:block;min-width:0}
/* grid/flex nie może rozpychać się szerokością intrinsic inputów (atrybut size) */
form.woocommerce-checkout .woocommerce-input-wrapper{min-width:0}
form.woocommerce-checkout input.input-text,
form.woocommerce-checkout select,
form.woocommerce-checkout textarea{min-width:0;max-width:100%}
form.woocommerce-checkout .form-row-wide,form.woocommerce-checkout .notes{grid-column:1/-1}
form.woocommerce-checkout .form-row label{display:block;font-size:12.5px;font-weight:500;color:var(--dk-muted);margin:0 0 5px 4px}
form.woocommerce-checkout .form-row label .required{color:var(--dk-accent);text-decoration:none}
form.woocommerce-checkout .form-row .woocommerce-input-wrapper{display:block}
form.woocommerce-checkout .form-row input.input-text,
form.woocommerce-checkout .form-row textarea,
form.woocommerce-checkout .form-row select{width:100%;border:1px solid var(--dk-line-4);border-radius:100px;padding:12px 18px;font-size:14.5px;font-family:inherit;color:var(--dk-ink);background:#fff;outline:none;transition:border-color .15s}
/* natywny select: własna strzałka (domyślna wystaje na zaokrągleniu pill) */
form.woocommerce-checkout .form-row select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%236B6055' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:44px}
form.woocommerce-checkout .form-row textarea{border-radius:18px;min-height:96px;resize:vertical}
form.woocommerce-checkout .form-row input.input-text:focus,
form.woocommerce-checkout .form-row textarea:focus,
form.woocommerce-checkout .form-row select:focus{border-color:var(--dk-accent)}
form.woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
form.woocommerce-checkout .form-row.woocommerce-invalid select{border-color:#C0392B}
/* komunikaty walidacji inline pod polami (wstrzykiwane przez checkout.js) */
form.woocommerce-checkout .checkout-inline-error-message{display:block;font-size:12.5px;color:#C0392B;margin:5px 0 0 4px;background:none;padding:0;line-height:1.4}
form.woocommerce-checkout .checkout-inline-error-message strong{font-weight:600;background:none;color:inherit}
form.woocommerce-checkout .form-row.woocommerce-validated input.input-text{border-color:var(--dk-green)}
/* select2 (kraj) — dopasowanie do pól */
.dokawy .select2-container--default .select2-selection--single{height:auto;border:1px solid var(--dk-line-4);border-radius:100px;padding:12px 18px}
.dokawy .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.4;padding:0;color:var(--dk-ink);font-size:14.5px}
.dokawy .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%;right:14px}
.dokawy .select2-dropdown{border:1px solid var(--dk-line-4);border-radius:14px;overflow:hidden}
.dokawy .select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--dk-accent)}

/* Karta zamówienia po prawej */
#order_review{background:var(--dk-light);border:1px solid var(--dk-line);border-radius:22px;padding:24px}
table.woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse}
table.woocommerce-checkout-review-order-table thead{display:none}
table.woocommerce-checkout-review-order-table td,table.woocommerce-checkout-review-order-table th{padding:9px 0;font-size:14.5px;text-align:left;vertical-align:top}
table.woocommerce-checkout-review-order-table td:last-child,table.woocommerce-checkout-review-order-table th+td{text-align:right;font-weight:600;white-space:nowrap}
table.woocommerce-checkout-review-order-table tbody .product-name{color:var(--dk-ink);font-weight:400;padding-right:12px}
table.woocommerce-checkout-review-order-table tbody .product-name .product-quantity{color:var(--dk-faint);font-weight:600}
table.woocommerce-checkout-review-order-table tbody tr{border-bottom:1px solid var(--dk-line)}
table.woocommerce-checkout-review-order-table tfoot th{font-weight:500;color:var(--dk-muted)}
table.woocommerce-checkout-review-order-table tfoot tr.order-total th,table.woocommerce-checkout-review-order-table tfoot tr.order-total td{border-top:1px solid var(--dk-line-2);padding-top:16px;font-family:var(--dk-serif)}
table.woocommerce-checkout-review-order-table tfoot tr.order-total th{font-size:17px;color:var(--dk-ink);font-weight:600}
table.woocommerce-checkout-review-order-table tfoot tr.order-total td{font-size:24px;font-weight:600}

/* Płatności */
#payment{background:none;margin-top:16px}
#payment ul.wc_payment_methods{list-style:none;margin:0 0 14px;padding:14px 0 0;border-top:1px solid var(--dk-line-2);display:flex;flex-direction:column;gap:8px}
#payment ul.wc_payment_methods li{margin:0}
#payment ul.wc_payment_methods li>input{position:absolute;opacity:0;pointer-events:none}
#payment ul.wc_payment_methods li>label{display:flex !important;width:100% !important;box-sizing:border-box;align-items:center;gap:10px;background:#fff;border:1px solid var(--dk-line-3);border-radius:14px;padding:12px 14px;cursor:pointer;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s;margin:0}
#payment ul.wc_payment_methods li>input:checked+label{border-color:var(--dk-accent);box-shadow:0 0 0 1px var(--dk-accent)}
#payment ul.wc_payment_methods li>label::before{content:"";width:18px;height:18px;border:2px solid var(--dk-line-4);border-radius:50%;flex-shrink:0;transition:border-color .15s,box-shadow .15s}
#payment ul.wc_payment_methods li>input:checked+label::before{border-color:var(--dk-accent);box-shadow:inset 0 0 0 3.5px #fff;background:var(--dk-accent)}
#payment ul.wc_payment_methods li>label img{max-height:24px !important;width:auto !important;margin:0 0 0 auto !important;float:none !important;display:block}
#payment div.payment_box{background:var(--dk-warm);border-radius:12px;padding:12px 14px;font-size:13px;color:var(--dk-muted);margin:8px 0 0}
#payment div.payment_box::before{display:none}
.woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--dk-muted);margin:12px 0}
.woocommerce-privacy-policy-text p{margin:0 0 10px;font-size:12.5px;color:var(--dk-faint);line-height:1.5}
#payment .place-order{padding:0;margin-top:14px}
button#place_order{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--dk-accent);color:#fff;border:none;border-radius:100px;padding:17px 24px;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s;font-family:inherit}
button#place_order:hover{background:var(--dk-accent-hover)}

/* Dostawa w tabeli zamówienia — kafelki jak w koszyku (te same klasy dk-shipping) */
table.woocommerce-checkout-review-order-table .dk-shipping__cell{padding:12px 0 !important}

/* ============================================================
   RESPONSYWNOŚĆ
   ============================================================ */
/* Nagłówek: zwiń menu do hamburgera, szukajka w osobnym wierszu */
@media (max-width:900px){
  .dk-topbar__inner{padding:12px 16px;flex-wrap:wrap;gap:10px}
  /* wiersz 1: logo + akcje (muszą się zmieścić razem), wiersz 2: szukajka */
  .dk-logo{font-size:19px;gap:8px}
  .dk-logo svg{width:24px;height:24px}
  .dk-icon-btn{width:38px;height:38px;font-size:14px}
  .dk-cart-btn{height:38px;padding:0 12px;gap:7px}
  .dk-cart-btn__ico{width:17px;height:17px}
  .dk-burger{width:38px;height:38px;font-size:16px}
  .dk-search{order:3;flex-basis:100%;max-width:none;margin:0}
  .dk-search__input{padding:10px 48px 10px 16px;font-size:14px}
  .dk-search__btn{width:34px;height:34px}
  .dk-nav__actions{margin-left:auto;gap:7px}
  .dk-menubar{border-top:none}
  .dk-menubar__inner{padding:0 20px}
  .dk-menu{display:none}
  .dk-burger{display:grid;place-items:center}
  .dk-menu.is-open{display:flex;flex-direction:column;flex-wrap:nowrap;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid var(--dk-line);border-bottom:1px solid var(--dk-line);padding:8px 20px 18px;gap:0;margin:0;max-height:calc(100vh - 130px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 16px 40px rgba(42,35,29,.12)}
  .dk-menu.is-open .dk-item{width:100%}
  .dk-menu.is-open .dk-item{border-bottom:1px solid var(--dk-line);position:static;display:flex;flex-wrap:wrap;align-items:center}
  .dk-menu.is-open .dk-item__link{padding:14px 0;font-size:16px;flex:1}
  .dk-menu.is-open .dk-item .dk-caret{display:none}
  .dk-menu.is-open .dk-item__toggle{display:grid;place-items:center;width:44px;height:44px;background:none;border:none;color:var(--dk-ink);font-size:14px;cursor:pointer;flex-shrink:0;transition:transform .15s}
  .dk-menu.is-open .dk-item.is-open .dk-item__toggle{transform:rotate(180deg);color:var(--dk-accent)}
  .dk-menu.is-open .dk-mega{position:static;display:none;padding:0 0 10px;width:100%}
  .dk-menu.is-open .dk-item.is-open .dk-mega{display:block}
  .dk-menu.is-open .dk-mega__inner{background:none;border:none;box-shadow:none;border-radius:0;padding:0 0 4px 4px;grid-template-columns:1fr;min-width:0;max-width:none}
  .dk-menu.is-open .dk-mega__link{padding:10px 0;font-size:15px;white-space:normal}
  .dk-menu.is-open .dk-item__link{font-size:17px}
  .dk-menu.is-open .dk-mega__all{margin-top:6px}
}
@media (max-width:1024px){
  .dk-hero h1{font-size:54px}
  .dk-products__grid{grid-template-columns:repeat(2,1fr)}
  .dk-woo ul.products{grid-template-columns:repeat(3,1fr)}
  .dk-footer__grid{grid-template-columns:1fr 1fr}
  .dk-cartpage__grid{grid-template-columns:1fr;gap:24px}
  .dk-cartpage__summary{position:static}
  .dk-cart-upsell__grid{grid-template-columns:repeat(4,1fr)}
  form.woocommerce-checkout{grid-template-columns:minmax(0,1fr)}
  form.woocommerce-checkout #customer_details{grid-column:1;grid-row:auto}
  form.woocommerce-checkout #order_review_heading{grid-column:1;grid-row:auto;margin-top:24px}
  form.woocommerce-checkout #order_review{grid-column:1;grid-row:auto;position:static}
}
@media (max-width:768px){
  .dk-cartpage__title{font-size:29px;margin-bottom:18px}
  /* Wiersz produktu: miniatura po lewej, treść po prawej, suma pod treścią.
     Tabela → grid (3 kolumny tabeli nie mieszczą się na telefonie). */
  .dk-cart-table,.dk-cart-table tbody{display:block}
  .dk-cart-table .dk-cart-row{display:grid;grid-template-columns:84px minmax(0,1fr);column-gap:14px;padding:16px 0;border-bottom:1px solid var(--dk-line)}
  .dk-cart-row td{display:block;padding:0 !important;border:none}
  .dk-cart-row__thumb{grid-column:1;grid-row:1/span 2;width:auto}
  .dk-cart-row__thumb img{width:84px;height:84px}
  .dk-cart-row__info{grid-column:2;grid-row:1}
  .dk-cart-row__name{font-size:15.5px}
  .dk-cart-row__unit{margin-bottom:10px}
  .dk-cart-row__controls{gap:12px}
  .dk-cart-row__total{grid-column:2;grid-row:2;text-align:left;font-size:15.5px;margin-top:10px;white-space:normal}
  .dk-cart-row__total::before{content:attr(data-title) ": ";font-family:var(--dk-sans);font-weight:500;font-size:13px;color:var(--dk-muted)}
  .dk-cart-actions{display:block}
  .dk-cart-actions td{display:flex !important;padding:16px 0 4px !important}
  .dk-cart-upsell__grid{grid-template-columns:repeat(2,1fr)}
  .dk-cart-actions td{gap:14px}
  /* sticky pasek: suma + Do kasy zawsze widoczne */
  .dk-cart-stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;border-top:1px solid var(--dk-line);box-shadow:0 -8px 30px rgba(42,35,29,.12);padding:12px 16px calc(12px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:14px}
  .dk-cart-stickybar__total{display:flex;flex-direction:column;line-height:1.2}
  .dk-cart-stickybar__total span{font-size:11.5px;color:var(--dk-faint);text-transform:uppercase;letter-spacing:.08em}
  .dk-cart-stickybar__total strong{font-family:var(--dk-serif);font-size:20px}
  .dk-cart-stickybar__btn{background:var(--dk-accent);color:#fff !important;border-radius:100px;padding:13px 26px;font-size:15px;font-weight:700;white-space:nowrap}
  .dk-cart-stickybar__btn:hover{background:var(--dk-accent-hover)}
  body.woocommerce-cart .dk-footer{padding-bottom:96px}
  body.woocommerce-cart .dk-top{bottom:86px}
}
@media (max-width:768px){
  .dk-container,.dk-hero,.dk-footer{padding-left:20px;padding-right:20px}
  .dk-cart-btn__label{display:none}
  .dk-cart-btn{padding:0 14px}
  .dk-hero{padding-top:16px}
  .dk-hero__frame{height:460px}
  .dk-hero__content{padding:0 28px;max-width:100%}
  .dk-hero h1{font-size:40px}
  .dk-hero p{font-size:16px}
  .dk-trust{grid-template-columns:repeat(2,1fr)}
  .dk-woo{padding-top:32px;padding-bottom:48px}
  .dk-woo ul.products{grid-template-columns:1fr;gap:16px}
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{grid-template-columns:minmax(0,1fr)}
  #order_review{padding:18px}
  /* Produkt: nazwa nad zdjęciem (drugi h1 renderowany hookiem) */
  .dk-woo .dk-product-title--mobile{display:block;font-family:var(--dk-serif);font-size:26px;font-weight:500;line-height:1.15;margin:0 0 14px}
  .dk-woo div.product .summary .product_title{display:none}
  /* Koszyk: kompaktowo, żeby mieścił się na ekranie */
  .dk-summary{padding:16px}
  .dk-fsbar{padding:11px 13px;margin-bottom:14px}
  .dk-summary__title{font-size:20px;margin-bottom:12px}
  .dk-cartpage__title{font-size:26px;margin-bottom:14px}
  .bcecm-point-picker{font-size:12.5px}
  .dk-woo h1,.dk-woo .woocommerce-products-header__title,.dk-woo .page-title{font-size:30px}
  .dk-cats__grid{grid-template-columns:1fr}
  .dk-sec-head{flex-direction:column;align-items:flex-start;gap:10px}
  .dk-sec-head h2{font-size:30px}
  .dk-story__box{grid-template-columns:1fr}
  .dk-story__media{min-height:280px;order:-1}
  .dk-story__text{padding:40px 28px}
  .dk-story__text h2{font-size:32px}
  .dk-sub__box{grid-template-columns:1fr;gap:32px;padding:40px 28px}
  .dk-sub__text h2{font-size:32px}
  .dk-news__box{padding:36px 24px}
  .dk-news__form{flex-direction:column}
  .dk-news__submit{padding:14px}
  .dk-footer{margin-top:40px}
}
@media (max-width:520px){
  .dk-products__grid{grid-template-columns:1fr}
  .dk-woo ul.products{grid-template-columns:1fr}
  .dk-footer__grid{grid-template-columns:1fr;gap:28px}
  .dk-footer__bottom{flex-direction:column;align-items:flex-start}
  .dk-hero h1{font-size:34px}
}

/* Dostępność: ogranicz ruch */
@media (prefers-reduced-motion:reduce){
  .dk-announce__track{animation:none}
  .dk-cat,.dk-btn,.dk-add,.dk-chip,.dk-card,.dk-icon-btn,.dk-cart-btn{transition:none}
  .dk-hero__media{display:none}
}
