/* Innotech V28.60 targeted fixes: checkout mobile alignment + product quantity selector. */

/* Checkout page: keep the main form, shipping panel, agreement, and buttons aligned on mobile. */
body.checkout-page .checkout-box.checkout-cart-shell,
body.checkout-page .checkout-layout,
body.checkout-page .checkout-panel,
body.checkout-page .checkout-form,
body.checkout-page .shipping-choice-panel,
body.checkout-page .agreement-panel,
body.checkout-page .checkout-actions{
  box-sizing:border-box;
  max-width:100%;
}
body.checkout-page .checkout-panel,
body.checkout-page .order-summary-panel{
  min-width:0;
}
body.checkout-page .form-field,
body.checkout-page .form-field.full,
body.checkout-page .shipping-choice-panel.full,
body.checkout-page .agreement-panel,
body.checkout-page .checkout-actions.full{
  min-width:0;
  max-width:100%;
}
body.checkout-page .form-field input,
body.checkout-page .form-field select,
body.checkout-page .form-field textarea{
  display:block;
  max-width:100%;
  min-width:0;
}
@media(max-width:700px){
  body.checkout-page .product-hero .wrap{
    width:calc(100% - 24px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.checkout-page .checkout-box.checkout-cart-shell{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:18px!important;
    border-radius:28px!important;
    overflow:hidden!important;
  }
  body.checkout-page .checkout-layout{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    gap:18px!important;
  }
  body.checkout-page .checkout-panel,
  body.checkout-page .order-summary-panel{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:16px!important;
    border-radius:24px!important;
  }
  body.checkout-page .checkout-form{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.checkout-page .form-field,
  body.checkout-page .form-field.full,
  body.checkout-page .shipping-choice-panel.full,
  body.checkout-page .agreement-panel,
  body.checkout-page .checkout-actions.full{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.checkout-page .shipping-choice-panel,
  body.checkout-page .agreement-panel{
    padding:16px!important;
    border-radius:22px!important;
  }
  body.checkout-page .shipping-option{
    width:100%!important;
    max-width:100%!important;
  }
  body.checkout-page .form-field input,
  body.checkout-page .form-field select,
  body.checkout-page .form-field textarea{
    width:100%!important;
    max-width:100%!important;
    min-height:56px!important;
    border-radius:18px!important;
  }
  body.checkout-page .checkout-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.checkout-page .checkout-actions .btn{
    width:100%!important;
  }
}
@media(max-width:420px){
  body.checkout-page .product-hero .wrap{width:calc(100% - 18px)!important;}
  body.checkout-page .checkout-box.checkout-cart-shell{padding:14px!important;border-radius:24px!important;}
  body.checkout-page .checkout-panel,
  body.checkout-page .order-summary-panel{padding:14px!important;border-radius:22px!important;}
}

/* Product quantity selector used on individual item pages. */
.innotech-qty-box{
  width:100%;
  max-width:420px;
  margin:18px 0 16px;
  padding:14px;
  border-radius:22px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  box-shadow:0 14px 38px rgba(7,16,34,.16);
}
.innotech-qty-box strong{
  display:block;
  margin:0 0 10px;
  color:#fff;
  font-size:16px;
  letter-spacing:-.025em;
}
.innotech-qty-row{
  display:grid;
  grid-template-columns:54px minmax(86px,112px) 54px 1fr;
  gap:10px;
  align-items:center;
}
.innotech-qty-btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.26);
  background:rgba(255,255,255,.92);
  color:#071022;
  border-radius:16px;
  min-height:52px;
  font-size:28px;
  line-height:1;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(7,16,34,.14);
}
.innotech-qty-btn:active{transform:translateY(1px);}
.innotech-qty-input{
  width:100%;
  min-height:52px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.96);
  color:#071022;
  text-align:center;
  font:inherit;
  font-size:20px;
  font-weight:950;
  padding:10px;
  outline:none;
}
.innotech-qty-hint{
  color:rgba(255,255,255,.74);
  font-size:13px;
  font-weight:750;
  line-height:1.3;
}
.innotech-qty-confirm{
  display:block;
  min-height:18px;
  margin-top:8px;
  color:#d9fff0;
  font-size:13px;
  font-weight:850;
}
@media(max-width:560px){
  .innotech-qty-box{max-width:100%;margin:16px 0 14px;padding:13px;border-radius:20px;}
  .innotech-qty-row{grid-template-columns:52px minmax(80px,1fr) 52px;}
  .innotech-qty-hint{grid-column:1/-1;}
}

/* Innotech V28.61 checkout polish: shorter logged-in checkout summary. */
body.checkout-page .account-compact-summary.slim-account-summary{
  display:grid;
  gap:4px;
  margin:0 0 14px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
}
body.checkout-page .account-compact-summary.slim-account-summary strong{
  margin:0!important;
  font-size:15px!important;
}
body.checkout-page .account-compact-summary.slim-account-summary p{
  margin:0!important;
  font-size:14px!important;
  line-height:1.35!important;
}
body.checkout-page .account-mini-edit{
  appearance:none;
  border:0;
  background:transparent;
  color:#bcd0ff;
  font:inherit;
  font-weight:900;
  justify-self:start;
  padding:4px 0 0;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(max-width:700px){
  body.checkout-page .account-compact-summary.slim-account-summary{padding:10px 12px!important;border-radius:16px!important;}
}
