/*
Theme Name: North Child Theme
Theme URI: https://themeforest.net/item/north-responsive-woocommerce-theme/9117256
Description: Dog Couture 2026 - redesign. Beze i brazy, nowoczesny glamour, sans-serif.
Version: 3.2.3
Author: fuelthemes
Author URI: http://themeforest.net/user/fuelthemes
Template: north-wp
Text Domain: north
License: Themeforest Split Licence
License URI: -
*/

/* =====================================================================
   DOG COUTURE 2026 - DESIGN SYSTEM v2.1
   Paleta: beze + braz (oryginalne tony wlasciciela) + zloty akcent
   Typografia: Jost (sans-serif, calosc) + Merienda (tylko tytul hero)
   ================================================================== */

:root {
  --dc-cream: #F5ECDF;      /* oryginalny krem tla */
  --dc-paper: #FFFAF4;      /* jasny papier - karty, header */
  --dc-sand: #E4CFBA;
  --dc-latte: #EFE2D2;      /* delikatny separator (miedzy paper a sand) */       /* piaskowy - obramowania */
  --dc-ink: #2B2421;        /* oryginalny kolor tekstu */
  --dc-soft: #75665E;       /* oryginalny kolor podtytulow */
  --dc-accent: #8A5C3F;     /* oryginalny braz akcentowy */
  --dc-accent-dark: #563525;/* ciemny braz */
  --dc-gold: #BD8B38;       /* oryginalne zloto */
  --dc-gold-soft: #ECD7A5;
  --dc-rose: #993556;      /* akcent rozany z mockupu */
  --dc-rose-ink: #4B1528;  /* ciemny roz do tekstu */
  --dc-rose-soft: #FBEAF0; /* pudrowy roz - badge */
  --dc-white: #FFFFFF;

  --dc-font-body: 'Jost', 'Helvetica Neue', Arial, sans-serif;
  --dc-font-hero: 'Merienda', cursive;

  --dc-radius: 14px;
  --dc-radius-pill: 999px;
  --dc-shadow-sm: 0 2px 12px rgba(64, 48, 38, .07);
  --dc-shadow-md: 0 12px 32px rgba(64, 48, 38, .12);
  --dc-container: min(100% - 48px, 1280px);
}

/* ------------------------------ BAZA --------------------------------- */

body.dc-2026,
body.dc-2026 #wrapper,
body.dc-2026 #wrapper > [role="main"] {
  background: var(--dc-cream) !important;
  color: var(--dc-ink);
  font-family: var(--dc-font-body);
  font-weight: 400;
  letter-spacing: .01em;
}

body.dc-2026 .post,
body.dc-2026 .page-padding,
body.dc-2026 .page-description,
body.dc-2026 .woocommerce,
body.dc-2026 .woocommerce-page {
  background: transparent !important;
}

/* ------------------------------ TYPOGRAFIA (sans-serif) -------------- */

body.dc-2026 h1,
body.dc-2026 h2,
body.dc-2026 h3,
body.dc-2026 h4,
body.dc-2026 h5,
body.dc-2026 .woocommerce-loop-product__title,
body.dc-2026 .product_title {
  font-family: var(--dc-font-body);
  font-weight: 500;
  color: var(--dc-ink);
  letter-spacing: .01em;
}

body.dc-2026 h1 { font-size: clamp(38px, 4.2vw, 60px); line-height: 1.08; }
body.dc-2026 h2 { font-size: clamp(28px, 2.8vw, 42px); line-height: 1.14; }
body.dc-2026 h3 { font-size: clamp(20px, 1.8vw, 26px); line-height: 1.25; }

body.dc-2026 a { color: var(--dc-accent); }
body.dc-2026 a:hover { color: var(--dc-accent-dark); }

/* ------------------------------ NAGLOWEK ----------------------------- */

body.dc-2026 #wrapper > .header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10050 !important;
  background: rgba(255, 250, 244, .95) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--dc-sand);
  box-shadow: none;
}

body.dc-2026 #wrapper > .header:before,
body.dc-2026 #wrapper > .header:after { display: none !important; }

body.dc-2026 #wrapper > .header .row,
body.dc-2026 #wrapper > .header .columns,
body.dc-2026 #wrapper > .header .header-inner,
body.dc-2026 #wrapper > .header .thb-navbar,
body.dc-2026 #wrapper > .header .full-menu,
body.dc-2026 #wrapper > .header .menu-holder,
body.dc-2026 #wrapper > .header .logo-holder {
  background: transparent !important;
  float: none;
}

body.dc-2026 #wrapper > .header .logo-holder img { max-height: 72px; }

body.dc-2026 #wrapper > .header.fixed,
body.dc-2026 #wrapper > .header:hover,
body.dc-2026 #wrapper > .header.light-title,
body.dc-2026 #wrapper > .header.dark-title {
  background: rgba(255, 250, 244, .97) !important;
}

body.dc-2026 .header .menu-holder a,
body.dc-2026 .header nav a {
  font-family: var(--dc-font-body);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--dc-ink) !important;
}
body.dc-2026 .header .menu-holder a:hover,
body.dc-2026 .header nav a:hover { color: var(--dc-accent) !important; }

body.dc-2026 .thb-global-notification {
  display: flex; align-items: center; justify-content: center;
  min-height: 0; height: auto;
  padding: 9px 18px; line-height: 1.2;
  background: var(--dc-accent-dark) !important;
  color: var(--dc-gold-soft) !important;
  font-size: 12px; letter-spacing: .12em; text-transform: uppercase;
}
body.dc-2026 .thb-global-notification .row,
body.dc-2026 .thb-global-notification .columns,
body.dc-2026 .thb-global-notification p {
  min-height: 0; margin: 0;
  display: flex; align-items: center; justify-content: center;
  background: transparent !important;
}

body.dc-2026 .header,
body.dc-2026 .thb-global-notification { pointer-events: auto; }
body.dc-2026 #quick_cart,
body.dc-2026 .header a,
body.dc-2026 .header button,
body.dc-2026 .mobile-toggle {
  position: relative; z-index: 3; pointer-events: auto;
}

/* ------------------------------ PRZYCISKI ---------------------------- */

body.dc-2026 .button,
body.dc-2026 a.button,
body.dc-2026 button.button,
body.dc-2026 input[type="submit"],
body.dc-2026 .single_add_to_cart_button,
body.dc-2026 .checkout-button {
  background: transparent !important;
  color: var(--dc-ink) !important;
  border: 1px solid var(--dc-accent) !important;
  border-radius: var(--dc-radius-pill) !important;
  font-family: var(--dc-font-body) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 12px 24px !important;
  line-height: 1.2 !important;
  min-height: 44px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: normal;
  box-shadow: none !important;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
body.dc-2026 .button:hover,
body.dc-2026 a.button:hover,
body.dc-2026 button.button:hover,
body.dc-2026 input[type="submit"]:hover,
body.dc-2026 .single_add_to_cart_button:hover {
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
  transform: none;
}

/* Glowne CTA (dodaj do koszyka na stronie produktu, kasa) - wypelnione, ale spokojne */
body.dc-2026 .single_add_to_cart_button,
body.dc-2026 .checkout-button,
body.dc-2026 #place_order {
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
}
body.dc-2026 .single_add_to_cart_button:hover,
body.dc-2026 .checkout-button:hover,
body.dc-2026 #place_order:hover {
  background: var(--dc-rose-ink) !important;
  border-color: var(--dc-rose-ink) !important;
}
body.dc-2026 .dc-btn-outline {
  background: transparent !important;
  color: var(--dc-accent-dark) !important;
  border: 1px solid var(--dc-accent) !important;
  box-shadow: none;
}
body.dc-2026 .dc-btn-outline:hover {
  background: var(--dc-accent-dark) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-accent-dark) !important;
}

/* ------------------------------ KARTY PRODUKTOW (FIX) ---------------- */

body.dc-2026 ul.products {
  width: var(--dc-container);
  margin-left: auto;
  margin-right: auto;
}

body.dc-2026 ul.products li.product {
  background: var(--dc-white);
  border-radius: var(--dc-radius);
  padding: 12px 16px 20px;
  border: 1px solid var(--dc-sand);
  box-shadow: var(--dc-shadow-sm);
  transition: transform .2s ease, box-shadow .2s ease;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
body.dc-2026 ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: var(--dc-shadow-md);
}
body.dc-2026 ul.products li.product img { border-radius: calc(var(--dc-radius) - 4px); }

body.dc-2026 ul.products li.product h3,
body.dc-2026 ul.products li.product .woocommerce-loop-product__title {
  font-size: 17px;
  font-weight: 500;
  margin: 14px 0 6px;
  text-align: left;
}
body.dc-2026 ul.products li.product h3 a { color: var(--dc-ink); }

/* WYLACZENIE mechanizmu transform-price motywu (przyczyna nachodzenia) */
body.dc-2026 .products .product .thb_transform_price,
body.dc-2026 .products .product.thb-listing-button-style4 .thb_transform_price {
  position: static !important;
  overflow: visible !important;
  height: auto !important;
  line-height: 1.4 !important;
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: auto;
}
body.dc-2026 .products .product .thb_transform_price .thb_transform_loop_price,
body.dc-2026 .products .product.thb-listing-button-style4 .thb_transform_price .thb_transform_loop_price {
  position: static !important;
  transform: none !important;
  line-height: 1.4 !important;
}
body.dc-2026 .products .product .thb_transform_price .thb_transform_loop_buttons,
body.dc-2026 .products .product.thb-listing-button-style4 .thb_transform_price .thb_transform_loop_buttons {
  position: static !important;
  top: auto !important;
  transform: none !important;
  height: auto !important;
  width: 100%;
  display: flex;
  align-items: center;
}
body.dc-2026 .products .product.thb-listing-button-style4:hover .thb_transform_price .thb_transform_loop_price {
  transform: none !important;
}

body.dc-2026 ul.products li.product { position: relative; }

body.dc-2026 .dc-badge-new {
  position: absolute;
  top: 22px;
  left: 22px;
  z-index: 3;
  background: var(--dc-rose-soft);
  color: var(--dc-rose-ink);
  font-size: 11px;
  letter-spacing: .04em;
  padding: 4px 12px;
  border-radius: var(--dc-radius-pill);
}

body.dc-2026 .dc-card-sub {
  font-size: 13px;
  color: var(--dc-soft);
  margin: 0 0 12px;
  line-height: 1.45;
  min-height: 19px;
}

