/* TILIA Embroidery Wizard v1.1.2 — isolated from Kadence typography and product buttons */
.woocommerce div.product form.cart .tilia-wizard,.single-product form.cart .tilia-wizard{box-sizing:border-box;display:block;flex:0 0 100%;width:100%;max-width:100%;min-width:0;grid-column:1/-1;clear:both;order:-1;margin:18px 0 20px;padding:20px 22px;background:#fff;border:1px solid #e5e2da;border-radius:12px;color:#344733;font-family:Manrope,inherit}
.tilia-wizard *{box-sizing:border-box}.tilia-wizard>strong{font-size:15px;line-height:1.5;font-weight:700;display:block}.tilia-wizard>p{font-size:12px;line-height:1.65;color:#70766d;margin:6px 0 14px}.tilia-wizard button{font-family:inherit!important;font-size:13px;line-height:1.4;letter-spacing:0;text-transform:none;box-shadow:none;cursor:pointer;border-radius:7px;padding:11px 16px;border:1px solid #cdd5cb;background:#fff;color:#344733;transition:background .15s,border-color .15s,color .15s}.tilia-wizard button:disabled{opacity:.5;cursor:not-allowed}.tilia-wizard .tilia-wizard-open,.tilia-wizard .tilia-wizard-next{background:#344733!important;border-color:#344733!important;color:#fff!important;font-weight:600}.tilia-wizard .tilia-wizard-open:hover:not(:disabled),.tilia-wizard .tilia-wizard-next:hover:not(:disabled){background:#263726!important;color:#fff!important}.tilia-wizard .tilia-wizard-open{display:inline-flex;width:auto;max-width:100%;justify-content:center;align-items:center}.tilia-wizard-hint[hidden],.tilia-wizard-modal[hidden],.tilia-wizard-summary[hidden]{display:none!important}
.tilia-wizard-modal{position:fixed;inset:0;z-index:999999;background:rgba(23,33,25,.64);display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto}.tilia-wizard-panel{box-sizing:border-box;width:min(100%,720px);max-height:min(92dvh,900px);overflow:auto;overscroll-behavior:contain;background:#fff;border:1px solid #e7e5dd;border-radius:17px;padding:26px 30px;box-shadow:0 24px 90px rgba(20,31,20,.24);color:#344733}.tilia-wizard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid #eeece6}.tilia-wizard-head strong{font-family:Manrope,inherit;font-size:21px;font-weight:700}.tilia-wizard .tilia-wizard-close{font-size:24px;line-height:1;border:0;background:transparent;color:#344733;padding:4px 9px}.tilia-wizard-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:20px 0}.tilia-progress-step{font-size:10px;line-height:1.35;padding:10px 6px;border-radius:6px;text-align:center;background:#f5f4f0;color:#838a80}.tilia-progress-step.current{background:#e5eee5;color:#344733;font-weight:700}.tilia-progress-step.done{color:#56725a;background:#f0f5ee}.tilia-wizard-body{min-height:170px}.tilia-wizard-body h4{font-family:Manrope,inherit;font-size:14px;font-weight:700;color:#344733;margin:20px 0 10px}.tilia-wizard-body h5{font-family:Manrope,inherit;font-size:13px;font-weight:700;color:#344733;margin:20px 0 4px}.tilia-wizard-body label{display:block;margin-top:12px;font-size:13px;font-weight:600}.tilia-wizard-lead,.tilia-wizard-context{font-size:13px;line-height:1.6;color:#6e786d}.tilia-wizard-context{padding:10px 12px;background:#f5f6f2;border-left:3px solid #7d876f;border-radius:4px}.tilia-wizard-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tilia-wizard .tilia-wizard-choice{min-width:0;min-height:67px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;gap:5px;border:1px solid #dedfd8!important;background:#fff!important;color:#344733!important;padding:13px 15px}.tilia-wizard .tilia-wizard-choice small{font-size:11px;line-height:1.5;color:#717a70}.tilia-wizard .tilia-wizard-choice:hover,.tilia-wizard .tilia-wizard-choice:focus-visible{background:#f1f6ef!important;border-color:#6f8b71!important;color:#263c2b!important}.tilia-wizard .tilia-wizard-choice.active{background:#eaf3e9!important;border-color:#344733!important;color:#263c2b!important;box-shadow:inset 0 0 0 1px #344733}.tilia-wizard .tilia-wizard-choice.active small{color:#455f49}.tilia-wizard-area-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.tilia-wizard-size-choices .tilia-wizard-choice{min-height:75px}.tilia-wizard-place-preview{display:flex;flex-direction:column;gap:7px;padding:14px;margin-top:16px;background:#fafaf7;border:1px solid #e6e8e1;border-radius:9px;font-size:12px;color:#606c5e}.tilia-wizard-place-preview img{display:block;width:100%;max-height:240px;object-fit:contain;border-radius:7px;background:#fff}.tilia-wizard-place-preview strong{font-size:14px;color:#344733}.tilia-wizard-detail-image{width:100%;max-height:220px;object-fit:contain;background:#fff;border:1px solid #e6e8e1;border-radius:9px}.tilia-wizard-body input[type=text],.tilia-wizard-body input[type=file]{width:100%;min-width:0;margin:8px 0;padding:12px;border:1px solid #d9ddd5;border-radius:7px;font:inherit;font-size:13px;background:#fff;color:#344733}.tilia-wizard-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tilia-wizard .tilia-wizard-color{display:flex;align-items:center;gap:9px;min-height:45px;text-align:left;padding:8px 10px;border-color:#dedfd8!important;background:#fff!important;color:#344733!important}.tilia-wizard .tilia-wizard-color:hover,.tilia-wizard .tilia-wizard-color.active{background:#f0f6ed!important;border-color:#344733!important;color:#344733!important}.tilia-wizard-color-dot{display:inline-block;flex:0 0 20px;height:20px;border:1px solid #c9cec4;border-radius:50%}.tilia-wizard-line{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #ecece7}.tilia-wizard-line-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.tilia-wizard-line-info strong{font-size:13px}.tilia-wizard-line-info small{font-size:11px;color:#727a70;line-height:1.5}.tilia-wizard-line-price{margin-left:auto;white-space:nowrap;font-size:13px}.tilia-wizard .tilia-wizard-remove{padding:6px 9px;font-size:11px}.tilia-wizard .tilia-wizard-add{margin-top:18px;background:#f8faf7!important;color:#344733!important}.tilia-wizard-totals{margin-top:20px;border-top:1px solid #e8e9e3;padding-top:12px}.tilia-wizard-total-row{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-size:13px}.tilia-wizard-total-row strong{white-space:nowrap;text-align:right}.tilia-wizard-total-row.grand{font-size:17px;font-weight:700;color:#344733;border-top:1px solid #e4e8e1;margin-top:8px;padding-top:14px}.tilia-wizard-error{color:#a52c20;font-size:12px;line-height:1.5;margin:12px 0}.tilia-wizard-error:empty{display:none}.tilia-wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ecece7;margin-top:22px;padding-top:18px}.tilia-wizard-actions .tilia-wizard-next{margin-left:auto}.tilia-wizard .tilia-wizard-back:hover{background:#f0f5ee!important;color:#344733!important}
.tilia-wizard-summary{display:block;width:100%;min-width:0;margin-top:16px;padding:16px;border:1px solid #e3e7df;border-radius:10px;background:#fafbf8}.tilia-summary-title{display:block;font-size:14px;font-weight:700;margin-bottom:12px}.tilia-summary-line{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8eae5;padding:10px 0}.tilia-summary-line>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.tilia-summary-line strong{font-size:12px;font-weight:600;line-height:1.45}.tilia-summary-line small{font-size:11px;line-height:1.5;color:#72796f}.tilia-summary-line>strong{white-space:nowrap;text-align:right}.tilia-summary-totals{padding:9px 0}.tilia-summary-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px;padding:6px 0}.tilia-summary-total strong{text-align:right;white-space:nowrap}.tilia-summary-total.grand{margin-top:8px;padding-top:12px;border-top:1px solid #dce4da;font-size:15px;color:#344733;font-weight:700}.tilia-wizard .tilia-wizard-edit{width:100%;margin-top:9px;background:#fff!important;color:#344733!important}.tilia-wizard .tilia-wizard-edit:hover{background:#eaf3e9!important;color:#344733!important}
@media(max-width:650px){.woocommerce div.product form.cart .tilia-wizard,.single-product form.cart .tilia-wizard{padding:16px;margin:15px 0}.tilia-wizard-panel{padding:17px;border-radius:12px;max-height:95dvh}.tilia-wizard-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.tilia-wizard-choices,.tilia-wizard-area-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.tilia-wizard-colors{grid-template-columns:repeat(2,minmax(0,1fr))}.tilia-wizard .tilia-wizard-choice{padding:11px;min-height:60px}.tilia-wizard-line{flex-wrap:wrap}.tilia-wizard-line-price{margin-left:auto}}

/* v1.1.3: Kadence Shop Kit — full-width configurator, normal purchase controls */
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart,
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart-enabled,
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart-disabled {
  display:flex !important; flex-flow:row wrap !important; align-items:flex-start !important; align-content:flex-start !important; gap:12px !important; height:auto !important; min-height:0 !important;
}
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart > .tilia-wizard {
  order:-1 !important; flex:0 0 100% !important; width:100% !important; max-width:100% !important; margin:12px 0 8px !important; align-self:auto !important;
}
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart > .quantity {
  order:1 !important; flex:0 0 auto !important; width:auto !important; max-width:max-content !important; height:auto !important; align-self:flex-start !important; margin:0 !important;
}
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart > .single_add_to_cart_button {
  order:2 !important; flex:1 1 180px !important; width:auto !important; max-width:100% !important; min-height:48px !important; height:auto !important; align-self:flex-start !important; margin:0 !important; padding:12px 20px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; white-space:normal !important;
}
body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart > input[type=hidden] {display:none !important;}
@media(max-width:480px){body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart > .single_add_to_cart_button{flex:1 1 150px !important;}}

/* v1.1.4: Woo variable product — wizard outside quantity/button row.
   Shop Kit may set flex/grid on variation wrappers; scope only to this product form. */
body.single-product form.variations_form.cart .single_variation_wrap,
body.single-product form.variations_form.cart .woocommerce-variation-add-to-cart {
  width:100% !important; max-width:100% !important; min-width:0 !important;
  box-sizing:border-box !important; height:auto !important; min-height:0 !important;
}
body.single-product form.variations_form.cart > .tilia-wizard,
body.single-product form.variations_form.cart > .variations + .tilia-wizard {
  display:block !important; width:100% !important; max-width:100% !important;
  flex:0 0 100% !important; grid-column:1/-1 !important;
  order:0 !important; clear:both !important; margin:18px 0 !important;
}
body.single-product form.variations_form.cart .woocommerce-variation-add-to-cart {
  display:flex !important; flex-direction:row !important; flex-wrap:wrap !important;
  align-items:center !important; align-content:flex-start !important;
  justify-content:flex-start !important; gap:10px !important;
}
body.single-product form.variations_form.cart .woocommerce-variation-add-to-cart > .quantity {
  flex:0 0 auto !important; order:0 !important; width:auto !important;
  margin:0 !important; align-self:center !important;
}
body.single-product form.variations_form.cart .woocommerce-variation-add-to-cart > button.single_add_to_cart_button {
  flex:1 1 190px !important; order:1 !important; width:auto !important;
  min-height:48px !important; height:auto !important; max-height:none !important;
  padding:13px 20px !important; margin:0 !important; align-self:center !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  line-height:1.4 !important; white-space:normal !important;
}
@media(max-width:550px){
  body.single-product form.variations_form.cart .woocommerce-variation-add-to-cart > button.single_add_to_cart_button{flex:1 1 160px !important;}
}

/* v1.1.5 — embroidery-first navigation */
.tilia-wizard-progress[hidden],.tilia-wizard-actions button[hidden]{display:none!important}
.tilia-wizard .tilia-wizard-start{display:block;width:100%;margin:14px 0 20px;background:#344733!important;color:#fff!important;border-color:#344733!important;font-weight:650;padding:15px 20px}
.tilia-wizard .tilia-wizard-start:hover{background:#263726!important;color:#fff!important}
.tilia-wizard .tilia-wizard-review{display:block;margin-top:18px;margin-left:auto;background:#eaf3e9!important;border-color:#9cb19a!important;color:#344733!important;font-weight:650}
.tilia-wizard .tilia-wizard-finish{margin-left:auto;background:#f5f7f2!important;color:#344733!important;border-color:#cbd7c8!important}
.tilia-wizard .tilia-wizard-finish:hover{background:#e5eee3!important;color:#263726!important}
.tilia-wizard .tilia-wizard-finish:not([hidden])+.tilia-wizard-next{margin-left:0}
@media(max-width:550px){.tilia-wizard-actions{flex-wrap:wrap}.tilia-wizard .tilia-wizard-finish{margin-left:0}}

/* v1.1.7 — mobilny modal jako osobna warstwa poza Kadence; blokada scrolla w JS */
body > .tilia-wizard-modal.tilia-wizard{position:fixed!important;inset:0!important;z-index:2147483647!important;display:flex!important;align-items:center;justify-content:center;overflow:hidden!important;overscroll-behavior:none;padding:16px;background:rgba(23,33,25,.72);isolation:isolate}
body > .tilia-wizard-modal.tilia-wizard[hidden]{display:none!important}
body > .tilia-wizard-modal .tilia-wizard-panel{position:relative;max-height:calc(100dvh - 32px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}
body > .tilia-wizard-modal .tilia-wizard-head strong{font-size:24px;line-height:1.25}
body > .tilia-wizard-modal .tilia-progress-step{font-size:12px;line-height:1.4}
body > .tilia-wizard-modal .tilia-wizard-body h4{font-size:16px;line-height:1.4}
body > .tilia-wizard-modal .tilia-wizard-body h5{font-size:15px}
body > .tilia-wizard-modal .tilia-wizard-lead,body > .tilia-wizard-modal .tilia-wizard-context{font-size:15px;line-height:1.6}
body > .tilia-wizard-modal .tilia-wizard-choice .tilia-choice-title{font-size:16px;line-height:1.4}
body > .tilia-wizard-modal .tilia-wizard-choice small{font-size:13px;line-height:1.5}
body > .tilia-wizard-modal button{font-size:15px}
body > .tilia-wizard-modal .tilia-wizard-line-info strong,body > .tilia-wizard-modal .tilia-wizard-line-price{font-size:14px}
body > .tilia-wizard-modal .tilia-wizard-line-info small{font-size:13px}
body > .tilia-wizard-modal .tilia-wizard-total-row{font-size:14px}
@media(max-width:650px){
 body > .tilia-wizard-modal.tilia-wizard{padding:0!important;align-items:stretch!important}
 body > .tilia-wizard-modal .tilia-wizard-panel{width:100%!important;max-width:none!important;max-height:100dvh!important;height:100dvh!important;border-radius:0!important;border:0!important;padding:20px 18px calc(24px + env(safe-area-inset-bottom))!important;box-shadow:none!important}
 body > .tilia-wizard-modal .tilia-wizard-progress{gap:7px}
 body > .tilia-wizard-modal .tilia-progress-step{font-size:12px;padding:10px 7px}
 body > .tilia-wizard-modal .tilia-wizard-choices{gap:10px}
 body > .tilia-wizard-modal .tilia-wizard-choice{min-height:84px;padding:12px}
 body > .tilia-wizard-modal .tilia-wizard-actions{padding-bottom:env(safe-area-inset-bottom)}
}
@media(max-width:360px){body > .tilia-wizard-modal .tilia-wizard-choices{grid-template-columns:1fr}}

/* 1.1.13 — informacja o maksymalnych wymiarach haftu */
.tilia-wizard .tilia-wizard-size-note {font-size:14px;line-height:1.55;color:#53634f;background:#f3f6f1;border-left:3px solid #819075;padding:12px 14px;border-radius:6px;margin:12px 0 16px;}
