/* ============================================================
   MICEY PRODUCT – layout + components (current)
   Target: .micey-product*
   Notes:
   - Orange base: #FCB868 (hover: #FFD28A)
   ============================================================ */

.micey-product { width: 100%; }

/* Container */
.micey-product__container{
  width: min(1320px, 100% - 32px);
  margin-inline: auto;
}

/* Section spacing */
.micey-product__top{ padding: 24px 0 8px; }
.micey-product__middle{ padding: 24px 0 48px; }

/* ============================================================
   TOP GRID: Gallery (left) + Buybox (right)
   ============================================================ */

.micey-product__grid--top{
  display: grid;
  grid-template-columns: 1fr 1fr; /* 50/50 */
  gap: 28px;
  align-items: start;
}

.micey-product__col--left,
.micey-product__col--right{ min-width: 0; }

/*.micey-product__block{ margin-bottom: 4px; }
.micey-product__block:last-child{ margin-bottom: 0; }*/

/* Buybox */
.micey-product__buybox{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.micey-product__header{
  display: flex;
  flex-direction: column;
  gap: 8px;
}



/* Short desc safety */
.micey-product__short-desc{ overflow-wrap: anywhere; }

/* Empty slots */
.micey-product__slot:empty{ display: none; }

/* ============================================================
   MIDDLE SECTIONS – vertical flow
   ============================================================ */

.micey-product__section{ margin: 22px 0; }
.micey-product__section:first-child{ margin-top: 0; }
.micey-product__section:last-child{ margin-bottom: 0; }

/* ============================================================
   LOWER GRID: left content + sidebar
   ============================================================ */

.micey-product__grid--lower{
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 28px;
  align-items: start;
  margin-top: 28px;
}

.micey-product__col--lower-right{ position: relative; }

/* ============================================================
   Responsive
   ============================================================ */

@media (max-width: 1024px){
  .micey-product__container{ width: min(1100px, 100% - 24px); }
  .micey-product__grid--lower{ grid-template-columns: 1fr 320px; }
}

@media (max-width: 860px){
  .micey-product__grid--top{ grid-template-columns: 1fr; }
  .micey-product__grid--lower{ grid-template-columns: 1fr; }
  .micey-product__top{ padding-top: 8x; }
  .micey-product__middle{ padding-top: 8px; }
  .micey-product__header{ order: 10; }
  .micey-product__block--additional-info{ order: 20; }
  .micey-product__block--short-desc{ order: 30; }
  .micey-product__block--price{ order: 40; }
  .micey-product__actions{ order: 50; }
  .micey-product__block--cards{ order: 60; }
  .micey-product__block--reassurance{ order: 70; }
}


.micey-price-line__label{ display: none; }

@media (max-width: 860px){
  .micey-product__block--price .prices__wrapper{
    /*gap: 6px !important;*/
  }

.micey-product__block--price {
    border-top: 3px dashed #FCB868;
  }
.product__prices {
  margin-top: 5%;
}

  .micey-product__block--price .micey-price-line{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
  }

  .micey-product__block--price .micey-price-line__label{
    display: block;
    font-family: var(--micey-font-heading); --micey-font-heading
    font-weight: 800;
    font-size: 26px;
    line-height: 1.1;
    color: #111;
    /*padding-top: 4px; /* baseline optycznie do ceny */
    white-space: nowrap;
  }

  .micey-product__block--price .micey-price-line__content{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    /*gap: 6px;*/
    min-width: 0;
  }

  /* top row: (old) + current */
  .micey-product__block--price .micey-price-line__top{
    display: inline-flex;
    align-items: baseline;
    justify-content: flex-end;
    /*gap: 10px;*/
    white-space: nowrap;
  }

  .micey-product__block--price .product__discount{
    display: inline-flex;
    align-items: baseline;
    /*gap: 8px;*/
    margin: 0;
  }

  /* na mobile chowamy "Save xx" – ma zostać stara + nowa cena */
  .micey-product__block--price .product__discount-percentage,
  .micey-product__block--price .product__discount-amount{
    display: none !important;
  }

  .micey-product__block--price .product__price-regular{
    text-decoration: line-through;
    font-weight: 600;
    font-size: 14px;
    color: #8a8a8a;
    white-space: nowrap;
  }

  .micey-product__block--price .micey-price-line__current{
    display: inline-flex;
    align-items: baseline;
    /*gap: 6px;*/
    margin: 0;
  }

  .micey-product__block--price .product__current-price{
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
    color: #111;
    white-space: nowrap;
  }

  /* brutto pod spodem – wyrównanie do prawej */
  .micey-product__block--price .product__tax-info{
    width: 100%;
    justify-content: flex-end;
    margin: 0;
  }

  .micey-product__block--price .product__tax-label{
    font-size: 12px;
    color: #666;
    text-align: right;
  }
}

/* ============================================================
   Bootstrap accordion spacing
   ============================================================ */

.micey-product__infos{ margin-top: 16px; }
.micey-product__infos .accordion-item{ margin-bottom: 10px; }
.micey-product__infos .accordion-item:last-child{ margin-bottom: 0; }

/* ============================================================
   PRODUCT TITLE – Shantell Sans (H1 / display)
   ============================================================ */

.micey-product__title{
  font-family: var(--micey-font-display);
  font-weight: var(--micey-w-semibold);
  font-size: clamp(22px, 2.8vw, 36px);
  line-height: 1.08;
  letter-spacing: 0.2px;
  color: #111;

  margin: 0;
  max-width: 34ch;
  overflow-wrap: anywhere;
  hyphens: auto;
}

@media (max-width: 768px){
  .micey-product__title{
    font-size: clamp(22px, 6.2vw, 30px);
    max-width: 100%;
  }
}



/* ============================================================
   PRODUCT PRICE – Inter
   ============================================================ */

.micey-product__block--price{
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
}

.micey-product__block--price .current-price,
.micey-product__block--price .price{
  font-size: clamp(26px, 2.8vw, 40px);
  font-weight: 700;
  line-height: 1;
  color: #111;
}

.micey-product__block--price .currency,
.micey-product__block--price .price-currency{
  font-size: 0.74em;
  font-weight: 600;
  margin-left: 3px;
}


.micey-product__block--price .regular-price,
.micey-product__block--price .old-price{
  font-size: clamp(14px, 1.2vw, 18px);
  font-weight: 500;
  text-decoration: line-through;
  color: #8a8a8a;
}

.micey-product__block--price .discount-percentage,
.micey-product__block--price .discount{
  font-size: 12px;
  font-weight: 700;
  padding: 4px 8px;
  border-radius: 999px;
  background: #ed006a;
  color: #fff;
  line-height: 1;
}

.micey-product__block--price .tax-shipping-delivery-label,
.micey-product__block--price .price-tax{
  width: 100%;
  font-size: 12px;
  color: #666;
  margin-top: 4px;
}

/* ============================================================
   SHORT DESCRIPTION – Source Sans 3
   ============================================================ */

.micey-product__block--short-desc,
.micey-product__short-desc{
  font-family: var(--micey-font-body);
  font-size: clamp(15px, 1.05vw, 16px);
  line-height: 1.55;
  font-weight: var(--micey-w-regular);
  color: #333;
  margin: 0;
  max-width: 62ch;
}


.micey-product__short-desc p{ margin: 0 0 10px; }
.micey-product__short-desc p:last-child{ margin-bottom: 0; }

@media (max-width: 768px){
  .micey-product__block--short-desc,
  .micey-product__short-desc{
    font-size: 15px;
    max-width: 100%;
  }
}


/* ============================================================
   VARIANTS – top dashed separator (orange)
   ============================================================ */

.micey-product__block--variants,
.product__variants.js-product-variants{
  border-top: 3px dashed #FCB868;
  padding-top: 16px;
}

.micey-product__block--variants .product__variants.js-product-variants{
  border-top: 0;
  padding-top: 0;
}


/* ============================================================
   TOP GRID – dashed separator between columns
   ============================================================ */

@media (min-width: 861px){
  .micey-product__col--left{
    padding-right: 28px;
    border-right: 3px dashed rgba(252, 184, 104, 1);
  }
  .micey-product__col--right{ padding-left: 28px; }
}

@media (max-width: 860px){
  .micey-product__col--left{
    padding-right: 0;
    border-right: none;
    padding-bottom: 18px;
    border-bottom: 2px dashed rgba(0, 0, 0, 0.18);
    margin-bottom: 18px;
  }
  .micey-product__col--right{ padding-left: 0; }
}

/* ============================================================
   VARIANTS – Micey (Inter) – fixed & stable
   ============================================================ */

.micey-product__block--variants,
.micey-product__block--variants .product__variants,
.product__variants{
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

/* group wrapper */
.product__variants .variant{ margin-bottom: 18px; }

/* label */
.product__variants .form-label{
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin: 0 0 12px;
  font-weight: 800;
  font-size: 14px;
  color: #111;
}

.product__variants .variant__selected{
  font-weight: 700;
  color: #111;
}

/* show selected only for colors */
.product__variants .variant:not([data-group-type="color"]) .variant__selected{
  display: none;
}

/* Reset list */
.product__variants .color-variants,
.product__variants .radio-variants{
  padding: 0;
  margin: 0;
  list-style: none;
}

/* ============================================================
   COLOR VARIANTS – spacing + single active ring
   ============================================================ */

.product__variants .color-variants{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 26px !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.product__variants .color-variants .color-variant{
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
}

.product__variants .color-variant__label{
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  cursor: pointer !important;
  padding: 4px !important;
}

/* input: invisible but functional */
.product__variants .input-color{
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
  z-index: 2 !important;
  margin: 0 !important;
}

.product__variants .color-variant__label > .color{
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  display: inline-block !important;
  position: relative !important;
  box-sizing: border-box !important;
  z-index: 1 !important;
}

.product__variants .color-variant__label > .color::after{
  content: "";
  position: absolute;
  inset: -9px;
  border-radius: 999px;
  border: 2px dashed rgba(0,0,0,.28);
  pointer-events: none;
}

.product__variants .input-color:checked + .color::after{
  border-color: #FCB868;
}

.product__variants .input-color:focus-visible + .color{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: 7px;
}

/* ============================================================
   RADIO VARIANTS – brush/marker buttons
   ============================================================ */

.product__variants .radio-variants{
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  align-items: center;
}

.product__variants .radio-variant{ display: inline-flex; }

.product__variants .radio-variant__label{
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

.product__variants .input-radio{
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
  margin: 0;
}

.product__variants .radio-label{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 18px;
  font-weight: 800;
  font-size: 18px;
  line-height: 1;
  color: #111;
  background: transparent;
  border: 2px solid rgba(79, 50, 20, .75);
  border-radius: 999px 860px 980px 820px;
  transform: rotate(-1.2deg);
  box-shadow: 0 2px 0 rgba(0,0,0,.22);
  position: relative;
  user-select: none;
}

.product__variants .radio-label::after{
  content: "";
  position: absolute;
  inset: -3px;
  border: 2px solid rgba(79, 50, 20, .35);
  border-radius: 980px 920px 860px 1000px;
  transform: rotate(1.2deg);
  pointer-events: none;
}

.product__variants .radio-label::before{
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 999px;
  background: repeating-linear-gradient(
    0deg,
    rgba(0,0,0,.12) 0px,
    rgba(0,0,0,.12) 2px,
    rgba(0,0,0,0) 3px,
    rgba(0,0,0,0) 7px
  );
  opacity: .10;
  pointer-events: none;
}

.product__variants .input-radio:checked + .radio-label{
  background: #FCB868;
  border-color: rgba(79, 50, 20, .85);
  transform: rotate(-0.6deg);
  box-shadow: 0 3px 0 rgba(0,0,0,.22), 0 12px 18px rgba(0,0,0,.10);
}

.product__variants .input-radio:focus-visible + .radio-label{
  outline: 2px solid rgba(252,184,104,.60);
  outline-offset: 6px;
}

@media (hover:hover){
  .product__variants .radio-label:hover{ transform: rotate(0deg); }
}

/* Select (optional) */
.product__variants .form-select{
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-weight: 600;
}

/* ============================================================
   ADD TO CART – FIXED for Hummingbird markup (row/cols)
   - Stabilne wyrównanie
   - Przycisk zajmuje całą dostępną szerokość
   - Na <=520px: qty centrowane, button full width, bez „doklejania”
   ============================================================ */

   .micey-atc-qty{
  flex: 0 1 auto;      /* może się kurczyć */
  min-width: 0;
  display: flex;
  align-items: center;
}

.micey-atc-qty .input-group{
  display: inline-flex;
  align-items: stretch;
  border: 1.5px solid rgba(0,0,0,.35);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}

.micey-atc-qty input.js-quantity-wanted{
  width: 72px;
  text-align: center;
  border: 0;
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
}

.micey-atc-qty .btn{
  min-width: 44px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  display: grid;
  place-items: center;
  font-size: 22px;
}

.micey-product__block--add-to-cart{
  padding: 18px 0;
  border-top: 3px dashed #FCB868;
  border-bottom: 3px dashed #FCB868;
}


.micey-product__block--add-to-cart{
  padding: 18px 0;
  border-top: 3px dashed #FCB868;
  border-bottom: 3px dashed #FCB868;
}

/* To jest prawdziwy layout w tpl: .row.g-2 + .col / .col-md-auto */
.micey-product__block--add-to-cart .product-add-to-cart .row.g-2{
  display: flex;
  align-items: center;
  gap: 22px;      /* zamiast bootstrapowego gap w różnych breakpoints */
  flex-wrap: nowrap;
}

/* qty kolumna */
.micey-product__block--add-to-cart .product-actions__quantity{
  flex: 0 1 auto;        
  min-width: 0;
  display: flex;
  align-items: center;
}

/* button kolumna */
.micey-product__block--add-to-cart .product-actions__button{
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  min-width: 300px;
  align-items: center; /* pionowe wyrównanie do osi qty */
}

/* sam przycisk ma wypełniać całą szerokość kolumny */
.micey-product__block--add-to-cart .product-actions__button > button.add-to-cart{
  width: 100%;
  min-width: 240px;
}

/* ====== Qty wrapper (Touchspin) ====== */
.micey-product__block--add-to-cart .bootstrap-touchspin{
  display: inline-flex;
  align-items: stretch;
  border: 1.5px solid rgba(0,0,0,.35);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 0 rgba(0,0,0,.10);
}

/* input w środku */
.micey-product__block--add-to-cart .bootstrap-touchspin input{
  width: 72px;
  text-align: center;
  border: 0;
  outline: 0;
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #111;
  background: transparent;
  line-height: 1; /* poprawia centrowanie z buttonami +/- */
}

/* przyciski +/- (increment/decrement) */
.micey-product__block--add-to-cart .bootstrap-touchspin .btn{
  border: 0;
  background: transparent;
  min-width: 44px;
  padding: 0 12px;
  display: grid;
  place-items: center;
  cursor: pointer;
  color: rgba(0,0,0,.55);
  font-size: 22px;
  line-height: 1;
}

/* focus */
.micey-product__block--add-to-cart .bootstrap-touchspin .btn:focus-visible{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: 3px;
}

/* ====== Brush button (Hummingbird: button.add-to-cart) ====== */
.micey-product__block--add-to-cart button.add-to-cart{
  position: relative;
  min-height: 54px;
  padding: 12px 18px;

  font-family: 'Patrick Hand';
  font-weight: 400;
font-size: clamp(18px, 1.6vw, 24px);  
overflow: hidden;
text-overflow: ellipsis;
  letter-spacing: 0.6px;
  text-transform: uppercase;

  background: #FCB868;
  color: #111;

  border: 2px solid rgba(0,0,0,.65);
  border-radius: 999px 860px 980px 820px;
  transform: rotate(-0.6deg);

  box-shadow: 0 3px 0 rgba(0,0,0,.22), 0 12px 18px rgba(0,0,0,.10);
  cursor: pointer;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;


  white-space: nowrap;

  transition: transform .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.micey-product__block--add-to-cart button.add-to-cart::after{
  content: "";
  position: absolute;
  inset: -4px;
  border: 2px solid rgba(0,0,0,.25);
  border-radius: 980px 920px 860px 1000px;
  transform: rotate(1.2deg);
  pointer-events: none;
}

@media (hover:hover){
  .micey-product__block--add-to-cart button.add-to-cart:hover{
    transform: rotate(0deg) translateY(-1px);
    background: #FFD28A;
    box-shadow: 0 4px 0 rgba(0,0,0,.22), 0 16px 22px rgba(0,0,0,.12);
  }
}

.micey-product__block--add-to-cart button.add-to-cart:focus-visible{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: 5px;
}

.micey-product__block--add-to-cart button.add-to-cart:disabled{
  opacity: .55;
  cursor: not-allowed;
  box-shadow: none;
}

/* awaryjne ukrycie wishlist jeśli gdzieś wróci innym hookiem */
.micey-product__block--add-to-cart .wishlist-button,
.micey-product__block--add-to-cart .add-to-wishlist,
.micey-product__block--add-to-cart [data-button-action="add-to-wishlist"]{
  display: none !important;
}

/* 860–990: button ma min width, a qty się kompresuje */
@media (min-width: 860px) and (max-width: 990px){

  /* button nigdy nie robi się za mały */
  .micey-product__block--add-to-cart .product-actions__button{
    min-width: 300px; /* możesz dać 280 jeśli brakuje miejsca */
  }

  /* touchspin węższy */
  .micey-product__block--add-to-cart .bootstrap-touchspin input{
    width: 52px;
    font-size: 16px;
  }

  .micey-product__block--add-to-cart .bootstrap-touchspin .btn{
    min-width: 36px;
    padding: 0 8px;
    font-size: 20px;
  }

  /* button font delikatnie mniejszy w tym przedziale */
  .micey-product__block--add-to-cart button.add-to-cart{
    font-size: clamp(18px, 1.3vw, 22px);
    padding: 12px 14px;
  }
}


/* Mobile <=520: stack + poprawne centrowanie qty */
@media (max-width: 520px){
  .micey-product__block--add-to-cart .product-add-to-cart .row.g-2{
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .micey-product__block--add-to-cart .product-actions__quantity{
    width: 100%;
    justify-content: center; /* qty na środku */
  }

  .micey-product__block--add-to-cart .product-actions__button{
   flex: 1 1 auto;
  min-width: 280px;    
  display: flex;
  align-items: center;
}

  .micey-product__block--add-to-cart button.add-to-cart{
    width: 100%;
    font-size: 22px; /* lekko mniejsze żeby nie walczyło o miejsce */
  }
}

/* ============================================================
   MODUŁY
   ============================================================ */

/* MICEY CTA */
.micey-cta{
  border: 2px dashed rgba(252,184,104,.75);
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(252,184,104,.06);
}

.micey-cta__text{
  color: var(--micey-cta-color, #ed006a);
  line-height: 1.25;
}

/* font switch */
.micey-cta[data-micey-cta-font="patrick"] .micey-cta__text{
  font-family: 'Patrick Hand';
  font-size: 22px;
  letter-spacing: 0.2px;
}

.micey-cta[data-micey-cta-font="inter"] .micey-cta__text{
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.micey-cta[data-micey-cta-font="sourcesans"] .micey-cta__text{
  font-family: 'Source Sans 3', system-ui, -apple-system, sans-serif;
  font-size: 17px;
  font-weight: 700;
}

/* ====== Micey: Product Customization ====== */
.micey-customization__title{
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 10px;
  margin-bottom: 10px;
  background: transparent;
}

.micey-customization__item{
  border-radius: 12px;
  overflow: hidden;
}

.micey-customization__header{
  padding: 10px 12px;
  font-size: 14px;
  letter-spacing: .02em;
}

.micey-customization__body{
  padding-top: 10px;
  padding-bottom: 12px;
}

.micey-customization__textarea{
  min-height: 110px;
  resize: vertical;
  border-radius: 12px;
}

.micey-customization__meta{
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.micey-customization__current{
  padding: 10px 12px;
  border: 1px dashed rgba(0,0,0,.18);
  border-radius: 12px;
}

.micey-customization__current-label{
  font-weight: 700;
  font-size: 13px;
  margin-bottom: 4px;
}

.micey-customization__current-value{
  font-size: 14px;
}

/* CUSTOMIZATION – Save button in "brush" style */
.micey-customization__submit{ margin-top: 10px; }

.micey-customization__submit .btn,
.micey-customization__submit button.btn,
.micey-customization__submit button[name="submitCustomizedData"]{
  position: relative;
  width: 100%;
  min-height: 52px;
  padding: 12px 18px;

  font-family: 'Patrick Hand';
  font-weight: 400;
  font-size: 22px;
  letter-spacing: .6px;
  text-transform: uppercase;

  background: #FCB868;
  color: #111;

  border: 2px solid rgba(0,0,0,.65);
  border-radius: 44px 28px 52px 30px;
  transform: rotate(-0.3deg);

  box-shadow: 0 3px 0 rgba(0,0,0,.22), 0 12px 18px rgba(0,0,0,.10);
  cursor: pointer;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  transition: transform .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.micey-customization__submit .btn::after,
.micey-customization__submit button[name="submitCustomizedData"]::after{
  content: "";
  position: absolute;
  inset: -4px;
  border: 2px solid rgba(0,0,0,.25);
  border-radius: 52px 34px 44px 36px;
  transform: rotate(0.8deg);
  pointer-events: none;
}

@media (hover:hover){
  .micey-customization__submit .btn:hover,
  .micey-customization__submit button[name="submitCustomizedData"]:hover{
    transform: rotate(0deg) translateY(-1px);
    background: #FFD28A;
    box-shadow: 0 4px 0 rgba(0,0,0,.22), 0 16px 22px rgba(0,0,0,.12);
  }
}

.micey-customization__submit .btn:focus-visible,
.micey-customization__submit button[name="submitCustomizedData"]:focus-visible{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: 5px;
}

.micey-customization__submit .btn:disabled,
.micey-customization__submit button[name="submitCustomizedData"]:disabled{
  opacity: .55;
  cursor: not-allowed;
  box-shadow: none;
}


/* ============================================================
   ADD TO CART – stable layout (qty + button) + responsive
   Fixes:
   - no collapsing / sticking to right
   - qty height = button height
   - qty border does not disappear on hover
   - light orange background for qty
   - button text never clipped (scales down; icon hides on tiny)
   ============================================================ */
/* ==============================
   QTY – BAZA
   ============================== */



/* MAIN ROW (replaces relying on bootstrap row/cols here) */
.micey-product__block--add-to-cart .micey-atc-row{
  display: flex;
  align-items: center;         /* vertical center: qty vs button */
  gap: 22px;
  flex-wrap: nowrap;
  width: 100%;
}

/* QTY wrapper (do not grow) */
.micey-product__block--add-to-cart .micey-atc-qty{
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}

/* BUTTON wrapper (takes remaining space) */
.micey-product__block--add-to-cart .micey-atc-btn{
  flex: 1 1 auto;
  min-width: 0;                /* IMPORTANT: allows flex child shrink correctly */
  display: flex;
}

/* ------------------------------------------------------------
   QTY: target Hummingbird markup:
   .input-group.flex-nowrap ... buttons .btn + input.form-control
   ------------------------------------------------------------ */

.micey-product__block--add-to-cart .micey-atc-qty .input-group{
  height: 54px;                        /* SAME as button min-height */
  margin: 0 !important;                /* kill mb-3 from component */
  border: 1.5px solid rgba(0,0,0,.35);
  border-radius: 14px;
  overflow: hidden;
  background: rgba(252,184,104,.14);   /* light orange */
  box-shadow: 0 2px 0 rgba(0,0,0,.10);
}

/* Buttons -/+ (no border vanish, because border is on wrapper) */
.micey-product__block--add-to-cart .micey-atc-qty .input-group .btn{
  width: 54px;
  height: 54px;
  padding: 0;

  font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 500;

  border: 0 !important;
  background: transparent !important;
  display: grid;
  place-items: center;
  color: rgba(0,0,0,.70);
  border-radius: 0 !important;
  box-shadow: none !important;
}


.micey-product__block--add-to-cart .micey-atc-qty .input-group .btn:hover,
.micey-product__block--add-to-cart .micey-atc-qty .input-group .btn:focus{
  border: 0 !important;
  background: rgba(0,0,0,.04) !important; /* subtle hover */
}

.micey-product__block--add-to-cart .micey-atc-qty .input-group .btn:focus-visible{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: -2px; /* stays inside */
}

/* Quantity input */
.micey-product__block--add-to-cart .micey-atc-qty .input-group input.form-control{
  height: 54px;
  width: 70px;
  border: 0 !important;
  background: transparent !important;
  text-align: center;
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #111;
  box-shadow: none !important;
}

/* remove bootstrap focus ring on input */
.micey-product__block--add-to-cart .micey-atc-qty .input-group input.form-control:focus{
  outline: none;
  box-shadow: none;
}

/* ------------------------------------------------------------
   ADD TO CART BUTTON (full width + no clipping)
   ------------------------------------------------------------ */

.micey-product__block--add-to-cart .micey-atc-btn > button.add-to-cart{
  width: 100%;
  min-height: 54px;
  min-width: 0;                       /* IMPORTANT: prevents weird overflow */
  padding: 12px 18px;

  font-family: 'Shantell Sans', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 500;

  /* scales down on smaller screens so text doesn't clip */
  font-size: clamp(18px, 2.2vw, 24px);
  letter-spacing: 0.6px;
  text-transform: uppercase;
  line-height: 1.05;

  background: #FCB868;
  color: #111;

  border: 2px solid rgba(0,0,0,.65);
  border-radius: 999px 860px 980px 820px;
  transform: rotate(-0.6deg);

  box-shadow: 0 3px 0 rgba(0,0,0,.22), 0 12px 18px rgba(0,0,0,.10);
  cursor: pointer;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  /* allow wrapping if absolutely needed instead of clipping */
  white-space: normal;
  text-align: center;

  transition: transform .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.micey-product__block--add-to-cart .micey-atc-btn > button.add-to-cart::after{
  content: "";
  position: absolute;
  inset: -4px;
  border: 2px solid rgba(0,0,0,.25);
  border-radius: 980px 920px 860px 1000px;
  transform: rotate(1.2deg);
  pointer-events: none;
}

/* ==============================
   QTY – SKALOWANIE 860–990
   ============================== */
@media (min-width: 860px) and (max-width: 990px){

  /* input węższy */
  .micey-atc-qty input.js-quantity-wanted{
    width: 52px;
    font-size: 16px;
  }

  /* +/- mniejsze */
  .micey-atc-qty .btn{
    min-width: 34px;
    padding: 0 8px;
    font-size: 20px;
  }

}


@media (hover:hover){
  .micey-product__block--add-to-cart .micey-atc-btn > button.add-to-cart:hover{
    transform: rotate(0deg) translateY(-1px);
    background: #FFD28A;
    box-shadow: 0 4px 0 rgba(0,0,0,.22), 0 16px 22px rgba(0,0,0,.12);
  }
}

.micey-product__block--add-to-cart .micey-atc-btn > button.add-to-cart:focus-visible{
  outline: 2px solid rgba(252,184,104,.55);
  outline-offset: 5px;
}

/* If very narrow: hide cart icon to preserve text space */
@media (max-width: 560px){
  .micey-product__block--add-to-cart .micey-atc-btn > button.add-to-cart i.material-icons{
    display: none;
  }
}

/* Mobile stack */
@media (max-width: 520px){
  .micey-product__block--add-to-cart .micey-atc-row{
    flex-direction: column;
    align-items: stretch;
  }

  .micey-product__block--add-to-cart .micey-atc-qty{
    width: 100%;
    justify-content: center;
  }

  .micey-product__block--add-to-cart .micey-atc-qty .input-group{
    width: 100%;
    max-width: 340px;  /* looks centered and not too wide */
    margin-inline: auto !important;
  }

  .micey-product__block--add-to-cart .micey-atc-btn{
    width: 100%;
  }
}

/* Safety: if wishlist sneaks in again */
.micey-product__block--add-to-cart .wishlist-button,
.micey-product__block--add-to-cart .add-to-wishlist,
.micey-product__block--add-to-cart [data-button-action="add-to-wishlist"]{
  display: none !important;
}

/* ============================================================
   OPIS + CECHY + "ZOBACZ TAKŻE" (NEW GRID – zgodnie z makietą)
   - lewa kolumna: opis + cechy (stack)
   - prawa kolumna: produkty powiązane (równa wysokość do lewej)
   ============================================================ */

.micey-product__grid--opis-related{
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 28px;
  align-items: stretch; 
  margin-top: 28px;
}

.micey-product__col--opiscol,
.micey-product__col--relatedcol{
  min-width: 0;
}

.micey-product__col--opiscol{
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.micey-product__aside--zobacz{
  height: 100%;
  border: 2px dashed #FCB868;
  border-radius: 14px;
  padding: 16px;
  display: flex;
  flex-direction: column;
}





@media (max-width: 1024px){
  .micey-product__grid--opis-related{ grid-template-columns: 1fr 320px; }
}

@media (max-width: 860px){
  .micey-product__grid--opis-related{ grid-template-columns: 1fr; }
  .micey-product__aside--zobacz{ height: auto; }
  .micey-product__aside--zobacz .products,
  .micey-product__aside--zobacz .product-accessories{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px){
  .micey-product__aside--zobacz .products,
  .micey-product__aside--zobacz .product-accessories{
    grid-template-columns: 1fr;
  }
}


/*.micey-product__aside--zobacz .product-accessories .section-title{
  display: none !important;
}

.micey-product__aside--zobacz{
  height: 100%;
  padding: 16px;
  border: 2px dashed #FCB868;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  min-height: 0; 
}

.micey-product__aside--zobacz .micey-product__aside-body{
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden; 
  position: relative;
}


.micey-product__aside--zobacz .product-accessories{
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
}



/*.micey-product__aside--zobacz .products.row{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;                 
  display: grid !important;
  grid-template-columns: 1fr !important; 
  gap: 12px;
  align-content: start !important;

  
  will-change: transform;
  transform: translateY(0);
}*/

/*.micey-product__aside--zobacz .products.row > [class*="col-"]{
  width: auto !important;
  max-width: none !important;
  flex: initial !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}}



.micey-product__aside--zobacz .product-miniature,
.micey-product__aside--zobacz .product-miniature .card{
  width: 100% !important;
}

.micey-product__aside--zobacz .product-miniature .card{
  border-radius: 14px;
  padding: 10px;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 6px;
}

.micey-product__aside--zobacz .product-miniature__quickview_touch,
.micey-product__aside--zobacz .product-miniature__quickview,
.micey-product__aside--zobacz .wishlist-button-add,
.micey-product__aside--zobacz .product-flags{
  display: none !important;
}*/



/*.micey-product__aside--zobacz .thumbnail-container,
.micey-product__aside--zobacz .product-miniature__image-container{
  width: 148px !important;
  height: 148px !important;
  margin: 0 auto 6px auto !important;
  display: block;
}

.micey-product__aside--zobacz .product-miniature img,
.micey-product__aside--zobacz .product-miniature__image{
  width: 148px !important;
  height: 148px !important;
  object-fit: cover;
  border-radius: 14px;
  display: block;
}


.micey-product__aside--zobacz .product-miniature__infos.card-body{
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px;
}

.micey-product__aside--zobacz .product-miniature__title{
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  max-height: calc(1.15em * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;

  hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.micey-product__aside--zobacz .product-miniature__variants{
  margin: 0 !important;
  width: 100%;
  display: flex !important;
  justify-content: center !important;
}

.micey-product__aside--zobacz .variant-links{
  margin: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 4px;
  max-width: 100%;
}

.micey-product__aside--zobacz .variant-links .variant-link{
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  border-radius: 5px !important;
  margin: 0 !important;
}


.micey-product__aside--zobacz .mt-3,
.micey-product__aside--zobacz .gap-3{
  margin: 0 !important;
  gap: 0 !important;
}


.micey-product__aside--zobacz .product-miniature__prices{
  margin: 0 !important;
  padding: 0 !important;
}

.micey-product__aside--zobacz .product-miniature__price{
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  margin: 0 !important;
}

.micey-product__aside--zobacz .quantity-button,
.micey-product__aside--zobacz .input-group.flex-nowrap{
  display: none !important;
}

.micey-product__aside--zobacz input[name="qty"]{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.micey-product__aside--zobacz form.d-flex{
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.micey-product__aside--zobacz .product-miniature__prices,
.micey-product__aside--zobacz form.d-flex{
  display: inline-flex !important;
  align-items: center !important;
}

.micey-product__aside--zobacz button[data-button-action="add-to-cart"]{
  background: #FCB868 !important;
  border-color: #FCB868 !important;
  color: #111 !important;

  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  border-radius: 12px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin-left: 6px !important;
}

.micey-product__aside--zobacz button[data-button-action="add-to-cart"] .material-icons{
  font-size: 20px !important;
}
.micey-product__grid--opis-related{
  align-items: stretch;   
}

.micey-product__grid--opis-related > .micey-product__col{
  min-height: 0;
}

.micey-product__col--relatedcol{
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.micey-product__col--relatedcol .micey-product__aside--zobacz{
  flex: 1 1 auto;
  min-height: 0;
}

.micey-product__aside--zobacz .product-accessories{
  margin: 0 !important;
  padding: 0 !important;
}


*/

/* ============================================================
   CECHY / SZCZEGÓŁY PRODUKTU – zostaje AKORDEON (klikany)
   ============================================================ */

.micey-product__section--features,
.micey-product__section--features *{
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

/* ukryj placeholderowy tytuł "Cechy produktu" z .micey-ph */
.micey-product__section--features .micey-ph > div:first-child{
  display: none !important;
}

/* nagłówek akordeonu "Szczegóły produktu" */
.micey-product__section--features #product-details .info__title{
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
}

.micey-product__section--features #product-details .accordion-button,
.micey-product__section--features #product-features .accordion-button{
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;

  font-family: 'Shantell Sans', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 400 !important; 
  font-size: 26px;
  line-height: 1.15;
  letter-spacing: .2px;
  text-transform: none;

  color: #111 !important;
}



.micey-product__section--features #product-details .accordion-button::after,
.micey-product__section--features #product-features .accordion-button::after{
  opacity: .7;
  transform: none;
}


/* w środku: separator pomarańczowy pod nagłówkiem */
.micey-product__section--features #product-details .accordion-body{
  padding: 12px 0 0 0 !important;
  margin-top: 12px;
  border-top: 2px solid #FCB868;
}

/* lista detali jako tabela */
.micey-product__section--features .product__details{
  list-style: none;
  padding: 0;
  margin: 0;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
}

.micey-product__section--features .product__details .detail{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
}

.micey-product__section--features .product__details .detail:nth-child(odd){
  background: rgba(0,0,0,.03);
}
.micey-product__section--features .product__details .detail:nth-child(even){
  background: #fff;
}

.micey-product__section--features .product__details .detail + .detail{
  border-top: 1px solid rgba(0,0,0,.06);
}

.micey-product__section--features .detail__title{
  font-weight: 700;
  font-size: 14px;
  color: #111;
}

.micey-product__section--features .detail__right span{
  font-weight: 500;
  font-size: 14px;
  color: rgba(0,0,0,.82);
}

/* opcjonalnie: usuń ramkę accordion-item, jeśli się pojawia */
.micey-product__section--features #product-details.accordion-item{
  border: 0 !important;
  background: transparent !important;
}


/* ============================================================
   LONG DESCRIPTION (rich-text) – spójne nagłówki (Patrik HAND)
   ============================================================ */

.micey-product__section--opis .product__description{
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
  color: #333;
}


.micey-product__section--opis .product__description h2,
.micey-product__section--opis .product__description h3,
.micey-product__section--opis .product__description .ld-about,
.micey-product__section--opis .product__description .ld-idea,
.micey-product__section--opis .product__description .ld-love,
.micey-product__section--opis .product__description .ld-perfectfor,
.micey-product__section--opis .product__description .ld-faq{
  font-family: 'Shantell Sans', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 400; /* Regular */
  font-size: 26px;
  line-height: 1.15;
  letter-spacing: .2px;
  margin: 22px 0 10px;
}


.micey-product__section--opis .product__description h2:first-child{
  margin-top: 0;
}


.micey-product__section--opis .product__description p{
  margin: 0 0 12px;
}

.micey-product__section--opis .product__description ul{
  margin: 0 0 14px 18px;
  padding: 0;
}

.micey-product__section--opis .product__description li{
  margin: 0 0 6px;
}


/* ============================================================
   ATC MOBILE FIX (<=520)
   ============================================================ */
@media (max-width: 520px){

  .micey-product__block--add-to-cart .micey-atc-qty .input-group,
  .micey-product__block--add-to-cart .bootstrap-touchspin{
    width: clamp(220px, 60%, 360px);
    max-width: none;
    margin-inline: auto !important;
  }

  .micey-product__block--add-to-cart .micey-atc-qty .input-group{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }

  .micey-product__block--add-to-cart .micey-atc-qty .input-group .btn{
    flex: 0 0 56px;
    min-width: 56px;
    padding: 0;
  }

  .micey-product__block--add-to-cart .micey-atc-qty input.js-quantity-wanted{
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    text-align: center;
  }

  .micey-product__block--add-to-cart .bootstrap-touchspin{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
  .micey-product__block--add-to-cart .bootstrap-touchspin input{
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    text-align: center;
  }

  
}
