

/* ==========================================================
   Sekcje kroków (wizualizacja)
   ========================================================== */
.sdcalc-step{ margin: 18px 0 28px; }
.sdcalc-step-head{ display:flex; align-items:center; gap:14px; margin: 0 0 10px; }
.sdcalc-step-line{ flex:1; height:2px; background:#111; opacity:.9; }
.sdcalc-step-title{ margin:0; font-size:18px; font-weight:800; line-height:1; text-align:center; }
.sdcalc-step-desc{ margin: 0 0 14px; font-size:14px; opacity:.9; text-align:center; }

.sdcalc-radio-box{ display:block; }
.sdcalc-radio-box .sdcalc-radio{ font-size:18px; font-weight:700; }
.sdcalc-radio-box .sdcalc-radio-desc{ margin-top:8px; opacity:.9; }

.sdcalc-visual{ margin-top: 16px; }
.sdcalc-visual-konva{ width:100%; min-height: 320px; border:1px solid #e6e6e6; border-radius:12px; overflow:hidden; }

/* Opcje filtrów obrazu (czarno-biały, sepia, lustrzane) */
.sdcalc-filter-options{ margin-top: 18px; padding: 16px; border: 1px solid #e6e6e6; border-radius: 8px; background: #f9f9f9; }
.sdcalc-filter-title{ font-size: 16px; font-weight: 700; margin-bottom: 12px; }
.sdcalc-filter-checks{ display: flex; gap: 20px; flex-wrap: wrap; }
.sdcalc-filter-check{ display: flex; align-items: center; gap: 8px; font-size: 15px; cursor: pointer; }
.sdcalc-filter-check input[type="checkbox"]{ transform: scale(1.1); cursor: pointer; }
.sdcalc-filter-check:hover{ opacity: 0.8; }

.sdcalc-subcat-desc{ margin: 10px; font-size:16px; opacity:.85; max-width: 900px; text-align: center; }

/* ==========================================================
   SD Wallpaper Calculator – frontend styles
   Uwaga: bloki opisane, żeby łatwo było zmieniać kolory itp.
   ========================================================== */

/* Root wrapper wpięty w form.cart (nad natywnym przyciskiem Woo) */
.sdcalc-root { margin: 18px 0 18px; }

/* Główna siatka kalkulatora */
.sdcalc { width: 100%; max-width: 980px; }
.sdcalc * { box-sizing: border-box; }

.sdcalc-grid { display: grid; grid-template-columns: 1fr; gap: 18px; }

/* Sekcja: pola wymiarów (szerokość / wysokość) */
.sdcalc-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 820px) { .sdcalc-row2 { grid-template-columns: 1fr; } }

.sdcalc-field label { display:block; font-weight:600; margin-bottom:8px; }
.sdcalc-field input[type="number"]{
  width:100%;
  padding:14px 12px;
  border:1px solid #cfcfcf;
  background:#fff;
}

/* Dynamiczne kolumny danych podłoża sterowane z ustawień ATT. */
.att-creator-calculator .sdcalc-material-table-scroll{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scrollbar-gutter:auto;
}
.att-creator-calculator .sdcalc-material-table-head,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
  min-width:var(--sdcalc-table-min-width,640px);
}
.att-creator-calculator .sdcalc-material-table-head,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  position:relative;
  grid-template-columns:minmax(90px,var(--sdcalc-name-width,25fr)) minmax(0,var(--sdcalc-data-width,75fr)) !important;
}

.att-creator-calculator .sdcalc-subitem-select{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  cursor:pointer;
}

.att-creator-calculator .sdcalc-subitem-select:focus-visible{
  outline:2px solid var(--att-product-accent);
  outline-offset:-2px;
}
.att-creator-calculator .sdcalc-material-table-head-columns,
.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
  display:grid !important;
  grid-template-columns:var(--sdcalc-data-columns,minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.2fr)) !important;
  gap:10px;
}

@media (max-width:767px){
  .att-creator-calculator .sdcalc-material-table-head-spacer{
    display:block !important;
  }
}

/* Sekcja: wybór trybu kadru */
.sdcalc-cropmode { align-items: start; }

/* Krok 2: gdy produkt nie ma obrazu do "Kadru własnego", personalizacja zajmuje całą szerokość. */
.sdcalc-cropmode.sdcalc-cropmode-single{ grid-template-columns: 1fr; }
.sdcalc-cropmode.sdcalc-cropmode-single .sdcalc-radio-box{ width:100%; }

