:root{--kpt-psc-primary:#0b63ce;--kpt-psc-buy:#19a463;--kpt-psc-mobile-offset:60px}
#kpt-pro-sticky-cart.kpt-psc{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:2147483000!important;background:rgba(255,255,255,.97)!important;border-top:1px solid rgba(15,23,42,.12)!important;box-shadow:0 -12px 38px rgba(15,23,42,.16)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transform:translateY(120%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .32s ease,opacity .25s ease,visibility .25s ease!important;font-family:inherit!important}
#kpt-pro-sticky-cart.kpt-psc.is-visible{transform:translateY(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.kpt-psc__inner{max-width:1320px!important;margin:0 auto!important;padding:14px 22px!important;display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(500px,1.6fr)!important;gap:22px!important;align-items:center!important}
.kpt-psc__product{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}.kpt-psc__image{width:64px!important;height:64px!important;min-width:64px!important;object-fit:cover!important;border-radius:14px!important;border:1px solid #e5e7eb!important;background:#fff!important}.kpt-psc__meta{min-width:0!important}.kpt-psc__title{font-size:15px!important;line-height:1.35!important;font-weight:700!important;color:#111827!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.kpt-psc__price{margin-top:4px!important;font-size:18px!important;line-height:1.2!important;font-weight:800!important;color:#0f172a!important}.kpt-psc__price del{font-size:13px!important;opacity:.55!important}.kpt-psc__stock{font-size:12px!important;margin-top:3px!important;color:#15803d!important}
.kpt-psc__controls{display:grid!important;grid-template-columns:minmax(190px,1fr) auto minmax(260px,1.25fr)!important;gap:10px!important;align-items:center!important;min-width:0!important}.kpt-psc.no-email .kpt-psc__controls{grid-template-columns:auto minmax(300px,1fr)!important}.kpt-psc__email-wrap{margin:0!important}.kpt-psc__email{display:block!important;width:100%!important;height:48px!important;margin:0!important;padding:0 15px!important;border:1px solid #d1d5db!important;border-radius:12px!important;background:#fff!important;color:#111827!important;font-size:14px!important;box-shadow:none!important;outline:none!important}.kpt-psc__email:focus{border-color:var(--kpt-psc-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--kpt-psc-primary) 18%,transparent)!important}.kpt-psc__email.is-invalid{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.12)!important}
.kpt-psc__quantity{height:48px!important;display:flex!important;align-items:center!important;border:1px solid #d1d5db!important;border-radius:12px!important;background:#fff!important;overflow:hidden!important}.kpt-psc__qty-button{display:flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:46px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#f8fafc!important;color:#111827!important;font-size:22px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important}.kpt-psc__qty-button:hover{background:#eef2f7!important}.kpt-psc__qty{width:46px!important;height:46px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#fff!important;color:#111827!important;text-align:center!important;font-size:15px!important;font-weight:700!important;box-shadow:none!important;-moz-appearance:textfield!important}.kpt-psc__qty::-webkit-inner-spin-button,.kpt-psc__qty::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
.kpt-psc__actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}.kpt-psc__button{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;width:100%!important;margin:0!important;padding:10px 18px!important;border:0!important;border-radius:12px!important;color:#fff!important;font-size:14px!important;font-weight:800!important;line-height:1.2!important;text-transform:none!important;letter-spacing:0!important;box-shadow:0 8px 20px rgba(15,23,42,.12)!important;cursor:pointer!important;opacity:1!important;visibility:visible!important}.kpt-psc__add{background:var(--kpt-psc-primary)!important}.kpt-psc__buy{background:var(--kpt-psc-buy)!important}.kpt-psc__button:hover{filter:brightness(.94)!important;transform:translateY(-1px)!important}.kpt-psc__button:disabled,.kpt-psc__button.is-loading{opacity:.55!important;cursor:not-allowed!important;transform:none!important}.kpt-psc__message{grid-column:1/-1!important;min-height:0!important;font-size:12px!important;color:#dc2626!important;text-align:center!important}.kpt-psc__message.is-success{color:#15803d!important}
@media(max-width:900px){#kpt-pro-sticky-cart.kpt-psc{bottom:var(--kpt-psc-mobile-offset)!important}.kpt-psc__inner{padding:10px 12px!important;grid-template-columns:1fr!important;gap:9px!important}.kpt-psc__product{display:none!important}.kpt-psc__controls,.kpt-psc.no-email .kpt-psc__controls{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}.kpt-psc__actions{grid-column:1/-1!important}.kpt-psc__email{height:44px!important}.kpt-psc__quantity{height:44px!important}.kpt-psc__qty-button,.kpt-psc__qty{height:42px!important}.kpt-psc__button{min-height:46px!important;font-size:14px!important;border-radius:11px!important}}
@media(max-width:480px){.kpt-psc__inner{padding:9px 10px!important}.kpt-psc__controls{grid-template-columns:minmax(0,1fr) 116px!important}.kpt-psc.no-email .kpt-psc__controls{grid-template-columns:1fr!important}.kpt-psc.no-email .kpt-psc__quantity{display:none!important}.kpt-psc__actions{gap:8px!important}.kpt-psc__button{padding:9px 8px!important;font-size:13px!important}.kpt-psc__email{font-size:13px!important}}
body.admin-bar #kpt-pro-sticky-cart.kpt-psc{z-index:2147483000!important}.wd-close-side-opened~#kpt-pro-sticky-cart{opacity:0!important;pointer-events:none!important}

/* v2.3.0 — refined responsive controls */
@media (max-width:900px){
  #kpt-pro-sticky-cart.kpt-psc{
    background:rgba(255,255,255,.985)!important;
    border-top:1px solid rgba(15,23,42,.10)!important;
    box-shadow:0 -10px 30px rgba(15,23,42,.14)!important;
  }
  .kpt-psc__inner{
    max-width:860px!important;
    padding:12px 14px!important;
  }
  .kpt-psc__controls,
  .kpt-psc.no-email .kpt-psc__controls{
    display:grid!important;
    grid-template-columns:132px minmax(0,1fr)!important;
    gap:10px 12px!important;
    align-items:center!important;
  }
  .kpt-psc__email-wrap{
    grid-column:1/-1!important;
  }
  .kpt-psc__quantity{
    grid-column:1!important;
    width:132px!important;
    min-width:132px!important;
    height:50px!important;
    border:1px solid #d8dee8!important;
    border-radius:14px!important;
    box-shadow:0 2px 7px rgba(15,23,42,.05)!important;
  }
  .kpt-psc__qty-button{
    width:42px!important;
    height:48px!important;
    background:#f6f8fb!important;
    font-size:21px!important;
    font-weight:800!important;
  }
  .kpt-psc__qty{
    width:46px!important;
    height:48px!important;
    font-size:16px!important;
  }
  .kpt-psc__actions{
    grid-column:2!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }
  .kpt-psc__button{
    min-height:50px!important;
    border-radius:14px!important;
    padding:11px 14px!important;
    font-size:15px!important;
    font-weight:800!important;
    box-shadow:0 6px 16px rgba(15,23,42,.12)!important;
    transition:transform .18s ease,filter .18s ease,box-shadow .18s ease!important;
  }
  .kpt-psc__button:hover{
    transform:translateY(-1px)!important;
    box-shadow:0 9px 20px rgba(15,23,42,.16)!important;
  }
  .kpt-psc__add{
    background:linear-gradient(135deg,var(--kpt-psc-primary),#087fba)!important;
  }
  .kpt-psc__buy{
    background:linear-gradient(135deg,var(--kpt-psc-buy),#22b83f)!important;
  }
  .kpt-psc__message{
    grid-column:1/-1!important;
  }
}

@media (max-width:560px){
  .kpt-psc__inner{
    padding:10px!important;
  }
  .kpt-psc__controls,
  .kpt-psc.no-email .kpt-psc__controls{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  .kpt-psc__email-wrap,
  .kpt-psc__quantity,
  .kpt-psc__actions,
  .kpt-psc__message{
    grid-column:1!important;
  }
  .kpt-psc__quantity{
    width:132px!important;
    min-width:132px!important;
    justify-self:center!important;
  }
  .kpt-psc__actions{
    width:100%!important;
  }
  .kpt-psc__button{
    min-height:48px!important;
    border-radius:12px!important;
    font-size:14px!important;
  }
}

@media (max-width:360px){
  .kpt-psc__actions{
    grid-template-columns:1fr!important;
  }
}

/* v2.4.0 — compact mobile purchase dock */
@media (max-width: 700px){
  #kpt-pro-sticky-cart.kpt-psc{
    background:#fff!important;
    border-top:1px solid #e6e9ee!important;
    box-shadow:0 -8px 24px rgba(15,23,42,.12)!important;
  }
  .kpt-psc__inner{
    padding:8px 10px!important;
    gap:7px!important;
  }
  .kpt-psc__controls,
  .kpt-psc.no-email .kpt-psc__controls{
    display:grid!important;
    grid-template-columns:106px minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "email email email"
      "qty add buy"
      "msg msg msg"!important;
    gap:7px!important;
    align-items:center!important;
  }
  .kpt-psc.no-email .kpt-psc__controls{
    grid-template-areas:
      "qty add buy"
      "msg msg msg"!important;
  }
  .kpt-psc__email-wrap{grid-area:email!important;margin:0!important}
  .kpt-psc__email{
    height:42px!important;
    min-height:42px!important;
    border-radius:11px!important;
    padding:0 13px!important;
    font-size:14px!important;
    border:1px solid #d6dce5!important;
    box-shadow:none!important;
  }
  .kpt-psc__email:focus{
    border-color:var(--kpt-psc-primary)!important;
    box-shadow:0 0 0 3px rgba(11,99,206,.10)!important;
  }
  .kpt-psc__quantity{
    grid-area:qty!important;
    width:106px!important;
    min-width:106px!important;
    height:44px!important;
    justify-self:stretch!important;
    border-radius:11px!important;
    border:1px solid #d6dce5!important;
    box-shadow:none!important;
  }
  .kpt-psc__qty-button{
    width:34px!important;
    height:42px!important;
    font-size:19px!important;
    background:#f7f8fa!important;
  }
  .kpt-psc__qty{
    width:38px!important;
    height:42px!important;
    font-size:15px!important;
  }
  .kpt-psc__actions{
    display:contents!important;
  }
  .kpt-psc__add{grid-area:add!important}
  .kpt-psc__buy{grid-area:buy!important}
  .kpt-psc__button{
    min-height:44px!important;
    height:44px!important;
    border-radius:11px!important;
    padding:0 10px!important;
    font-size:14px!important;
    font-weight:700!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }
  .kpt-psc__button:hover{
    transform:none!important;
    box-shadow:none!important;
    filter:brightness(.96)!important;
  }
  .kpt-psc__add{
    background:var(--kpt-psc-primary)!important;
  }
  .kpt-psc__buy{
    background:var(--kpt-psc-buy)!important;
  }
  .kpt-psc__message{
    grid-area:msg!important;
    margin:0!important;
    min-height:0!important;
    line-height:1.25!important;
  }
}

@media (max-width: 390px){
  .kpt-psc__controls,
  .kpt-psc.no-email .kpt-psc__controls{
    grid-template-columns:96px minmax(0,1fr) minmax(0,1fr)!important;
  }
  .kpt-psc__quantity{
    width:96px!important;
    min-width:96px!important;
  }
  .kpt-psc__qty-button{width:30px!important}
  .kpt-psc__qty{width:36px!important}
  .kpt-psc__button{
    font-size:12.5px!important;
    padding:0 6px!important;
  }
}


/* v2.4.1 — suspend the purchase bar behind Woodmart off-canvas panels */
#kpt-pro-sticky-cart.kpt-psc.is-suspended,
body.wd-side-hidden-opened #kpt-pro-sticky-cart.kpt-psc,
html.wd-side-hidden-opened #kpt-pro-sticky-cart.kpt-psc,
body:has(.wd-close-side.wd-close-side-opened) #kpt-pro-sticky-cart.kpt-psc,
body:has(.login-form-side.wd-opened) #kpt-pro-sticky-cart.kpt-psc,
body:has(.cart-widget-side.wd-opened) #kpt-pro-sticky-cart.kpt-psc,
body:has(.mobile-nav.wd-opened) #kpt-pro-sticky-cart.kpt-psc {
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(110%)!important;
}