/* rzad: cena po lewej, przycisk po prawej */
body.dc-2026 .products .product .thb_transform_price,
body.dc-2026 .products .product.thb-listing-button-style4 .thb_transform_price {
  flex-direction: row !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

body.dc-2026 ul.products li.product .price {
  color: var(--dc-rose);
  font-family: var(--dc-font-body);
  font-weight: 600;
  font-size: 15px;
  letter-spacing: .02em;
  margin: 0;
  text-align: left;
  flex: 1 1 auto;
}

body.dc-2026 .woocommerce ul.products li.product .button,
body.dc-2026 .woocommerce-page ul.products li.product .button {
  min-height: 38px;
  width: auto;
  flex: 0 0 auto;
  padding: 8px 18px !important;
  font-size: 12px !important;
  margin: 0;
  border-color: var(--dc-sand) !important;
}
/* ------------------------------ ARCHIWUM SKLEPU ---------------------- */

body.dc-2026.woocommerce-shop .shop-header-style1,
body.dc-2026.woocommerce-shop .shop-header-style2,
body.dc-2026.tax-product_cat .shop-header-style1,
body.dc-2026.tax-product_cat .shop-header-style2 { display: none !important; }

body.dc-2026.woocommerce-shop .page-description,
body.dc-2026.tax-product_cat .page-description {
  width: var(--dc-container);
  margin: 0 auto;
  padding: clamp(48px, 5vw, 84px) 0 8px;
}

body.dc-2026 .woocommerce-breadcrumb,
body.dc-2026 .breadcrumb,
body.dc-2026 .breadcrumbs { display: none !important; }

body.dc-2026.woocommerce-shop .shop_bar,
body.dc-2026.tax-product_cat .shop_bar {
  width: var(--dc-container);
  margin: 0 auto 26px;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
body.dc-2026.woocommerce-shop .shop_bar .row,
body.dc-2026.tax-product_cat .shop_bar .row {
  display: flex; align-items: center; justify-content: space-between;
  gap: 18px; width: 100%; margin: 0; max-width: none;
}
body.dc-2026.woocommerce-shop .shop_bar .columns,
body.dc-2026.tax-product_cat .shop_bar .columns { float: none; padding: 0; width: auto; }

body.dc-2026 .woocommerce-ordering select {
  min-width: 250px;
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius-pill);
  padding: 10px 18px;
  background-color: var(--dc-paper);
  font-family: var(--dc-font-body);
}

body.dc-2026.woocommerce-shop #wrapper > [role="main"],
body.dc-2026.tax-product_cat #wrapper > [role="main"] { padding-bottom: clamp(64px, 7vw, 110px); }

body.dc-2026.tax-product_cat .term-description,
body.dc-2026.tax-product_cat .woocommerce-products-header,
body.dc-2026.woocommerce-shop .woocommerce-products-header {
  width: var(--dc-container); margin-left: auto; margin-right: auto;
}

/* ------------------------------ STRONA PRODUKTU ---------------------- */

body.dc-2026.single-product #wrapper > [role="main"] { padding-top: clamp(32px, 4vw, 56px) !important; }
body.dc-2026.single-product div.product { margin-bottom: clamp(28px, 4vw, 48px) !important; }
body.dc-2026.single-product div.product .woocommerce-tabs { clear: both; margin-top: clamp(28px, 4vw, 52px) !important; }

body.dc-2026 .dc-swatches { margin: 0 0 22px; }
body.dc-2026 .dc-swatches__label { font-size: 14px; margin-bottom: 10px; }
body.dc-2026 .dc-swatches__items { display: flex; flex-wrap: wrap; gap: 10px; }
body.dc-2026 .dc-swatches__item {
  width: 72px; color: inherit; text-decoration: none;
  display: flex; flex-direction: column; align-items: center; gap: 6px;
}
body.dc-2026 .dc-swatches__item img {
  width: 64px; height: 64px; object-fit: cover;
  border: 1px solid var(--dc-sand); border-radius: 10px;
  background: var(--dc-white); padding: 2px;
}
body.dc-2026 .dc-swatches__item.is-active img {
  border-color: var(--dc-accent);
  box-shadow: 0 0 0 2px rgba(138, 92, 63, .2);
}
body.dc-2026 .dc-swatches__item span { font-size: 11px; text-align: center; }

/* ------------------------------ KOSZYK / KASA / OVERLAYE ------------- */

body.dc-2026.woocommerce-cart .cart-collaterals,
body.dc-2026.woocommerce-checkout .woocommerce {
  width: var(--dc-container); margin-left: auto; margin-right: auto;
}
body.dc-2026 .woocommerce-cart table.cart td.actions .coupon { display: flex; flex-wrap: wrap; gap: 10px; }
body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .input-text {
  min-width: 220px; border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius-pill); padding: 10px 18px;
}

body.dc-2026 .side-panel { z-index: 100020; }
body.dc-2026 .mfp-bg { z-index: 100000 !important; }
body.dc-2026 .mfp-wrap { z-index: 100010 !important; }
body.dc-2026 .mfp-wrap.quick-search { z-index: 100070 !important; }
body.dc-2026 .mfp-bg.quick-search { z-index: 100060 !important; }
body.dc-2026 .pswp, body.dc-2026 .pswp__bg, body.dc-2026 .pswp__scroll-wrap { z-index: 100200 !important; }
body.dc-2026 #side-cart.side-panel,
body.dc-2026 #mobile-menu.side-panel,
body.dc-2026 #side-filters.side-panel {
  position: fixed; top: 0 !important; bottom: 0 !important;
  height: 100dvh !important; max-height: 100dvh !important;
  z-index: 100080 !important; background: var(--dc-paper);
}
body.dc-2026 #side-cart.side-panel { right: 0 !important; transform: translateX(100%); }
body.dc-2026 #side-cart.side-panel.active,
body.dc-2026.open-cart #side-cart.side-panel { transform: translateX(0); }
body.dc-2026 #side-cart header,
body.dc-2026 #mobile-menu header,
body.dc-2026 #side-filters header { min-height: 74px; background: transparent; }

body.dc-2026 #quick-shop,
body.dc-2026 a.quick-shop,
body.dc-2026 .quick-shop-button,
body.dc-2026 .product .quick-shop,
body.dc-2026 .mfp-wrap.quick-shop,
body.dc-2026 .mfp-bg.quick-shop { display: none !important; pointer-events: none !important; }

body.dc-2026 .woocommerce-store-notice.demo_store {
  position: fixed !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important;
  z-index: 9000 !important;
  min-height: 34px; height: auto !important;
  padding: 8px 18px;
  display: flex; align-items: center; justify-content: center; gap: 6px;
  text-align: center;
  background: var(--dc-accent-dark);
  color: var(--dc-gold-soft);
  font-size: 11px; letter-spacing: .08em;
}
body.dc-2026 .woocommerce-store-notice.demo_store a { position: static; margin-left: 4px; color: var(--dc-gold-soft); text-decoration: underline; }
body.dc-2026.woocommerce-demo-store { padding-top: 0 !important; }

body.dc-2026 .footer,
body.dc-2026 footer.footer { background: var(--dc-accent-dark) !important; color: var(--dc-gold-soft); }
body.dc-2026 .footer a { color: var(--dc-paper); }
body.dc-2026 .footer a:hover { color: var(--dc-gold-soft); }

/* ------------------------------ PODSTRONY (kontenery) ---------------- */

/* Zwykle strony (regulaminy, o nas, kontakt) - tresc w kontenerze */
body.dc-2026.page:not(.home) #wrapper > [role="main"] > .post,
body.dc-2026.page:not(.home) #wrapper > [role="main"] > .page-padding,
body.dc-2026.single-post #wrapper > [role="main"] > .post {
  width: var(--dc-container);
  margin-left: auto;
  margin-right: auto;
  padding-top: clamp(40px, 5vw, 72px);
  padding-bottom: clamp(56px, 7vw, 100px);
}

/* Legacy klasy ze starych tresci stron */
body.dc-2026 .dc-page-wrap,
body.dc-2026 .dc-wrap,
body.dc-2026 .dc-legal {
  width: min(100% - 0px, 980px);
  margin-left: auto;
  margin-right: auto;
}
body.dc-2026 .dc-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
}
body.dc-2026 .dc-card-grid .dc-card {
  padding: 24px 26px;
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  background: var(--dc-paper);
  box-shadow: var(--dc-shadow-sm);
}
body.dc-2026 .dc-kicker { 
  font-size: 12px; letter-spacing: .26em; text-transform: uppercase;
  color: var(--dc-gold); margin: 0 0 10px;
}

/* Opisy kategorii/sklepu w starych kontenerach */
body.dc-2026.woocommerce-shop .page-description .dc-page-wrap,
body.dc-2026.tax-product_cat .page-description .dc-page-wrap {
  width: 100%; margin: 0; padding: 0;
}

@media (max-width: 980px) {
  body.dc-2026 .dc-card-grid { grid-template-columns: 1fr; }
}
/* =====================================================================
   HERO SLIDER - oryginalny styl (Merienda, ciemny tekst, gradient span)
   Uklad: tekst po lewej na kremie, zdjecie po prawej w ramce
   ================================================================== */

.dc-hero {
  position: relative;
  width: 100%;
  background: radial-gradient(circle at 50% 0, rgba(255,250,244,.9), var(--dc-cream) 48%);
  overflow: hidden;
}

.dc-hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity .8s ease;
  pointer-events: none;
}
.dc-hero__slide.is-active {
  position: relative;
  opacity: 1;
  pointer-events: auto;
}

.dc-hero__grid {
  width: min(100% - 48px, 1320px);
  margin: 0 auto;
  min-height: clamp(480px, calc(100vh - 210px), 680px);
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(380px, 1.05fr);
  gap: clamp(34px, 5vw, 74px);
  align-items: center;
  padding: clamp(24px, 3vw, 44px) 0 clamp(48px, 5vw, 64px);
}

.dc-hero__kicker {
  font-family: var(--dc-font-body);
  font-size: 13px;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--dc-gold);
  margin: 0 0 16px;
}

.dc-hero__title {
  font-family: var(--dc-font-hero) !important;
  font-weight: 800;
  font-size: clamp(40px, 5.45vw, 78px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0;
  color: var(--dc-ink) !important;
  max-width: 720px;
  margin: 0 0 24px;
}
.dc-hero__title span {
  background: linear-gradient(90deg, #2b2421 0%, #5a3a2c 64%, #a87538 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.dc-hero__text {
  font-size: 19px;
  line-height: 1.58;
  color: var(--dc-soft);
  max-width: 660px;
  margin: 0 0 32px;
}

.dc-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; }

.dc-hero__media {
  position: relative;
  aspect-ratio: 1 / 1;
  max-height: min(64vh, 620px);
  width: 100%;
  justify-self: center;
  overflow: hidden;
  border: 1px solid rgba(189, 139, 56, .34);
  box-shadow: 0 28px 70px rgba(64, 48, 38, .16), 0 0 0 14px rgba(255, 250, 244, .62);
}
.dc-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dc-hero__media::after {
  content: '';
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255, 250, 244, .68);
  pointer-events: none;
}

.dc-hero__dots {
  position: absolute;
  z-index: 3;
  left: 50%;
  transform: translateX(-50%);
  bottom: 22px;
  display: flex;
  gap: 10px;
}
.dc-hero__dot {
  width: 34px; height: 3px;
  border: none; border-radius: 2px;
  background: rgba(86, 53, 37, .22);
  cursor: pointer; padding: 0;
  transition: background .2s ease;
}
.dc-hero__dot.is-active { background: var(--dc-gold); }

/* pas USP - oryginalny gradient */
.dc-usp {
  background: linear-gradient(90deg, #4A3024, #8A5C3F);
  color: var(--dc-paper);
  padding: 18px 0;
  box-shadow: 0 -1px 0 rgba(255,255,255,.14) inset, 0 18px 40px rgba(86,53,37,.12);
}
.dc-usp__inner {
  width: var(--dc-container);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.dc-usp__item {
  display: flex; align-items: center; gap: 12px;
  font-size: 13px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
}
.dc-usp__item::before {
  content: '';
  width: 9px; height: 9px; border-radius: 50%;
  background: var(--dc-gold-soft);
  box-shadow: 0 0 0 5px rgba(236, 215, 165, .16);
  flex: none;
}

/* sekcje strony glownej */
.dc-section {
  width: var(--dc-container);
  margin: 0 auto;
  padding: clamp(56px, 7vw, 100px) 0 0;
}
.dc-section__head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 24px; margin-bottom: 34px; flex-wrap: wrap;
}
.dc-section__kicker {
  font-size: 12px; letter-spacing: .26em; text-transform: uppercase;
  color: var(--dc-gold); margin: 0 0 10px;
}
.dc-section__title { margin: 0; }
.dc-section__title::after {
  content: '';
  display: block;
  width: 84px; height: 2px;
  margin-top: 18px;
  background: linear-gradient(90deg, var(--dc-gold), transparent);
}
.dc-section__link {
  font-size: 13px; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid var(--dc-gold);
  padding-bottom: 3px; white-space: nowrap;
}

.dc-cats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.dc-cat {
  position: relative;
  border-radius: var(--dc-radius);
  overflow: hidden;
  aspect-ratio: 4 / 5;
  display: block;
  text-decoration: none;
  box-shadow: var(--dc-shadow-sm);
}
.dc-cat img {
  position: absolute; inset: 0;
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .5s ease;
}
.dc-cat:hover img { transform: scale(1.05); }
.dc-cat::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(43,36,33,0) 40%, rgba(43,36,33,.64) 100%);
}
.dc-cat__label {
  position: absolute; z-index: 2;
  left: 22px; right: 22px; bottom: 20px;
  color: var(--dc-paper);
  font-family: var(--dc-font-body);
  font-weight: 500;
  font-size: clamp(22px, 2vw, 28px);
}
.dc-cat__label small {
  display: block;
  font-size: 12px; font-weight: 400;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--dc-gold-soft);
  margin-top: 6px;
}

