/*
Theme: Dac San Public Order
Description: Theme-owned WooCommerce Single Product UI
Version: 1.8.7
*/
.dpo-single-app{
  --dpo-blue:#0b74e5;
  --dpo-blue-dark:#0865c7;
  --dpo-ink:#172033;
  --dpo-muted:#667085;
  --dpo-border:#e8edf3;
  --dpo-bg:#f6f8fb;
  background:var(--dpo-bg)!important;
  min-height:100vh;
}
.dpo-single-app__page{
  max-width:1120px;
  margin:0 auto;
  padding:0 16px 48px;
}
.dpo-single-app__topbar{
  height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--dpo-ink);
}
.dpo-single-app__topbar strong{
  flex:1;
  font-size:17px;
}
.dpo-single-app__back,
.dpo-single-app__cart{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px;
  border:0!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--dpo-ink)!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  font-size:25px;
  cursor:pointer;
  box-shadow:0 2px 10px rgba(20,40,70,.06);
}
.dpo-single-app__product{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:26px;
  padding:20px;
  background:#fff;
  border:1px solid var(--dpo-border);
  border-radius:22px;
  box-shadow:0 8px 28px rgba(20,40,70,.06);
  overflow:hidden;
}
.dpo-single-app__hero{min-width:0;}
.dpo-single-app__image{
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:18px;
  background:#fafbfd;
}
.dpo-single-app__main-image{
  display:block;
  width:100%;
  max-width:100%;
  height:auto!important;
  max-height:620px;
  object-fit:contain;
}
.dpo-single-app__summary{
  min-width:0;
  padding:16px 4px 8px;
}
.dpo-single-app__title{
  margin:0 0 10px!important;
  color:var(--dpo-ink)!important;
  font-size:clamp(28px,3.3vw,40px)!important;
  line-height:1.16!important;
  font-weight:800!important;
  letter-spacing:-.5px;
}
.dpo-single-app__price{
  margin:0 0 14px!important;
  color:var(--dpo-blue)!important;
  font-size:29px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.dpo-single-app__price del{
  color:#98a2b3;
  font-size:.72em;
  margin-right:7px;
}
.dpo-single-app__price ins{text-decoration:none;}
.dpo-single-app__short-description{
  margin:0 0 18px;
  color:#596273;
  font-size:15px;
  line-height:1.7;
}
.dpo-single-app__short-description p{margin:0 0 7px;}
.dpo-single-app__meta{
  display:flex;
  align-items:stretch;
  gap:0;
  margin:0 0 18px;
  padding:0;
  border:1px solid var(--dpo-border);
  border-radius:15px;
  background:#fff;
  overflow:hidden;
}
.dpo-single-app__meta-item{
  flex:1;
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
  padding:13px 14px;
  color:#394456;
  font-size:13px;
}
.dpo-single-app__meta-item + .dpo-single-app__meta-item{
  border-left:1px solid var(--dpo-border);
}
.dpo-single-app__meta-item a{
  color:inherit;
  text-decoration:none;
}
.dpo-single-app__meta-icon{
  flex:0 0 auto;
  color:#8a94a4;
  font-size:18px;
}
.dpo-single-app__add-to-cart{
  width:100%!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--dpo-blue)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px;
  font-size:17px!important;
  font-weight:800!important;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(11,116,229,.20)!important;
}
.dpo-single-app__add-to-cart:hover,
.dpo-single-app__add-to-cart:focus{
  background:var(--dpo-blue-dark)!important;
}
.dpo-single-app__add-to-cart.is-loading{
  opacity:.7;
  cursor:wait;
}
.dpo-single-app__cart-icon{font-size:21px;}
.dpo-single-app__trust{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
  color:#667085;
  font-size:13px;
}
.dpo-single-app__trust i{font-style:normal;color:#b2b8c2;}
.dpo-single-app__tabs{
  grid-column:1/-1;
  margin-top:4px;
}
.dpo-single-app__tabbar{
  display:flex;
  gap:0;
  padding:0 6px;
  border-bottom:1px solid #dfe4ea;
  background:#fff;
  border-radius:15px 15px 0 0;
}
.dpo-single-app__tab{
  flex:1;
  min-height:48px;
  border:0!important;
  border-bottom:3px solid transparent!important;
  border-radius:0!important;
  background:transparent!important;
  color:#667085!important;
  font-size:15px!important;
  font-weight:800!important;
  cursor:pointer;
}
.dpo-single-app__tab.is-active{
  color:var(--dpo-blue)!important;
  border-bottom-color:var(--dpo-blue)!important;
}
.dpo-single-app__panel{
  margin:0;
  padding:20px;
  background:#fff;
  border:1px solid var(--dpo-border);
  border-top:0;
  border-radius:0 0 16px 16px;
  color:#4e5868;
  font-size:15px;
  line-height:1.75;
}
.dpo-single-app__panel[hidden]{display:none!important;}
.dpo-single-app__panel h2{
  margin:0 0 14px!important;
  color:var(--dpo-ink)!important;
  font-size:20px!important;
  font-weight:800!important;
}
.dpo-single-app__description p:first-child{margin-top:0;}
.dpo-single-app__description img{
  display:block;
  max-width:100%!important;
  width:auto!important;
  height:auto!important;
  max-height:480px!important;
  margin:8px auto 16px;
  object-fit:contain;
}
.dpo-single-app__empty{margin:0;color:#8a94a4;}
.dpo-reviews__list{display:flex;flex-direction:column;gap:10px;}
.dpo-review__card{
  padding:14px;
  border:1px solid var(--dpo-border);
  border-radius:14px;
  background:#f8fafc;
}
.dpo-review__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  color:var(--dpo-ink);
}
.dpo-review__stars{color:#f5b301;letter-spacing:1px;white-space:nowrap;}
.dpo-review__date{
  display:block;
  margin-top:3px;
  color:#98a2b3;
  font-size:12px;
}
.dpo-review__content{
  margin-top:8px;
  color:#4e5868;
  font-size:14px;
  line-height:1.65;
}
.dpo-review__content p:last-child{margin-bottom:0;}
.dpo-reviews__empty{
  padding:22px 12px;
  text-align:center;
  border:1px dashed #dfe4ea;
  border-radius:14px;
  background:#fafbfd;
}
.dpo-reviews__empty-icon{
  font-size:42px;
  line-height:1;
  color:#b7c1ce;
}
.dpo-reviews__empty strong{
  display:block;
  margin-top:8px;
  color:var(--dpo-ink);
  font-size:16px;
}
.dpo-reviews__empty p{margin:5px 0 0;color:#7a8494;}
.dpo-review-form{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid var(--dpo-border);
}
.dpo-review-form .comment-reply-title{
  margin:0 0 14px!important;
  color:var(--dpo-ink)!important;
  font-size:18px!important;
  font-weight:800!important;
}
.dpo-review-form label{
  display:block;
  margin:0 0 7px;
  color:#394456;
  font-size:13px;
  font-weight:700;
}
.dpo-review-form input[type=text],
.dpo-review-form input[type=email],
.dpo-review-form textarea{
  width:100%!important;
  box-sizing:border-box!important;
  border:1px solid #dfe4ea!important;
  border-radius:11px!important;
  background:#fff!important;
  padding:11px 12px!important;
  font-size:14px!important;
  outline:none!important;
}
.dpo-review-form textarea{min-height:110px;resize:vertical;}
.dpo-review-form input:focus,
.dpo-review-form textarea:focus{
  border-color:var(--dpo-blue)!important;
  box-shadow:0 0 0 3px rgba(11,116,229,.10)!important;
}
.dpo-review-form__submit{
  width:100%!important;
  min-height:47px!important;
  margin-top:7px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--dpo-blue)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
}
@media(max-width:767px){
  .dpo-single-app__page{padding:0 0 32px;}
  .dpo-single-app__topbar{
    position:sticky;
    top:0;
    z-index:30;
    padding:0 14px;
    background:#fff;
    border-bottom:1px solid #edf0f4;
  }
  .dpo-single-app__product{
    display:block;
    padding:0 14px 26px;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .dpo-single-app__image{
    width:calc(100% + 28px);
    min-height:280px;
    margin:0 -14px;
    border-radius:0;
    background:#fafbfd;
  }
  .dpo-single-app__main-image{
    max-height:54vh;
    object-fit:contain;
  }
  .dpo-single-app__summary{padding:17px 2px 6px;}
  .dpo-single-app__title{font-size:26px!important;}
  .dpo-single-app__price{font-size:25px!important;}
  .dpo-single-app__short-description{font-size:14px;line-height:1.65;}
  .dpo-single-app__meta{
    display:block;
    border-radius:13px;
  }
  .dpo-single-app__meta-item{
    min-height:43px;
    padding:10px 12px;
  }
  .dpo-single-app__meta-item + .dpo-single-app__meta-item{
    border-left:0;
    border-top:1px solid var(--dpo-border);
  }
  .dpo-single-app__add-to-cart{
    min-height:50px!important;
    border-radius:13px!important;
    font-size:16px!important;
  }
  .dpo-single-app__trust{
    font-size:12px;
    gap:6px;
  }
  .dpo-single-app__tabs{
    margin-top:18px;
  }
  .dpo-single-app__tabbar{
    padding:0;
    border-radius:0;
  }
  .dpo-single-app__tab{min-height:46px!important;font-size:14px!important;}
  .dpo-single-app__panel{
    padding:16px;
    border-radius:0 0 14px 14px;
    font-size:14px;
  }
}

/* v1.8.7 - Compact product header + sticky order action */
.dpo-single-app__topbar{
  height:52px!important;
  justify-content:flex-start!important;
  gap:9px!important;
}
.dpo-single-app__topbar strong{
  flex:0 0 auto!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:800!important;
}
.dpo-single-app__back{
  width:36px!important;
  height:36px!important;
  flex-basis:36px!important;
  border-radius:11px!important;
  font-size:24px!important;
  box-shadow:none!important;
  background:transparent!important;
}
.dpo-single-app__sticky-action{
  display:none;
}
@media(max-width:767px){
  .dpo-single-app__topbar{
    height:48px!important;
    padding:0 14px!important;
    gap:7px!important;
  }
  .dpo-single-app__topbar strong{
    font-size:15px!important;
  }
  .dpo-single-app__back{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
    font-size:22px!important;
  }
  /* Reserve room so the fixed button never covers description/reviews. */
  .dpo-single-app__product{
    padding-bottom:104px!important;
  }
  .dpo-single-app__add-to-cart--inline{
    display:none!important;
  }
  .dpo-single-app__sticky-action{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:99999!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.97)!important;
    border-top:1px solid #e5eaf0!important;
    box-shadow:0 -6px 22px rgba(20,40,70,.10)!important;
    box-sizing:border-box!important;
  }
  .dpo-single-app__sticky-info{
    flex:1 1 auto!important;
    min-width:0!important;
    padding-left:2px!important;
  }
  .dpo-single-app__sticky-label{
    display:block!important;
    color:#7a8494!important;
    font-size:11px!important;
    line-height:1.2!important;
    margin-bottom:2px!important;
  }
  .dpo-single-app__sticky-info strong,
  .dpo-single-app__sticky-info .amount{
    color:#0b74e5!important;
    font-size:18px!important;
    line-height:1.2!important;
    font-weight:850!important;
  }
  .dpo-single-app__sticky-info del{
    color:#98a2b3!important;
    font-size:11px!important;
  }
  .dpo-single-app__sticky-info ins{
    text-decoration:none!important;
  }
  .dpo-single-app__add-to-cart--sticky{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:150px!important;
    min-height:48px!important;
    height:48px!important;
    padding:0 24px!important;
    border-radius:13px!important;
    font-size:16px!important;
    box-shadow:0 5px 14px rgba(11,116,229,.20)!important;
  }
}

/* v1.8.7 - SINGLE PRODUCT ONLY: compact detail header + sticky order */
body.single-product .dpo-single-app .dpo-single-app__topbar{
  height:48px!important;
  padding:0!important;
  justify-content:flex-start!important;
  gap:7px!important;
}
body.single-product .dpo-single-app .dpo-single-app__topbar strong{
  flex:0 0 auto!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:800!important;
}
body.single-product .dpo-single-app .dpo-single-app__back{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:22px!important;
}

/* Desktop keeps the normal in-content button. */
body.single-product .dpo-single-app .dpo-single-app__add-to-cart--sticky{
  display:none!important;
}
body.single-product .dpo-single-app .dpo-single-app__sticky-action{
  display:none!important;
}

/* Mobile: one fixed order action only. */
@media(max-width:767px){
  body.single-product .dpo-single-app .dpo-single-app__product{
    padding-bottom:104px!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__add-to-cart--inline{
    display:none!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-action{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:99999!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
    margin:0!important;
    background:rgba(255,255,255,.98)!important;
    border-top:1px solid #e5eaf0!important;
    box-shadow:0 -6px 22px rgba(20,40,70,.10)!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-info{
    flex:1 1 auto!important;
    min-width:0!important;
    padding-left:2px!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-label{
    display:block!important;
    margin:0 0 2px!important;
    color:#7a8494!important;
    font-size:11px!important;
    line-height:1.15!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-info strong{
    color:#0b74e5!important;
    font-size:18px!important;
    line-height:1.2!important;
    font-weight:850!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-info del{
    color:#98a2b3!important;
    font-size:11px!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__sticky-info ins{
    text-decoration:none!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__add-to-cart--sticky{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:150px!important;
    min-height:48px!important;
    height:48px!important;
    margin:0!important;
    padding:0 24px!important;
    border:0!important;
    border-radius:13px!important;
    align-items:center!important;
    justify-content:center!important;
    background:#0b74e5!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:800!important;
    box-shadow:0 5px 14px rgba(11,116,229,.20)!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__add-to-cart--sticky.is-loading{
    opacity:.7!important;
  }
}

/* v1.8.7 - Single Product app polish ONLY */
body.single-product .dpo-single-app{
  --dpo-blue:#0b74e5;
  --dpo-ink:#172033;
  --dpo-muted:#7a8494;
  --dpo-line:#edf0f4;
  background:#f6f8fb!important;
}
body.single-product .dpo-single-app__topbar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  height:44px!important;
  padding:0 2px!important;
}
body.single-product .dpo-single-app__topbar strong{
  font-size:14px!important;
  color:#667085!important;
  font-weight:700!important;
}
body.single-product .dpo-single-app__back{
  color:#667085!important;
  background:transparent!important;
}
body.single-product .dpo-single-app__product{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:0!important;
  padding:0 0 100px!important;
  gap:14px!important;
}
body.single-product .dpo-single-app__hero,
body.single-product .dpo-single-app__image{
  border-radius:18px!important;
  overflow:hidden!important;
}
body.single-product .dpo-single-app__image{
  background:#fff!important;
  min-height:330px!important;
}
body.single-product .dpo-single-app__summary{
  background:#fff!important;
  border-radius:18px!important;
  padding:17px 16px 15px!important;
  box-shadow:0 4px 18px rgba(20,40,70,.045)!important;
}
body.single-product .dpo-single-app__headline{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
body.single-product .dpo-single-app__title{
  margin:0!important;
  font-size:22px!important;
  line-height:1.28!important;
  letter-spacing:-.2px!important;
}
body.single-product .dpo-single-app__price{
  margin:0!important;
  font-size:22px!important;
  line-height:1.25!important;
}
body.single-product .dpo-single-app__short-description{
  margin:10px 0 12px!important;
  padding:0!important;
  color:#596273!important;
  font-size:14px!important;
  line-height:1.6!important;
}
body.single-product .dpo-single-app__short-description p{
  margin:0!important;
}
body.single-product .dpo-single-app__meta{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  border-top:1px solid var(--dpo-line)!important;
  border-bottom:1px solid var(--dpo-line)!important;
  background:transparent!important;
}
body.single-product .dpo-single-app__meta-item{
  padding:10px 0!important;
  font-size:12px!important;
}
body.single-product .dpo-single-app__meta-item + .dpo-single-app__meta-item{
  border-left:0!important;
  border-top:0!important;
  margin-left:14px!important;
  padding-left:14px!important;
  border-left:1px solid var(--dpo-line)!important;
}
body.single-product .dpo-single-app__meta-label{
  color:#98a2b3!important;
}
body.single-product .dpo-single-app__meta-value{
  color:#475467!important;
  font-weight:700!important;
}
body.single-product .dpo-single-app__trust{
  justify-content:flex-start!important;
  gap:7px 12px!important;
  margin:11px 0 0!important;
  font-size:11px!important;
  color:#667085!important;
}
body.single-product .dpo-single-app__add-to-cart--inline{
  display:none!important;
}

/* Description and reviews are one continuous app-like content area. */
body.single-product .dpo-single-app__tabs{
  margin-top:0!important;
}
body.single-product .dpo-single-app__tabbar{
  background:#fff!important;
  border-radius:16px 16px 0 0!important;
  padding:0 5px!important;
}
body.single-product .dpo-single-app__tab{
  min-height:45px!important;
  font-size:14px!important;
}
body.single-product .dpo-single-app__panel{
  padding:17px 16px!important;
  border-radius:0 0 16px 16px!important;
  border:0!important;
  background:#fff!important;
}
body.single-product .dpo-single-app__description{
  font-size:14px!important;
  line-height:1.7!important;
}
body.single-product .dpo-single-app__description h2,
body.single-product .dpo-single-app__description h3{
  color:var(--dpo-ink)!important;
}

/* Reviews: compact cards + selectable 1-5 stars */
body.single-product .dpo-review-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:13px;
}
body.single-product .dpo-review-section-head h2{
  margin:0!important;
  font-size:18px!important;
}
body.single-product .dpo-review-section-count{
  color:#98a2b3;
  font-size:12px;
}
body.single-product .dpo-review__card{
  padding:13px!important;
  border:1px solid #edf0f4!important;
  border-radius:13px!important;
  background:#fafbfd!important;
}
body.single-product .dpo-review-form{
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid #edf0f4!important;
}
body.single-product .dpo-review-form__title{
  margin:0 0 13px!important;
  font-size:17px!important;
  color:var(--dpo-ink)!important;
}
body.single-product .dpo-rating-field{
  margin-bottom:13px;
}
body.single-product .dpo-rating-label{
  display:block;
  margin-bottom:6px;
  color:#475467;
  font-size:13px;
  font-weight:700;
}
body.single-product .dpo-rating-stars{
  display:flex;
  flex-direction:row-reverse;
  justify-content:flex-end;
  gap:2px;
}
body.single-product .dpo-rating-stars input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.single-product .dpo-rating-stars label{
  margin:0!important;
  padding:0!important;
  color:#d0d5dd!important;
  font-size:29px!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:transform .12s ease,color .12s ease;
}
body.single-product .dpo-rating-stars label:hover,
body.single-product .dpo-rating-stars label:hover ~ label,
body.single-product .dpo-rating-stars input:checked ~ label{
  color:#f5b301!important;
}
body.single-product .dpo-rating-stars label:hover{
  transform:scale(1.08);
}
body.single-product .dpo-native-review-form p{
  margin:0 0 11px!important;
}
body.single-product .dpo-native-review-form label{
  display:block!important;
  margin:0 0 6px!important;
  color:#475467!important;
  font-size:12px!important;
  font-weight:700!important;
}
body.single-product .dpo-native-review-form input[type=text],
body.single-product .dpo-native-review-form input[type=tel],
body.single-product .dpo-native-review-form textarea{
  width:100%!important;
  box-sizing:border-box!important;
  border:1px solid #e1e6ed!important;
  border-radius:11px!important;
  background:#fff!important;
  padding:10px 11px!important;
  font-size:14px!important;
}
body.single-product .dpo-native-review-form textarea{
  min-height:100px!important;
  resize:vertical;
}
body.single-product .dpo-review-form__submit{
  width:100%!important;
  min-height:46px!important;
  margin:2px 0 0!important;
  border:0!important;
  border-radius:12px!important;
  background:#0b74e5!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
}
@media(max-width:767px){
  body.single-product .dpo-single-app__page{
    padding:0 12px 28px!important;
  }
  body.single-product .dpo-single-app__topbar{
    margin:0 -12px!important;
    padding:0 12px!important;
  }
  body.single-product .dpo-single-app__image{
    min-height:285px!important;
    border-radius:16px!important;
  }
  body.single-product .dpo-single-app__summary{
    padding:15px 14px 14px!important;
  }
  body.single-product .dpo-single-app__title{
    font-size:21px!important;
  }
  body.single-product .dpo-single-app__price{
    font-size:21px!important;
  }
  body.single-product .dpo-single-app__meta-item{
    padding:9px 0!important;
  }
}

/* v1.8.7 - reference inspired mobile app UI, Single Product only */
body.single-product .dpo-single-app{background:#f2f4f7!important;}
body.single-product .dpo-single-app__page{max-width:560px!important;padding:0 10px 118px!important;}
body.single-product .dpo-single-app__topbar{height:54px!important;margin:0!important;padding:0 8px!important;background:#fff!important;border-radius:0 0 18px 18px!important;}
body.single-product .dpo-single-app__topbar strong{flex:1!important;text-align:center!important;font-size:16px!important;color:#202939!important;font-weight:800!important;}
body.single-product .dpo-single-app__back{width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:50%!important;background:#f7f8fa!important;color:#303846!important;font-size:25px!important;}
body.single-product .dpo-single-app__product{display:block!important;padding:8px 0 108px!important;background:transparent!important;}
body.single-product .dpo-single-app__hero{background:#fff!important;border-radius:22px!important;overflow:hidden!important;}
body.single-product .dpo-single-app__image{min-height:330px!important;height:330px!important;border-radius:22px!important;background:#fff!important;}
body.single-product .dpo-single-app__main-image{width:100%!important;height:100%!important;max-height:330px!important;object-fit:contain!important;padding:22px!important;box-sizing:border-box!important;}
body.single-product .dpo-single-app__summary{margin-top:0!important;padding:18px 16px 15px!important;background:#fff!important;border-radius:0 0 20px 20px!important;box-shadow:none!important;}
body.single-product .dpo-product-headline{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;}
body.single-product .dpo-product-headline__main{min-width:0!important;flex:1!important;}
body.single-product .dpo-single-app__title{margin:0!important;color:#18212f!important;font-size:22px!important;line-height:1.25!important;font-weight:800!important;}
body.single-product .dpo-single-app__availability{display:flex!important;align-items:center!important;gap:6px!important;margin-top:8px!important;color:#7a8494!important;font-size:12px!important;}
body.single-product .dpo-status-dot{width:17px!important;height:17px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:#dff5bf!important;color:#5d9b18!important;font-size:10px!important;font-weight:900!important;}
body.single-product .dpo-product-favorite{width:42px!important;height:42px!important;flex:0 0 42px!important;border:0!important;border-radius:50%!important;background:#fff!important;color:#f15b2a!important;font-size:26px!important;box-shadow:0 3px 14px rgba(20,30,50,.08)!important;}
body.single-product .dpo-product-favorite.is-liked{background:#fff4ef!important;}
body.single-product .dpo-product-price-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-top:13px!important;}
body.single-product .dpo-single-app__price{margin:0!important;color:#0b74e5!important;font-size:23px!important;line-height:1.15!important;font-weight:900!important;}
body.single-product .dpo-product-rating-summary{display:flex!important;align-items:center!important;gap:4px!important;color:#687386!important;font-size:12px!important;}
body.single-product .dpo-rating-star{color:#f5b301!important;font-size:20px!important;}
body.single-product .dpo-single-app__short-description{margin:13px 0 12px!important;color:#606b7b!important;font-size:13px!important;line-height:1.55!important;}
body.single-product .dpo-single-app__short-description p{margin:0!important;}
body.single-product .dpo-product-info-strip{display:flex!important;flex-wrap:wrap!important;gap:7px 11px!important;padding:10px 0!important;border-top:1px solid #eef1f4!important;border-bottom:1px solid #eef1f4!important;color:#667085!important;font-size:10.5px!important;}
body.single-product .dpo-product-sku{margin-top:9px!important;color:#98a2b3!important;font-size:11px!important;}
body.single-product .dpo-single-app__add-to-cart--inline{display:none!important;}
body.single-product .dpo-single-app__tabs{margin-top:10px!important;}
body.single-product .dpo-single-app__description-card,body.single-product .dpo-reviews-card{padding:17px 16px!important;background:#fff!important;border-radius:18px!important;}
body.single-product .dpo-reviews-card{margin-top:10px!important;}
body.single-product .dpo-single-app__description-card h2,body.single-product .dpo-reviews-card h2{margin:0 0 10px!important;color:#202939!important;font-size:18px!important;font-weight:800!important;}
body.single-product .dpo-single-app__description{color:#667085!important;font-size:13px!important;line-height:1.65!important;}
body.single-product .dpo-description-clamp{max-height:132px!important;overflow:hidden!important;position:relative!important;}
body.single-product .dpo-description-clamp:not(.is-expanded):after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:42px!important;background:linear-gradient(transparent,#fff)!important;}
body.single-product .dpo-description-clamp.is-expanded{max-height:none!important;}
body.single-product .dpo-description-more{display:block!important;margin:7px auto 0!important;padding:0!important;border:0!important;background:transparent!important;color:#0b74e5!important;font-size:13px!important;font-weight:800!important;}
body.single-product .dpo-review-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:13px!important;}
body.single-product .dpo-single-app__sticky-action{position:fixed!important;left:50%!important;bottom:0!important;z-index:99999!important;width:min(560px,100%)!important;transform:translateX(-50%)!important;display:flex!important;padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;background:#fff!important;border-top:1px solid #edf0f4!important;box-shadow:0 -5px 18px rgba(20,30,50,.10)!important;box-sizing:border-box!important;}
body.single-product .dpo-single-app__add-to-cart--sticky{display:flex!important;width:100%!important;min-height:50px!important;height:50px!important;align-items:center!important;justify-content:center!important;border-radius:15px!important;background:#0b74e5!important;color:#fff!important;font-size:16px!important;font-weight:850!important;}
@media(min-width:768px){body.single-product .dpo-single-app__page{max-width:900px!important;}body.single-product .dpo-single-app__sticky-action{display:none!important;}}

/* v1.8.7 FINAL - Reference-inspired Single Product only */
body.single-product .dpo-single-app{background:#f2f4f7!important;}
body.single-product .dpo-single-app__page{max-width:560px!important;padding:0 10px 118px!important;}
body.single-product .dpo-single-app__topbar{height:54px!important;margin:0!important;padding:0 8px!important;background:#fff!important;border-radius:0 0 18px 18px!important;}
body.single-product .dpo-single-app__topbar strong{flex:1!important;text-align:center!important;font-size:16px!important;color:#202939!important;font-weight:800!important;}
body.single-product .dpo-single-app__back{width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:50%!important;background:#f7f8fa!important;color:#303846!important;font-size:25px!important;}
body.single-product .dpo-single-app__product{display:block!important;padding:8px 0 108px!important;background:transparent!important;}
body.single-product .dpo-single-app__hero{background:#fff!important;border-radius:22px!important;overflow:hidden!important;}
body.single-product .dpo-single-app__image{min-height:330px!important;height:330px!important;border-radius:22px!important;background:#fff!important;}
body.single-product .dpo-single-app__main-image{width:100%!important;height:100%!important;max-height:330px!important;object-fit:contain!important;padding:22px!important;box-sizing:border-box!important;}
body.single-product .dpo-single-app__summary{margin-top:0!important;padding:18px 16px 15px!important;background:#fff!important;border-radius:0 0 20px 20px!important;box-shadow:none!important;}
body.single-product .dpo-product-headline{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;}
body.single-product .dpo-product-headline__main{min-width:0!important;flex:1!important;}
body.single-product .dpo-single-app__title{margin:0!important;color:#18212f!important;font-size:22px!important;line-height:1.25!important;font-weight:800!important;}
body.single-product .dpo-single-app__availability{display:flex!important;align-items:center!important;gap:6px!important;margin-top:8px!important;color:#7a8494!important;font-size:12px!important;}
body.single-product .dpo-status-dot{width:17px!important;height:17px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:#dff5bf!important;color:#5d9b18!important;font-size:10px!important;font-weight:900!important;}
body.single-product .dpo-product-favorite{width:42px!important;height:42px!important;flex:0 0 42px!important;border:0!important;border-radius:50%!important;background:#fff!important;color:#f15b2a!important;font-size:26px!important;box-shadow:0 3px 14px rgba(20,30,50,.08)!important;}
body.single-product .dpo-product-favorite.is-liked{background:#fff4ef!important;}
body.single-product .dpo-product-price-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-top:13px!important;}
body.single-product .dpo-single-app__price{margin:0!important;color:#0b74e5!important;font-size:23px!important;line-height:1.15!important;font-weight:900!important;}
body.single-product .dpo-product-rating-summary{display:flex!important;align-items:center!important;gap:4px!important;color:#687386!important;font-size:12px!important;}
body.single-product .dpo-rating-star{color:#f5b301!important;font-size:20px!important;}
body.single-product .dpo-single-app__short-description{margin:13px 0 12px!important;color:#606b7b!important;font-size:13px!important;line-height:1.55!important;}
body.single-product .dpo-single-app__short-description p{margin:0!important;}
body.single-product .dpo-product-info-strip{display:flex!important;flex-wrap:wrap!important;gap:7px 11px!important;padding:10px 0!important;border-top:1px solid #eef1f4!important;border-bottom:1px solid #eef1f4!important;color:#667085!important;font-size:10.5px!important;}
body.single-product .dpo-product-sku{margin-top:9px!important;color:#98a2b3!important;font-size:11px!important;}
body.single-product .dpo-single-app__add-to-cart--inline{display:none!important;}
body.single-product .dpo-single-app__tabs{margin-top:10px!important;}
body.single-product .dpo-single-app__description-card,body.single-product .dpo-reviews-card{padding:17px 16px!important;background:#fff!important;border-radius:18px!important;}
body.single-product .dpo-reviews-card{margin-top:10px!important;}
body.single-product .dpo-single-app__description-card h2,body.single-product .dpo-reviews-card h2{margin:0 0 10px!important;color:#202939!important;font-size:18px!important;font-weight:800!important;}
body.single-product .dpo-single-app__description{color:#667085!important;font-size:13px!important;line-height:1.65!important;}
body.single-product .dpo-description-clamp{max-height:132px!important;overflow:hidden!important;position:relative!important;}
body.single-product .dpo-description-clamp:not(.is-expanded):after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:42px!important;background:linear-gradient(transparent,#fff)!important;}
body.single-product .dpo-description-clamp.is-expanded{max-height:none!important;}
body.single-product .dpo-description-more{display:block!important;margin:7px auto 0!important;padding:0!important;border:0!important;background:transparent!important;color:#0b74e5!important;font-size:13px!important;font-weight:800!important;}
body.single-product .dpo-review-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:13px!important;}
body.single-product .dpo-single-app__sticky-action{position:fixed!important;left:50%!important;bottom:0!important;z-index:99999!important;width:min(560px,100%)!important;transform:translateX(-50%)!important;display:flex!important;padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;background:#fff!important;border-top:1px solid #edf0f4!important;box-shadow:0 -5px 18px rgba(20,30,50,.10)!important;box-sizing:border-box!important;}
body.single-product .dpo-single-app__add-to-cart--sticky{display:flex!important;width:100%!important;min-height:50px!important;height:50px!important;align-items:center!important;justify-content:center!important;border-radius:15px!important;background:#0b74e5!important;color:#fff!important;font-size:16px!important;font-weight:850!important;}
@media(min-width:768px){body.single-product .dpo-single-app__page{max-width:900px!important;}body.single-product .dpo-single-app__sticky-action{display:none!important;}}

/* v1.8.7 - Single Product image remains full-width */
@media(max-width:767px){
  body.single-product .dpo-single-app__page{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.single-product .dpo-single-app__topbar{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.single-product .dpo-single-app__product{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.single-product .dpo-single-app__hero{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border-radius:0!important;
  }
  body.single-product .dpo-single-app__image{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1/1!important;
    border-radius:0!important;
  }
  body.single-product .dpo-single-app__main-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    padding:0!important;
    object-fit:contain!important;
    background:#fff!important;
  }
  body.single-product .dpo-single-app__summary,
  body.single-product .dpo-single-app__tabs{
    margin-left:10px!important;
    margin-right:10px!important;
  }
}

/* v1.8.7 - Fix Single Product sticky order button */
@media(max-width:767px){
  body.single-product .dpo-single-app .dpo-single-app__sticky-action{
    display:flex!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
    z-index:2147483000!important;
    min-height:68px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:8px 12px calc(8px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.98)!important;
    border-top:1px solid #e8edf3!important;
    box-shadow:0 -6px 22px rgba(16,32,56,.12)!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__add-to-cart--sticky{
    display:flex!important;
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    max-width:560px!important;
    min-width:0!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 18px!important;
    border:0!important;
    outline:0!important;
    border-radius:15px!important;
    align-items:center!important;
    justify-content:center!important;
    background:#0b74e5!important;
    color:#fff!important;
    font-family:inherit!important;
    font-size:16px!important;
    line-height:1!important;
    font-weight:800!important;
    text-align:center!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    box-shadow:0 5px 15px rgba(11,116,229,.22)!important;
  }

  body.single-product .dpo-single-app .dpo-single-app__add-to-cart--sticky:disabled{
    opacity:.65!important;
    cursor:wait!important;
  }

  body.single-product .dpo-single-app__product{
    padding-bottom:128px!important;
  }
}
@media(min-width:768px){
  body.single-product .dpo-single-app .dpo-single-app__sticky-action{
    display:none!important;
  }
}

/* v1.8.7 - FIX: make Single Product sticky order button actually visible */
.dpo-single-app__sticky-action{
  display:none!important;
}
@media(max-width:767px){
  .dpo-single-app__sticky-action{
    display:flex!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    top:auto!important;
    width:100vw!important;
    max-width:100vw!important;
    height:auto!important;
    min-height:68px!important;
    margin:0!important;
    padding:8px 12px calc(8px + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
    align-items:center!important;
    justify-content:center!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    z-index:2147483647!important;
    background:#fff!important;
    border-top:1px solid #e8edf3!important;
    box-shadow:0 -6px 22px rgba(16,32,56,.14)!important;
    transform:none!important;
  }

  .dpo-single-app__sticky-action .dpo-single-app__add-to-cart--sticky{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:relative!important;
    width:100%!important;
    max-width:560px!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 18px!important;
    box-sizing:border-box!important;
    border:0!important;
    border-radius:15px!important;
    align-items:center!important;
    justify-content:center!important;
    background:#0b74e5!important;
    color:#fff!important;
    font-family:inherit!important;
    font-size:16px!important;
    line-height:1!important;
    font-weight:800!important;
    text-align:center!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    box-shadow:0 5px 15px rgba(11,116,229,.22)!important;
  }

  .dpo-single-app__sticky-action .dpo-single-app__add-to-cart--sticky.is-loading{
    opacity:.7!important;
  }

  body.single-product .dpo-single-app__product{
    padding-bottom:128px!important;
  }
}
@media(min-width:768px){
  .dpo-single-app__sticky-action{
    display:none!important;
  }
}

/* v1.8.7 - Single Product detail bar full-width */
body.single-product .dpo-single-app__topbar{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  box-sizing:border-box!important;
  border-radius:0!important;
  background:#fff!important;
  border-bottom:1px solid #edf0f4!important;
  box-shadow:0 2px 8px rgba(20,30,50,.05)!important;
}
body.single-product .dpo-single-app__topbar strong{
  font-size:16px!important;
  font-weight:800!important;
}
@media(max-width:767px){
  body.single-product .dpo-single-app__topbar{
    min-height:54px!important;
    height:54px!important;
  }
}

/* v1.8.7 - Header ticker and Single Product detail bar touch */
@media(max-width:767px){
  /* Remove any gap between service ticker and Single Product detail bar. */
  body.single-product .dpo-service-ticker + .dpo-single-app,
  body.single-product .dpo-service-ticker ~ .dpo-single-app{
    margin-top:0!important;
    padding-top:0!important;
  }

  body.single-product .dpo-single-app__topbar{
    margin-top:0!important;
    margin-bottom:0!important;
    min-height:46px!important;
    height:46px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    border-radius:0!important;
    box-shadow:0 1px 5px rgba(20,30,50,.04)!important;
  }

  body.single-product .dpo-single-app__topbar strong{
    font-size:15px!important;
    line-height:1!important;
  }

  body.single-product .dpo-single-app__back{
    width:32px!important;
    height:32px!important;
    flex-basis:32px!important;
    font-size:22px!important;
  }

  /* No extra whitespace at the beginning of Single Product content. */
  body.single-product .dpo-single-app__product{
    margin-top:0!important;
    padding-top:0!important;
  }
}