/* Termin realizacji jako elegancka lista rozwijana */
.sdcalc-lead-select{
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 52px;
  padding: 13px 46px 13px 18px;
  border: 1px solid #c9d0d8;
  border-radius: 10px;
  background-color: #fff;
  background-image: linear-gradient(45deg, transparent 50%, #344a63 50%), linear-gradient(135deg, #344a63 50%, transparent 50%);
  background-position: calc(100% - 22px) 22px, calc(100% - 15px) 22px;
  background-size: 7px 7px, 7px 7px;
  background-repeat: no-repeat;
  color: #263f5c;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
.sdcalc-lead-select:focus{
  outline: none;
  border-color: #1f3650;
  box-shadow: 0 0 0 3px rgba(31,54,80,.12);
}
.sdcalc-lead-note{ display:none !important; }
@media (max-width: 820px){
  .sdcalc-term-box{ padding:14px 0; }
  .sdcalc-lead-select{ font-size:15px; }
}

.sdcalc-radio { display:flex; gap:10px; align-items:center; font-weight:700; font-size:22px; }
.sdcalc-radio input { transform: scale(1.05); }

.sdcalc-radio-desc { margin-top:10px; font-size:16px; opacity:.75; line-height:1.3; }

/* Sekcja: okno kadrowania / wizualizacji (Konva) */
.sdcalc-visual { text-align:center; }

.sdcalc-visual-img {
  width: 100%;
  max-width: 860px;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  display: block;
  margin: 0 auto;
}

.sdcalc-visual-konva {
  width: 100%;
  max-width: 860px;
  aspect-ratio: 3 / 2;
  margin: 0 auto;
  background:#f3f3f3;
}

/* Sekcja: nagłówek "Podłoże" */
.sdcalc-divider{
  display:flex;
  align-items:center;
  gap:18px;
  margin: 6px 0;
}
.sdcalc-divider::before,
.sdcalc-divider::after{
  content:"";
  height:2px;
  background:#000;
  flex:1;
  opacity:.9;
}
.sdcalc-divider span{
  font-size:28px;
  font-weight:800;
  color:#000;
}

/* ==========================================================
   Sekcja: podłoża (miniatury)
   ========================================================== */


.sdcalc-subcat{padding: 20px 0 20px 0; border-bottom: 2px solid #111;}
.sdcalc-subcat-title{ font-size:28px; font-weight:500;text-align: center; }
.sdcalc-subgrid{ display:flex; flex-wrap:wrap; gap:4px; }

.sdcalc-subitem{  width: var(--sdcalc-subthumb-h, 120px); cursor:pointer; user-select:none; }
.sdcalc-subthumb{
  width: var(--sdcalc-subthumb-h, 120px);
  height: var(--sdcalc-subthumb-h, 120px);
  overflow:hidden;
  position: relative; /* potrzebne dla badge'a ceny */
  
    -moz-transition: background-color 1000ms linear;
    -o-transition: background-color 1000ms linear;
    -ms-transition: background-color 1000ms linear;
    transition: background-color 1000ms linear;
}
.sdcalc-subthumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.sdcalc-subitem.is-active .sdcalc-subthumb{ border: #d10000 2px solid  ; box-shadow: 0 0 0 2px rgba(0,0,0,.12); }

/* Zaznaczenie wybranego podłoża – czerwony „ptaszek” (OK) na miniaturce */
.sdcalc-subitem.is-active .sdcalc-subthumb::after{
  content:"";
  position:absolute;
  top:8px;
  right:8px;
  width:35px;
  height:35px;
  border-radius:999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(0,0,0,.15);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e60023' d='M9.2 16.6 4.9 12.3l-1.4 1.4 5.7 5.7L20.5 8.1l-1.4-1.4z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size: 18px 18px;
}
.sdcalc-subname{ text-align:center;font-size:16px; background-color: #f3f3f3; padding: 2px;}

/* Badge z ceną na miniaturce (prawy dolny róg) */
.sdcalc-subprice{
  position: absolute;
  right: 0;
  color:#000000;
  bottom: 8px;
  background: rgba(255,255,255,.92);
  border-left:#d10000 3px solid;
  padding: 4px 8px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
}

/* Tooltip (hover na miniaturze)
   Usunięte — zamiast tego przycisk "Zobacz podłoże" otwiera lightbox.
*/

/* Przycisk/link pod miniaturą */
.sdcalc-subview{
	color:#fff;
 margin-top:5px;
  width: var(--sdcalc-subthumb-h, 120px);
  border-bottom: #d10000 2px solid;
  font-size: 12px;
  background:#5b5b5b;
  text-align:center;
  text-transform:uppercase;
  padding:3px;
      -webkit-transition: background-color 1000ms linear;
    -moz-transition: background-color 1000ms linear;
    -o-transition: background-color 1000ms linear;
    -ms-transition: background-color 1000ms linear;
    transition: background-color 1000ms linear;
}
.sdcalc-subview:hover{ 
	color:#d10000;
  font-weight: 900;
	background:#CCC;

 }

/* Lightbox struktury: wyłącznie wycentrowane zdjęcie. */
.sdcalc-lightbox{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:3vh 3vw;
}
.sdcalc-lightbox.sdcalc-hidden{ display:none; }
.sdcalc-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
}
.sdcalc-lightbox-dialog{
  position:relative;
  width:auto;
  max-width:94vw;
  max-height:94vh;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.sdcalc-lightbox-close{
  position:absolute;
  right:0;
  top:0;
  z-index:2;
  width:40px;
  height:40px;
  border:0;
  border-radius:0;
  background:rgba(0,0,0,.58);
  color:#fff;
  font-size:30px;
  line-height:40px;
  cursor:pointer;
}
.sdcalc-lightbox-grid{
  display:block;
  min-height:0;
}
.sdcalc-lightbox-left{
  display:none;
}
.sdcalc-lightbox-title{
  font-size:18px;
  font-weight:900;
  margin-bottom:12px;
}
.sdcalc-lightbox-desc{ font-size:14px; line-height:1.55; }
.sdcalc-lightbox-right{
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sdcalc-lightbox-img,
.sdcalc-lightbox-video{
  display:block;
  width:auto;
  height:auto;
  max-width:94vw;
  max-height:94vh;
  object-fit:contain;
  border:0;
  border-radius:0;
}
.sdcalc-lightbox-video{
  width:min(94vw,1200px);
  aspect-ratio:16 / 9;
  background:#000;
}
.sdcalc-lightbox-img[hidden],
.sdcalc-lightbox-video[hidden]{
  display:none;
}
@media (max-width: 900px){
  .sdcalc-lightbox{ padding:16px; }
  .sdcalc-lightbox-dialog,
  .sdcalc-lightbox-img,
  .sdcalc-lightbox-video{ max-width:calc(100vw - 32px);max-height:calc(100vh - 32px); }
}

/* ==========================================================
   Sekcja: termin realizacji
   ========================================================== */

.sdcalc-term-wrap{ display:flex; width:100%; margin-top:18px; }
.sdcalc-term-box{
  border:none;
  padding:16px 18px;
  display:flex;
  flex-direction:column;
  align-items:start;
  gap:10px;
  justify-content:flex-start;
  width:100%;
  min-width:100%;
}
@media (max-width: 820px) {
  .sdcalc-term-wrap { justify-content:flex-start; }
  .sdcalc-term-box { min-width: 100%; padding-left:0; padding-right:0; }
}
.sdcalc-term-title{ font-size:22px; font-weight:600; color:#263f5c; line-height:1.2; margin:0; }
.sdcalc-term-options{ display:flex; flex-direction:column; gap:0; flex:0 0 auto; width:100%; }
@media (max-width: 820px){
  .sdcalc-term-title{ font-size:20px; }
  .sdcalc-term-options{ width:100%; }
}

.sdcalc-msg{ margin-top: 10px; padding: 10px 12px; background:#111; color:#fff; }
.sdcalc-msg.sdcalc-err{ background:#b00020; }
/* Utility */
.sdcalc-hidden{ display:none !important; }

/* UX: usuwamy owale/etykiety z rozmiarem tapety w oknie kadrowania */
.sdcalc-crop-label,
.sdcalc-dim-pill,
.sdcalc-visual .sdcalc-dim,
.sdcalc-visual .sdcalc-dim-x,
.sdcalc-visual .sdcalc-dim-y {
  display: none !important;
}

/* kill /1m2 suffix (woodmart/woo) */
.summary .price .woocommerce-price-suffix,
.summary .price .wd-price-unit,
.summary .price .price-suffix { display:none !important; }

/* ==========================================================
   Cena obok natywnego przycisku Woo
   ========================================================== */

/* Gdy kalkulator jest aktywny, chowamy natywną cenę (żeby nie dublować). */
body.sdcalc-active .summary .price { display:none !important; }

/* Placeholder ceny wstawiany bezpośrednio w form.cart (przed button). */
body.sdcalc-active form.cart .sdcalc-atc-price {
  display: inline-flex;
  align-items: center;
  margin-right: 14px;
  font-weight: 500;
  font-size: 26px;
  color: #d10000;
  margin-right: 18px;
}

/* Natywny przycisk Woo ma zostać w tej samej linii co cena. */
body.sdcalc-active form.cart button.single_add_to_cart_button,
body.sdcalc-active form.cart .single_add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  background: #d10000 !important;
  border-color: #d10000 !important;
  color: #fff !important;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

body.sdcalc-active form.cart button.single_add_to_cart_button:hover,
body.sdcalc-active form.cart button.single_add_to_cart_button:focus,
body.sdcalc-active form.cart .single_add_to_cart_button:hover,
body.sdcalc-active form.cart .single_add_to_cart_button:focus {
  background: #2f2f2f !important;
  border-color: #2f2f2f !important;
  color: #fff !important;
}


/* Podsumowanie zamówienia (pod terminem realizacji) */
.sdcalc-summary-wrap { margin-top: 18px; }
.sdcalc-summary-box { padding: 14px 16px; border: 1px solid #e6e6e6; background: #fff; }
.sdcalc-summary-title { font-weight: 800; font-size: 18px; margin-bottom: 10px; }
.sdcalc-summary-row { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid #f0f0f0; }
.sdcalc-summary-row:last-child { border-bottom: none; }
.sdcalc-summary-row span { color: #666; }
.sdcalc-summary-row strong { font-weight: 500; color: #111; }

/* Akcesoria do tapetowania (pod podsumowaniem) */
.sdcalc-accessories { margin-top: 12px; padding: 14px 16px; border: 1px solid #e6e6e6; background: #fff; }
.sdcalc-acc-title { font-weight: 800; font-size: 16px; margin-bottom: 10px; }
.sdcalc-acc-list { display: flex; flex-direction: column; gap: 8px; }
.sdcalc-acc-item { display: flex; align-items: center; gap: 10px; padding: 8px; border: 1px solid #f0f0f0; border-radius: 12px; cursor: pointer; }
.sdcalc-acc-item:hover { border-color: #e2e2e2; }
.sdcalc-acc-media img { width: 44px; height: 44px; object-fit: cover; border-radius: 10px; display: block; }
.sdcalc-acc-text { display: flex; flex-direction: column; gap: 2px; }
.sdcalc-acc-name { font-weight: 500; color: #111; }
.sdcalc-acc-price { font-size: 12px; color: #666; }
.sdcalc-acc-check { transform: scale(1.1); }


/* Akcesoria jako podpowiedź (bez koszyka) */
.sdcalc-acc-summary{margin:8px 0 14px;font-size:13px;color:#333;}
.sdcalc-acc-item{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #eee;border-radius:12px;margin:10px 0;background:#fff;}
.sdcalc-acc-qty{margin-left:auto;font-weight:700;white-space:nowrap;}


/* Przycisk 'Zamów próbkę' obok ATC */
body.sdcalc-active form.cart .sdcalc-sample-btn{ display:inline-flex; vertical-align:middle; }
@media (max-width: 520px){ body.sdcalc-active form.cart .sdcalc-sample-btn{ margin-left:0; margin-top:10px; } }

/* ==========================================================
   Topbar: Tekstura + Próbka materiału (nad Krokiem 1)
   ========================================================== */

.sdcalc-topbar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.sdcalc-topbar-btn {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: 1px solid #555;
  color: #333;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 7px 14px;
  cursor: pointer;
  border-radius: 2px;
  transition: background .18s, color .18s, border-color .18s;
  white-space: nowrap;
  line-height: 1.3;
}
.sdcalc-topbar-btn:hover {
  background: #333;
  color: #fff;
  border-color: #333;
}
.sdcalc-topbar-btn svg {
  flex-shrink: 0;
}

.sdcalc-product-sku {
  margin-left: auto;
  color: #d10000;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.3;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .sdcalc-product-sku {
    width: 100%;
    margin-left: 0;
    padding-top: 2px;
  }
}

/* ==========================================================
   Akcesoria – checkbox przy każdym produkcie
   ========================================================== */

.sdcalc-acc-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px;
  border: 1px solid #f0f0f0;
  border-radius: 12px;
  margin: 8px 0;
  background: #fff;
  transition: border-color .15s, background .15s;
}
.sdcalc-acc-item:has(.sdcalc-acc-checkbox:not(:checked)) {
  opacity: .55;
}

.sdcalc-acc-check-wrap {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
  width: 22px;
  height: 22px;
}
.sdcalc-acc-check-wrap input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.sdcalc-acc-checkmark {
  width: 22px;
  height: 22px;
  border: 2px solid #ccc;
  border-radius: 4px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color .15s, background .15s;
  flex-shrink: 0;
}
.sdcalc-acc-check-wrap input:checked ~ .sdcalc-acc-checkmark {
  background: #d10000;
  border-color: #d10000;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px;
}
.sdcalc-acc-check-wrap:hover .sdcalc-acc-checkmark {
  border-color: #d10000;
}

.sdcalc-acc-order-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #888;
  margin: 10px 0 4px;
}

/* ==========================================================
   Krok 3 – wybór podłoża w pełnoekranowym popupie z zakładkami
   ========================================================== */
.sdcalc-substrates{ margin: 6px 0 18px; }

.sdcalc-substrate-picker{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px;
  border:1px solid #e4e4e4;
  background:#fafafa;
}
.sdcalc-selected-substrate{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.sdcalc-selected-label{ font-size:12px; text-transform:uppercase; letter-spacing:.08em; opacity:.65; font-weight:700; }
.sdcalc-selected-substrate-name{ font-size:22px; line-height:1.15; color:#111; }
.sdcalc-open-substrates{
  flex:0 0 auto;
  border:0;
  background:#111;
  color:#fff;
  padding:14px 22px;
  min-height:48px;
  cursor:pointer;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.sdcalc-open-substrates:hover{ background:#d10000; color:#fff; }

.sdcalc-substrates-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  box-sizing:border-box;
}
.sdcalc-substrates-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
}
.sdcalc-substrates-modal-panel{
  position:relative;
  z-index:1;
  box-sizing:border-box;
  width:min(1200px, 100%);
  max-width:1200px;
  height:auto;
  max-height:calc(100dvh - 48px);
  margin:0;
  background:#fff;
  overflow:auto;
  padding:24px clamp(16px, 4vw, 56px) 42px;
  box-shadow:0 24px 80px rgba(0,0,0,.28);
}
.sdcalc-substrates-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
  padding-right:52px;
}
.sdcalc-substrates-modal-kicker{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  opacity:.65;
  margin-bottom:6px;
}
.sdcalc-substrates-modal-title{
  margin:0;
  font-size:clamp(28px, 4vw, 48px);
  line-height:1;
  font-weight:800;
}
.sdcalc-substrates-modal-close{
  position:absolute;
  right:18px;
  top:18px;
  width:48px;
  height:48px;
  border:0;
  background:#111;
  color:#fff;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
.sdcalc-substrates-modal-close:hover{ background:#d10000; color:#fff; }

.sdcalc-substrate-tabs{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:12px 0 16px;
  margin-bottom:10px;
  background:#fff;
  border-bottom:1px solid #e5e5e5;
}
.sdcalc-substrate-tab{
  border:1px solid #d7d7d7;
  background:#fff;
  color:#111;
  padding:11px 16px;
  cursor:pointer;
  font-weight:800;
  font-size:14px;
}
.sdcalc-substrate-tab.is-active{
  border-color:#111;
  background:#111;
  color:#fff;
}

.sdcalc-substrate-panels .sdcalc-subcat{
  display:none;
  border-bottom:0;
  padding:18px 0 0;
}
.sdcalc-substrate-panels .sdcalc-subcat.is-active{ display:block; }
.sdcalc-substrate-panels .sdcalc-subcat-title{
  text-align:left;
  font-size:28px;
  font-weight:800;
  margin-bottom:8px;
}
.sdcalc-substrate-panels .sdcalc-subcat-desc{
  text-align:left;
  max-width:980px;
  margin:0 0 20px;
}
.sdcalc-substrate-panels .sdcalc-subgrid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(var(--sdcalc-subthumb-h, 120px), 1fr));
  gap:14px;
  align-items:start;
}
.sdcalc-substrate-panels .sdcalc-subitem{
  display:block;
  width:100%;
  border:1px solid #e2e2e2;
  background:#fff;
  padding:8px;
  text-align:left;
  color:#111;
  cursor:pointer;
}
.sdcalc-substrate-panels .sdcalc-subitem:hover{
  border-color:#111;
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}
.sdcalc-substrate-panels .sdcalc-subthumb{
  display:block;
  width:100%;
  height:var(--sdcalc-subthumb-h, 120px);
  margin:8px 0;
}
.sdcalc-substrate-panels .sdcalc-subname{
  display:block;
  min-height:42px;
  font-weight:800;
  font-size:15px;
  line-height:1.2;
  background:#f3f3f3;
  color:#111;
  padding:8px;
}
.sdcalc-substrate-panels .sdcalc-subview{
  display:block;
  width:100%;
  margin-top:0;
}
body.sdcalc-no-scroll{ overflow:hidden; }

@media (max-width: 720px){
  .sdcalc-substrate-picker{ align-items:stretch; flex-direction:column; }
  .sdcalc-open-substrates{ width:100%; }
  .sdcalc-substrates-modal{
    align-items:stretch;
    justify-content:stretch;
    padding:0;
  }
  .sdcalc-substrates-modal-panel{
    width:100%;
    max-width:none;
    height:100%;
    max-height:none;
    margin:0;
    padding:18px 14px 34px;
    box-shadow:none;
  }
  .sdcalc-substrates-modal-close{ right:12px; top:12px; }
  .sdcalc-substrate-tabs{ flex-wrap:nowrap; overflow-x:auto; }
  .sdcalc-substrate-tab{ white-space:nowrap; }
}

/* Opis wybranego podłoża w popupie */
.sdcalc-substrate-description-box{
  position:sticky;
  bottom:-1px;
  z-index:2;
  margin-top:26px;
  padding:20px 22px;
  background:#fff;
  border:1px solid #dedede;
  box-shadow:0 -14px 34px rgba(0,0,0,.08);
}
.sdcalc-substrate-description-label{
  font-size:11px;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  opacity:.62;
  margin-bottom:5px;
}
.sdcalc-substrate-description-title{
  font-size:22px;
  line-height:1.2;
  font-weight:800;
  color:#111;
  margin-bottom:8px;
}
.sdcalc-substrate-description-content{
  max-width:980px;
  font-size:15px;
  line-height:1.6;
  color:#333;
}
.sdcalc-substrate-description-content p{ margin:0 0 10px; }
.sdcalc-substrate-description-content p:last-child{ margin-bottom:0; }
.sdcalc-substrate-description-close{
  margin-top:16px;
  border:0;
  background:#d10000;
  color:#fff;
  padding:12px 20px;
  cursor:pointer;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.sdcalc-substrate-description-close:hover{ background:#a80000; color:#fff; }

@media (max-width: 720px){
  .sdcalc-substrate-description-box{
    margin:18px -2px 0;
    padding:16px 14px;
  }
  .sdcalc-substrate-description-title{ font-size:19px; }
  .sdcalc-substrate-description-content{ font-size:14px; }
  .sdcalc-substrate-description-close{ width:100%; }
}

/* ==========================================================
   Popup podłoży – układ 2 kolumny: opis po lewej, lista po prawej
   ========================================================== */
.sdcalc-substrate-modal-body{
  display:grid;
  grid-template-columns:minmax(320px, .95fr) minmax(420px, 1.05fr);
  gap:30px;
  align-items:start;
  padding-top:18px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-box{
  position:sticky;
  top:94px;
  bottom:auto;
  z-index:0;
  margin:0;
  min-height:420px;
  padding:28px 30px;
  border:1px solid #dedede;
  background:#fafafa;
  box-shadow:none;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-label{
  margin-bottom:10px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-title{
  font-size:clamp(28px, 3vw, 42px);
  line-height:1.05;
  margin-bottom:18px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-content{
  max-width:none;
  font-size:16px;
  line-height:1.65;
  color:#1b1b1b;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-content strong,
.sdcalc-substrate-modal-body .sdcalc-substrate-description-content b{
  color:#111;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-close{
  margin-top:26px;
}

.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat{
  padding:0;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-title{
  font-size:24px;
  margin-bottom:6px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-desc{
  max-width:none;
  margin-bottom:16px;
  font-size:15px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subgrid{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem{
  position:relative;
  display:grid;
  grid-template-columns:190px 1fr;
  grid-template-areas:
    "thumb name"
    "thumb action";
  gap:10px 18px;
  align-items:center;
  min-height:150px;
  padding:14px;
  border:1px solid #e1e1e1;
  background:#fff;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem:hover{
  border-color:#111;
  box-shadow:0 14px 34px rgba(0,0,0,.08);
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem.is-active{
  border-color:#d10000;
  box-shadow:0 0 0 2px rgba(209,0,0,.12);
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subthumb{
  grid-area:thumb;
  display:block;
  width:190px;
  height:130px;
  margin:0;
  background:#f3f3f3;
  overflow:hidden;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subthumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subname{
  grid-area:name;
  display:block;
  min-height:0;
  padding:0;
  background:transparent;
  font-size:22px;
  line-height:1.15;
  font-weight:800;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subview{
  grid-area:action;
  width:max-content;
  min-width:160px;
  padding:11px 16px;
  margin-top:0;
  text-align:center;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem.is-active .sdcalc-subview{
  background:#d10000;
  color:#fff;
}

@media (max-width: 900px){
  .sdcalc-substrate-modal-body{
    grid-template-columns:1fr;
    gap:18px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-description-box{
    position:relative;
    top:auto;
    min-height:0;
    margin:0;
    padding:18px 16px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-description-title{
    font-size:24px;
    margin-bottom:12px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-description-content{
    font-size:14px;
    line-height:1.55;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-description-close{
    width:100%;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem{
    grid-template-columns:128px 1fr;
    min-height:118px;
    gap:8px 12px;
    padding:10px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subthumb{
    width:128px;
    height:96px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subname{
    font-size:18px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subview{
    min-width:0;
    width:100%;
    padding:10px 12px;
  }
}

@media (max-width: 480px){
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem{
    grid-template-columns:1fr;
    grid-template-areas:
      "name"
      "thumb"
      "action";
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subthumb{
    width:100%;
    height:150px;
  }
}

/* ==========================================================
   Poprawka popupu podłoży: nazwy w linii + zdjęcie po lewej, opis po prawej
   ========================================================== */
.sdcalc-substrate-modal-body{
  display:block !important;
  padding-top:18px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels{
  width:100%;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat{
  padding:0 !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-title{
  margin:0 0 6px !important;
  font-size:28px !important;
  line-height:1.15;
  font-weight:800;
  text-align:left !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-desc{
  margin:0 0 14px !important;
  max-width:none !important;
  text-align:left !important;
  font-size:15px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subgrid{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap;
  align-items:center;
  gap:10px !important;
  margin:10px 0 24px;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem{
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  min-height:0 !important;
  padding:11px 18px !important;
  border:1px solid #d7d7d7 !important;
  background:#fff !important;
  color:#111;
  text-align:center !important;
  cursor:pointer;
  box-shadow:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem:hover{
  border-color:#111 !important;
  box-shadow:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem.is-active{
  border-color:#d10000 !important;
  background:#d10000 !important;
  color:#fff !important;
  box-shadow:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subname{
  display:block !important;
  padding:0 !important;
  min-height:0 !important;
  background:transparent !important;
  color:inherit !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subthumb{
  display:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subview{
  display:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-box{
  position:relative !important;
  top:auto !important;
  margin:0 !important;
  min-height:0 !important;
  padding:0 !important;
  border:1px solid #dedede !important;
  background:#fafafa !important;
  box-shadow:none !important;
}
.sdcalc-substrate-detail{
  display:grid;
  grid-template-columns:minmax(260px, 42%) 1fr;
  gap:28px;
  align-items:stretch;
}
.sdcalc-substrate-description-media{
  min-height:320px;
  background:#f2f2f2;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sdcalc-substrate-description-media img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
  display:block;
}
.sdcalc-substrate-description-text{
  padding:28px 30px 30px 0;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-label{
  margin-bottom:10px !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-title{
  font-size:clamp(30px, 3vw, 44px) !important;
  line-height:1.05 !important;
  margin-bottom:18px !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-content{
  max-width:none !important;
  font-size:16px !important;
  line-height:1.65 !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-close{
  margin-top:26px !important;
}
@media (max-width: 760px){
  .sdcalc-substrate-detail{
    grid-template-columns:1fr;
    gap:0;
  }
  .sdcalc-substrate-description-media,
  .sdcalc-substrate-description-media img{
    min-height:220px;
    height:220px;
  }
  .sdcalc-substrate-description-text{
    padding:18px 16px 20px;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subgrid{
    align-items:stretch;
  }
  .sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subitem{
    flex:1 1 calc(50% - 10px);
    justify-content:center;
  }
}


/* Popup podłoży – korekta nagłówka kategorii i układu opisu */
.sdcalc-substrates-modal-head{
  margin-bottom:8px !important;
}
.sdcalc-substrates-modal-kicker{
  display:none !important;
}
.sdcalc-substrates-modal-title{
  margin:0 0 4px !important;
  font-size:clamp(26px, 3vw, 34px) !important;
  line-height:1.1 !important;
  color:#34475d !important;
}
.sdcalc-substrates-modal-desc{
  margin:0 !important;
  max-width:760px;
  font-size:15px;
  line-height:1.45;
  color:#51657a;
}
.sdcalc-substrate-tabs{
  border-bottom:0 !important;
  margin-bottom:8px !important;
  padding-bottom:12px !important;
}
.sdcalc-substrate-modal-body{
  padding-top:0 !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-title,
.sdcalc-substrate-modal-body .sdcalc-substrate-panels .sdcalc-subcat-desc{
  display:none !important;
}
.sdcalc-substrate-modal-body .sdcalc-substrate-description-label{
  display:none !important;
}
.sdcalc-substrate-description-text{
  padding-top:36px !important;
}
@media (max-width:760px){
  .sdcalc-substrate-description-text{
    padding-top:18px !important;
  }
}

/* Opis kategorii w popupie podłoży – przeniesiony na sam dół */
.sdcalc-substrates-modal-cat-desc-bottom{
  clear:both;
  margin:26px 0 0 !important;
  padding:18px 20px !important;
  border-top:1px solid #e1e1e1 !important;
  background:#f8f8f8 !important;
  color:#51657a !important;
  font-size:15px !important;
  line-height:1.65 !important;
}
.sdcalc-substrates-modal-cat-desc-bottom p{ margin:0 0 10px !important; }
.sdcalc-substrates-modal-cat-desc-bottom p:last-child{ margin-bottom:0 !important; }
.sdcalc-substrates-modal-cat-desc-bottom ul,
.sdcalc-substrates-modal-cat-desc-bottom ol{ margin:8px 0 8px 20px !important; padding:0 !important; }
@media (max-width:760px){
  .sdcalc-substrates-modal-cat-desc-bottom{
    margin-top:18px !important;
    padding:15px 16px !important;
    font-size:14px !important;
  }
}

/* ==========================================================
   Kategorie podłoży – select (lista rozwijana) tylko na telefonie
   ========================================================== */
.sdcalc-substrate-tabs-select{
  display:none;
}
@media (max-width: 760px){
  .sdcalc-substrates-modal-panel .sdcalc-substrate-tabs{
    display:none !important;
  }
  .sdcalc-substrates-modal-panel .sdcalc-substrate-tabs-select{
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    min-height:48px !important;
    margin:0 0 16px !important;
    padding:13px 40px 13px 14px !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
    color:#111 !important;
    background-color:#fff !important;
    border:1px solid #d7d7d7 !important;
    border-radius:6px !important;
    -webkit-appearance:none;
    appearance:none;
    background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat:no-repeat !important;
    background-position:right 12px center !important;
    background-size:18px 18px !important;
  }
  .sdcalc-substrates-modal-panel .sdcalc-substrate-tabs-select option{
    color:#111 !important;
    background:#fff !important;
  }
}

/* ==========================================================
   Popup podłoży – obraz materiału bez rozciągania w pionie
   ========================================================== */
.sdcalc-substrate-description-media{
  min-height:0 !important;
  height:auto !important;
  align-items:flex-start !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.sdcalc-substrate-description-media img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:420px !important;
  object-fit:contain !important;
  display:block !important;
}
@media (max-width: 760px){
  .sdcalc-substrate-description-media img{
    max-height:260px !important;
  }
}


/* ==========================================================
   Popup podłoży – usuń tło i obramowanie sekcji opisu/obrazu
   ========================================================== */
.sdcalc-substrate-modal-body .sdcalc-substrate-description-box{
  border:0 !important;
  background:transparent !important;
}
.sdcalc-substrate-description-media{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.sdcalc-substrate-description-media img{
  border:0 !important;
  box-shadow:none !important;
}

/* ==========================================================
   Popup podłoży – nowy układ wewnątrz opisu:
   Nazwa / Tabela danych (Gramatura, Materiał, Zastosowanie, Efekt światła) / Opis / Galeria
   ========================================================== */
.sdcalc-substrate-data-table{
  width:100%;
  max-width:520px;
  border-collapse:collapse;
  margin:0 0 22px;
}
.sdcalc-substrate-data-table.sdcalc-hidden{ display:none; }
.sdcalc-substrate-data-table tr{
  border-bottom:1px solid #e5e5e5;
}
.sdcalc-substrate-data-table tr:last-child{
  border-bottom:0;
}
.sdcalc-substrate-data-table th,
.sdcalc-substrate-data-table td{
  text-align:left;
  padding:9px 0;
  font-size:14px;
  line-height:1.4;
  vertical-align:top;
}
.sdcalc-substrate-data-table th{
  width:42%;
  padding-right:16px;
  font-weight:700;
  color:#51657a;
  white-space:nowrap;
}
.sdcalc-substrate-data-table td{
  color:#111;
  font-weight:600;
}

.sdcalc-substrate-data-table tr.sdcalc-substrate-quote-row th,
.sdcalc-substrate-data-table tr.sdcalc-substrate-quote-row td{
  font-weight:800;
  color:#111;
}
.sdcalc-substrate-data-table tr.sdcalc-substrate-quote-price td{
  font-size:15px;
}

.sdcalc-substrate-description-gallery{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:8px;
  margin-top:18px;
}
.sdcalc-substrate-description-gallery.sdcalc-hidden{ display:none; }
.sdcalc-gallery-thumb{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  padding:0;
  border:1px solid #e2e2e2;
  background:#f3f3f3;
  overflow:hidden;
  cursor:pointer;
}
.sdcalc-gallery-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.sdcalc-gallery-thumb:hover{
  border-color:#111;
}

@media (max-width: 760px){
  .sdcalc-substrate-description-gallery{
    grid-template-columns:repeat(4, 1fr);
    gap:6px;
  }
  .sdcalc-substrate-data-table{
    max-width:none;
    margin-bottom:16px;
  }
  .sdcalc-substrate-data-table th,
  .sdcalc-substrate-data-table td{
    font-size:13px;
    padding:7px 0;
  }
  .sdcalc-substrate-data-table th{
    width:46%;
    padding-right:10px;
  }
}

/* ==========================================================
   ATT-CREATOR 1.0.130 – dane techniczne na kartach materiałów
   ========================================================== */

body.sdcalc-active form.cart{
  display:block !important;
}

body.sdcalc-active form.cart > .quantity,
body.sdcalc-active form.cart .quantity:not(.sdcalc-accessories .quantity),
body.sdcalc-active form.cart > .sdcalc-atc-price{
  display:none !important;
}

.sdcalc-root{
  width:100%;
  max-width:680px;
  margin:10px 0 22px;
}

/* Strona produktu: galeria 60%, kalkulator 40%.
   !important neutralizuje późniejszą regułę flex z WooCommerce/Blocksy. */
@media (min-width:1101px){
  body.single-product.sdcalc-active .product-entry-wrapper{
    display:grid !important;
    grid-template-columns:minmax(0,3fr) minmax(430px,2fr) !important;
  }
}

.sdcalc.att-creator-calculator{
  width:100%;
  max-width:none;
  color:#202020;
  font-size:14px;
}

.att-creator-calculator .sdcalc-section{
  margin:0;
  padding:19px 0;
  border-bottom:1px solid #e6e6e6;
}

.att-creator-calculator .sdcalc-product-sku{
  display:flex;
  align-items:center;
  gap:4px;
  margin:0 0 9px;
  color:#737983;
  font-size:12px;
  line-height:1.35;
}

.att-creator-calculator .sdcalc-product-sku strong{
  color:#454b54;
  font-weight:700;
}

.att-creator-calculator .sdcalc-section:first-child{
  padding-top:4px;
}

.att-creator-calculator .sdcalc-section-title{
  display:block;
  margin:0 0 14px;
  color:#222;
  font-size:16px;
  font-weight:800;
  line-height:1.25;
  text-align:left;
}

.att-creator-calculator .sdcalc-section-title span{
  margin-right:4px;
}


.att-creator-calculator .sdcalc-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 14px;
}

.att-creator-calculator .sdcalc-section-head .sdcalc-section-title{
  margin:0;
}

.att-creator-calculator .sdcalc-measure-help-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #cfd8e3;
  background:#f5f8fc;
  color:#183a63;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  cursor:pointer;
  transition:background .16s ease, border-color .16s ease, color .16s ease;
}

.att-creator-calculator .sdcalc-measure-help-btn:hover{
  background:#eef4fb;
  border-color:#b5c7dc;
}

.att-creator-calculator .sdcalc-measure-help-btn__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
}

.att-creator-calculator .sdcalc-measure-help-btn__icon svg{
  width:18px;
  height:18px;
  display:block;
}

.sdcalc-measure-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
}

.sdcalc-measure-modal.is-open{
  display:block;
}

.sdcalc-measure-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(17, 24, 39, .52);
}

.sdcalc-measure-modal__dialog{
  position:relative;
  width:min(980px, calc(100vw - 32px));
  max-height:calc(100vh - 40px);
  margin:20px auto;
  padding:28px 28px 24px;
  background:#fff;
  overflow:auto;
  box-shadow:0 30px 70px rgba(15, 23, 42, .22);
}

.sdcalc-measure-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:1px solid #d7dde5;
  background:#fff;
  color:#1e293b;
  font-size:30px;
  line-height:1;
  cursor:pointer;
}

.sdcalc-measure-modal__close:hover{
  background:#f8fafc;
}

.sdcalc-measure-modal__eyebrow{
  margin:0 0 10px;
  color:#d91322;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.sdcalc-measure-modal__title{
  margin:0 0 10px;
  color:#102e56;
  font-size:32px;
  line-height:1.12;
  font-weight:800;
}

.sdcalc-measure-modal__intro{
  margin:0;
  max-width:760px;
  color:#4b5563;
  font-size:16px;
  line-height:1.65;
}

.sdcalc-measure-steps{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:24px;
}

.sdcalc-measure-step{
  position:relative;
  padding:18px;
  border:1px solid #e3e8ef;
  background:#fff;
}

.sdcalc-measure-step__visual{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:150px;
  margin-bottom:12px;
  background:#fcfcfd;
  border:1px solid #edf1f5;
}

.sdcalc-measure-step__visual svg{
  display:block;
  width:100%;
  max-width:220px;
  height:auto;
}

.sdcalc-measure-step__index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin:0 0 10px;
  background:#d91322;
  color:#fff;
  font-size:14px;
  font-weight:800;
}

.sdcalc-measure-step__title{
  margin:0 0 8px;
  color:#111827;
  font-size:20px;
  line-height:1.25;
  font-weight:800;
}

.sdcalc-measure-step__desc{
  margin:0;
  color:#4b5563;
  font-size:14px;
  line-height:1.65;
}

body.sdcalc-measure-modal-open{
  overflow:hidden;
}

@media (max-width: 767px){
  .att-creator-calculator .sdcalc-section-head{
    align-items:flex-start;
  }
  .att-creator-calculator .sdcalc-measure-help-btn{
    width:100%;
    justify-content:center;
  }
  .sdcalc-measure-modal__dialog{
    width:min(100vw - 20px, 980px);
    max-height:calc(100vh - 20px);
    margin:10px auto;
    padding:22px 16px 18px;
  }
  .sdcalc-measure-modal__title{
    font-size:26px;
  }
  .sdcalc-measure-modal__intro{
    font-size:15px;
    line-height:1.55;
  }
  .sdcalc-measure-steps{
    grid-template-columns:1fr;
  }
}

/* 1. Kategorie materiałów */
.att-creator-calculator .sdcalc-material-categories{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  overflow:visible !important;
}

.att-creator-calculator .sdcalc-material-category-cell{
  position:relative;
  min-width:0;
  padding-top:8px;
  overflow:visible !important;
}

.att-creator-calculator .sdcalc-material-category{
  position:relative;
  display:flex;
  min-width:0;
  min-height:76px;
  align-items:center;
  justify-content:center;
  padding:15px 10px 12px;
  border:1px solid #d8dce1;
  border-radius:8px;
  background:#fff;
  color:#242424;
  box-shadow:0 1px 2px rgba(0,0,0,.03);
  cursor:pointer;
  text-align:center;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
  width:100%;
  height:100%;
  overflow:visible !important;
}

.att-creator-calculator .sdcalc-material-category:hover{
  border-color:#b6bcc4;
}

.att-creator-calculator .sdcalc-material-category.is-active{
  border:2px solid #ef5a5f;
  padding:14px 9px 11px;
  background:#fff;
  box-shadow:0 0 0 1px rgba(239,90,95,.08);
}

.att-creator-calculator .sdcalc-material-category-name{
  display:block;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}

.att-creator-calculator .sdcalc-category-badge{
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  z-index:2;
  padding:3px 10px;
  border-radius:999px;
  background:var(--sdcalc-badge-bg, #d91322);
  color:#fff;
  font-size:9px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
}

.att-creator-calculator .sdcalc-material-panels{
  margin-top:10px;
}

.att-creator-calculator .sdcalc-material-panel{
  container-type:inline-size;
}

.att-creator-calculator .sdcalc-material-table-head{
  display:grid;
  grid-template-columns:minmax(90px,.28fr) minmax(0,1fr);
  gap:13px;
  align-items:start;
  min-height:42px;
  padding:9px 12px;
  border:1px solid var(--att-product-line);
  border-bottom:0;
  background:#f4f1eb;
  color:#323330;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
}

.att-creator-calculator .sdcalc-material-table-head-columns{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.2fr);
  gap:10px;
}

.att-creator-calculator .sdcalc-material-table-head-columns > span{
  text-align:center;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.att-creator-calculator .sdcalc-material-panel{
  display:none;
}

.att-creator-calculator .sdcalc-material-panel.is-active{
  display:block;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem{
  position:relative;
  display:flex;
  width:100%;
  min-width:0;
  min-height:126px;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:9px;
  padding:13px 10px 11px;
  border:1px solid #d8dce1;
  border-radius:8px;
  background:#fff;
  color:#242424;
  cursor:pointer;
  text-align:left;
  box-shadow:none;
  transition:border-color .16s ease, box-shadow .16s ease;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem:hover{
  border-color:#b6bcc4;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  border:2px solid #ef5a5f;
  padding:12px 9px 10px;
  box-shadow:0 0 0 1px rgba(239,90,95,.08);
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subname{
  display:flex;
  min-height:30px;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:5px;
  padding:0 1px 8px;
  border-bottom:1px solid #eceef1;
  background:transparent;
  color:inherit;
  font-size:12px;
  font-weight:750;
  line-height:1.25;
  text-align:center;
}

.att-creator-calculator .sdcalc-subname-title{
  display:block;
  color:inherit;
  font-weight:750;
}

.att-creator-calculator .sdcalc-subname-secondary{
  display:flex;
  flex-direction:column;
  gap:2px;
  color:#6d7279;
  font-size:11px;
  font-weight:400;
  line-height:1.25;
}

.att-creator-calculator .sdcalc-subname-secondary:empty{
  display:none;
}

.att-creator-calculator .sdcalc-material-panel.has-no-data-fields .sdcalc-material-table-head,
.att-creator-calculator .sdcalc-material-panel.has-no-data-fields .sdcalc-subitem,
.att-creator-calculator .sdcalc-material-panel.has-no-data-fields .sdcalc-subitem.is-active{
  grid-template-columns:1fr !important;
}

.att-creator-calculator .sdcalc-material-panel.has-no-data-fields .sdcalc-material-table-head-columns,
.att-creator-calculator .sdcalc-material-panel.has-no-data-fields .sdcalc-submeta{
  display:none !important;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:4px;
  color:#676c73;
  font-size:12px;
  font-weight:400;
  line-height:1.25;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-row{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-label{
  color:#3f4348;
  font-weight:650;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-value{
  color:#6d7279;
  font-weight:400;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subprice{
  display:none !important;
}

.att-creator-calculator .sdcalc-material-more{
  display:flex;
  justify-content:flex-end;
  margin-top:10px;
}

.att-creator-calculator .sdcalc-material-more-link{
  display:inline-flex;
  align-items:start;
  gap:4px;
  color:#4d6672;
  font-size:12px;
  font-weight:700;
  line-height:1.35;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .16s ease;
}

.att-creator-calculator .sdcalc-material-more-link:hover{
  color:#20262a;
}

.att-creator-calculator .sdcalc-material-more-arrow{
  display:inline-block;
  text-decoration:none;
  transition:transform .16s ease;
}

.att-creator-calculator .sdcalc-material-more-link:hover .sdcalc-material-more-arrow{
  transform:translateX(2px);
}

/* 2. Wymiary */
.att-creator-calculator .sdcalc-dimensions-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 22px minmax(0, 1fr);
  gap:10px;
  align-items:end;
}

.att-creator-calculator .sdcalc-field label{
  display:block;
  margin:0 0 7px;
  color:#7a7f86;
  font-size:12px;
  font-weight:500;
}

.att-creator-calculator .sdcalc-field input[type="number"]{
  width:100%;
  height:52px;
  padding:0 14px;
  border:1px solid #d8dce1;
  border-radius:7px;
  background:#fff;
  color:#222;
  font-size:18px;
  font-weight:500;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-field input[type="number"]:focus{
  outline:none;
  border-color:#ef5a5f;
  box-shadow:0 0 0 3px rgba(239,90,95,.10);
}

.att-creator-calculator .sdcalc-dimension-separator{
  display:flex;
  height:52px;
  align-items:center;
  justify-content:center;
  color:#252525;
  font-size:23px;
  font-weight:400;
}

.att-creator-calculator .sdcalc-area-line{
  margin-top:9px;
  color:#777d84;
  font-size:12px;
}

.att-creator-calculator .sdcalc-area-line strong{
  color:#555b62;
  font-weight:600;
}

/* 3. Cena */
.att-creator-calculator .sdcalc-price-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:38px;
}

.att-creator-calculator .sdcalc-price-row > span{
  color:#50545a;
  font-size:14px;
  font-weight:500;
}

.att-creator-calculator .sdcalc-main-price{
  color:#202020;
  font-size:23px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}

.att-creator-calculator .sdcalc-main-price .amount,
.att-creator-calculator .sdcalc-main-price bdi{
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
}

/* 4. Kadrowanie */
.att-creator-calculator .sdcalc-cropmode{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  align-items:stretch;
  grid-auto-rows:1fr;
}

.att-creator-calculator .sdcalc-cropmode.sdcalc-cropmode-single{
  grid-template-columns:1fr;
}

.att-creator-calculator .sdcalc-radio-box{
  position:relative;
  display:flex;
  box-sizing:border-box;
  width:100%;
  height:100%;
  min-height:142px;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding:13px 12px 14px;
  border:1px solid #d8dce1;
  border-radius:8px;
  background:#fff;
  color:#232323;
  cursor:pointer;
  text-align:center;
  transition:border-color .16s ease, box-shadow .16s ease;
}

.att-creator-calculator .sdcalc-radio-box:hover{
  border-color:#b6bcc4;
}

.att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked){
  border-color:#ef5a5f;
  padding:13px 12px 14px;
  box-shadow:inset 0 0 0 1px #ef5a5f, 0 0 0 1px rgba(239,90,95,.08);
}

.att-creator-calculator .sdcalc-radio-box > input[type="radio"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.att-creator-calculator .sdcalc-card-radio{
  position:absolute;
  top:13px;
  left:13px;
  width:16px;
  height:16px;
  border:2px solid #aeb4bb;
  border-radius:50%;
  background:#fff;
}

.att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked) .sdcalc-card-radio{
  border-color:#5f666e;
  box-shadow:inset 0 0 0 4px #fff;
  background:#5f666e;
}

.att-creator-calculator .sdcalc-crop-icon{
  display:flex;
  width:46px;
  height:46px;
  align-items:center;
  justify-content:center;
  margin:0 0 5px;
  color:#4b5057;
}

.att-creator-calculator .sdcalc-crop-icon svg{
  width:42px;
  height:42px;
}

.att-creator-calculator .sdcalc-radio-title{
  display:block;
  margin:0 0 5px;
  font-size:14px;
  font-weight:800;
  line-height:1.25;
}

.att-creator-calculator .sdcalc-radio-desc,
.att-creator-calculator .sdcalc-radio-box .sdcalc-radio-desc{
  display:block;
  margin:0;
  color:#737980;
  font-size:11px;
  font-weight:500;
  line-height:1.35;
  opacity:1;
}

.att-creator-calculator .sdcalc-visual{
  margin-top:14px;
}

/* Termin realizacji */
.att-creator-calculator .sdcalc-delivery-section{
  display:grid;
  grid-template-columns:minmax(130px, .42fr) minmax(0, 1fr);
  gap:14px;
  align-items:center;
  border-bottom:0;
  padding-bottom:14px;
}

.att-creator-calculator .sdcalc-delivery-label{
  margin:0;
  color:#252525;
  font-size:14px;
  font-weight:800;
}

.att-creator-calculator .sdcalc-lead-select{
  width:100%;
  min-height:48px;
  padding:11px 42px 11px 14px;
  border:1px solid #d8dce1;
  border-radius:7px;
  background-color:#fff;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234b5057' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 13px center;
  background-size:17px 17px;
  color:#2d3136;
  font-size:13px;
  font-weight:650;
  box-shadow:none;
  appearance:none;
  -webkit-appearance:none;
}

.att-creator-calculator .sdcalc-lead-select:focus{
  border-color:#ef5a5f;
  box-shadow:0 0 0 3px rgba(239,90,95,.10);
}

/* Przyciski końcowe */
.att-creator-calculator .sdcalc-action-stack{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:2px;
}

.att-creator-calculator .sdcalc-cart-button-slot{
  display:block;
  width:100%;
}

body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button,
body.sdcalc-active form.cart .att-creator-calculator button.single_add_to_cart_button{
  display:flex !important;
  width:100% !important;
  min-height:52px !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  float:none !important;
  margin:0 !important;
  padding:13px 18px !important;
  border:1px solid #d40712 !important;
  border-radius:6px !important;
  background:#d40712 !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-transform:none !important;
  box-shadow:none !important;
}

body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button::before{
  content:"" !important;
  display:block !important;
  width:20px !important;
  height:20px !important;
  margin:0 !important;
  background:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 4h2l2.7 11.2a2 2 0 0 0 2 1.5h7.8a2 2 0 0 0 2-1.6L21 8H7'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button:hover,
body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button:focus{
  border-color:#b8000a !important;
  background:#b8000a !important;
  color:#fff !important;
}

.att-creator-calculator .sdcalc-secondary-action{
  display:flex !important;
  width:100%;
  min-height:47px;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 16px;
  border:1px solid #d8dce1;
  border-radius:6px;
  background:#fff;
  color:#30343a;
  font-size:13px;
  font-weight:750;
  line-height:1.2;
  text-decoration:none !important;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-secondary-action:hover{
  border-color:#aeb4bb;
  background:#fafafa;
  color:#202020;
}

.att-creator-calculator .sdcalc-msg{
  margin-top:10px;
  border-radius:6px;
}

@media (max-width:520px){
  .sdcalc-root{
    max-width:none;
  }

  .att-creator-calculator .sdcalc-material-categories{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:8px;
  }

  .att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
  }

  .att-creator-calculator .sdcalc-material-category{
    min-height:72px;
    padding-left:6px;
    padding-right:6px;
  }

  .att-creator-calculator .sdcalc-material-category-name{
    font-size:11px;
  }

  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem{
    min-height:124px;
    padding-left:8px;
    padding-right:8px;
  }

  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname{
    min-height:28px;
    font-size:11px;
  }

  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
    font-size:12px;
  }

  .att-creator-calculator .sdcalc-cropmode{
    gap:9px;
  }

  .att-creator-calculator .sdcalc-radio-box{
    min-height:139px;
    padding-left:8px;
    padding-right:8px;
  }

  .att-creator-calculator .sdcalc-radio-title{
    font-size:12px;
  }

  .att-creator-calculator .sdcalc-radio-desc,
  .att-creator-calculator .sdcalc-radio-box .sdcalc-radio-desc{
    font-size:10px;
  }

  .att-creator-calculator .sdcalc-delivery-section{
    grid-template-columns:1fr;
    gap:8px;
  }
}

/* ATT-CREATOR 1.0.131 – identyczna wysokość kart kadrowania */

/* ATT-CREATOR 1.0.132 – popup koszyka z akcesoriami */
body.att-cart-modal-open{
  overflow:hidden;
}

.att-cart-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  font-family:inherit;
}

.att-cart-modal.att-cart-modal--hidden{
  display:none;
}

.att-cart-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15, 18, 22, .58);
  backdrop-filter:blur(2px);
}

.att-cart-modal__dialog{
  position:relative;
  z-index:1;
  width:min(650px, 100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  background:#fff;
  border:1px solid #e3e5e8;
  border-radius:13px;
  box-shadow:0 24px 70px rgba(0, 0, 0, .28);
  color:#17191c;
  scrollbar-width:thin;
}

.att-cart-modal__body{
  padding:24px 27px 18px;
}

.att-cart-modal__close{
  position:absolute;
  top:12px;
  right:14px;
  z-index:2;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#6f757c;
  font-size:29px;
  line-height:30px;
  font-weight:300;
  cursor:pointer;
}

.att-cart-modal__close:hover,
.att-cart-modal__close:focus-visible{
  background:#f1f2f3;
  color:#222;
  outline:none;
}

.att-cart-modal__success-icon{
  width:47px;
  height:47px;
  margin:0 auto 9px;
  color:#36b64b;
}

.att-cart-modal__success-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.att-cart-modal__title{
  margin:0;
  text-align:center;
  font-size:22px;
  line-height:1.25;
  font-weight:750;
  color:#17191c;
}

.att-cart-modal__subtitle{
  margin-top:4px;
  text-align:center;
  font-size:13px;
  color:#858a90;
}

.att-cart-modal__product-card{
  display:grid;
  grid-template-columns:150px minmax(0, 1fr);
  gap:17px;
  margin-top:20px;
  padding:8px;
  border:1px solid #e2e4e7;
  border-radius:8px;
  background:#fff;
}

.att-cart-modal__product-image{
  min-height:132px;
  overflow:hidden;
  border-radius:6px;
  background:#f3f3f3;
}

.att-cart-modal__product-image img{
  display:block;
  width:100%;
  height:100%;
  min-height:132px;
  object-fit:cover;
}

.att-cart-modal__product-info{
  min-width:0;
  padding:4px 4px 1px 0;
}

.att-cart-modal__product-name{
  margin:0 0 11px;
  font-size:14px;
  line-height:1.3;
  font-weight:700;
  color:#24272b;
}

.att-cart-modal__product-meta{
  display:grid;
  gap:5px;
  margin:0;
  font-size:11px;
  line-height:1.35;
}

.att-cart-modal__product-meta > div{
  display:grid;
  grid-template-columns:115px minmax(0, 1fr);
  gap:9px;
}

.att-cart-modal__product-meta dt,
.att-cart-modal__product-meta dd{
  margin:0;
}

.att-cart-modal__product-meta dt{
  color:#7e8389;
}

.att-cart-modal__product-meta dd{
  text-align:right;
  color:#4f545a;
  font-weight:550;
}

.att-cart-modal__product-total{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:11px;
  padding-top:10px;
  border-top:1px solid #eceef0;
  font-size:12px;
  font-weight:650;
}

.att-cart-modal__product-total strong{
  font-size:21px;
  line-height:1;
  color:#202226;
}

.att-cart-modal__accessories{
  margin-top:20px;
}

.att-cart-modal__accessories h3{
  margin:0;
  font-size:17px;
  line-height:1.3;
  font-weight:750;
}

.att-cart-modal__accessories > p{
  margin:3px 0 10px;
  font-size:11px;
  line-height:1.4;
  color:#888d93;
}

.att-cart-modal__accessory-list{
  display:grid;
  gap:7px;
}

.att-cart-modal__accessory-item{
  display:grid;
  grid-template-columns:27px 78px minmax(0, 1fr) 25px;
  align-items:center;
  gap:10px;
  min-height:91px;
  padding:8px 10px;
  border:1px solid #e4e6e9;
  border-radius:7px;
  background:#fff;
  transition:border-color .16s ease, box-shadow .16s ease, opacity .16s ease;
}

.att-cart-modal__accessory-item:has(.att-cart-modal__item-checkbox:checked){
  border-color:#e23a3f;
  box-shadow:0 0 0 1px rgba(226,58,63,.1);
}

.att-cart-modal__accessory-check{
  position:relative;
  width:20px;
  height:20px;
}

.att-cart-modal__item-checkbox,
.att-cart-modal__master-checkbox{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.att-cart-modal__accessory-check label,
.att-cart-modal__master > span{
  display:block;
  width:18px;
  height:18px;
  margin:0;
  border:1.5px solid #aab0b7;
  border-radius:4px;
  background:#fff;
  cursor:pointer;
  box-sizing:border-box;
}

.att-cart-modal__item-checkbox:checked + label,
.att-cart-modal__master-checkbox:checked + span{
  border-color:#d9141c;
  background:#d9141c;
}

.att-cart-modal__item-checkbox:checked + label::after,
.att-cart-modal__master-checkbox:checked + span::after{
  content:"";
  display:block;
  width:8px;
  height:4px;
  margin:4px 0 0 4px;
  border-left:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(-45deg);
}

.att-cart-modal__accessory-image{
  display:flex;
  align-items:center;
  justify-content:center;
  height:72px;
  overflow:hidden;
  border-radius:5px;
  background:#f7f7f7;
}

.att-cart-modal__accessory-image img{
  display:block;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.att-cart-modal__accessory-copy{
  min-width:0;
}

.att-cart-modal__accessory-name{
  font-size:12px;
  line-height:1.25;
  font-weight:700;
  color:#2d3034;
}

.att-cart-modal__accessory-desc{
  display:-webkit-box;
  overflow:hidden;
  margin-top:3px;
  color:#888d93;
  font-size:10px;
  line-height:1.35;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.att-cart-modal__accessory-price{
  margin-top:5px;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  color:#2d3034;
}

.att-cart-modal__accessory-price .woocommerce-Price-amount,
.att-cart-modal__accessory-price .amount{
  font-weight:700;
}

.att-cart-modal__accessory-price > span{
  font-size:10px;
  color:#777c82;
  font-weight:500;
}

.att-cart-modal__accessory-info{
  display:flex;
  align-items:center;
  justify-content:center;
  width:19px;
  height:19px;
  border:1px solid #aab0b7;
  border-radius:50%;
  color:#737980;
  font-size:11px;
  line-height:1;
  font-weight:700;
  text-decoration:none;
}

.att-cart-modal__accessory-info:hover{
  border-color:#d9141c;
  color:#d9141c;
}

.att-cart-modal__empty{
  padding:15px;
  border:1px dashed #d9dde1;
  border-radius:7px;
  background:#fafafa;
  color:#777c82;
  font-size:12px;
  text-align:center;
}

.att-cart-modal__loading::after{
  content:"";
  display:inline-block;
  width:13px;
  height:13px;
  margin-left:8px;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  vertical-align:-2px;
  animation:att-cart-spin .7s linear infinite;
}

@keyframes att-cart-spin{
  to{ transform:rotate(360deg); }
}


.att-cart-modal__selection-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:12px;
  padding:10px 2px;
  border-bottom:1px solid #e7e9eb;
}

.att-cart-modal__master{
  position:relative;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  margin:0;
  cursor:pointer;
}

.att-cart-modal__master > span{
  flex:0 0 18px;
}

.att-cart-modal__master em{
  color:#777c82;
  font-size:11px;
  line-height:1.3;
  font-style:normal;
}

.att-cart-modal__extras-total{
  flex:0 0 auto;
  color:#777c82;
  font-size:11px;
  white-space:nowrap;
}

.att-cart-modal__extras-total strong{
  margin-left:4px;
  color:#34373b;
  font-size:12px;
}

.att-cart-modal.accessories-disabled .att-cart-modal__accessory-list{
  opacity:.48;
}

.att-cart-modal__error{
  min-height:0;
  margin-top:0;
  color:#c71920;
  font-size:12px;
  line-height:1.4;
  text-align:center;
}

.att-cart-modal__error:not(:empty){
  margin-top:10px;
}

.att-cart-modal__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:14px;
}

.att-cart-modal__actions button{
  min-height:49px;
  padding:11px 15px;
  border-radius:6px;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  cursor:pointer;
  transition:background .16s ease, border-color .16s ease, opacity .16s ease;
}

.att-cart-modal__continue{
  border:1px solid #cfd3d7;
  background:#fff;
  color:#3a3e43;
}

.att-cart-modal__continue:hover{
  border-color:#aeb4ba;
  background:#f7f8f9;
}

.att-cart-modal__go-cart{
  border:1px solid #d90e16;
  background:#d90e16;
  color:#fff;
  box-shadow:0 7px 16px rgba(217,14,22,.18);
}

.att-cart-modal__go-cart:hover{
  border-color:#bd0b12;
  background:#bd0b12;
}

.att-cart-modal.is-busy .att-cart-modal__actions button{
  opacity:.62;
  cursor:wait;
}

.att-cart-modal__safe{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:12px;
  color:#9a9fa5;
  font-size:10px;
}

.att-cart-modal__safe svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.att-creator-calculator .sdcalc-msg.is-error{
  padding:10px 12px;
  border:1px solid #efb8ba;
  background:#fff5f5;
  color:#b8171d;
}

.att-creator-calculator .sdcalc-msg.is-success{
  padding:10px 12px;
  border:1px solid #bfe3c4;
  background:#f3fbf4;
  color:#267a32;
}

@media (max-width:620px){
  .att-cart-modal{
    align-items:flex-end;
    padding:0;
  }

  .att-cart-modal__dialog{
    width:100%;
    max-height:94vh;
    border-radius:14px 14px 0 0;
  }

  .att-cart-modal__body{
    padding:22px 15px 16px;
  }

  .att-cart-modal__title{
    font-size:20px;
  }

  .att-cart-modal__product-card{
    grid-template-columns:104px minmax(0, 1fr);
    gap:11px;
  }

  .att-cart-modal__product-image,
  .att-cart-modal__product-image img{
    min-height:118px;
  }

  .att-cart-modal__product-meta > div{
    grid-template-columns:1fr;
    gap:1px;
  }

  .att-cart-modal__product-meta dd{
    text-align:left;
  }

  .att-cart-modal__product-total strong{
    font-size:17px;
  }

  .att-cart-modal__accessory-item{
    grid-template-columns:24px 62px minmax(0, 1fr) 22px;
    gap:7px;
    padding:7px;
  }

  .att-cart-modal__accessory-image{
    height:64px;
  }

  .att-cart-modal__selection-bar{
    align-items:flex-start;
    flex-direction:column;
  }

  .att-cart-modal__extras-total{
    align-self:flex-end;
  }

  .att-cart-modal__actions{
    grid-template-columns:1fr;
    gap:8px;
  }
}


/* ATT-CREATOR 1.0.136 – stabilny popup koszyka i etykiety kategorii */
.att-creator-calculator .sdcalc-substrates,
.att-creator-calculator .sdcalc-material-panels{
  overflow:visible !important;
}


/* ATT-CREATOR 1.0.136 – etykiety kategorii zawsze nad kartą */
.att-creator-calculator .sdcalc-material-category-cell{
  position:relative;
  z-index:1;
  padding-top:10px;
  overflow:visible !important;
}
.att-creator-calculator .sdcalc-material-category-cell:has(.sdcalc-category-badge){
  z-index:3;
}
.att-creator-calculator .sdcalc-category-badge{
  top:0;
  z-index:10;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none;
}


/* ATT-CREATOR 1.0.138 – czytelne ilości akcesoriów i poprawiona ikona */
.att-cart-modal__calculation-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:10px 0 11px;
  padding:10px 11px;
  border:1px solid #cfe8d3;
  border-radius:7px;
  background:#f3faf4;
  color:#2e6337;
}

.att-cart-modal__calculation-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 20px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#36a448;
  color:#fff;
  font-size:13px;
  line-height:20px;
  font-weight:800;
  font-family:Arial, sans-serif;
  margin:0;
  color:#fff !important;
}

.att-cart-modal__calculation-note > div{
  min-width:0;
}

.att-cart-modal__calculation-note > div > strong,
.att-cart-modal__calculation-note > div > span{
  display:block;
}

.att-cart-modal__calculation-note > div > strong{
  font-size:11px;
  line-height:1.3;
  font-weight:750;
}

.att-cart-modal__calculation-note > div > span{
  margin-top:2px;
  font-size:10px;
  line-height:1.35;
  color:#5c7762;
}

.att-cart-modal__accessory-quantity{
  margin-top:6px;
  padding:6px 8px;
  border-radius:5px;
  background:#f5f6f7;
}

.att-cart-modal__accessory-quantity strong,
.att-cart-modal__accessory-quantity span{
  display:block;
}

.att-cart-modal__accessory-quantity strong{
  color:#202327;
  font-size:11px;
  line-height:1.3;
  font-weight:750;
}

.att-cart-modal__accessory-quantity span{
  margin-top:2px;
  color:#737980;
  font-size:9px;
  line-height:1.35;
}

.att-cart-modal__accessory-price{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:3px 10px;
}

.att-cart-modal__accessory-price > span{
  color:#666c72;
  font-size:10px;
  font-weight:500;
}

.att-cart-modal__accessory-price > strong{
  color:#24272b;
  font-size:11px;
  font-weight:750;
}

.att-cart-modal__master-checkbox:indeterminate + span{
  border-color:#d9141c;
  background:#d9141c;
}

.att-cart-modal__master-checkbox:indeterminate + span::after{
  content:"";
  display:block;
  width:8px;
  height:2px;
  margin:6px 0 0 4px;
  background:#fff;
  border:0;
  transform:none;
}

@media (max-width:620px){
  .att-cart-modal__accessory-quantity{
    padding:5px 6px;
  }

  .att-cart-modal__go-cart{
    font-size:11px;
  }
}

/* ==========================================================
   ATT-CREATOR 1.0.165 – pływające okno szybkiego zakupu
   ========================================================== */
.att-sticky-buy{
  position:fixed;
  top:50%;
  right:0;
  z-index:9990;
  box-sizing:border-box;
  width:170px;
  padding:10px;
  border:1px solid #e1e5ea;
  border-right:0;
  border-radius:9px 0 0 9px;
  background:#fff;
  box-shadow:0 12px 38px rgba(19,31,45,.17);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(100%,-50%);
  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
  color:#111827;
  font-family:inherit;
}

body.att-sticky-buy-visible .att-sticky-buy{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(0,-50%);
}

body.att-sticky-buy-visible .att-sticky-buy.is-collapsed{
  transform:translate(100%,-50%);
}

.att-sticky-buy button.att-sticky-buy__toggle{
  position:absolute !important;
  top:50% !important;
  left:-33px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:33px !important;
  min-width:33px !important;
  height:56px !important;
  min-height:56px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid #d8dde3 !important;
  border-right:0 !important;
  border-radius:8px 0 0 8px !important;
  background:#fff !important;
  color:#4b5563 !important;
  box-shadow:-5px 7px 18px rgba(19,31,45,.12) !important;
  transform:translateY(-50%) !important;
  cursor:pointer !important;
}

.att-sticky-buy button.att-sticky-buy__toggle:hover,
.att-sticky-buy button.att-sticky-buy__toggle:focus-visible{
  background:#f5f7f9 !important;
  color:#111827 !important;
}

.att-sticky-buy button.att-sticky-buy__toggle svg{
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  transition:transform .22s ease;
}

.att-sticky-buy.is-collapsed .att-sticky-buy__toggle svg{
  transform:rotate(180deg);
}

.att-sticky-buy__image{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:96px;
  margin:0 0 8px;
  overflow:hidden;
  border:1px solid #e6e8eb;
  border-radius:6px;
  background:#f4f5f6;
}

.att-sticky-buy__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.att-sticky-buy__image-placeholder{
  display:block;
  width:46px;
  height:46px;
  border:1px solid #d9dde2;
  background:#eceff2;
}

.att-sticky-buy__title{
  display:-webkit-box;
  min-height:34px;
  margin:0 1px 4px;
  overflow:hidden;
  color:#252a31;
  font-size:11.5px;
  font-weight:700;
  line-height:1.45;
  text-align:center;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.att-sticky-buy__price{
  min-height:24px;
  margin:0 0 8px;
  color:#111827;
  font-size:16px;
  font-weight:800;
  line-height:1.35;
  text-align:center;
}

.att-sticky-buy__price .woocommerce-Price-amount{
  color:inherit !important;
  font-size:inherit !important;
  font-weight:inherit !important;
}

.att-sticky-buy button{
  box-sizing:border-box !important;
  width:100% !important;
  min-height:39px !important;
  margin:0 0 7px !important;
  padding:8px 6px !important;
  border-radius:6px !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:750 !important;
  line-height:1.25 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  cursor:pointer;
  transition:background-color .16s ease, border-color .16s ease, color .16s ease, opacity .16s ease;
}

.att-sticky-buy button svg{
  display:inline-block;
  flex:0 0 15px;
  width:15px;
  height:15px;
  margin:0 5px 0 0;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vertical-align:middle;
}

.att-sticky-buy button span{
  vertical-align:middle;
}

.att-sticky-buy__add{
  border:1px solid #e30613 !important;
  background:#e30613 !important;
  color:#fff !important;
}

.att-sticky-buy__add:hover,
.att-sticky-buy__add:focus-visible{
  border-color:#c9000b !important;
  background:#c9000b !important;
  color:#fff !important;
}

.att-sticky-buy__sample{
  border:1px solid #c9dced !important;
  background:#eef6fc !important;
  color:#315f83 !important;
}

.att-sticky-buy__sample:hover,
.att-sticky-buy__sample:focus-visible{
  border-color:#a9c9e2 !important;
  background:#e0effa !important;
  color:#244e6e !important;
}

.att-sticky-buy__back{
  min-height:30px !important;
  margin:1px 0 0 !important;
  padding:5px 3px !important;
  border:0 !important;
  background:transparent !important;
  color:#555d66 !important;
  font-size:11px !important;
  font-weight:600 !important;
}

.att-sticky-buy__back:hover,
.att-sticky-buy__back:focus-visible{
  background:transparent !important;
  color:#111827 !important;
  text-decoration:underline;
}

.att-sticky-buy__back svg{
  width:14px;
  height:14px;
  margin-right:3px;
}

.att-sticky-buy button:disabled{
  cursor:not-allowed;
  opacity:.62;
}

.att-sticky-buy__add.is-loading svg{
  animation:att-sticky-buy-spin .8s linear infinite;
}

@keyframes att-sticky-buy-spin{
  to{ transform:rotate(360deg); }
}

@media (max-width:1180px){
  .att-sticky-buy{
    display:none !important;
  }
}


/* ATT-CREATOR 1.0.175 – zamiana kolejności terminu realizacji i ceny */
.att-creator-calculator .sdcalc-delivery-section{
  border-bottom:1px solid #e6e6e6;
  padding-bottom:19px;
}

.att-creator-calculator .sdcalc-delivery-title{
  margin:0;
}

.att-creator-calculator .sdcalc-price-section-final{
  border-bottom:0;
  padding-bottom:14px;
}

@media (max-width: 767px){
  .att-creator-calculator .sdcalc-delivery-title{
    margin-bottom:0;
  }
}

/* ==========================================================
   ATT-CREATOR 1.0.232 – Gallery Canvas / Compact Dock
   Wygląd kalkulatora zgodny z makietą produktu WALL&ROLL.
   ========================================================== */

body.sdcalc-active{
  --att-product-accent:#ed4a1b;
  --att-product-ink:#171717;
  --att-product-muted:#6f716f;
  --att-product-line:#dedbd5;
  --att-product-ecru:#f5f1e9;
}

body.sdcalc-active .sdcalc-root{
  width:100%;
  max-width:none;
  margin:0;
}

.sdcalc.att-creator-calculator{
  overflow:hidden;
  border:1px solid var(--att-product-line);
  border-radius:5px;
  background:#fff;
  color:var(--att-product-ink);
  font-family:var(--wr-font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-size:13px;
}

.att-creator-calculator .sdcalc-product-sku{
  margin:0;
  padding:13px 24px 0;
  color:#8a8a86;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.att-creator-calculator .sdcalc-section{
  margin:0 20px;
  padding:18px 4px;
  border-bottom:1px solid var(--att-product-line);
}

.att-creator-calculator .sdcalc-material-section{
  padding-top:16px;
}

.att-creator-calculator .sdcalc-section-title,
.att-creator-calculator .sdcalc-delivery-title{
  margin:0 0 13px;
  color:var(--att-product-ink);
  font-family:var(--wr-font-display, Georgia, "Times New Roman", serif);
  font-size:18px;
  font-weight:400;
  letter-spacing:-.015em;
  line-height:1.2;
}

.att-creator-calculator .sdcalc-section-title span{
  margin-right:7px;
  color:var(--att-product-accent);
  font-family:var(--wr-font-body, sans-serif);
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
}

.att-creator-calculator .sdcalc-material-categories{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  border:1px solid var(--att-product-line);
  background:#faf9f7;
}

.att-creator-calculator .sdcalc-material-category-cell{
  padding-top:0;
  border-right:1px solid var(--att-product-line);
}

.att-creator-calculator .sdcalc-material-category-cell:last-child{
  border-right:0;
}

.att-creator-calculator .sdcalc-material-category{
  min-height:52px;
  padding:11px 8px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-material-category:hover{
  border:0;
  background:#f1eee8;
}

.att-creator-calculator .sdcalc-material-category.is-active{
  padding:11px 8px 9px;
  border:0;
  border-bottom:2px solid var(--att-product-accent);
  background:#fff;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-material-category-name{
  font-size:11px;
  font-weight:750;
}

.att-creator-calculator .sdcalc-category-badge{
  top:-8px;
  padding:3px 7px;
  border-radius:2px;
  font-size:8px;
}

.att-creator-calculator .sdcalc-material-panels{
  margin-top:10px;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
  grid-template-columns:1fr;
  gap:0;
  border:1px solid var(--att-product-line);
  border-bottom:0;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  display:grid;
  grid-template-columns:minmax(90px,.28fr) minmax(0,1fr);
  min-height:88px;
  gap:13px;
  align-items:start;
  padding:14px 12px;
  border:0;
  border-bottom:1px solid var(--att-product-line);
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem:hover{
  border-color:var(--att-product-line);
  background:#fbfaf8;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  padding-left:9px;
  border-left:3px solid var(--att-product-accent);
  background:#fffaf6;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subname{
  min-height:0;
  padding:0;
  border:0;
  text-align:center;
  font-size:12px;
  font-weight:800;
  line-height:1.25;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.2fr);
  gap:4px 10px;
  align-items:start;
  color:#4c4e4a;
  font-size:12px;
  line-height:1.35;
  text-align:center;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-value{
  display:block;
  text-align:center;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.att-creator-calculator .sdcalc-submeta-row--texture-image{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  background:transparent;
}

.att-creator-calculator .sdcalc-texture-image-trigger{
  position:relative;
  z-index:2;
  display:block;
  width:54px;
  height:54px;
  padding:0;
  overflow:hidden;
  border:1px solid #d8d4cd;
  border-radius:50%;
  background:#fff;
  box-shadow:none;
  cursor:zoom-in;
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.att-creator-calculator .sdcalc-texture-image-trigger:hover,
.att-creator-calculator .sdcalc-texture-image-trigger:focus-visible{
  border-color:var(--att-product-accent);
  outline:0;
  box-shadow:0 0 0 3px rgba(239,90,95,.16);
  transform:scale(1.04);
}

.att-creator-calculator .sdcalc-texture-image-trigger img{
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
}

.att-creator-calculator .sdcalc-texture-zoom-icon,
.att-creator-calculator .sdcalc-texture-play-icon{
  position:absolute;
  top:50%;
  left:50%;
  display:inline-flex;
  width:34px;
  height:34px;
  margin:-17px 0 0 -17px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(20,20,20,.58);
  color:#fff;
  font-size:18px;
  line-height:1;
  pointer-events:none;
  transform:none;
  transition:background-color .16s ease, transform .16s ease;
}

.att-creator-calculator .sdcalc-texture-image-trigger:hover .sdcalc-texture-zoom-icon,
.att-creator-calculator .sdcalc-texture-image-trigger:focus-visible .sdcalc-texture-zoom-icon,
.att-creator-calculator .sdcalc-texture-image-trigger:hover .sdcalc-texture-play-icon,
.att-creator-calculator .sdcalc-texture-image-trigger:focus-visible .sdcalc-texture-play-icon{
  background:rgba(20,20,20,.76);
  transform:scale(1.08);
}

.att-creator-calculator .sdcalc-material-more{
  margin-top:8px;
}

.att-creator-calculator .sdcalc-material-more-link{
  color:#555853;
  font-size:10px;
}

@container (max-width:520px){
  .att-creator-calculator .sdcalc-material-table-head{
    font-size:12px;
  }
  .att-creator-calculator .sdcalc-material-table-head-columns,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr) minmax(0,1.2fr);
    gap:7px;
  }
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
    font-size:12px;
  }
}

/* 1.0.324 — tabela podłoży zgodna z wizualizacją ATT. */
.att-creator-calculator .sdcalc-material-categories,
.att-creator-calculator .sdcalc-material-panels,
.att-creator-calculator .sdcalc-material-table-scroll,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
  width:100%;
  max-width:none;
  box-sizing:border-box;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
  min-width:0;
}

.att-creator-calculator .sdcalc-material-panel{
  --sdcalc-material-row-height:60px;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  min-height:var(--sdcalc-material-row-height);
  gap:0;
  align-items:start;
  padding:0;
  border-left:0;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
  padding-left:0;
  border-left:0;
  box-shadow:inset 3px 0 0 var(--att-product-accent);
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subname{
  display:flex;
  min-height:var(--sdcalc-material-row-height);
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  box-sizing:border-box;
  align-self:stretch;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
  min-height:var(--sdcalc-material-row-height);
  gap:1px;
  align-items:stretch;
  background:var(--att-product-line);
  align-self:stretch;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-row{
  display:flex;
  min-width:0;
  min-height:var(--sdcalc-material-row-height);
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  box-sizing:border-box;
  background:#fff;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active .sdcalc-submeta-row{
  background:#fffaf6;
}

.att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-row[data-substrate-field="application"]{
  justify-content:flex-start;
  text-align:left;
}

.att-creator-calculator .sdcalc-submeta-row--texture-image{
  padding:0 !important;
  overflow:hidden;
}

.att-creator-calculator .sdcalc-texture-image-trigger{
  width:100%;
  height:60px;
  max-height:60px;
  min-height:0;
  aspect-ratio:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  transform:none;
}

.att-creator-calculator .sdcalc-texture-image-trigger:hover,
.att-creator-calculator .sdcalc-texture-image-trigger:focus-visible{
  border:0;
  border-radius:0;
  outline:2px solid var(--att-product-accent);
  outline-offset:-2px;
  box-shadow:none;
  transform:none;
}

.att-creator-calculator .sdcalc-texture-image-trigger img{
  width:100%;
  height:100%;
  min-height:0;
  border-radius:0;
  object-fit:cover;
}

@media (max-width:767px){
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{
    min-width:510px;
  }
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
    grid-template-columns:minmax(150px,var(--sdcalc-name-width,25fr)) minmax(360px,var(--sdcalc-data-width,75fr)) !important;
  }
}

.att-creator-calculator .sdcalc-section-head{
  margin-bottom:12px;
}

.att-creator-calculator .sdcalc-measure-help-btn{
  padding:6px 0;
  border:0;
  border-bottom:1px solid currentColor;
  background:transparent;
  color:#4e5e66;
  font-size:10px;
}

.att-creator-calculator .sdcalc-measure-help-btn:hover{
  border-color:var(--att-product-accent);
  background:transparent;
  color:var(--att-product-accent);
}

.att-creator-calculator .sdcalc-measure-help-btn__icon,
.att-creator-calculator .sdcalc-measure-help-btn__icon svg{
  width:14px;
  height:14px;
}

.att-creator-calculator .sdcalc-field label{
  margin-bottom:5px;
  color:#787a76;
  font-size:10px;
}

.att-creator-calculator .sdcalc-field input[type="number"]{
  height:46px;
  padding:0 12px;
  border-color:var(--att-product-line);
  border-radius:3px;
  font-size:15px;
}

.att-creator-calculator .sdcalc-field input[type="number"]:focus,
.att-creator-calculator .sdcalc-lead-select:focus{
  border-color:var(--att-product-accent);
  box-shadow:0 0 0 2px rgba(237,74,27,.12);
}

.att-creator-calculator .sdcalc-dimension-separator{
  height:46px;
  font-size:18px;
}

.att-creator-calculator .sdcalc-delivery-section{
  display:grid;
  grid-template-columns:minmax(125px,.42fr) minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:14px 4px;
  border-bottom:1px solid var(--att-product-line);
}

.att-creator-calculator .sdcalc-delivery-title{
  margin:0;
}

.att-creator-calculator .sdcalc-lead-select{
  min-height:42px;
  padding:9px 36px 9px 11px;
  border-color:var(--att-product-line);
  border-radius:3px;
  background-size:14px;
  color:#343532;
  font-size:11px;
}

.att-creator-calculator .sdcalc-cropmode{
  gap:8px;
}

.att-creator-calculator .sdcalc-crop-section{
  padding-top:14px;
  padding-bottom:14px;
}

.att-creator-calculator .sdcalc-crop-section .sdcalc-section-title{
  margin-bottom:10px;
}

.att-creator-calculator .sdcalc-radio-box,
.att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked){
  min-height:64px;
  align-items:flex-start;
  justify-content:center;
  padding:8px 10px 8px 36px;
  border-color:var(--att-product-line);
  border-radius:3px;
  text-align:left;
  box-shadow:none;
}

.att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked){
  border-color:var(--att-product-accent);
  background:#fffaf6;
}

.att-creator-calculator .sdcalc-card-radio{
  top:50%;
  left:12px;
  width:14px;
  height:14px;
  transform:translateY(-50%);
}

.att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked) .sdcalc-card-radio{
  border-color:var(--att-product-accent);
  background:var(--att-product-accent);
}

.att-creator-calculator .sdcalc-crop-icon{
  display:none;
}

.att-creator-calculator .sdcalc-radio-title{
  margin-bottom:2px;
  font-size:12px;
}

.att-creator-calculator .sdcalc-radio-desc,
.att-creator-calculator .sdcalc-radio-box .sdcalc-radio-desc{
  color:#747570;
  font-size:9px;
  line-height:1.4;
}

body.sdcalc-crop-modal-open{
  overflow:hidden;
}

.att-creator-calculator .sdcalc-crop-modal{
  position:fixed;
  inset:0;
  z-index:100000;
  display:none;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:20px;
  text-align:left;
}

.att-creator-calculator .sdcalc-crop-modal.is-open{
  display:flex;
}

.att-creator-calculator .sdcalc-crop-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,17,17,.66);
}

.att-creator-calculator .sdcalc-crop-modal__dialog{
  position:relative;
  z-index:1;
  width:min(1040px,calc(100vw - 48px));
  max-height:calc(100vh - 48px);
  overflow:hidden;
  padding:0;
  background:#fff;
  box-shadow:0 18px 44px rgba(0,0,0,.2);
}

.att-creator-calculator .sdcalc-crop-modal__close{
  position:absolute;
  top:18px;
  right:20px;
  display:flex;
  width:32px;
  height:32px;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--att-product-ink);
  font-size:20px;
  cursor:pointer;
}

.att-creator-calculator .sdcalc-crop-modal__head{
  display:grid;
  grid-template-columns:170px 190px minmax(0,1fr);
  gap:20px;
  align-items:center;
  min-height:70px;
  padding:16px 64px 16px 24px;
  border-bottom:1px solid var(--att-product-line);
}

.att-creator-calculator .sdcalc-crop-modal__eyebrow{
  margin:0;
  color:var(--att-product-accent);
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.att-creator-calculator .sdcalc-crop-modal__title{
  margin:0;
  color:var(--att-product-ink);
  font-family:var(--wr-font-display,Georgia,"Times New Roman",serif);
  font-size:24px;
  font-weight:400;
  line-height:1.15;
}

.att-creator-calculator .sdcalc-crop-modal__intro{
  margin:0;
  color:#666762;
  font-size:11px;
  line-height:1.5;
}

.att-creator-calculator .sdcalc-crop-modal__body{
  display:grid;
  grid-template-columns:minmax(0,2.25fr) minmax(270px,.8fr);
  min-height:500px;
}

.att-creator-calculator .sdcalc-crop-modal__controls{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:30px 26px 24px;
  border-left:1px solid var(--att-product-line);
  background:#fff;
}

.att-creator-calculator .sdcalc-crop-modal__dimensions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:8px;
  align-items:end;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}

.att-creator-calculator .sdcalc-crop-modal__dimensions-title{
  grid-column:1 / -1;
  padding:0 0 8px;
  color:#343532;
  font-size:10px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.att-creator-calculator .sdcalc-crop-modal__dimension-field{
  display:block;
  margin:0;
}

.att-creator-calculator .sdcalc-crop-modal__dimension-field > span{
  display:block;
  margin-bottom:4px;
  color:#6e6f6b;
  font-size:10px;
  font-weight:700;
}

.att-creator-calculator .sdcalc-crop-modal__dimension-field input{
  width:100%;
  height:42px;
  margin:0;
  padding:7px 10px;
  border:1px solid #c9c4bb;
  border-radius:0;
  background:#fff;
  color:var(--att-product-ink);
  font-size:14px;
  font-weight:700;
}

.att-creator-calculator .sdcalc-crop-modal__dimension-field input:focus{
  border-color:var(--att-product-accent);
  outline:none;
  box-shadow:0 0 0 2px rgba(232,68,26,.12);
}

.att-creator-calculator .sdcalc-crop-modal__dimension-separator{
  align-self:center;
  margin-bottom:11px;
  color:#777872;
  font-size:16px;
}

.att-creator-calculator .sdcalc-crop-modal__canvas{
  display:flex;
  min-width:0;
  margin:0;
  padding:10px 0 10px 16px;
  background:#faf9f7;
}

.att-creator-calculator .sdcalc-crop-modal .sdcalc-visual-konva{
  width:100%;
  min-height:480px;
  border-color:#e4e0d8;
  border-radius:0;
}

.att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-options{
  margin-top:28px;
  padding:24px 0;
  border-width:1px 0;
  border-style:solid;
  border-color:var(--att-product-line);
  border-radius:0;
  background:transparent;
}

.att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-title{
  margin-bottom:14px;
  font-size:10px;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-checks{
  display:grid;
  gap:12px;
}

.att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-check{
  margin:0;
  font-size:11px;
}

.att-creator-calculator .sdcalc-crop-modal__footer{
  display:flex;
  margin-top:auto;
  padding-top:28px;
}

.att-creator-calculator .sdcalc-crop-modal__save{
  width:100%;
  min-height:50px;
  padding:12px 18px;
  border:1px solid var(--att-product-accent);
  border-radius:0;
  background:var(--att-product-accent);
  color:#fff;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  cursor:pointer;
}

.att-creator-calculator .sdcalc-purchase-panel{
  margin:0;
  padding:18px 20px 20px;
  background:var(--att-product-ecru);
}

.att-creator-calculator .sdcalc-price-section-final{
  display:grid;
  grid-template-columns:minmax(145px,.42fr) minmax(0,1fr);
  gap:18px;
  margin:0;
  padding:0 0 16px;
  border:0;
}

.att-creator-calculator .sdcalc-price-block{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding-right:18px;
  border-right:1px solid #d9d3c8;
}

.att-creator-calculator .sdcalc-price-block__label,
.att-creator-calculator .sdcalc-summary-box__label{
  color:#6e6f6b;
  font-size:9px;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.att-creator-calculator .sdcalc-main-price{
  color:var(--att-product-ink);
  font-family:var(--wr-font-display, Georgia, "Times New Roman", serif);
  font-size:30px;
  font-weight:400;
  letter-spacing:-.03em;
}

.att-creator-calculator .sdcalc-summary-box{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
}

.att-creator-calculator .sdcalc-summary-box__label{
  margin-bottom:3px;
}

.att-creator-calculator .sdcalc-summary-box > span:not(.sdcalc-summary-box__label){
  display:block;
  min-width:0;
  overflow:hidden;
  color:#686964;
  font-size:9px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.att-creator-calculator .sdcalc-summary-box b{
  color:#3d3e3b;
  font-weight:700;
}

.att-creator-calculator .sdcalc-summary-box em{
  font-style:normal;
}

.att-creator-calculator .sdcalc-action-stack{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px;
  gap:6px;
  margin:0;
}

.att-creator-calculator .sdcalc-cart-button-slot,
.att-creator-calculator .sdcalc-sample-placeholder{
  min-width:0;
}

body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button,
body.sdcalc-active form.cart .att-creator-calculator button.single_add_to_cart_button{
  height:48px !important;
  min-height:48px !important;
  padding:11px 8px !important;
  border-color:var(--att-product-accent) !important;
  border-radius:3px !important;
  background:var(--att-product-accent) !important;
  font-size:11px !important;
  font-weight:750 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  box-shadow:none !important;
}

body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button:hover,
body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button:focus{
  border-color:#ce3510 !important;
  background:#ce3510 !important;
}

.att-creator-calculator .sdcalc-secondary-action,
.att-creator-calculator .sdcalc-sample-btn,
.att-creator-calculator .sdcalc-sample-open-btn{
  box-sizing:border-box !important;
  display:flex !important;
  width:100% !important;
  height:48px !important;
  min-height:48px;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:0 !important;
  padding:11px 8px !important;
  border:1px solid #c9c4bb !important;
  border-color:#c9c4bb;
  border-radius:3px;
  background:#fffdf9 !important;
  color:#343532 !important;
  font-size:11px !important;
  font-weight:750 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.att-creator-calculator .sdcalc-texture-btn{
  box-sizing:border-box !important;
  grid-column:auto;
  width:48px !important;
  height:48px !important;
  min-height:48px;
  padding:0 !important;
  border:1px solid #c9c4bb;
  font-size:11px;
}

.att-creator-calculator .sdcalc-secondary-action:hover,
.att-creator-calculator .sdcalc-secondary-action:focus-visible,
.att-creator-calculator .sdcalc-sample-btn:hover,
.att-creator-calculator .sdcalc-sample-btn:focus-visible,
.att-creator-calculator .sdcalc-sample-open-btn:hover,
.att-creator-calculator .sdcalc-sample-open-btn:focus-visible{
  border-color:#a9a39a !important;
  background:#f7f3ec !important;
  color:#20211f !important;
  outline:0;
}

.att-creator-calculator .sdcalc-trust-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:13px 18px;
  border-top:1px solid var(--att-product-line);
  background:#fff;
}

.att-creator-calculator .sdcalc-trust-row > span{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:center;
  gap:5px;
  color:#70726e;
  font-size:9px;
  line-height:1.25;
  text-align:center;
}

.att-creator-calculator .sdcalc-trust-row .dashicons{
  width:15px;
  height:15px;
  color:var(--att-product-accent);
  font-size:15px;
}

@media (max-width:767px){
  .att-creator-calculator .sdcalc-product-sku{
    padding-inline:18px;
  }
  .att-creator-calculator .sdcalc-section{
    margin-inline:14px;
  }
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{
    grid-template-columns:1fr;
    min-height:82px;
    gap:8px;
    padding:12px 9px;
  }
  .att-creator-calculator .sdcalc-material-table-head{
    grid-template-columns:1fr;
    gap:8px;
    min-height:38px;
    padding:8px 9px;
    font-size:12px;
  }
  .att-creator-calculator .sdcalc-material-table-head-spacer{
    display:none;
  }
  .att-creator-calculator .sdcalc-material-table-head-columns,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.2fr);
    gap:5px;
  }
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{
    font-size:12px;
  }
  .att-creator-calculator .sdcalc-delivery-section{
    grid-template-columns:1fr;
  }
  .att-creator-calculator .sdcalc-cropmode{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .att-creator-calculator .sdcalc-radio-box,
  .att-creator-calculator .sdcalc-radio-box:has(input[type="radio"]:checked){
    min-height:72px;
    padding:8px 8px 8px 32px;
  }
  .att-creator-calculator .sdcalc-card-radio{
    left:10px;
  }
  .att-creator-calculator .sdcalc-radio-desc,
  .att-creator-calculator .sdcalc-radio-box .sdcalc-radio-desc{
    font-size:8.5px;
  }
  .att-creator-calculator .sdcalc-crop-modal{
    align-items:stretch;
    padding:0;
  }
  .att-creator-calculator .sdcalc-crop-modal__dialog{
    width:100vw;
    height:100vh;
    height:100dvh;
    max-height:none;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:0;
  }
  .att-creator-calculator .sdcalc-crop-modal__head{
    position:sticky;
    top:0;
    z-index:3;
    display:block;
    min-height:0;
    padding:14px 48px 12px 16px;
    background:#fff;
  }
  .att-creator-calculator .sdcalc-crop-modal__eyebrow{
    margin-bottom:4px;
  }
  .att-creator-calculator .sdcalc-crop-modal__title{
    margin-bottom:4px;
    font-size:21px;
  }
  .att-creator-calculator .sdcalc-crop-modal__close{
    position:fixed;
    top:10px;
    right:10px;
    z-index:4;
  }
  .att-creator-calculator .sdcalc-crop-modal__body{
    display:block;
    min-height:0;
  }
  .att-creator-calculator .sdcalc-crop-modal__canvas{
    padding:8px;
  }
  .att-creator-calculator .sdcalc-crop-modal__controls{
    padding:14px 16px 12px;
    border-top:1px solid var(--att-product-line);
    border-left:0;
  }
  .att-creator-calculator .sdcalc-crop-modal__dimensions{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    gap:8px;
  }
  .att-creator-calculator .sdcalc-crop-modal__dimensions-title{
    grid-column:1 / -1;
    padding-right:0;
  }
  .att-creator-calculator .sdcalc-crop-modal .sdcalc-visual-konva{
    min-height:180px;
  }
  .att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-options{
    margin-top:14px;
    padding:13px 0;
  }
  .att-creator-calculator .sdcalc-crop-modal .sdcalc-filter-checks{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .att-creator-calculator .sdcalc-crop-modal__footer{
    padding-top:14px;
  }
  .att-creator-calculator .sdcalc-crop-modal__save{
    min-height:44px;
  }
  .att-creator-calculator .sdcalc-purchase-panel{
    padding:16px 14px 17px;
  }
  .att-creator-calculator .sdcalc-price-section-final{
    grid-template-columns:1fr;
    gap:12px;
  }
  .att-creator-calculator .sdcalc-price-block{
    padding:0 0 12px;
    border-right:0;
    border-bottom:1px solid #d9d3c8;
  }
  .att-creator-calculator .sdcalc-action-stack{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;
    gap:5px;
  }
  .att-creator-calculator .sdcalc-texture-btn{
    grid-column:auto;
    width:44px !important;
    height:44px !important;
    padding:0 !important;
  }
  body.sdcalc-active form.cart .att-creator-calculator .single_add_to_cart_button,
  body.sdcalc-active form.cart .att-creator-calculator button.single_add_to_cart_button,
  .att-creator-calculator .sdcalc-secondary-action,
  .att-creator-calculator .sdcalc-sample-btn,
  .att-creator-calculator .sdcalc-sample-open-btn,
  .att-creator-calculator .sdcalc-texture-btn{
    height:44px !important;
    min-height:44px !important;
    padding-inline:7px !important;
    font-size:9px !important;
    white-space:nowrap;
  }
  .att-creator-calculator .sdcalc-trust-row{
    grid-template-columns:1fr;
  }
  .att-creator-calculator .sdcalc-trust-row > span{
    justify-content:flex-start;
  }
}

/* 1.0.373 — mobilne karty podłoży bez poziomego przewijania. */
@media (max-width:767px){
  .att-creator-calculator .sdcalc-material-table-scroll{overflow:visible}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subgrid{display:grid!important;min-width:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;border:0!important;background:transparent}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{position:relative;display:flex!important;min-width:0;min-height:0;flex-direction:column;gap:0!important;padding:0 0 12px!important;overflow:hidden;border:1px solid var(--att-product-line)!important;border-radius:0;background:#fff;box-shadow:none!important}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem.is-active{border:2px solid var(--att-product-accent)!important;padding:0 0 11px!important}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subitem-select{z-index:1}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname{order:2;min-height:0;padding:12px 12px 0;align-items:flex-start;justify-content:flex-start;text-align:left;font-size:14px;line-height:1.3}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname-title{font-size:15px;font-weight:800}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-subname-secondary{display:flex;flex-direction:column;gap:2px;margin-top:6px;color:#687078;font-size:12px;font-weight:500}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta{display:contents!important}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-row{order:3;min-height:0;padding:4px 12px;justify-content:flex-start;background:#fff;text-align:left}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-submeta-row--texture-image{position:relative;z-index:2;order:1;width:100%;padding:0!important;background:#eee9e2}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-texture-image-trigger{width:100%;height:auto;max-height:none;aspect-ratio:3/2;border:0;border-radius:0}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-texture-image-trigger img{width:100%;height:100%;object-fit:cover}
  .att-creator-calculator .sdcalc-material-panel .sdcalc-texture-zoom-icon,
  .att-creator-calculator .sdcalc-material-panel .sdcalc-texture-play-icon{top:14px;right:14px;left:auto;width:38px;height:38px;margin:0;font-size:19px}
  .att-creator-calculator .sdcalc-material-more{margin-top:14px}
}

/* Timed substrate prices and their explicitly labelled Omnibus reference. */
.att-creator-calculator .sdcalc-subpromotion:empty,.att-creator-calculator .sdcalc-main-promotion:empty{display:none}
.att-creator-calculator .sdcalc-subpromotion{position:relative;z-index:2;grid-column:1/-1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 12px;border-top:1px solid var(--att-product-line);text-align:left;pointer-events:none}
.att-creator-calculator .sdcalc-promotion-badge{display:inline-block;width:max-content;max-width:100%;padding:3px 7px;background:var(--att-product-accent,#ed4018);color:#fff;font-size:11px;font-weight:700;line-height:1.4}
.att-creator-calculator .sdcalc-promotion-current{font-size:15px;line-height:1.4;color:var(--att-product-accent,#ed4018)}
.att-creator-calculator .sdcalc-promotion-reference{display:block;color:#424242;font-size:12px;line-height:1.5;overflow-wrap:break-word}
.att-creator-calculator .sdcalc-promotion-reference del{color:inherit}
.att-creator-calculator .sdcalc-promotion-until{display:block;color:#555;font-size:11px;line-height:1.5}
.att-creator-calculator .sdcalc-main-promotion{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:10px;max-width:100%}
/* 1.0.378 — compact option 2: promotion beside the name, price beside specifications. */
.att-creator-calculator .sdcalc-subname-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;max-width:100%}
.att-creator-calculator .sdcalc-subpromotion-badge:empty,
.att-creator-calculator .sdcalc-subpromotion-current:empty,
.att-creator-calculator .sdcalc-subname-secondary.is-empty{display:none!important}
.att-creator-calculator .sdcalc-material-panel .has-promotion .sdcalc-subname{align-items:flex-start;text-align:left}
.att-creator-calculator .has-promotion .sdcalc-subname-heading{justify-content:flex-start}
.att-creator-calculator .has-promotion .sdcalc-subname-title{font-size:15px;font-weight:700;line-height:1.3}
.att-creator-calculator .sdcalc-subname-heading .sdcalc-promotion-badge{padding:2px 5px;font-size:10px;line-height:1.3}
.att-creator-calculator .sdcalc-material-panel .has-promotion .sdcalc-subname-secondary{display:flex;flex-flow:row wrap;align-items:baseline;gap:0;margin-top:3px;font-size:12px;line-height:1.5}
.att-creator-calculator .has-promotion .sdcalc-subname-secondary>span:not(:first-child)::before{content:' · ';white-space:pre;color:#687078;font-weight:400}
.att-creator-calculator .sdcalc-subpromotion-current{display:flex;flex-wrap:nowrap;align-items:baseline;gap:4px;white-space:nowrap}
.att-creator-calculator .sdcalc-promotion-old{color:#777;font-size:10px;font-weight:400;white-space:nowrap}
.att-creator-calculator .sdcalc-subpromotion-current .sdcalc-promotion-current{color:var(--att-product-accent,#ed4018);font-size:15px;font-weight:700;white-space:nowrap}
@media(max-width:767px){
  .att-creator-calculator .sdcalc-subname-heading{justify-content:flex-start}
  .att-creator-calculator .sdcalc-material-panel .has-promotion .sdcalc-subname-secondary{flex-direction:column;gap:2px}
  .att-creator-calculator .has-promotion .sdcalc-subname-secondary>span:not(:first-child)::before{content:none}
  .att-creator-calculator .sdcalc-subpromotion{order:4;margin-top:8px;padding:6px 10px}
  .att-creator-calculator .sdcalc-promotion-reference{font-size:11px;line-height:1.4}
}