.dc-story {
  margin-top: clamp(56px, 7vw, 100px);
  background: var(--dc-sand);
  padding: clamp(48px, 6vw, 84px) 0;
}
.dc-story__inner {
  width: var(--dc-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.dc-story__text p { font-size: 16px; line-height: 1.7; max-width: 520px; color: var(--dc-ink); }
.dc-story__img {
  border-radius: var(--dc-radius);
  overflow: hidden;
  box-shadow: var(--dc-shadow-md);
  aspect-ratio: 4 / 3;
}
.dc-story__img img { width: 100%; height: 100%; object-fit: cover; }

.dc-home-end { padding-bottom: clamp(64px, 8vw, 110px); }

/* ------------------------------ RESPONSIVE --------------------------- */

@media (max-width: 980px) {
  .dc-hero__grid {
    grid-template-columns: 1fr;
    min-height: 0;
    padding-top: 28px;
    gap: 30px;
  }
  .dc-hero__media { max-height: none; aspect-ratio: 4 / 3; }
  .dc-cats { grid-template-columns: 1fr 1fr; }
  .dc-story__inner { grid-template-columns: 1fr; }
}

@media (max-width: 735px) {
  :root { --dc-container: min(100% - 32px, 1280px); }
  .dc-hero__grid { width: min(100% - 32px, 1320px); }
  .dc-hero__title { font-size: clamp(34px, 10vw, 48px) !important; }
  .dc-hero__text { font-size: 16px; }
  .dc-hero__media { box-shadow: 0 18px 44px rgba(64,48,38,.14), 0 0 0 8px rgba(255,250,244,.62); }
  .dc-hero__media::after { inset: 10px; }
  .dc-cats { grid-template-columns: 1fr; }
  .dc-usp__inner { justify-content: center; row-gap: 10px; }
  body.dc-2026 .thb-global-notification { padding: 6px 12px; font-size: 10px; }
  body.dc-2026 .woocommerce-store-notice.demo_store { font-size: 10px; padding: 6px 12px; }
  body.dc-2026 .woocommerce-ordering select { width: 100%; min-width: 0; }
  body.dc-2026.woocommerce-shop .shop_bar .row,
  body.dc-2026.tax-product_cat .shop_bar .row { flex-direction: column; align-items: stretch; }
  body.dc-2026 .woocommerce-cart table.cart td.actions .coupon { flex-direction: column; }
  body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .input-text,
  body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .button { width: 100%; }
  body.dc-2026 ul.products li.product { padding: 10px 12px 16px; }
}
/* =====================================================================
   FIXES v2.3
   ================================================================== */

/* 1) ADMIN BAR - wykluczenie z naszych styli przyciskow */
body.dc-2026 #wpadminbar input[type="submit"],
body.dc-2026 #wpadminbar .adminbar-button {
  all: revert !important;
}

/* 2) Ubij podkreslenie ::after motywu na wszystkich naszych przyciskach */
body.dc-2026 .button::after,
body.dc-2026 a.button::after,
body.dc-2026 button.button::after,
body.dc-2026 .button.border-fill::after,
body.dc-2026 ul.products li.product .button::after {
  content: none !important;
  display: none !important;
}
body.dc-2026 .button,
body.dc-2026 ul.products li.product .button {
  text-decoration: none !important;
  background-image: none !important;
}

/* 3) SIATKA PRODUKTOW z odstepami (zastepuje flex motywu) */
body.dc-2026 ul.products,
body.dc-2026 ul.products.row {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 22px;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.dc-2026 ul.products li.product,
body.dc-2026 ul.products li.product.columns {
  width: auto !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding-left: 16px;
  padding-right: 16px;
}

/* 4) HERO: rowna wysokosc slajdow (grid-stack zamiast absolute) */
.dc-hero { display: grid; }
.dc-hero__slide {
  grid-area: 1 / 1;
  position: relative;
  inset: auto;
}
.dc-hero__slide.is-active { position: relative; }
.dc-hero__title {
  min-height: calc(2 * 1.08em); /* stala przestrzen na 2 linie tytulu */
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.dc-hero__text { min-height: calc(3 * 1.58em); }

/* 5) RYTM TRESCI PODSTRON: odstepy sekcji i naglowkow */
body.dc-2026 .page-description h2,
body.dc-2026 .post h2 { margin: clamp(36px, 4vw, 56px) 0 14px; }
body.dc-2026 .page-description h3,
body.dc-2026 .post h3 { margin: 26px 0 10px; }
body.dc-2026 .page-description p,
body.dc-2026 .post p { margin: 0 0 16px; line-height: 1.65; }
body.dc-2026 .page-description ul,
body.dc-2026 .post ul,
body.dc-2026 .post ol { margin: 0 0 18px; padding-left: 22px; line-height: 1.65; }

body.dc-2026 .dc-card-grid { margin: 28px 0 clamp(40px, 5vw, 64px); }
body.dc-2026 .dc-card-grid .dc-card h2,
body.dc-2026 .dc-card-grid .dc-card h3 { margin: 0 0 10px; }
body.dc-2026 .dc-card-grid .dc-card p { margin: 0; }

/* opis sklepu: dodatkowy oddech pod trescia przed lista produktow */
body.dc-2026.woocommerce-shop .page-description,
body.dc-2026.tax-product_cat .page-description { padding-bottom: clamp(20px, 3vw, 36px); }
/* =====================================================================
   FIXES v2.4 - spojnosc calosci
   ================================================================== */

/* 1) HERO: tytul z gradientem czarno-brazowo-zlotym na CALYM tekscie (jak oryginal) */
.dc-hero__title {
  background: linear-gradient(100deg, #2b2421 0%, #2b2421 34%, #5a3a2c 62%, #a87538 92%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
}
.dc-hero__title span {
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  color: inherit;
  -webkit-text-fill-color: inherit;
}

/* 2) HERO: zawsze miesci sie w ekranie (desktop i mobile) */
.dc-hero__grid {
  min-height: 0;
  height: calc(100svh - 218px); /* pasek info + naglowek + notka sklepu */
  max-height: none;
  overflow: hidden;
}
body.admin-bar .dc-hero__grid { height: calc(100svh - 250px); }
.dc-hero__media {
  max-height: 100%;
  aspect-ratio: auto;
  height: min(100%, 620px);
}
.dc-hero__copy { min-width: 0; }
.dc-hero__title { font-size: clamp(34px, 4.6vw, 66px) !important; }
.dc-hero__text { font-size: clamp(15px, 1.2vw, 18px); margin-bottom: 24px; min-height: 0; }

@media (max-width: 980px) {
  .dc-hero__grid {
    height: auto;
    min-height: calc(100svh - 190px);
    max-height: none;
    overflow: visible;
    padding-bottom: 56px;
  }
  .dc-hero__media { height: auto; aspect-ratio: 4 / 3; max-height: 44svh; }
  .dc-hero__media img { position: absolute; }
}

/* 3) NAGLOWEK: Szukaj i Koszyk zawsze widoczne (takze na glownej) */
body.dc-2026 .header .account-holder a,
body.dc-2026 .header .account-holder,
body.dc-2026 .header #quick_search,
body.dc-2026 .header #quick_cart,
body.dc-2026 .header .cart-amount {
  color: var(--dc-ink) !important;
  opacity: 1 !important;
}
body.dc-2026.light-title .header a,
body.dc-2026 .header.light-title a { color: var(--dc-ink) !important; }

/* 4) KARTY: wysrodkowana nazwa i cena */
body.dc-2026 ul.products li.product h3,
body.dc-2026 ul.products li.product .woocommerce-loop-product__title { text-align: center; }
body.dc-2026 .dc-card-sub { text-align: center; }
body.dc-2026 .products .product .thb_transform_price,
body.dc-2026 .products .product.thb-listing-button-style4 .thb_transform_price {
  flex-direction: column !important;
  align-items: center;
  gap: 12px;
}
body.dc-2026 ul.products li.product .price { text-align: center; flex: none; }

/* 5) UJEDNOLICONE SZEROKOSCI PODSTRON (jak glowna/sklep) */
body.dc-2026 .dc-page-wrap,
body.dc-2026 .dc-wrap,
body.dc-2026 .dc-legal {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 6) STOPKA DC */
.dc-footer {
  background: var(--dc-accent-dark) !important;
  color: var(--dc-gold-soft);
  margin-top: clamp(56px, 7vw, 96px);
}
body.dc-2026.home .dc-footer,
body.dc-2026.woocommerce-shop .dc-footer { margin-top: 0; }
.dc-footer__inner {
  width: var(--dc-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  padding: clamp(44px, 5vw, 72px) 0 clamp(28px, 3vw, 44px);
}
.dc-footer__logo {
  font-family: var(--dc-font-hero);
  font-weight: 800;
  font-size: 26px;
  color: var(--dc-paper);
  margin: 0 0 12px;
}
.dc-footer__tagline { font-size: 14px; line-height: 1.6; margin: 0; color: rgba(236, 215, 165, .85); }
.dc-footer__head {
  font-size: 12px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--dc-gold-soft);
  margin: 0 0 14px;
}
.dc-footer__col p { margin: 0 0 9px; font-size: 14px; }
.dc-footer__col a { color: var(--dc-paper); text-decoration: none; }
.dc-footer__col a:hover { color: var(--dc-gold-soft); }
.dc-footer__muted { color: rgba(236, 215, 165, .6); font-size: 13px; }
.dc-footer__bottom {
  border-top: 1px solid rgba(236, 215, 165, .18);
  padding: 18px 0 calc(18px + 40px); /* +40px na notke sklepu testowego fixed bottom */
  text-align: center;
}
.dc-footer__bottom p { margin: 0; font-size: 12px; color: rgba(236, 215, 165, .6); }

@media (max-width: 980px) {
  .dc-footer__inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .dc-footer__inner { grid-template-columns: 1fr; }
}

/* 7) KONTAKT: karty i linki dokumentow */
.dc-contact-line { display: flex; gap: 12px; align-items: baseline; margin: 0 0 8px !important; }
.dc-contact-label {
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--dc-soft);
  min-width: 64px;
}
.dc-contact-line a { font-weight: 500; font-size: 16px; }
.dc-contact-note { font-size: 13px; color: var(--dc-soft); margin-top: 12px !important; }

.dc-doc-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 22px 0 8px;
}
.dc-doc-link {
  display: block;
  padding: 18px 20px;
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  background: var(--dc-paper);
  text-decoration: none;
  transition: border-color .18s ease, transform .18s ease;
}
.dc-doc-link:hover { border-color: var(--dc-accent); transform: translateY(-2px); }
.dc-doc-link strong { display: block; color: var(--dc-ink); margin-bottom: 4px; }
.dc-doc-link span { font-size: 13px; color: var(--dc-soft); line-height: 1.45; }
@media (max-width: 735px) { .dc-doc-links { grid-template-columns: 1fr; } }

/* 8) O NAS */
.dc-lead { font-size: 18px; line-height: 1.6; color: var(--dc-soft); max-width: 760px; }
.dc-about-hero {
  margin: 34px 0 44px;
  border-radius: var(--dc-radius);
  overflow: hidden;
  box-shadow: var(--dc-shadow-md);
  aspect-ratio: 21 / 9;
}
.dc-about-hero img { width: 100%; height: 100%; object-fit: cover; }
.dc-about-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(24px, 4vw, 64px);
  margin-bottom: 20px;
}
.dc-about-cols h2 { margin-top: 0 !important; }
.dc-about-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 40px 0;
}
.dc-about-gallery img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--dc-radius);
  box-shadow: var(--dc-shadow-sm);
}
.dc-about-cta {
  text-align: center;
  padding: clamp(36px, 5vw, 64px) 24px;
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
}
.dc-about-cta h2 { margin: 0 0 10px !important; }
.dc-about-cta p { max-width: 520px; margin-left: auto; margin-right: auto; }
@media (max-width: 860px) {
  .dc-about-cols, .dc-about-gallery { grid-template-columns: 1fr; }
  .dc-about-hero { aspect-ratio: 16 / 10; }
}
/* =====================================================================
   FIXES v2.5
   ================================================================== */

/* 1) HERO: gradient z czernia max 25%, tytul bez przycinania */
.dc-hero__title {
  background: linear-gradient(100deg, #2b2421 0%, #2b2421 22%, #5a3a2c 58%, #a87538 90%);
  -webkit-background-clip: text;
  background-clip: text;
  line-height: 1.18 !important;
  min-height: 0;
  display: block;
  padding-bottom: .08em; /* zapas na ogonki Merienda */
  overflow: visible;
}
.dc-hero__grid { overflow: visible; }
.dc-hero__slide { overflow: hidden; }
.dc-hero__text { min-height: 0; }

/* 2) KICKERY stron - usuniete calkowicie (bezpiecznik CSS) */
body.dc-2026 .dc-kicker { display: none !important; }

/* 3) BR-y wpautop w gridach nie moga byc elementami siatki */
.dc-card-grid br,
.dc-doc-links br,
.dc-about-gallery br,
.dc-about-cols br,
.dc-cats br,
.dc-footer__inner br { display: none !important; }

/* 4) Rowne wysokosci kafli w gridach */
.dc-card-grid { align-items: stretch; }
.dc-card-grid .dc-card { height: 100%; display: flex; flex-direction: column; }
.dc-doc-links { align-items: stretch; }
.dc-doc-link { height: 100%; }

/* 5) PASEK FILTROW na gorze, jako czysty toolbar */
body.dc-2026.woocommerce-shop .shop_bar,
body.dc-2026.tax-product_cat .shop_bar {
  margin: 18px auto 8px;
  padding: 12px 18px;
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
}
body.dc-2026 .shop_bar .filter-trigger,
body.dc-2026 .shop_bar a[href="#side-filters"] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--dc-ink);
  text-decoration: none;
}
body.dc-2026 .woocommerce-result-count { margin: 0; font-size: 13px; color: var(--dc-soft); }

/* select sortowania - bez przycinania tekstu, wlasna strzalka */
body.dc-2026 .woocommerce-ordering select {
  appearance: none;
  -webkit-appearance: none;
  height: auto;
  line-height: 1.3;
  padding: 11px 44px 11px 18px;
  background-color: var(--dc-paper);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%238A5C3F' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  font-size: 13px;
  color: var(--dc-ink);
  cursor: pointer;
}

/* 6) PANEL FILTROW (side-filters): elegancki, czytelny */
body.dc-2026 #side-filters .side-panel-content { padding: 10px 26px 30px; }
body.dc-2026 #side-filters .widget { margin: 0 0 26px; }
body.dc-2026 #side-filters .widget-title,
body.dc-2026 #side-filters .widgettitle,
body.dc-2026 #side-filters .widget h6 {
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--dc-soft);
  margin: 0 0 12px;
}
body.dc-2026 #side-filters ul { list-style: none; margin: 0; padding: 0; }
body.dc-2026 #side-filters ul li { border-bottom: 1px solid var(--dc-latte); }
body.dc-2026 #side-filters ul li a {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  color: var(--dc-ink);
  text-decoration: none;
  font-size: 14px;
}
body.dc-2026 #side-filters ul li a:hover { color: var(--dc-accent); }
body.dc-2026 #side-filters .count { color: var(--dc-soft); font-size: 12px; }
body.dc-2026 #side-filters ul.children { margin-left: 14px; border-top: 1px solid var(--dc-latte); }
body.dc-2026 #side-filters ul.children li:last-child { border-bottom: none; }
body.dc-2026 #side-filters .price_slider_amount .button { padding: 8px 18px !important; min-height: 36px; font-size: 11px !important; }
body.dc-2026 #side-filters .ui-slider .ui-slider-range { background: var(--dc-accent); }
body.dc-2026 #side-filters .ui-slider .ui-slider-handle { background: var(--dc-accent-dark); border: none; }
/* =====================================================================
   FIXES v2.6
   ================================================================== */

/* 1) STRONA PRODUKTU: mniejsze marginesy, normalny odstep od menu */
body.dc-2026.single-product #wrapper > [role="main"] { padding-top: 0 !important; }
body.dc-2026.single-product .thb-product-detail.page-padding {
  padding-top: clamp(24px, 3vw, 44px) !important;
  padding-bottom: clamp(24px, 3vw, 44px) !important;
}
body.dc-2026.single-product .thb-product-detail > .row,
body.dc-2026.single-product .woocommerce-tabs .row,
body.dc-2026.single-product .related.products {
  max-width: var(--dc-container) !important;
  width: var(--dc-container);
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2) KOSZYK: kompaktowe odstepy + spojny styl */
body.dc-2026.woocommerce-cart .page-padding,
body.dc-2026.woocommerce-checkout .page-padding {
  padding-top: clamp(28px, 3.5vw, 52px) !important;
  padding-bottom: clamp(36px, 4vw, 64px) !important;
}
body.dc-2026.woocommerce-cart #wrapper > [role="main"],
body.dc-2026.woocommerce-checkout #wrapper > [role="main"] { padding-top: 0 !important; }

body.dc-2026 .woocommerce table.shop_table {
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  overflow: hidden;
  background: var(--dc-paper);
}
body.dc-2026 .woocommerce table.shop_table th {
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--dc-soft);
  background: var(--dc-cream);
}
body.dc-2026 .woocommerce table.shop_table td { border-color: var(--dc-latte); }

/* kupon: input + przycisk w stylu strony */
body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .input-text {
  min-width: 220px;
  height: 44px;
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius-pill);
  padding: 10px 20px;
  background: var(--dc-white);
  font-family: var(--dc-font-body);
  font-size: 13px;
  color: var(--dc-ink);
}
body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .input-text::placeholder { color: var(--dc-soft); }
body.dc-2026 .woocommerce-cart table.cart td.actions .coupon .input-text:focus {
  outline: none;
  border-color: var(--dc-accent);
}
body.dc-2026 .cart_totals { background: var(--dc-paper); border: 1px solid var(--dc-sand); border-radius: var(--dc-radius); padding: 22px 24px; }
body.dc-2026 .cart_totals table.shop_table { border: none; background: transparent; }
body.dc-2026 .cart_totals h2 { font-size: 20px; margin: 0 0 14px !important; }

/* 3) PASEK FILTROW: jeden rowny, kompaktowy rzad */
body.dc-2026.woocommerce-shop .shop_bar,
body.dc-2026.tax-product_cat .shop_bar {
  padding: 8px 18px;
}
body.dc-2026 .shop_bar .row,
body.dc-2026 .shop_bar .row .columns { min-height: 0; }
body.dc-2026.woocommerce-shop .shop_bar .row,
body.dc-2026.tax-product_cat .shop_bar .row {
  flex-wrap: nowrap;
  align-items: center;
}
body.dc-2026 .shop_bar .category_bar { display: flex; align-items: center; }
body.dc-2026 .shop_bar .ordering {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  margin: 0;
  flex: 1 1 auto;
}
body.dc-2026 .shop_bar .ordering > * { margin: 0 !important; float: none !important; }
body.dc-2026 .woocommerce-ordering select { padding-top: 9px; padding-bottom: 9px; }

/* 4) PANEL FILTROW: usun kolka/bullety nachodzace na nazwy */
body.dc-2026 #side-filters ul li::before,
body.dc-2026 #side-filters ul li a::before,
body.dc-2026 #side-filters .widget li::before,
body.dc-2026 #side-filters .widget li a::before {
  content: none !important;
  display: none !important;
}
body.dc-2026 #side-filters ul li { background: none !important; padding-left: 0 !important; }

/* 5) SKLEP: tryb kuratorski vs filtrowany */
body.dc-shop-curated.woocommerce-shop [role="main"] ul.products:not(.dc-products-band ul.products) { display: none !important; }
body.dc-shop-curated.woocommerce-shop .woocommerce-pagination { display: none !important; }
body.dc-shop-curated.woocommerce-shop .shop_bar .woocommerce-result-count { display: none; }
body.dc-shop-filtered.woocommerce-shop .page-description { display: none !important; }

/* klikalne boxy-zakladki */
.dc-card-link { text-decoration: none; position: relative; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.dc-card-link:hover { border-color: var(--dc-accent); transform: translateY(-3px); box-shadow: var(--dc-shadow-md); }
.dc-card-link h2 { color: var(--dc-ink); }
.dc-card-link p { color: var(--dc-soft); }
.dc-card-arrow {
  position: absolute;
  top: 20px;
  right: 22px;
  width: 30px; height: 30px;
  display: flex; align-items: center; justify-content: center;
  border: 1px solid var(--dc-sand);
  border-radius: 50%;
  color: var(--dc-accent);
  font-size: 14px;
  transition: background .18s ease, color .18s ease;
}
.dc-card-link:hover .dc-card-arrow { background: var(--dc-accent); color: var(--dc-paper); border-color: var(--dc-accent); }

/* naglowki sekcji sklepu + kotwice pod sticky header */
.dc-products-band[id] { scroll-margin-top: 130px; }
.dc-band-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.dc-band-head h2 { margin: 0 0 10px !important; }
.dc-shop-tabs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 980px) { .dc-shop-tabs { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .dc-shop-tabs { grid-template-columns: 1fr; } }

/* kafle kolekcji na podstronie (4 w rzedzie) */
.dc-cats-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dc-cats-4 .dc-cat { aspect-ratio: 1 / 1; }
@media (max-width: 980px) { .dc-cats-4 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .dc-cats-4 { grid-template-columns: 1fr; } }
.dc-collection-links { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 18px; }
@media (max-width: 980px) { .dc-collection-links { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .dc-collection-links { grid-template-columns: 1fr; } }

/* paginacja - spojnie i w kontenerze */
body.dc-2026 .woocommerce-pagination {
  width: var(--dc-container);
  margin: 30px auto 0;
  text-align: center;
}
body.dc-2026 .woocommerce-pagination ul.page-numbers { border: none; display: inline-flex; gap: 8px; }
body.dc-2026 .woocommerce-pagination ul.page-numbers li { border: none; }
body.dc-2026 .woocommerce-pagination .page-numbers {
  min-width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 14px;
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius-pill);
  background: var(--dc-paper);
  color: var(--dc-ink);
  font-size: 13px;
}
body.dc-2026 .woocommerce-pagination .page-numbers.current,
body.dc-2026 .woocommerce-pagination .page-numbers:hover { background: var(--dc-accent); color: var(--dc-paper); border-color: var(--dc-accent) !important; }

/* stopka: notka testowa zniknela - usun kompensacje paddingu */
.dc-footer__bottom { padding: 18px 0 !important; }
/* v2.6.2: kupon - szerszy selektor (markup motywu poza td.actions) */
body.dc-2026 .coupon .input-text,
body.dc-2026 form.woocommerce-cart-form .coupon .input-text {
  height: 44px !important;
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius-pill) !important;
  padding: 10px 20px !important;
  background: var(--dc-white) !important;
  font-family: var(--dc-font-body) !important;
  font-size: 13px !important;
  color: var(--dc-ink) !important;
  min-width: 200px;
}
body.dc-2026 .coupon { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
/* =====================================================================
   FIXES v2.7
   ================================================================== */

/* 1) HERO: mniejszy tytul (miesci sie z zapasem), elegancki link zamiast przyciskow */
.dc-hero__title { font-size: clamp(30px, 4vw, 56px) !important; }
.dc-hero__kicker { margin-bottom: 12px; }
.dc-hero__text { margin-bottom: 20px; }
.dc-hero__copy { padding-bottom: 6px; }

.dc-hero__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--dc-accent-dark);
  text-decoration: none;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--dc-gold);
  transition: color .18s ease, border-color .18s ease;
}
.dc-hero__link span { transition: transform .2s ease; }
.dc-hero__link:hover { color: var(--dc-gold); border-color: var(--dc-accent-dark); }
.dc-hero__link:hover span { transform: translateX(5px); }

/* 2) BOXY SKLEPU: link-nakladka */
.dc-card-link { overflow: visible; }
.dc-card-cover { position: absolute; inset: 0; z-index: 2; border-radius: inherit; }

/* 3) PAGINACJA: bez kontenera - tylko numery i strzalki */
body.dc-2026 nav.woocommerce-pagination,
body.dc-2026 .woocommerce-pagination ul.page-numbers,
body.dc-2026 .woocommerce-pagination ul.page-numbers li {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
}
body.dc-2026 .woocommerce-pagination ul.page-numbers li:hover,
body.dc-2026 nav.woocommerce-pagination:hover {
  background: transparent !important;
}

/* 4) KOSZYK - porzadny lifting */
body.dc-2026.woocommerce-cart h1.thb-shop-title,
body.dc-2026.woocommerce-checkout h1.thb-shop-title {
  margin: clamp(4px, 1.5vw, 16px) 0 clamp(22px, 3vw, 38px) !important;
  font-size: clamp(30px, 3vw, 44px);
  text-align: left;
  width: var(--dc-container);
  margin-left: auto !important;
  margin-right: auto !important;
}

body.dc-2026 .woocommerce table.shop_table th,
body.dc-2026 .woocommerce table.shop_table td {
  padding: 15px 18px !important;
  vertical-align: middle;
}
body.dc-2026 .woocommerce table.shop_table thead th:last-child,
body.dc-2026 .woocommerce table.shop_table td.product-subtotal { text-align: right; }
body.dc-2026 table.cart td.product-name a { color: var(--dc-ink); font-weight: 500; text-decoration: none; }
body.dc-2026 table.cart td.product-remove a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px;
  border: 1px solid var(--dc-sand);
  border-radius: 50%;
  color: var(--dc-soft) !important;
  font-size: 14px;
  text-decoration: none;
}
body.dc-2026 table.cart td.product-remove a:hover { color: var(--dc-rose) !important; border-color: var(--dc-rose); }

/* ilosc: schludny stepper */
body.dc-2026 .quantity.buttons_added {
  display: inline-flex;
  align-items: stretch;
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius-pill);
  overflow: hidden;
  background: var(--dc-white);
}
body.dc-2026 .quantity.buttons_added .minus,
body.dc-2026 .quantity.buttons_added .plus {
  width: 34px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  color: var(--dc-accent);
  position: relative;
  border: none !important;
  background: transparent !important;
}
body.dc-2026 .quantity.buttons_added .minus::after { content: '\2212'; }
body.dc-2026 .quantity.buttons_added .plus::after { content: '+'; }
body.dc-2026 .quantity.buttons_added .minus:hover,
body.dc-2026 .quantity.buttons_added .plus:hover { background: var(--dc-cream) !important; }
body.dc-2026 .quantity.buttons_added input.qty {
  width: 46px;
  border: none !important;
  border-left: 1px solid var(--dc-latte) !important;
  border-right: 1px solid var(--dc-latte) !important;
  text-align: center;
  background: transparent;
  font-family: var(--dc-font-body);
  -moz-appearance: textfield;
}
body.dc-2026 .quantity input.qty::-webkit-outer-spin-button,
body.dc-2026 .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* kupon: akcent rozany */
body.dc-2026 .coupon .button {
  border-color: var(--dc-rose) !important;
  color: var(--dc-rose) !important;
}
body.dc-2026 .coupon .button:hover { background: var(--dc-rose) !important; color: var(--dc-paper) !important; }
body.dc-2026 .coupon .input-text:focus { border-color: var(--dc-rose) !important; outline: none; }

/* podsumowanie koszyka */
body.dc-2026 .cart_totals table.shop_table th {
  background: transparent !important;
  width: 36%;
  padding-left: 0 !important;
  font-size: 11px;
}
body.dc-2026 .cart_totals table.shop_table td { text-align: right; }
body.dc-2026 .cart_totals #shipping_method,
body.dc-2026 .cart_totals ul#shipping_method li { list-style: none; margin: 0 0 8px; padding: 0; }
body.dc-2026 .cart_totals ul#shipping_method label {
  text-transform: none;
  letter-spacing: 0;
  font-size: 14px;
  color: var(--dc-ink);
}
body.dc-2026 .cart_totals .woocommerce-shipping-destination,
body.dc-2026 .cart_totals .woocommerce-shipping-calculator { font-size: 13px; color: var(--dc-soft); }
body.dc-2026 .cart_totals .order-total td { font-size: 18px; font-weight: 600; color: var(--dc-rose); }

/* przyciski koszyka/kasy: glowne CTA wypelnione (wyzsza specyficznosc niz a.button) */
body.dc-2026 a.checkout-button.button,
body.dc-2026 a.checkout-button,
body.dc-2026 button#place_order,
body.dc-2026 button.single_add_to_cart_button {
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
  width: 100%;
}
body.dc-2026 a.checkout-button.button:hover,
body.dc-2026 a.checkout-button:hover,
body.dc-2026 button#place_order:hover,
body.dc-2026 button.single_add_to_cart_button:hover {
  background: var(--dc-rose-ink) !important;
  border-color: var(--dc-rose-ink) !important;
}
body.dc-2026 button.single_add_to_cart_button { width: auto; }
/* v2.7.1: puste akapity wpautop w siatkach */
.dc-card-grid > p:empty,
.dc-doc-links > p:empty,
.dc-cats > p:empty,
.dc-about-gallery > p:empty { display: none !important; }

/* =====================================================================
   FIXES v2.8 - koszyk: szlif
   ================================================================== */

/* 1) Podsumowanie na szerokosc tabelki, z odstepem */
body.dc-2026.woocommerce-cart .cart-collaterals {
  width: 100% !important;
  float: none !important;
  margin-top: 26px;
}
body.dc-2026.woocommerce-cart .cart-collaterals .cart_totals {
  width: 100% !important;
  float: none !important;
  max-width: none !important;
}
body.dc-2026.woocommerce-cart .cart-collaterals .cart_totals table.shop_table { width: 100%; }

/* 2) Stepper ilosci: ukryj czarne znaki motywu (zostaja nasze) */
body.dc-2026 .quantity.buttons_added .minus::before,
body.dc-2026 .quantity.buttons_added .plus::before,
body.dc-2026 .quantity .minus i,
body.dc-2026 .quantity .plus i,
body.dc-2026 .quantity .minus svg,
body.dc-2026 .quantity .plus svg {
  display: none !important;
  content: none !important;
}
body.dc-2026 .quantity.buttons_added .minus,
body.dc-2026 .quantity.buttons_added .plus {
  font-size: 0 !important;
  line-height: 0 !important;
}
body.dc-2026 .quantity.buttons_added .minus::after,
body.dc-2026 .quantity.buttons_added .plus::after {
  font-size: 15px !important;
  line-height: 1 !important;
}

/* 3) Kupon: domyslny bezowy przycisk zespolony z polem (jedna pigulka) */
body.dc-2026 .coupon { gap: 0 !important; }
body.dc-2026 .coupon .input-text {
  border-radius: 999px 0 0 999px !important;
  border-right: none !important;
  margin: 0 !important;
}
body.dc-2026 .coupon .button {
  border-radius: 0 999px 999px 0 !important;
  margin: 0 0 0 -1px !important;
  border-color: var(--dc-accent) !important;
  color: var(--dc-ink) !important;
  background: transparent !important;
  height: 44px;
}
body.dc-2026 .coupon .button:hover {
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
}
body.dc-2026 .coupon .input-text:focus { border-color: var(--dc-accent) !important; }

/* 4) Wieksze naglowki tabel i etykiety */
body.dc-2026 .woocommerce table.shop_table thead th {
  font-size: 14px;
  letter-spacing: .1em;
}
body.dc-2026 .cart_totals table.shop_table th {
  font-size: 13px !important;
  letter-spacing: .1em;
}
body.dc-2026 .cart_totals .order-total th { font-size: 14px !important; }
/* v2.8.1: kolumna podsumowania na pelna szerokosc + kupon bez szczeliny */
body.dc-2026.woocommerce-cart .columns:has(> .cart-collaterals),
body.dc-2026.woocommerce-cart .columns:has(.cart-collaterals) {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
  flex: 0 0 100% !important;
}
body.dc-2026 .coupon { font-size: 0; }
body.dc-2026 .coupon > * { font-size: 13px; }
body.dc-2026 .coupon .screen-reader-text { font-size: 0; }
/* v2.8.2: kupon jako zagniezdzony przycisk w polu + wyrownanie kolumny podsumowania */
body.dc-2026 .coupon { position: relative; display: inline-flex; }
body.dc-2026 .coupon .input-text {
  border-radius: 999px !important;
  border-right: 1px solid var(--dc-sand) !important;
  width: 320px;
  padding-right: 178px !important; /* miejsce pod przycisk */
}
body.dc-2026 .coupon .button {
  position: absolute !important;
  right: 3px;
  top: 3px;
  height: 38px !important;
  min-height: 38px !important;
  border-radius: 999px !important;
  margin: 0 !important;
  padding: 8px 20px !important;
  background: var(--dc-cream) !important;
  border: 1px solid var(--dc-sand) !important;
}
body.dc-2026 .coupon .button:hover {
  background: var(--dc-rose) !important;
  border-color: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
}

/* kolumna podsumowania: padding jak w wierszach motywu (wyrownanie do formularza) */
body.dc-2026.woocommerce-cart .columns:has(.cart-collaterals) {
  padding-left: 0.9375rem !important;
  padding-right: 0.9375rem !important;
}
/* =====================================================================
   FIXES v2.8.3 - koszyk: symetria steppera, kupon do lewej, CTA do prawej
   ================================================================== */

/* 1) Stepper: etykieta czytnika ekranu nie moze zabierac miejsca */
body.dc-2026 .quantity .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}
body.dc-2026 .quantity.buttons_added { position: relative; }
/* pas i bezpiecznik na wszelkie glify motywu */
body.dc-2026 .quantity .minus,
body.dc-2026 .quantity .plus {
  background-image: none !important;
  text-indent: 0 !important;
}
body.dc-2026 .quantity input.qty {
  -webkit-appearance: none !important;
  appearance: textfield !important;
}

/* 2) Wiersz akcji: kupon przy lewej, aktualizuj przy prawej (symetryczne odstepy) */
/* td.actions: domyslny table-cell */
body.dc-2026 table.cart td.actions .coupon {
  margin: 0 !important;
  float: none !important;
}
body.dc-2026 table.cart td.actions .button[name="update_cart"],
body.dc-2026 table.cart td.actions > .button {
  margin-left: auto !important;
  float: none !important;
}

/* 3) Przejdz do platnosci: naturalna szerokosc, do prawej krawedzi */
body.dc-2026 .wc-proceed-to-checkout {
  display: flex !important;
  justify-content: flex-end;
  padding: 0 !important;
  margin-top: 8px;
}
body.dc-2026 a.checkout-button.button,
body.dc-2026 a.checkout-button {
  width: auto !important;
  min-width: 240px;
}

/* 4) Bez linii nad sekcja KWOTA */
body.dc-2026 .cart_totals hr { display: none !important; }
body.dc-2026 .cart_totals h2 { border: none !important; }
body.dc-2026 .cart_totals table.shop_table,
body.dc-2026 .cart_totals table.shop_table tr:first-child th,
body.dc-2026 .cart_totals table.shop_table tr:first-child td {
  border-top: none !important;
}
body.dc-2026 .cart_totals table.shop_table thead { display: none; }
/* v2.8.4: stepper bez paddingu motywu + pelnoszerokosciowy wiersz akcji */
body.dc-2026 .quantity.buttons_added {
  padding: 0 !important;
  margin: 0 !important;
}
body.dc-2026 table.cart td.actions > .row {
  width: 100%;
  max-width: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 0;
}
body.dc-2026 table.cart td.actions > .row .columns {
  float: none;
  width: auto;
  padding: 0;
}
/* v2.8.7: kolumny wiersza akcji przypiete do krawedzi */
body.dc-2026 table.cart td.actions > .row .columns {
  flex: 1 1 auto !important;
  display: flex;
  align-items: center;
}
body.dc-2026 table.cart td.actions > .row .columns:first-child { justify-content: flex-start; }
body.dc-2026 table.cart td.actions > .row .columns:last-child { justify-content: flex-end; }
body.dc-2026 table.cart td.actions > .row .columns .coupon { margin: 0 !important; }
/* v2.8.8: stepper - pseudo bez wymiarow/tla paskow motywu; KWOTA - border na TR */
body.dc-2026 .quantity.buttons_added .minus::after,
body.dc-2026 .quantity.buttons_added .plus::after {
  width: auto !important;
  height: auto !important;
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  position: static !important;
  transform: none !important;
  margin: 0 !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  display: inline !important;
}
body.dc-2026 .quantity.buttons_added .minus::before,
body.dc-2026 .quantity.buttons_added .plus::before {
  content: none !important;
  display: none !important;
  background: none !important;
  width: 0 !important;
  height: 0 !important;
}

body.dc-2026 .cart_totals table.shop_table tr:first-child,
body.dc-2026 .cart_totals tr.cart-subtotal {
  border-top: none !important;
}
/* v2.8.9: przyciski -/+ na pelna wysokosc pola (motyw dawal im 50%) */
body.dc-2026 .quantity.buttons_added { align-items: stretch !important; }
body.dc-2026 .quantity.buttons_added .minus,
body.dc-2026 .quantity.buttons_added .plus {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  right: auto !important;
  left: auto !important;
  height: auto !important;
  min-height: 100% !important;
  align-self: stretch !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* =====================================================================
   v2.9 - CHECKOUT spojny z koszykiem
   ================================================================== */

/* uklad: formularz ~60% / podsumowanie ~40% */
body.dc-2026.woocommerce-checkout form.checkout > .row {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 3vw, 48px);
  width: 100%;
  max-width: none;
  margin: 0;
}
body.dc-2026.woocommerce-checkout form.checkout .columns {
  float: none;
  padding: 0;
}
body.dc-2026.woocommerce-checkout form.checkout .columns:has(#customer_details),
body.dc-2026.woocommerce-checkout form.checkout .columns:first-child {
  flex: 1 1 0;
  min-width: 320px;
  width: auto;
  max-width: none;
}
body.dc-2026.woocommerce-checkout form.checkout .columns:has(#order_review) {
  flex: 0 0 400px;
  width: 400px;
  max-width: 100%;
}

/* podsumowanie jako karta (jak cart_totals) */
body.dc-2026 #order_review_heading {
  font-size: 20px;
  margin: 0 0 14px !important;
}
body.dc-2026 #order_review {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  padding: 22px 24px;
  position: sticky;
  top: 130px;
}
body.dc-2026 #order_review table.shop_table {
  border: none;
  background: transparent;
  width: 100%;
}
body.dc-2026 #order_review table.shop_table th,
body.dc-2026 #order_review table.shop_table td {
  padding: 12px 0 !important;
  background: transparent !important;
}
body.dc-2026 #order_review table.shop_table td { text-align: right; }
body.dc-2026 #order_review table.shop_table td.product-name { text-align: left; font-size: 14px; }
body.dc-2026 #order_review thead { display: none; }
body.dc-2026 #order_review tr { border-top: 1px solid var(--dc-latte); }
body.dc-2026 #order_review tr:first-child,
body.dc-2026 #order_review tr.cart_item:first-child { border-top: none; }
body.dc-2026 #order_review .order-total td { font-size: 18px; font-weight: 600; color: var(--dc-rose); }
body.dc-2026 #order_review ul#shipping_method li { list-style: none; margin: 0 0 8px; padding: 0; }
body.dc-2026 #order_review ul#shipping_method label { text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--dc-ink); }

/* platnosci */
body.dc-2026 #payment {
  background: transparent !important;
  border: none;
  border-top: 1px solid var(--dc-latte);
  border-radius: 0;
  margin-top: 12px;
  padding-top: 14px;
}
body.dc-2026 #payment ul.payment_methods {
  border: none !important;
  padding: 0 !important;
  margin: 0 0 12px;
  list-style: none;
}
body.dc-2026 #payment ul.payment_methods li { margin: 0 0 10px; }
body.dc-2026 #payment div.payment_box {
  background: var(--dc-cream) !important;
  border-radius: 10px;
  font-size: 13px;
  color: var(--dc-soft);
}
body.dc-2026 #payment div.payment_box::before { border-bottom-color: var(--dc-cream) !important; }
body.dc-2026 #place_order { width: 100% !important; margin-top: 6px; }

/* pola formularza - spojne z reszta */
body.dc-2026 form.checkout .form-row label,
body.dc-2026 .woocommerce-form-login label {
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft);
  margin-bottom: 6px;
  display: inline-block;
}
body.dc-2026 form.checkout .input-text,
body.dc-2026 form.checkout select,
body.dc-2026 form.checkout textarea,
body.dc-2026 .woocommerce-form-login .input-text {
  background: var(--dc-white) !important;
  border: 1px solid var(--dc-sand) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  font-family: var(--dc-font-body) !important;
  font-size: 14px !important;
  color: var(--dc-ink) !important;
  height: auto !important;
  line-height: 1.4 !important;
}
body.dc-2026 form.checkout .input-text:focus,
body.dc-2026 form.checkout select:focus,
body.dc-2026 form.checkout textarea:focus {
  border-color: var(--dc-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(138, 92, 63, .1) !important;
}
body.dc-2026 form.checkout .form-row { margin-bottom: 14px; }
body.dc-2026 form.checkout h3 {
  font-size: 20px;
  margin: 0 0 16px !important;
}
body.dc-2026 #ship-to-different-address {
  font-size: 15px !important;
  text-transform: none;
  letter-spacing: 0;
}
body.dc-2026 #ship-to-different-address label { text-transform: none; letter-spacing: 0; font-size: 15px; color: var(--dc-ink); }

/* select2 (kraj/region) */
body.dc-2026 .select2-container--default .select2-selection--single {
  background: var(--dc-white);
  border: 1px solid var(--dc-sand);
  border-radius: 10px;
  height: 45px;
}
body.dc-2026 .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 43px; padding-left: 16px; color: var(--dc-ink); }
body.dc-2026 .select2-container--default .select2-selection--single .select2-selection__arrow { height: 43px; }
body.dc-2026 .select2-dropdown { border-color: var(--dc-sand); border-radius: 10px; }

/* box logowania 'Masz juz konto?' */
body.dc-2026 .woocommerce-form-login-toggle .woocommerce-info {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  color: var(--dc-ink);
  padding: 14px 18px;
}
body.dc-2026 .woocommerce-form-login-toggle .woocommerce-info a { color: var(--dc-rose); }
body.dc-2026 .woocommerce-form-login-toggle .woocommerce-info::before { color: var(--dc-gold); }

/* wbudowany podglad regulaminu przy akceptacji - kompaktowo, przewijalny */
body.dc-2026 .woocommerce-terms-and-conditions {
  max-height: 220px;
  overflow-y: auto;
  background: var(--dc-cream) !important;
  border: 1px solid var(--dc-sand);
  border-radius: 10px;
  padding: 14px 16px;
  font-size: 12px;
  color: var(--dc-soft);
  box-shadow: none !important;
}
body.dc-2026 .woocommerce-terms-and-conditions h3 { font-size: 14px; margin: 10px 0 6px !important; }
body.dc-2026 .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text { font-size: 12px; color: var(--dc-soft); }
body.dc-2026 .woocommerce-terms-and-conditions-checkbox-text { font-size: 13px; text-transform: none; letter-spacing: 0; }

@media (max-width: 980px) {
  body.dc-2026.woocommerce-checkout form.checkout .columns:has(#order_review) {
    flex: 1 1 100%;
    width: 100%;
  }
  body.dc-2026 #order_review { position: static; }
}
/* v2.9.1: tytul wyrownany do formularza (koszyk + zamowienie) + kupon na checkout */
body.dc-2026.woocommerce-cart h1.thb-shop-title,
body.dc-2026.woocommerce-checkout h1.thb-shop-title {
  width: auto !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* kupon na stronie zamowienia (rozwijany) */
body.dc-2026 form.checkout_coupon {
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius);
  background: var(--dc-paper);
  padding: 18px 20px !important;
  margin-bottom: 22px;
}
body.dc-2026 form.checkout_coupon .form-row { display: inline-block; margin: 0 10px 0 0; }
body.dc-2026 form.checkout_coupon .input-text {
  height: 44px !important;
  border-radius: 999px !important;
  padding: 10px 20px !important;
  min-width: 220px;
}
body.dc-2026 form.checkout_coupon .button {
  height: 44px;
  border-radius: 999px !important;
  background: var(--dc-cream) !important;
  border: 1px solid var(--dc-sand) !important;
  color: var(--dc-ink) !important;
}
body.dc-2026 form.checkout_coupon .button:hover {
  background: var(--dc-rose) !important;
  border-color: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
}
/* v2.9.2: stany walidacji pol + mobile checkout (podsumowanie na pelna szerokosc) */
body.dc-2026 form.checkout .woocommerce-invalid .input-text,
body.dc-2026 form.checkout .woocommerce-invalid select {
  border-color: #B4453A !important;
  box-shadow: 0 0 0 3px rgba(180, 69, 58, .1) !important;
}
body.dc-2026 form.checkout .woocommerce-validated .input-text,
body.dc-2026 form.checkout .woocommerce-validated select {
  border-color: #6E8B5E !important;
}
body.dc-2026 .woocommerce-error,
body.dc-2026 .woocommerce-message,
body.dc-2026 .woocommerce-info {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  color: var(--dc-ink);
}
body.dc-2026 .woocommerce-error { border-color: rgba(180, 69, 58, .4); }
body.dc-2026 .woocommerce-error::before { color: #B4453A; }
body.dc-2026 .woocommerce-message::before { color: var(--dc-gold); }

@media (max-width: 980px) {
  body.dc-2026 #order_review { width: 100%; }
  body.dc-2026.woocommerce-checkout form.checkout > .row { gap: 28px; }
}
/* v2.9.3: #payment jako karta (motyw renderuje go poza #order_review) */
body.dc-2026 #payment {
  background: var(--dc-paper) !important;
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius) !important;
  padding: 20px 24px !important;
  margin-top: 16px !important;
}
body.dc-2026 .woocommerce-privacy-policy-text p { font-size: 13px; color: var(--dc-soft); line-height: 1.55; }
body.dc-2026 .woocommerce-terms-and-conditions-wrapper { margin-top: 4px; }
body.dc-2026 .woocommerce-terms-and-conditions-checkbox-text { line-height: 1.5; display: inline; }

/* notka o wysylce kurierem - spokojniej */
body.dc-2026 .dc-shipping-note th {
  text-transform: none !important;
  letter-spacing: .01em !important;
  font-size: 13px !important;
  color: var(--dc-soft) !important;
  font-weight: 400 !important;
  line-height: 1.5;
  width: auto !important;
}

/* naglowek kuponu na checkout */
body.dc-2026 .thb-checkout-coupon {
  font-size: 14px;
  color: var(--dc-soft);
  margin-bottom: 14px;
}
body.dc-2026 .thb-checkout-coupon .showcoupon { color: var(--dc-rose); cursor: pointer; }
/* v2.9.4: powiadomienia w kolumnach nie moga wystawac */
body.dc-2026 form.checkout .woocommerce-info,
body.dc-2026 form.checkout .woocommerce-message,
body.dc-2026 form.checkout .woocommerce-error,
body.dc-2026 #order_review .woocommerce-info {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  font-size: 13px;
}
/* v2.9.5: powiadomienia w checkout statyczne (motyw robi z nich fixed-toasty) */
body.dc-2026 form.checkout .woocommerce-info,
body.dc-2026 form.checkout .woocommerce-message,
body.dc-2026 form.checkout .woocommerce-error,
body.dc-2026 #payment .woocommerce-info,
body.dc-2026 #payment .woocommerce-notice {
  position: static !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
  z-index: auto !important;
  box-shadow: none !important;
}
/* =====================================================================
   v2.9.6 - checkout: kompaktowy formularz, kupon jak w koszyku,
   platnosc bezszwowo w karcie podsumowania
   ================================================================== */

/* 1) #payment: sekcja wewnatrz karty, nie karta-w-karcie */
body.dc-2026 #order_review #payment,
body.dc-2026 #payment {
  background: transparent !important;
  border: none !important;
  border-top: 1px solid var(--dc-latte) !important;
  border-radius: 0 !important;
  padding: 16px 0 0 !important;
  margin-top: 14px !important;
}

/* 2) Formularz w siatce 2 kolumn */
body.dc-2026 .woocommerce-billing-fields__field-wrapper,
body.dc-2026 .woocommerce-shipping-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  column-gap: 16px;
  row-gap: 0;
}
body.dc-2026 .woocommerce-billing-fields__field-wrapper .form-row,
body.dc-2026 .woocommerce-shipping-fields__field-wrapper .form-row {
  grid-column: span 2;
  width: 100% !important;
  float: none !important;
  margin-bottom: 14px;
}
/* pary polowkowe */
body.dc-2026 #billing_first_name_field,
body.dc-2026 #billing_last_name_field,
body.dc-2026 #billing_company_field,
body.dc-2026 #billing_vat_number_field,
body.dc-2026 #billing_postcode_field,
body.dc-2026 #billing_city_field,
body.dc-2026 #billing_phone_field,
body.dc-2026 #billing_email_field,
body.dc-2026 #shipping_first_name_field,
body.dc-2026 #shipping_last_name_field,
body.dc-2026 #shipping_postcode_field,
body.dc-2026 #shipping_city_field {
  grid-column: span 1 !important;
}
@media (max-width: 640px) {
  body.dc-2026 #billing_postcode_field,
  body.dc-2026 #billing_city_field,
  body.dc-2026 #billing_phone_field,
  body.dc-2026 #billing_email_field { grid-column: span 2 !important; }
}

/* 3) Kupon na checkout: przycisk zagniezdzony w polu (jak w koszyku) */
body.dc-2026 form.checkout_coupon {
  position: relative;
  display: inline-block;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 22px;
}
body.dc-2026 form.checkout_coupon .form-row {
  display: contents;
}
body.dc-2026 form.checkout_coupon .input-text {
  width: 340px;
  max-width: 100%;
  height: 44px !important;
  border-radius: 999px !important;
  padding: 10px 178px 10px 20px !important;
  min-width: 0;
}
body.dc-2026 form.checkout_coupon .button {
  position: absolute !important;
  right: 3px;
  top: 3px;
  height: 38px !important;
  min-height: 38px !important;
  border-radius: 999px !important;
  margin: 0 !important;
  padding: 8px 20px !important;
  background: var(--dc-cream) !important;
  border: 1px solid var(--dc-sand) !important;
  color: var(--dc-ink) !important;
}
body.dc-2026 form.checkout_coupon .button:hover {
  background: var(--dc-rose) !important;
  border-color: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
}
/* v2.9.7: karta podsumowania zawsze obejmuje cala zawartosc */
body.dc-2026 #order_review,
body.dc-2026 .woocommerce-checkout-review-order {
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: block !important;
}
body.dc-2026 #order_review::after {
  content: '';
  display: table;
  clear: both;
}
/* v2.9.8: pusty koszyk - elegancko */
body.dc-2026 .cart-empty.woocommerce-info,
body.dc-2026 p.cart-empty {
  position: static !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  width: auto !important;
  max-width: none !important;
  text-align: center;
  font-size: 17px;
  color: var(--dc-soft);
  margin: 18px 0 6px !important;
  padding: 0 !important;
}
body.dc-2026 .cart-empty.woocommerce-info::before { display: none !important; }
body.dc-2026 .empty_cart svg,
body.dc-2026 .woocommerce-cart .empty_cart_icon svg,
body.dc-2026 .cart-empty-icon svg {
  stroke: var(--dc-taupe) !important;
  fill: none;
}
body.dc-2026 .return-to-shop { text-align: center; margin-top: 18px; }
body.dc-2026 .return-to-shop .button {
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
  min-width: 220px;
}
body.dc-2026 .return-to-shop .button:hover {
  background: var(--dc-rose-ink) !important;
  border-color: var(--dc-rose-ink) !important;
}
/* ikona torby motywu w pustym koszyku */
body.dc-2026 .woocommerce-cart .woocommerce > section svg path,
body.dc-2026 .woocommerce-cart .woocommerce > section svg circle,
body.dc-2026 .woocommerce-cart .woocommerce > section svg line,
body.dc-2026 .woocommerce-cart .woocommerce > section svg rect {
  stroke: var(--dc-taupe) !important;
}
/* =====================================================================
   v3.0 - KARTA PRODUKTU
   ================================================================== */

/* 1) GALERIA: zaokraglenia, miekki cien, ramka jak w hero */
body.dc-2026 .woocommerce-product-gallery {
  border-radius: var(--dc-radius);
  overflow: hidden;
  box-shadow: var(--dc-shadow-md);
  border: 1px solid var(--dc-sand);
  background: var(--dc-white);
}
body.dc-2026 .woocommerce-product-gallery .woocommerce-product-gallery__image,
body.dc-2026 .woocommerce-product-gallery img {
  border-radius: 0;
}
body.dc-2026 .woocommerce-product-gallery .flex-control-thumbs {
  margin: 10px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
body.dc-2026 .woocommerce-product-gallery .flex-control-thumbs li {
  width: 72px;
  float: none;
}
body.dc-2026 .woocommerce-product-gallery .flex-control-thumbs img {
  border-radius: 8px;
  border: 1px solid var(--dc-latte);
  opacity: .65;
  transition: opacity .18s ease, border-color .18s ease;
  cursor: pointer;
}
body.dc-2026 .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
body.dc-2026 .woocommerce-product-gallery .flex-control-thumbs img:hover {
  opacity: 1;
  border-color: var(--dc-accent);
}

/* 2) TYTUL + CENA + OPIS */
body.dc-2026 .summary .product_title,
body.dc-2026 .product-information .product_title {
  font-size: clamp(26px, 2.4vw, 34px) !important;
  font-weight: 500;
  line-height: 1.18;
  margin: 0 0 10px !important;
  text-transform: none;
  letter-spacing: .01em;
}
body.dc-2026 .summary .price,
body.dc-2026 .product-information .price {
  color: var(--dc-rose) !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  letter-spacing: .02em;
  margin: 0 0 16px;
  display: block;
}
body.dc-2026 .summary .price del { color: var(--dc-soft); font-weight: 400; margin-right: 8px; }
body.dc-2026 .summary .price ins { text-decoration: none; }
body.dc-2026 .summary .woocommerce-product-details__short-description,
body.dc-2026 .product-information .woocommerce-product-details__short-description {
  color: var(--dc-soft);
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 20px;
}

/* 3) WARIANTY: etykiety i selecty jak w checkout */
body.dc-2026 table.variations { margin-bottom: 14px; }
body.dc-2026 table.variations th.label,
body.dc-2026 table.variations td.label,
body.dc-2026 table.variations .label label {
  font-size: 12px !important;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--dc-soft);
  padding-right: 14px;
}
body.dc-2026 table.variations select {
  appearance: none;
  -webkit-appearance: none;
  background-color: var(--dc-white);
  border: 1px solid var(--dc-sand);
  border-radius: 10px;
  padding: 11px 42px 11px 16px;
  font-family: var(--dc-font-body);
  font-size: 14px;
  color: var(--dc-ink);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%238A5C3F' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  cursor: pointer;
  min-width: 190px;
}
body.dc-2026 table.variations select:focus { border-color: var(--dc-accent); outline: none; }
body.dc-2026 .reset_variations {
  font-size: 12px;
  color: var(--dc-soft);
  text-decoration: underline;
}

/* 4) ILOSC + DODAJ DO KOSZYKA w jednym rzedzie */
body.dc-2026 form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 6px 0 18px;
}
body.dc-2026 form.cart.variations_form { display: block; }
body.dc-2026 form.cart .woocommerce-variation-add-to-cart {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
body.dc-2026 button.single_add_to_cart_button {
  min-width: 220px;
  padding: 14px 30px !important;
}

/* 5) META (SKU, kategorie) + wishlist */
body.dc-2026 .product_meta {
  border-top: 1px solid var(--dc-latte);
  padding-top: 16px;
  margin-top: 18px;
  font-size: 13px;
  color: var(--dc-soft);
}
body.dc-2026 .product_meta > span {
  display: block;
  margin-bottom: 6px;
}
body.dc-2026 .product_meta .sku_wrapper,
body.dc-2026 .product_meta .posted_in {
  letter-spacing: .02em;
}
body.dc-2026 .product_meta a { color: var(--dc-accent); }
body.dc-2026 .product_meta a:hover { color: var(--dc-rose); }
body.dc-2026 .yith-wcwl-add-to-wishlist { margin: 12px 0 0; }
body.dc-2026 .yith-wcwl-add-to-wishlist a {
  font-size: 13px;
  color: var(--dc-soft);
  text-decoration: none;
}
body.dc-2026 .yith-wcwl-add-to-wishlist a:hover { color: var(--dc-rose); }

/* 6) ZAKLADKI: minimalistyczne, zloty akcent */
body.dc-2026 .woocommerce-tabs ul.wc-tabs,
body.dc-2026 .woocommerce-tabs ul.tabs {
  display: flex;
  gap: 26px;
  border-bottom: 1px solid var(--dc-latte) !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  background: transparent !important;
  list-style: none;
}
body.dc-2026 .woocommerce-tabs ul.wc-tabs li,
body.dc-2026 .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
}
body.dc-2026 .woocommerce-tabs ul.wc-tabs li a,
body.dc-2026 .woocommerce-tabs ul.tabs li a {
  display: inline-block;
  padding: 0 0 12px !important;
  font-size: 13px !important;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft) !important;
  border-bottom: 2px solid transparent !important;
  transition: color .18s ease, border-color .18s ease;
}
body.dc-2026 .woocommerce-tabs ul.wc-tabs li.active a,
body.dc-2026 .woocommerce-tabs ul.tabs li.active a,
body.dc-2026 .woocommerce-tabs ul.wc-tabs li a:hover {
  color: var(--dc-ink) !important;
  border-bottom-color: var(--dc-gold) !important;
}
body.dc-2026 .woocommerce-tabs .panel {
  color: var(--dc-ink);
  line-height: 1.7;
}
body.dc-2026 .woocommerce-tabs .panel h2:first-child { display: none; } /* zdublowany naglowek 'Opis' */

/* tabela atrybutow w zakladce */
body.dc-2026 table.woocommerce-product-attributes {
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  overflow: hidden;
}
body.dc-2026 table.woocommerce-product-attributes th {
  background: var(--dc-cream);
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft);
  width: 30%;
}
body.dc-2026 table.woocommerce-product-attributes th,
body.dc-2026 table.woocommerce-product-attributes td { padding: 12px 16px; border-color: var(--dc-latte); }

/* 7) PODOBNE PRODUKTY: naglowek jak sekcje */
body.dc-2026 .related.products > h2,
body.dc-2026 section.related > h2 {
  font-size: clamp(26px, 2.6vw, 38px);
  margin: 0 0 30px !important;
}
body.dc-2026 .related.products > h2::after,
body.dc-2026 section.related > h2::after {
  content: '';
  display: block;
  width: 84px;
  height: 2px;
  margin-top: 16px;
  background: linear-gradient(90deg, var(--dc-gold), transparent);
}

/* 8) Dostepnosc / stan magazynowy */
body.dc-2026 .stock.in-stock { color: #6E8B5E; font-size: 13px; }
body.dc-2026 .stock.out-of-stock { color: #B4453A; font-size: 13px; }
/* v3.0.1: zakladki i meta - specyficznosc ponad reguly !important motywu */
body.dc-2026 #wrapper .woocommerce-tabs ul.wc-tabs li a,
body.dc-2026 #wrapper .woocommerce-tabs ul.tabs li a {
  color: var(--dc-soft) !important;
  border-bottom: 2px solid transparent !important;
  font-size: 13px !important;
  padding: 0 0 12px !important;
  background: transparent !important;
}
body.dc-2026 #wrapper .woocommerce-tabs ul.wc-tabs li.active a,
body.dc-2026 #wrapper .woocommerce-tabs ul.tabs li.active a,
body.dc-2026 #wrapper .woocommerce-tabs ul.wc-tabs li a:hover,
body.dc-2026 #wrapper .woocommerce-tabs ul.tabs li a:hover {
  color: var(--dc-ink) !important;
  border-bottom-color: var(--dc-gold) !important;
}
body.dc-2026 #wrapper .product_meta {
  border-top: 1px solid var(--dc-latte) !important;
  padding-top: 16px !important;
  margin-top: 18px !important;
}
/* v3.0.2: zakladki bez tranzycji (motyw restartuje przejscie w petli i kolor nigdy nie dociera) */
body.dc-2026 #wrapper .woocommerce-tabs ul.wc-tabs li a,
body.dc-2026 #wrapper .woocommerce-tabs ul.tabs li a,
body.dc-2026 .woocommerce-tabs ul.wc-tabs li a,
body.dc-2026 .woocommerce-tabs ul.tabs li a {
  transition: none !important;
}
/* =====================================================================
   v3.0.4 - produkt: select wariantow odporny + szeroka sekcja opisu
   ================================================================== */

/* 1) Select wariantow: zadnych tranzycji (zamrazaly font w polowie animacji), twarde wartosci */
body.dc-2026 table.variations select,
body.dc-2026 form.cart select {
  transition: none !important;
  animation: none !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: var(--dc-ink) !important;
  -webkit-text-fill-color: var(--dc-ink) !important;
  letter-spacing: normal !important;
  text-indent: 0 !important;
  opacity: 1 !important;
}
body.dc-2026 table.variations select option {
  font-size: 14px !important;
  color: var(--dc-ink) !important;
}

/* 2) Sekcja zakladek (opis) na pelna szerokosc kontenera */
body.dc-2026.single-product .row.align-center > .columns:has(.woocommerce-tabs),
body.dc-2026.single-product .columns:has(> .woocommerce-tabs) {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  margin: 0 !important;
}
body.dc-2026 .woocommerce-Tabs-panel-wrapper,
body.dc-2026 .woocommerce-tabs.wc-tabs-wrapper {
  width: 100% !important;
  max-width: none !important;
}
/* opis: lagodny limit czytelnosci, wysrodkowany w kontenerze (zakladki tez) */
body.dc-2026 #wrapper .woocommerce-tabs ul.wc-tabs,
body.dc-2026 #wrapper .woocommerce-tabs ul.tabs,
body.dc-2026 .woocommerce-Tabs-panel {
  max-width: 1060px;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =====================================================================
   v3.1 - MOJE KONTO / PODZIEKOWANIE / 404 / SZUKAJ / WISHLIST /
   MENU MOBILNE / BANER COOKIES
   ================================================================== */

/* --- MOJE KONTO: logowanie/rejestracja jako karta --- */
body.dc-2026 .thb-overflow-container { max-width: 480px; margin: 0 auto; }
body.dc-2026 ul.login-page-form {
  display: flex;
  justify-content: center;
  gap: 26px;
  list-style: none;
  margin: 0 0 22px;
  padding: 0;
}
body.dc-2026 ul.login-page-form li a {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft);
  padding-bottom: 10px;
  border-bottom: 2px solid transparent;
  text-decoration: none;
  transition: none !important;
}
body.dc-2026 ul.login-page-form li a.active,
body.dc-2026 ul.login-page-form li a:hover {
  color: var(--dc-ink);
  border-bottom-color: var(--dc-gold);
}
body.dc-2026 .thb-form-container {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  padding: 26px 28px;
}
body.dc-2026 .woocommerce-form-login .input-text,
body.dc-2026 .woocommerce-form-register .input-text {
  background: var(--dc-white) !important;
  border: 1px solid var(--dc-sand) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  width: 100%;
}
body.dc-2026 .woocommerce-form-login label,
body.dc-2026 .woocommerce-form-register label {
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft);
  margin-bottom: 6px;
  display: inline-block;
}
body.dc-2026 .woocommerce-form-login__rememberme { display: block; margin: 4px 0 12px !important; }
body.dc-2026 .woocommerce-form-login__rememberme span { text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--dc-ink); }
body.dc-2026 .woocommerce-form-login .button,
body.dc-2026 .woocommerce-form-register .button {
  width: 100%;
  background: var(--dc-rose) !important;
  color: var(--dc-paper) !important;
  border-color: var(--dc-rose) !important;
}
body.dc-2026 .woocommerce-LostPassword { text-align: center; margin: 14px 0 0; }
body.dc-2026 .woocommerce-LostPassword a { font-size: 13px; color: var(--dc-soft); }

/* panel konta (po zalogowaniu) */
body.dc-2026 .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 8px 0;
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
}
body.dc-2026 .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 11px 20px;
  color: var(--dc-ink);
  text-decoration: none;
  font-size: 14px;
}
body.dc-2026 .woocommerce-MyAccount-navigation li.is-active a,
body.dc-2026 .woocommerce-MyAccount-navigation li a:hover {
  color: var(--dc-rose);
  background: var(--dc-cream);
}
body.dc-2026 .woocommerce-MyAccount-content {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  padding: 24px 28px;
}

/* --- PODZIEKOWANIE (order-received) --- */
body.dc-2026 .woocommerce-thankyou-order-received {
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 500;
  color: var(--dc-ink);
  text-align: center;
  margin: 6px 0 26px;
}
body.dc-2026 ul.woocommerce-order-overview {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  list-style: none;
  margin: 0 0 30px;
  padding: 0;
}
body.dc-2026 ul.woocommerce-order-overview li {
  flex: 1 1 160px;
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  padding: 14px 18px;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--dc-soft);
  border-right: 1px solid var(--dc-sand) !important;
}
body.dc-2026 ul.woocommerce-order-overview li strong {
  display: block;
  margin-top: 6px;
  font-size: 15px;
  letter-spacing: 0;
  text-transform: none;
  color: var(--dc-ink);
}
body.dc-2026 .woocommerce-order-details,
body.dc-2026 .woocommerce-customer-details {
  margin-top: 26px;
}
body.dc-2026 .woocommerce-customer-details address {
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius);
  padding: 18px 22px !important;
  font-style: normal;
  line-height: 1.7;
}

/* --- 404 --- */
body.dc-2026 .content404 {
  min-height: 55vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(48px, 8vw, 100px) 0;
}
body.dc-2026 .content404 svg { max-width: 220px; height: auto; opacity: .8; }
body.dc-2026 .content404 svg path { fill: var(--dc-sand); }
body.dc-2026 .content404 h2 { margin: 22px 0 10px; }
body.dc-2026 .content404 p { color: var(--dc-soft); margin-bottom: 22px; }
body.dc-2026 .content404 .btn {
  display: inline-flex;
  align-items: center;
  padding: 12px 26px;
  border: 1px solid var(--dc-accent);
  border-radius: var(--dc-radius-pill);
  color: var(--dc-ink);
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
}
body.dc-2026 .content404 .btn:hover { background: var(--dc-rose); border-color: var(--dc-rose); color: var(--dc-paper); }

/* --- WYNIKI WYSZUKIWANIA --- */
body.dc-2026.search #wrapper > [role="main"] { padding-top: clamp(28px, 4vw, 52px); padding-bottom: clamp(48px, 6vw, 90px); }
body.dc-2026.search .page-description h1,
body.dc-2026.search h1.thb-shop-title {
  width: var(--dc-container);
  margin: 0 auto clamp(20px, 3vw, 34px);
  font-size: clamp(26px, 3vw, 40px);
}

/* --- LISTA ZYCZEN --- */
body.dc-2026 .wishlist_table {
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius);
  overflow: hidden;
  background: var(--dc-paper);
}
body.dc-2026 .wishlist_table th {
  background: var(--dc-cream);
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-soft);
  padding: 14px 16px !important;
}
body.dc-2026 .wishlist_table td { padding: 14px 16px !important; border-color: var(--dc-latte) !important; }
body.dc-2026 .wishlist_table .product-name a { color: var(--dc-ink); font-weight: 500; }
body.dc-2026 .wishlist_table .product-price { color: var(--dc-rose); font-weight: 600; }
body.dc-2026 .wishlist-empty { text-align: center; color: var(--dc-soft); font-size: 16px; padding: 40px 0; }

/* --- MENU MOBILNE --- */
body.dc-2026 #mobile-menu header h6 {
  font-size: 13px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--dc-soft);
}
body.dc-2026 #mobile-menu .side-panel-content { padding: 6px 24px 30px; }
body.dc-2026 #mobile-menu .searchform {
  margin-bottom: 18px;
}
body.dc-2026 #mobile-menu .searchform .search-field {
  width: 100%;
  border: 1px solid var(--dc-sand);
  border-radius: 999px;
  padding: 11px 18px;
  background: var(--dc-white);
  font-family: var(--dc-font-body);
}
body.dc-2026 ul.mobile-menu { list-style: none; margin: 0; padding: 0; }
body.dc-2026 ul.mobile-menu > li { border-bottom: 1px solid var(--dc-latte); }
body.dc-2026 ul.mobile-menu > li:last-child { border-bottom: none; }
body.dc-2026 ul.mobile-menu li a {
  display: block;
  padding: 13px 2px;
  font-size: 15px;
  color: var(--dc-ink);
  text-decoration: none;
}
body.dc-2026 ul.mobile-menu li a:hover { color: var(--dc-rose); }

/* --- BANER COOKIES --- */
.dc-cookies {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 100090;
  max-width: 660px;
  margin: 0 auto;
  background: var(--dc-paper);
  border: 1px solid var(--dc-sand);
  border-radius: var(--dc-radius);
  box-shadow: var(--dc-shadow-md);
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 18px;
}
.dc-cookies[hidden] { display: none; }
.dc-cookies p { margin: 0; font-size: 13px; line-height: 1.5; color: var(--dc-soft); }
.dc-cookies p a { color: var(--dc-accent); }
.dc-cookies__actions { flex: none; }
.dc-cookies .button { padding: 9px 20px !important; min-height: 38px; font-size: 12px !important; }
@media (max-width: 640px) {
  .dc-cookies { flex-direction: column; align-items: stretch; text-align: center; }
}
/* v3.1.1: nawigacja konta - ikony i etykiety w rownych liniach */
body.dc-2026 .woocommerce-MyAccount-navigation ul {
  display: flex;
  align-items: stretch;
  padding: 0;
}
body.dc-2026 .woocommerce-MyAccount-navigation li {
  flex: 1 1 0;
  display: flex;
}
body.dc-2026 .woocommerce-MyAccount-navigation li a.account-icon-box {
  display: flex !important;
  width: 100%;
  padding: 22px 12px 18px !important;
}
body.dc-2026 .woocommerce-MyAccount-navigation li a.account-icon-box > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  width: 100%;
}
body.dc-2026 .woocommerce-MyAccount-navigation li a.account-icon-box br { display: none; }
body.dc-2026 .woocommerce-MyAccount-navigation svg.account_icon {
  height: 42px;
  width: auto;
  max-width: 64px;
  display: block;
}
body.dc-2026 .woocommerce-MyAccount-navigation svg.account_icon path,
body.dc-2026 .woocommerce-MyAccount-navigation svg.account_icon circle,
body.dc-2026 .woocommerce-MyAccount-navigation svg.account_icon line,
body.dc-2026 .woocommerce-MyAccount-navigation svg.account_icon rect {
  fill: var(--dc-soft);
}
body.dc-2026 .woocommerce-MyAccount-navigation li a.account-icon-box:hover svg.account_icon path,
body.dc-2026 .woocommerce-MyAccount-navigation li.is-active svg.account_icon path {
  fill: var(--dc-rose);
}
body.dc-2026 .woocommerce-MyAccount-navigation li a.account-icon-box {
  font-size: 13px;
  letter-spacing: .02em;
  color: var(--dc-ink);
}
/* v3.1.2: tabela zamowien w koncie na pelna szerokosc */
body.dc-2026 .woocommerce-MyAccount-content table.shop_table,
body.dc-2026 .woocommerce-MyAccount-content .woocommerce-orders-table {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  table-layout: auto;
}
body.dc-2026 .woocommerce-orders-table td,
body.dc-2026 .woocommerce-orders-table th {
  white-space: nowrap;
}
body.dc-2026 .woocommerce-orders-table__cell-order-actions { text-align: right; }
@media (max-width: 735px) {
  body.dc-2026 .woocommerce-orders-table td,
  body.dc-2026 .woocommerce-orders-table th { white-space: normal; }
}
/* v3.1.3: kolumny wewnatrz tresci konta na pelna szerokosc */
body.dc-2026 .woocommerce-MyAccount-content .row.align-center { width: 100%; max-width: none; margin: 0; }
body.dc-2026 .woocommerce-MyAccount-content .row.align-center > .columns {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 !important;
}
/* v3.1.4: <mark> (wyroznienia Woo: numer/data/status zamowienia) w kolorach marki */
body.dc-2026 mark,
body.dc-2026 .woocommerce mark {
  background: var(--dc-rose-soft);
  color: var(--dc-rose-ink);
  padding: 2px 8px;
  border-radius: 6px;
  font-weight: 500;
}
/* v3.2: przelacznik jezyka TranslatePress w stylu marki */
body.dc-2026 .trp-language-switcher {
  z-index: 100085 !important;
}
body.dc-2026 .trp-language-switcher > div {
  background: var(--dc-paper) !important;
  border: 1px solid var(--dc-sand) !important;
  border-radius: var(--dc-radius-pill) !important;
  box-shadow: var(--dc-shadow-sm) !important;
  color: var(--dc-ink) !important;
  font-family: var(--dc-font-body) !important;
  font-size: 13px !important;
}
body.dc-2026 .trp-language-switcher a {
  color: var(--dc-ink) !important;
  font-family: var(--dc-font-body) !important;
  font-size: 13px !important;
}
body.dc-2026 .trp-language-switcher a:hover { color: var(--dc-rose) !important; }
/* v3.2.1: przelacznik jezyka w menu - subtelny PL / EN */
body.dc-2026 li.dc-lang {
  display: inline-flex !important;
  align-items: center;
  gap: 5px;
  margin-left: 10px;
}
body.dc-2026 li.dc-lang .dc-lang__link {
  font-size: 12px !important;
  letter-spacing: .14em;
  color: var(--dc-soft) !important;
  padding: 4px 2px !important;
  text-decoration: none;
}
body.dc-2026 li.dc-lang .dc-lang__link.is-current {
  color: var(--dc-ink) !important;
  font-weight: 600;
}
body.dc-2026 li.dc-lang .dc-lang__link:hover { color: var(--dc-rose) !important; }
body.dc-2026 li.dc-lang .dc-lang__sep { color: var(--dc-sand); font-size: 12px; }
/* mobile: wiersz jak inne pozycje */
body.dc-2026 ul.mobile-menu li.dc-lang { padding: 13px 2px; margin-left: 0; }
/* floater TP wylaczony - przelacznik zyje w menu */
body.dc-2026 nav.trp-floating-switcher { display: none !important; }

/* v3.2.3: przelacznik jezyka bez przekreslenia hover motywu */
body.dc-2026 li.dc-lang .dc-lang__link,
body.dc-2026 li.dc-lang .dc-lang__link:hover,
body.dc-2026 li.dc-lang .dc-lang__link:focus,
body.dc-2026 #wrapper li.dc-lang a {
  text-decoration: none !important;
  background-image: none !important;
  box-shadow: none !important;
}
body.dc-2026 li.dc-lang .dc-lang__link::before,
body.dc-2026 li.dc-lang .dc-lang__link::after {
  content: none !important;
  display: none !important;
}