body:has(.hcv8){background:#020404}.hcv8{min-height:100svh;background:radial-gradient(circle at top,rgba(53,94,59,.22),transparent 36%),#020404;color:#fff;font-family:Tahoma,Arial,sans-serif;padding:16px 0 95px}.hcv8 form{width:min(760px,92%);margin:auto;min-height:calc(100svh - 120px);display:flex;flex-direction:column}.hcv8-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.hcv8-top b{font-size:25px;color:#fff}.hcv8-step-label{color:#b8c1bd}.hcv8-progress{height:5px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin-bottom:18px}.hcv8-progress span{display:block;height:100%;width:20%;background:#4E7D55;transition:.25s}.hcv8-step{display:none;animation:hcv8fade .22s ease}.hcv8-step.active{display:block}.hcv8-step h2{font-size:26px;text-align:center;margin:0 0 18px}.hcv8-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hcv8-card{min-height:135px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.04);padding:16px;display:flex;flex-direction:column;justify-content:center;cursor:pointer}.hcv8-card input{display:none}.hcv8-card:has(input:checked){border-color:#4E7D55;box-shadow:0 0 24px rgba(53,94,59,.40)}.hcv8-card strong{font-size:20px}.hcv8-card small{color:#b8c1bd;margin-top:8px}.hcv8-card b{color:#4E7D55;margin-top:10px}.hcv8-counter{width:220px;height:76px;border:1px solid rgba(53,94,59,.60);border-radius:24px;margin:10px auto;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;background:rgba(255,255,255,.035)}.hcv8-counter button{height:100%;border:0;background:transparent;color:#fff;font-size:36px}.hcv8-counter input{width:100%;text-align:center;background:transparent;border:0;color:#fff;font-size:32px;font-weight:900}.hcv8-help{text-align:center;color:#b8c1bd;line-height:1.8}.hcv8-selected-items{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px}.hcv8-chip{border:1px solid rgba(53,94,59,.55);border-radius:999px;padding:8px 14px;color:#dce3df}.hcv8-flavor-slots{display:grid;gap:10px;margin-bottom:14px}.hcv8-slot{border:1px solid rgba(53,94,59,.55);border-radius:18px;padding:12px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.035)}.hcv8-slot b{color:#fff}.hcv8-slot span{color:#4E7D55}.hcv8-flavor-bank{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hcv8-flavor{min-height:120px;background:rgba(255,255,255,.05);background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.12);border-radius:18px;color:#fff;font-weight:900;text-shadow:0 2px 10px #000}.hcv8-flavor.active{border-color:#4E7D55;box-shadow:0 0 22px rgba(53,94,59,.45)}.hcv8-fields{display:grid;gap:10px}.hcv8-fields input,.hcv8-fields select,.hcv8-fields textarea{width:100%;min-height:52px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:#071010;color:#fff;padding:0 14px}.hcv8-fields textarea{padding:14px;min-height:90px}.hcv8-times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hcv8-times label{min-height:48px;border:1px solid rgba(255,255,255,.12);border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.035)}.hcv8-times input{display:none}.hcv8-times label:has(input:checked){border-color:#4E7D55;background:rgba(53,94,59,.20)}.hcv8-custom-time{display:none}.hcv8-footer{position:fixed;left:50%;bottom:10px;transform:translateX(-50%);width:min(760px,92%);height:76px;border-radius:26px;border:1px solid rgba(53,94,59,.62);background:rgba(4,8,5,.94);backdrop-filter:blur(14px);display:grid;grid-template-columns:80px 1fr 100px;gap:8px;align-items:center;padding:8px;z-index:9999}.hcv8-total{text-align:center;color:#fff}.hcv8-total b{color:#4E7D55}.hcv8-prev,.hcv8-next,.hcv8-submit{height:58px;border-radius:20px;border:0;font-weight:900}.hcv8-prev{background:#151b1a;color:#fff}.hcv8-next,.hcv8-submit{background:linear-gradient(135deg,#4E7D55,#355E3B);color:#fff}.hcv8-submit{display:none}.hcv8-result{margin-top:14px;line-height:2}.hcv8-result a{color:#4E7D55;font-weight:900}.hcv8-admin-form{background:#fff;border:1px solid #ddd;border-radius:12px;padding:18px;display:grid;gap:12px;max-width:740px;margin:18px 0}.hcv8-admin-form input,.hcv8-admin-form textarea{width:100%;min-height:42px}.hcv8-image-preview{width:180px;height:130px;border:1px dashed #aaa;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f6f7f7;overflow:hidden}.hcv8-image-preview img{width:100%;height:100%;object-fit:cover}@keyframes hcv8fade{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:800px){.hcv8-grid,.hcv8-flavor-bank{grid-template-columns:1fr}.hcv8-card{min-height:105px}.hcv8-times{grid-template-columns:1fr}.hcv8-footer{grid-template-columns:70px 1fr 90px}.hcv8-step h2{font-size:23px}}

/* V9 Fullscreen hard fix */
body:has(.hcv8){
  overflow:hidden !important;
  padding-bottom:0 !important;
  background:#020404 !important;
}

/* Hide theme mobile bottom nav on quick-order screen */
body:has(.hcv8) .hc-mobile-nav,
body:has(.hcv8) .mobile-nav{
  display:none !important;
}

.hcv8{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  min-height:100dvh !important;
  height:100dvh !important;
  width:100vw !important;
  overflow-y:auto !important;
  padding:calc(env(safe-area-inset-top) + 18px) 0 calc(104px + env(safe-area-inset-bottom)) !important;
  background:
    radial-gradient(circle at top,rgba(53,94,59,.26),transparent 38%),
    linear-gradient(180deg,#071010,#020404 60%) !important;
}

.hcv8 form{
  width:min(760px,92%) !important;
  min-height:auto !important;
  padding-bottom:20px !important;
}

.hcv8-footer{
  position:fixed !important;
  left:50% !important;
  bottom:calc(env(safe-area-inset-bottom) + 12px) !important;
  transform:translateX(-50%) !important;
  width:min(760px,92%) !important;
  height:76px !important;
  z-index:1000000 !important;
  grid-template-columns:78px 1fr 112px !important;
}

.hcv8-next,
.hcv8-submit{
  display:block;
  font-size:16px !important;
}

.hcv8-next::after{
  content:"";
}

.hcv8-step{
  padding-bottom:18px !important;
}

.hcv8-card{
  min-height:118px !important;
}

@media(max-width:800px){
  .hcv8{
    padding-top:calc(env(safe-area-inset-top) + 14px) !important;
    padding-bottom:calc(104px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8 form{
    width:92% !important;
  }

  .hcv8-footer{
    height:74px !important;
    grid-template-columns:68px 1fr 96px !important;
    border-radius:24px !important;
  }

  .hcv8-prev,
  .hcv8-next,
  .hcv8-submit{
    height:56px !important;
    border-radius:18px !important;
  }

  .hcv8-total{
    font-size:13px !important;
  }

  .hcv8-total b{
    display:block;
    font-size:15px !important;
    margin-top:3px;
  }
}


/* V10: internal bottom nav + iOS zoom fix */
body:has(.hcv8){
  overflow:hidden !important;
  padding-bottom:0 !important;
}

/* Keep theme nav hidden only on builder; use internal nav instead */
body:has(.hcv8) .hc-mobile-nav,
body:has(.hcv8) .mobile-nav{
  display:none !important;
}

.hcv8{
  padding-bottom:calc(184px + env(safe-area-inset-bottom)) !important;
}

.hcv8 form{
  padding-bottom:28px !important;
}

/* Footer is now above the mini nav */
.hcv8-footer{
  bottom:calc(92px + env(safe-area-inset-bottom)) !important;
  height:72px !important;
}

/* New bottom nav inside the order builder */
.hcv8-mini-nav{
  position:fixed;
  left:50%;
  bottom:calc(10px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  width:min(760px,92%);
  height:74px;
  border-radius:28px;
  background:rgba(4,8,5,.94);
  backdrop-filter:blur(14px);
  border:1px solid rgba(53,94,59,.62);
  display:flex;
  align-items:center;
  justify-content:space-around;
  z-index:1000001;
  box-shadow:0 0 30px rgba(53,94,59,.22), inset 0 1px 0 rgba(255,255,255,.06);
}

.hcv8-mini-nav a{
  color:#8f9892;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  font-size:11px;
  min-width:52px;
  text-decoration:none;
}

.hcv8-mini-nav a span{
  font-size:23px;
  line-height:1;
}

.hcv8-mini-nav a.active{
  color:#4E7D55;
}

.hcv8-mini-nav a.active span{
  width:58px;
  height:58px;
  border-radius:50%;
  background:linear-gradient(135deg,#4E7D55,#355E3B);
  color:#fff;
  display:grid;
  place-items:center;
  transform:translateY(-10px);
  box-shadow:0 0 26px rgba(53,94,59,.65);
}

.hcv8-mini-nav a.active small{
  margin-top:-10px;
}

/* Prevent iPhone/Safari zoom on focus */
.hcv8 input,
.hcv8 select,
.hcv8 textarea,
.hcv8 button{
  font-size:16px !important;
}

.hcv8-fields input,
.hcv8-fields select,
.hcv8-fields textarea{
  font-size:16px !important;
  line-height:1.6 !important;
}

@media(max-width:800px){
  .hcv8{
    padding-bottom:calc(182px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8-footer{
    width:92% !important;
    height:70px !important;
    bottom:calc(88px + env(safe-area-inset-bottom)) !important;
    grid-template-columns:68px 1fr 98px !important;
  }

  .hcv8-mini-nav{
    height:72px !important;
    border-radius:26px !important;
    width:92% !important;
  }

  .hcv8-next,
  .hcv8-submit{
    font-size:16px !important;
  }
}


/* V11: cleaner compact total/next footer */
.hcv8-footer{
  height:64px !important;
  bottom:calc(92px + env(safe-area-inset-bottom)) !important;
  padding:7px 9px !important;
  border-radius:22px !important;
  grid-template-columns:58px 1fr 132px !important;
  gap:8px !important;
  background:rgba(4,8,5,.92) !important;
}

.hcv8-total{
  text-align:right !important;
  padding-right:12px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}

.hcv8-total b{
  display:block !important;
  color:#4E7D55 !important;
  font-size:14px !important;
  margin-top:2px !important;
  direction:rtl !important;
}

.hcv8-next,
.hcv8-submit{
  height:50px !important;
  min-width:0 !important;
  border-radius:18px !important;
  font-size:18px !important;
  padding:0 16px !important;
}

.hcv8-next{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
}

.hcv8-next:before{
  content:"›";
  font-size:27px;
  line-height:1;
  transform:translateY(-1px);
}

.hcv8-prev{
  height:50px !important;
  border-radius:18px !important;
  font-size:0 !important;
  padding:0 !important;
}

.hcv8-prev:before{
  content:"‹";
  font-size:27px;
  color:#fff;
}

.hcv8-mini-nav{
  height:70px !important;
  border-radius:25px !important;
}

.hcv8-mini-nav a.active span{
  width:56px !important;
  height:56px !important;
}

@media(max-width:800px){
  .hcv8{
    padding-bottom:calc(172px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8-footer{
    width:92% !important;
    height:62px !important;
    bottom:calc(84px + env(safe-area-inset-bottom)) !important;
    grid-template-columns:52px 1fr 122px !important;
    border-radius:21px !important;
  }

  .hcv8-total{
    font-size:12px !important;
    padding-right:8px !important;
  }

  .hcv8-total b{
    font-size:13px !important;
  }

  .hcv8-next,
  .hcv8-submit{
    height:48px !important;
    border-radius:17px !important;
    font-size:17px !important;
  }

  .hcv8-prev{
    height:48px !important;
  }

  .hcv8-mini-nav{
    height:68px !important;
  }
}


/* V12: final compact footer layout */
.hcv8-footer{
  height:58px !important;
  bottom:calc(88px + env(safe-area-inset-bottom)) !important;
  padding:6px !important;
  border-radius:19px !important;
  grid-template-columns:46px 1fr 86px !important;
  gap:6px !important;
  background:rgba(4,8,5,.94) !important;
  border:1px solid rgba(53,94,59,.58) !important;
}

.hcv8-total{
  text-align:right !important;
  padding:0 10px 0 4px !important;
  font-size:12px !important;
  line-height:1.25 !important;
  white-space:normal !important;
  overflow:visible !important;
  color:#fff !important;
}

.hcv8-total::before{
  content:"جمع";
  display:block;
  color:#fff;
  font-size:12px;
  margin-bottom:2px;
}

.hcv8-total{
  font-size:0 !important;
}

.hcv8-total b{
  display:block !important;
  color:#4E7D55 !important;
  font-size:13px !important;
  margin:0 !important;
  direction:rtl !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}

.hcv8-prev,
.hcv8-next,
.hcv8-submit{
  height:46px !important;
  border-radius:15px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  font-size:15px !important;
  font-weight:900 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.hcv8-prev{
  background:rgba(255,255,255,.045) !important;
  color:#fff !important;
}

.hcv8-prev:before{
  content:"‹" !important;
  font-size:25px !important;
  color:#fff !important;
  line-height:1 !important;
}

.hcv8-next,
.hcv8-submit{
  background:linear-gradient(135deg,#4E7D55,#355E3B) !important;
  color:#fff !important;
  min-width:0 !important;
}

.hcv8-next:before{
  content:"" !important;
  display:none !important;
}

.hcv8-submit{
  font-size:13px !important;
}

.hcv8-mini-nav{
  height:68px !important;
  bottom:calc(9px + env(safe-area-inset-bottom)) !important;
}

.hcv8-mini-nav a.active span{
  width:54px !important;
  height:54px !important;
}

@media(max-width:800px){
  .hcv8{
    padding-bottom:calc(162px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8-footer{
    width:92% !important;
    height:56px !important;
    bottom:calc(82px + env(safe-area-inset-bottom)) !important;
    grid-template-columns:44px 1fr 82px !important;
    border-radius:18px !important;
  }

  .hcv8-prev,
  .hcv8-next,
  .hcv8-submit{
    height:44px !important;
    border-radius:14px !important;
  }

  .hcv8-next{
    font-size:14px !important;
  }

  .hcv8-total::before{
    font-size:11px !important;
  }

  .hcv8-total b{
    font-size:12px !important;
  }

  .hcv8-mini-nav{
    height:66px !important;
  }
}


/* V13: footer exactly = قبلی | مبلغ | بعدی */
.hcv8-footer{
  height:64px !important;
  bottom:calc(86px + env(safe-area-inset-bottom)) !important;
  padding:7px !important;
  border-radius:22px !important;
  grid-template-columns:108px 1fr 108px !important;
  gap:8px !important;
  background:rgba(4,8,5,.94) !important;
  border:1px solid rgba(53,94,59,.68) !important;
  box-shadow:0 0 22px rgba(53,94,59,.20), inset 0 1px 0 rgba(255,255,255,.05) !important;
  direction:ltr !important;
}

.hcv8-prev,
.hcv8-next,
.hcv8-submit{
  height:50px !important;
  border-radius:16px !important;
  font-size:16px !important;
  font-weight:900 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  direction:rtl !important;
}

.hcv8-prev{
  grid-column:1 !important;
  background:rgba(255,255,255,.045) !important;
  color:#fff !important;
}

.hcv8-prev:before{
  content:"‹" !important;
  font-size:28px !important;
  color:#fff !important;
  line-height:1 !important;
  display:inline-block !important;
  transform:translateY(-1px);
}

.hcv8-next,
.hcv8-submit{
  grid-column:3 !important;
  background:linear-gradient(135deg,#5f9568,#355E3B) !important;
  color:#fff !important;
  min-width:0 !important;
}

.hcv8-next:after{
  content:"›" !important;
  font-size:28px !important;
  color:#fff !important;
  line-height:1 !important;
  display:inline-block !important;
  transform:translateY(-1px);
}

.hcv8-next:before{
  content:"" !important;
  display:none !important;
}

.hcv8-submit{
  font-size:15px !important;
}

.hcv8-total{
  grid-column:2 !important;
  height:50px !important;
  border:1px solid rgba(53,94,59,.55) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.026) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 8px !important;
  text-align:center !important;
  line-height:1.12 !important;
  font-size:0 !important;
  overflow:hidden !important;
  direction:rtl !important;
}

.hcv8-total::before{
  content:"" !important;
  display:none !important;
}

.hcv8-total b{
  display:block !important;
  color:#4E7D55 !important;
  font-size:17px !important;
  font-weight:950 !important;
  margin:0 !important;
  direction:rtl !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}

.hcv8-total b::after{
  content:"";
}

/* hide text labels injected by old CSS */
.hcv8-footer > *{
  min-width:0 !important;
}

@media(max-width:800px){
  .hcv8{
    padding-bottom:calc(168px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8-footer{
    width:92% !important;
    height:62px !important;
    bottom:calc(82px + env(safe-area-inset-bottom)) !important;
    grid-template-columns:92px 1fr 92px !important;
    gap:7px !important;
    border-radius:20px !important;
  }

  .hcv8-prev,
  .hcv8-next,
  .hcv8-submit{
    height:48px !important;
    border-radius:15px !important;
    font-size:15px !important;
  }

  .hcv8-total{
    height:48px !important;
    border-radius:15px !important;
  }

  .hcv8-total b{
    font-size:15px !important;
  }

  .hcv8-mini-nav{
    height:66px !important;
  }
}


/* V14: remove ghost/extra footer buttons */
.hcv8-footer{
  overflow:hidden !important;
}

/* Only one action button can be visible */
.hcv8-footer .hcv8-next[style*="display: none"],
.hcv8-footer .hcv8-submit[style*="display: none"],
.hcv8-footer .hcv8-prev[style*="display: none"]{
  display:none !important;
}

/* Prevent hidden submit/next from appearing under nav */
.hcv8-submit:not(.hcv8-active-action),
.hcv8-next:not(.hcv8-active-action){
  display:none !important;
}

/* JS will add active class to current action */
.hcv8-footer.is-last .hcv8-submit{
  display:flex !important;
  grid-column:3 !important;
}
.hcv8-footer.is-last .hcv8-next{
  display:none !important;
}
.hcv8-footer:not(.is-last) .hcv8-next{
  display:flex !important;
  grid-column:3 !important;
}
.hcv8-footer:not(.is-last) .hcv8-submit{
  display:none !important;
}

/* Keep previous button clean */
.hcv8-footer .hcv8-prev{
  grid-column:1 !important;
  display:flex !important;
}

/* Keep total only center */
.hcv8-footer .hcv8-total{
  grid-column:2 !important;
}

/* Make sure nothing from form appears below mini nav */
.hcv8 form > button,
.hcv8 form > input[type="submit"]{
  display:none !important;
}

/* More breathing room above Safari bar */
.hcv8-mini-nav{
  bottom:calc(14px + env(safe-area-inset-bottom)) !important;
}

.hcv8-footer{
  bottom:calc(92px + env(safe-area-inset-bottom)) !important;
}

@media(max-width:800px){
  .hcv8-footer{
    bottom:calc(88px + env(safe-area-inset-bottom)) !important;
  }
  .hcv8-mini-nav{
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
  }
}


/* V15: swap footer buttons => بعدی سمت چپ، قبلی سمت راست */
.hcv8-footer{
  grid-template-columns:92px 1fr 92px !important;
  direction:ltr !important;
}

/* left side: next/submit */
.hcv8-footer:not(.is-last) .hcv8-next,
.hcv8-footer.is-last .hcv8-submit{
  grid-column:1 !important;
  display:flex !important;
}

/* right side: previous */
.hcv8-footer .hcv8-prev{
  grid-column:3 !important;
  display:flex !important;
}

/* center: price */
.hcv8-footer .hcv8-total{
  grid-column:2 !important;
}

/* arrows direction after swap */
.hcv8-next:before,
.hcv8-next:after{
  content:"" !important;
  display:none !important;
}

.hcv8-next::before,
.hcv8-submit::before{
  content:"‹" !important;
  display:inline-block !important;
  font-size:26px !important;
  line-height:1 !important;
  color:#fff !important;
  margin-left:6px !important;
  transform:translateY(-1px);
}

.hcv8-prev:before{
  content:"›" !important;
  display:inline-block !important;
  font-size:26px !important;
  line-height:1 !important;
  color:#fff !important;
  margin-right:6px !important;
  transform:translateY(-1px);
}

@media(max-width:800px){
  .hcv8-footer{
    grid-template-columns:88px 1fr 88px !important;
  }
}


/* V16: hard reset footer - clean three columns */
.hcv8-footer{
  position:fixed !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  bottom:calc(86px + env(safe-area-inset-bottom)) !important;
  width:min(760px,92%) !important;
  height:62px !important;
  padding:6px !important;
  border-radius:22px !important;
  display:grid !important;
  grid-template-columns:96px minmax(0,1fr) 96px !important;
  gap:8px !important;
  align-items:center !important;
  direction:ltr !important;
  overflow:visible !important;
  background:rgba(4,8,5,.94) !important;
  border:1px solid rgba(53,94,59,.68) !important;
  box-shadow:0 0 22px rgba(53,94,59,.20), inset 0 1px 0 rgba(255,255,255,.05) !important;
}

/* Explicit placement: left = next/submit, center = price, right = previous */
.hcv8-footer .hcv8-next,
.hcv8-footer .hcv8-submit{
  grid-column:1 !important;
  grid-row:1 !important;
  width:100% !important;
}

.hcv8-footer .hcv8-total{
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
}

.hcv8-footer .hcv8-prev{
  grid-column:3 !important;
  grid-row:1 !important;
  width:100% !important;
}

/* Remove ghost absolute/old behaviors */
.hcv8-footer .hcv8-prev,
.hcv8-footer .hcv8-next,
.hcv8-footer .hcv8-submit{
  position:static !important;
  float:none !important;
  margin:0 !important;
  height:50px !important;
  min-width:0 !important;
  border-radius:16px !important;
  padding:0 10px !important;
  font-size:15px !important;
  font-weight:900 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  direction:rtl !important;
  white-space:nowrap !important;
  border:1px solid rgba(255,255,255,.09) !important;
}

/* State: only next OR submit */
.hcv8-footer:not(.is-last) .hcv8-next{
  display:flex !important;
}
.hcv8-footer:not(.is-last) .hcv8-submit{
  display:none !important;
}
.hcv8-footer.is-last .hcv8-submit{
  display:flex !important;
}
.hcv8-footer.is-last .hcv8-next{
  display:none !important;
}

/* Previous right side */
.hcv8-footer .hcv8-prev{
  background:rgba(255,255,255,.045) !important;
  color:#fff !important;
}

/* Action left side */
.hcv8-footer .hcv8-next,
.hcv8-footer .hcv8-submit{
  background:linear-gradient(135deg,#5f9568,#355E3B) !important;
  color:#fff !important;
}

/* Clean arrows */
.hcv8-prev:before,
.hcv8-next:before,
.hcv8-next:after,
.hcv8-submit:before,
.hcv8-submit:after{
  display:none !important;
  content:"" !important;
}

.hcv8-next::after,
.hcv8-submit::after{
  content:"‹" !important;
  display:inline-block !important;
  font-size:24px !important;
  line-height:1 !important;
  margin-right:4px !important;
  transform:translateY(-1px);
}

.hcv8-prev::before{
  content:"›" !important;
  display:inline-block !important;
  font-size:24px !important;
  line-height:1 !important;
  margin-left:4px !important;
  transform:translateY(-1px);
}

/* Center price only */
.hcv8-footer .hcv8-total{
  height:50px !important;
  border:1px solid rgba(53,94,59,.55) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.026) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 8px !important;
  text-align:center !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:hidden !important;
  direction:rtl !important;
  color:transparent !important;
}

.hcv8-total::before{
  content:"" !important;
  display:none !important;
}

.hcv8-total b{
  display:block !important;
  color:#4E7D55 !important;
  font-size:15px !important;
  font-weight:950 !important;
  margin:0 !important;
  direction:rtl !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}

/* hide any accidental footer clone below */
.hcv8-footer + .hcv8-footer,
.hcv8-mini-nav + .hcv8-footer{
  display:none !important;
}

@media(max-width:800px){
  .hcv8{
    padding-bottom:calc(166px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8-footer{
    width:92% !important;
    height:60px !important;
    bottom:calc(82px + env(safe-area-inset-bottom)) !important;
    grid-template-columns:86px minmax(0,1fr) 86px !important;
    gap:7px !important;
    border-radius:20px !important;
    padding:6px !important;
  }

  .hcv8-footer .hcv8-prev,
  .hcv8-footer .hcv8-next,
  .hcv8-footer .hcv8-submit,
  .hcv8-footer .hcv8-total{
    height:48px !important;
    border-radius:15px !important;
  }

  .hcv8-footer .hcv8-prev,
  .hcv8-footer .hcv8-next,
  .hcv8-footer .hcv8-submit{
    font-size:14px !important;
  }

  .hcv8-total b{
    font-size:13px !important;
  }
}


/* V17: next/submit arrow points left */
.hcv8-next::before,
.hcv8-next::after,
.hcv8-submit::before,
.hcv8-submit::after{
  display:none !important;
  content:"" !important;
}

.hcv8-next::after,
.hcv8-submit::after{
  content:"←" !important;
  display:inline-block !important;
  font-size:19px !important;
  line-height:1 !important;
  color:#fff !important;
  margin-right:6px !important;
  transform:translateY(-1px);
}

/* keep previous arrow toward right */
.hcv8-prev::before,
.hcv8-prev::after{
  display:none !important;
  content:"" !important;
}

.hcv8-prev::before{
  content:"→" !important;
  display:inline-block !important;
  font-size:19px !important;
  line-height:1 !important;
  color:#fff !important;
  margin-left:6px !important;
  transform:translateY(-1px);
}


/* V18: delivery simplified, no area field */
.hcv8-times-two{
  grid-template-columns:repeat(2,1fr) !important;
}

.hcv8-times-two label{
  min-height:72px !important;
  padding:10px !important;
  text-align:center !important;
}

.hcv8-times-two label span{
  display:block !important;
  font-weight:950 !important;
  font-size:15px !important;
  color:#fff !important;
}

.hcv8-times-two label small{
  display:block !important;
  color:#b8c1bd !important;
  font-size:11px !important;
  line-height:1.6 !important;
  margin-top:5px !important;
}

.hcv8-times-two label:has(input:checked) small{
  color:#dfe8e1 !important;
}

.hcv8-custom-time{
  display:none !important;
}

@media(max-width:800px){
  .hcv8-times-two{
    grid-template-columns:1fr !important;
  }
}


/* V19: final fullscreen order summary */
.hcv8-summary-step{
  padding-bottom:20px !important;
}

.hcv8-summary-sub{
  margin:-8px 0 16px !important;
  text-align:center !important;
  color:#b8c1bd !important;
  font-size:14px !important;
  line-height:1.8 !important;
}

.hcv8-summary-box{
  border:1px solid rgba(53,94,59,.58);
  border-radius:22px;
  background:rgba(255,255,255,.032);
  padding:12px;
  margin-bottom:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}

.hcv8-summary-row{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:12px;
  align-items:center;
  padding:12px 4px;
  border-bottom:1px solid rgba(255,255,255,.07);
}

.hcv8-summary-row:last-child{
  border-bottom:0;
}

.hcv8-summary-icon{
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#6fa676;
  background:rgba(53,94,59,.16);
  border:1px solid rgba(53,94,59,.35);
  font-size:22px;
}

.hcv8-summary-row b{
  display:block;
  color:#fff;
  font-size:16px;
  margin-bottom:6px;
}

.hcv8-summary-row small{
  display:block;
  color:#b8c1bd;
  font-size:13px;
  line-height:1.8;
}

.hcv8-summary-price{
  border:1px solid rgba(53,94,59,.70);
  border-radius:20px;
  background:linear-gradient(90deg,rgba(53,94,59,.16),rgba(255,255,255,.025));
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
}

.hcv8-summary-price span{
  color:#fff;
  font-size:16px;
  font-weight:900;
}

.hcv8-summary-price b{
  color:#6fa676;
  font-size:22px;
  font-weight:950;
  white-space:nowrap;
}

.hcv8-secure-note{
  text-align:center;
  color:#6fa676;
  font-size:12px;
  margin-top:14px;
}

@media(max-width:800px){
  .hcv8-summary-box{
    border-radius:18px;
    padding:10px;
  }

  .hcv8-summary-row{
    grid-template-columns:42px 1fr;
    gap:10px;
    padding:10px 2px;
  }

  .hcv8-summary-icon{
    width:38px;
    height:38px;
    border-radius:12px;
    font-size:19px;
  }

  .hcv8-summary-row b{
    font-size:14px;
  }

  .hcv8-summary-row small{
    font-size:12px;
  }

  .hcv8-summary-price{
    padding:13px;
    border-radius:18px;
  }

  .hcv8-summary-price b{
    font-size:17px;
  }
}


/* V20: addon quantities */
.hcv8-addon-card{
  cursor:default !important;
}

.hcv8-addon-counter{
  margin-top:12px;
  height:42px;
  border:1px solid rgba(53,94,59,.55);
  border-radius:14px;
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
  overflow:hidden;
  background:rgba(0,0,0,.18);
}

.hcv8-addon-counter button{
  height:100%;
  border:0;
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:24px !important;
  line-height:1;
}

.hcv8-addon-counter input{
  width:100%;
  height:100%;
  text-align:center;
  border:0;
  background:transparent;
  color:#4E7D55;
  font-size:18px !important;
  font-weight:950;
  appearance:textfield;
}

.hcv8-addon-card.is-selected{
  border-color:#4E7D55 !important;
  box-shadow:0 0 22px rgba(53,94,59,.35) !important;
}

.hcv8-validation-msg{
  position:fixed;
  left:50%;
  top:calc(18px + env(safe-area-inset-top));
  transform:translateX(-50%);
  width:min(520px,88%);
  min-height:48px;
  border-radius:16px;
  background:rgba(92,18,18,.96);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  z-index:1000005;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:10px 14px;
  font-size:14px;
  box-shadow:0 12px 32px rgba(0,0,0,.35);
}


/* V22: visible addon number badge and cleaner selected state */
.hcv8-addon-card{
  position:relative !important;
}

.hcv8-addon-badge{
  position:absolute;
  top:10px;
  left:10px;
  min-width:28px;
  height:28px;
  border-radius:999px;
  background:linear-gradient(135deg,#6fa676,#355E3B);
  color:#fff;
  display:none;
  align-items:center;
  justify-content:center;
  font-weight:950;
  font-size:14px;
  box-shadow:0 0 18px rgba(53,94,59,.55);
}

.hcv8-addon-card.is-selected .hcv8-addon-badge{
  display:flex;
}

.hcv8-addon-card.is-selected strong::after{
  content:" اضافه شد";
  color:#6fa676;
  font-size:11px;
  margin-right:6px;
  font-weight:700;
}

.hcv8-flavor.is-picked{
  border-color:#6fa676 !important;
  box-shadow:0 0 22px rgba(53,94,59,.55) !important;
}


/* V23: stable addon counter visuals */
.hcv8-addon-counter button{
  touch-action:manipulation !important;
  user-select:none !important;
}

.hcv8-addon-card.is-selected{
  border-color:#6fa676 !important;
  box-shadow:0 0 24px rgba(53,94,59,.42) !important;
  background:rgba(53,94,59,.08) !important;
}

.hcv8-addon-badge{
  z-index:3 !important;
}


/* V25: admin order statuses */
.hcv8-status-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:16px 0;
}
.hcv8-status-tabs a{
  text-decoration:none;
  padding:8px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dcdcde;
  color:#1d2327;
  font-weight:700;
}
.hcv8-status-tabs a.active{
  background:#355E3B;
  border-color:#355E3B;
  color:#fff;
}
.hcv8-orders-table pre{
  white-space:pre-wrap;
  max-height:210px;
  overflow:auto;
  margin:0;
  font-size:12px;
  line-height:1.7;
}
.hcv8-order-status{
  min-width:160px;
  border-radius:10px !important;
  font-weight:800;
}
.hcv8-status-new{border-color:#2271b1!important;color:#2271b1!important}
.hcv8-status-preparing{border-color:#dba617!important;color:#8a6500!important}
.hcv8-status-sent{border-color:#7c3aed!important;color:#5b21b6!important}
.hcv8-status-delivered{border-color:#00a32a!important;color:#008a20!important}
.hcv8-status-cancelled{border-color:#cc1818!important;color:#b32d2e!important}
.hcv8-status-save{
  display:block;
  margin-top:6px;
  font-size:12px;
  color:#00a32a;
  min-height:16px;
}


/* V26: no scroll fullscreen + thank you screen */
body:has(.hcv8){
  overflow:hidden !important;
  height:100dvh !important;
}

.hcv8{
  overflow:hidden !important;
  height:100dvh !important;
  min-height:100dvh !important;
}

.hcv8 form{
  height:calc(100dvh - 190px) !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.hcv8-step{
  max-height:calc(100dvh - 255px) !important;
  overflow:hidden !important;
}

.hcv8-step.active{
  display:flex !important;
  flex-direction:column !important;
}

.hcv8-grid,
.hcv8-flavor-bank,
.hcv8-fields,
.hcv8-summary-step{
  overflow:hidden !important;
}

.hcv8-thanks{
  position:fixed;
  inset:0;
  z-index:1000004;
  background:
    radial-gradient(circle at top, rgba(53,94,59,.28), transparent 38%),
    linear-gradient(180deg,#071010,#020404 70%);
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  text-align:center;
  color:#fff;
}

.hcv8-thanks.show{
  display:flex;
}

.hcv8-thanks-card{
  width:min(520px,92vw);
  border:1px solid rgba(53,94,59,.72);
  border-radius:28px;
  background:rgba(255,255,255,.035);
  padding:28px 20px;
  box-shadow:0 0 36px rgba(53,94,59,.25), inset 0 1px 0 rgba(255,255,255,.06);
}

.hcv8-thanks-icon{
  width:76px;
  height:76px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 auto 18px;
  background:linear-gradient(135deg,#6fa676,#355E3B);
  color:#fff;
  font-size:38px;
  box-shadow:0 0 28px rgba(53,94,59,.60);
}

.hcv8-thanks-card h2{
  margin:0 0 10px;
  font-size:28px;
  color:#fff;
}

.hcv8-thanks-card p{
  margin:0 auto 20px;
  color:#b8c1bd;
  line-height:1.9;
  font-size:15px;
}

.hcv8-wa-btn{
  min-height:56px;
  border-radius:18px;
  background:linear-gradient(135deg,#5f9568,#355E3B);
  color:#fff !important;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  text-decoration:none;
  margin-top:12px;
  box-shadow:0 0 22px rgba(53,94,59,.32);
}

.hcv8-new-order{
  min-height:48px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  text-decoration:none;
  margin-top:10px;
  cursor:pointer;
}

@media(max-width:800px){
  .hcv8{
    padding-top:14px !important;
    padding-bottom:calc(164px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8 form{
    height:calc(100dvh - 176px) !important;
  }

  .hcv8-step{
    max-height:calc(100dvh - 240px) !important;
  }

  .hcv8-step h2{
    margin-bottom:12px !important;
  }

  .hcv8-card{
    min-height:92px !important;
  }

  .hcv8-summary-row{
    padding:8px 2px !important;
  }

  .hcv8-summary-box{
    margin-bottom:8px !important;
  }

  .hcv8-thanks-card h2{
    font-size:24px;
  }
}


/* V27: fullscreen shell fixed, long steps scroll internally */
body:has(.hcv8){
  overflow:hidden !important;
  height:100dvh !important;
}

/* Main builder stays full-screen */
.hcv8{
  overflow:hidden !important;
  height:100dvh !important;
  min-height:100dvh !important;
}

/* Form shell should not scroll */
.hcv8 form{
  overflow:hidden !important;
  height:calc(100dvh - 186px) !important;
  min-height:0 !important;
}

/* Default short steps stay clean */
.hcv8-step{
  overflow:hidden !important;
  max-height:calc(100dvh - 250px) !important;
}

/* These longer steps must scroll */
.hcv8-step[data-step="3"],
.hcv8-step[data-step="4"],
.hcv8-step[data-step="5"],
.hcv8-step[data-step="6"]{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:18px !important;
  scrollbar-width:none;
}

.hcv8-step[data-step="3"]::-webkit-scrollbar,
.hcv8-step[data-step="4"]::-webkit-scrollbar,
.hcv8-step[data-step="5"]::-webkit-scrollbar,
.hcv8-step[data-step="6"]::-webkit-scrollbar{
  display:none;
}

/* Content containers inside long steps can scroll naturally */
.hcv8-step[data-step="3"] .hcv8-flavor-bank,
.hcv8-step[data-step="4"] .hcv8-grid,
.hcv8-step[data-step="5"] .hcv8-fields,
.hcv8-step[data-step="6"] .hcv8-summary-box{
  overflow:visible !important;
}

/* Keep footer and mini nav fixed above the scroll area */
.hcv8-footer{
  z-index:1000000 !important;
}

.hcv8-mini-nav{
  z-index:1000001 !important;
}

@media(max-width:800px){
  .hcv8{
    padding-top:14px !important;
    padding-bottom:calc(164px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8 form{
    height:calc(100dvh - 176px) !important;
  }

  .hcv8-step{
    max-height:calc(100dvh - 238px) !important;
  }

  .hcv8-step[data-step="3"],
  .hcv8-step[data-step="4"],
  .hcv8-step[data-step="5"],
  .hcv8-step[data-step="6"]{
    max-height:calc(100dvh - 238px) !important;
    padding-bottom:26px !important;
  }
}


/* V28: every order step fits full-screen without scrolling */
body:has(.hcv8){
  overflow:hidden !important;
  height:100dvh !important;
}

.hcv8{
  height:100dvh !important;
  min-height:100dvh !important;
  overflow:hidden !important;
  padding-top:12px !important;
  padding-bottom:calc(154px + env(safe-area-inset-bottom)) !important;
}

.hcv8 form{
  height:calc(100dvh - 166px) !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.hcv8-step,
.hcv8-step[data-step="3"],
.hcv8-step[data-step="4"],
.hcv8-step[data-step="5"],
.hcv8-step[data-step="6"]{
  max-height:calc(100dvh - 224px) !important;
  overflow:hidden !important;
  padding-bottom:4px !important;
}

.hcv8-step.active{
  display:flex !important;
  flex-direction:column !important;
}

.hcv8-step h2{
  font-size:22px !important;
  margin:0 0 10px !important;
  line-height:1.25 !important;
}

.hcv8-top{
  margin-bottom:8px !important;
}

.hcv8-top b{
  font-size:21px !important;
}

.hcv8-progress{
  height:4px !important;
  margin-bottom:12px !important;
}

/* Compact package cards */
.hcv8-grid{
  gap:8px !important;
  overflow:hidden !important;
}

.hcv8-card{
  min-height:86px !important;
  border-radius:18px !important;
  padding:12px !important;
}

.hcv8-card strong{
  font-size:16px !important;
}

.hcv8-card small{
  margin-top:5px !important;
  font-size:11px !important;
  line-height:1.45 !important;
}

.hcv8-card b{
  margin-top:5px !important;
  font-size:12px !important;
}

/* Flavor page: make it fit without scroll */
.hcv8-flavor-slots{
  gap:6px !important;
  margin-bottom:8px !important;
}

.hcv8-slot{
  min-height:44px !important;
  border-radius:14px !important;
  padding:8px 10px !important;
}

.hcv8-slot b{
  font-size:13px !important;
}

.hcv8-slot span{
  font-size:12px !important;
}

.hcv8-flavor-bank{
  display:grid !important;
  grid-template-columns:repeat(2,1fr) !important;
  gap:8px !important;
  overflow:hidden !important;
}

.hcv8-flavor{
  min-height:74px !important;
  border-radius:15px !important;
  font-size:13px !important;
}

/* Addon page: compact quantity cards */
.hcv8-addon-card{
  min-height:104px !important;
}

.hcv8-addon-counter{
  height:36px !important;
  grid-template-columns:38px 1fr 38px !important;
  margin-top:8px !important;
  border-radius:12px !important;
}

.hcv8-addon-counter button{
  font-size:20px !important;
}

.hcv8-addon-counter input{
  font-size:16px !important;
}

/* Address page: fit all fields inside one fullscreen step */
.hcv8-fields{
  gap:8px !important;
  overflow:hidden !important;
}

.hcv8-fields input,
.hcv8-fields select{
  min-height:44px !important;
  border-radius:14px !important;
  font-size:16px !important;
}

.hcv8-fields textarea{
  min-height:66px !important;
  max-height:66px !important;
  border-radius:14px !important;
  font-size:16px !important;
  resize:none !important;
}

.hcv8-times-two{
  grid-template-columns:repeat(2,1fr) !important;
  gap:8px !important;
}

.hcv8-times-two label{
  min-height:58px !important;
  padding:8px !important;
  border-radius:14px !important;
}

.hcv8-times-two label span{
  font-size:13px !important;
}

.hcv8-times-two label small{
  font-size:10px !important;
  line-height:1.35 !important;
  margin-top:3px !important;
}

/* Summary page: compact and complete */
.hcv8-summary-sub{
  display:none !important;
}

.hcv8-summary-box{
  padding:8px !important;
  margin-bottom:8px !important;
  border-radius:16px !important;
  overflow:hidden !important;
}

.hcv8-summary-row{
  grid-template-columns:34px 1fr !important;
  gap:8px !important;
  padding:7px 2px !important;
}

.hcv8-summary-icon{
  width:32px !important;
  height:32px !important;
  border-radius:10px !important;
  font-size:16px !important;
}

.hcv8-summary-row b{
  font-size:12px !important;
  margin-bottom:2px !important;
}

.hcv8-summary-row small{
  font-size:10.5px !important;
  line-height:1.45 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

.hcv8-summary-price{
  padding:10px !important;
  margin-top:8px !important;
  border-radius:15px !important;
}

.hcv8-summary-price span{
  font-size:13px !important;
}

.hcv8-summary-price b{
  font-size:15px !important;
}

.hcv8-secure-note{
  display:none !important;
}

/* Footer/nav slightly tighter */
.hcv8-footer{
  bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  height:58px !important;
}

.hcv8-mini-nav{
  height:62px !important;
  bottom:calc(10px + env(safe-area-inset-bottom)) !important;
}

.hcv8-mini-nav a.active span{
  width:50px !important;
  height:50px !important;
}

@media(max-width:800px){
  .hcv8{
    padding-top:10px !important;
    padding-bottom:calc(146px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8 form{
    height:calc(100dvh - 156px) !important;
  }

  .hcv8-step,
  .hcv8-step[data-step="3"],
  .hcv8-step[data-step="4"],
  .hcv8-step[data-step="5"],
  .hcv8-step[data-step="6"]{
    max-height:calc(100dvh - 212px) !important;
    overflow:hidden !important;
  }

  .hcv8-grid{
    grid-template-columns:1fr !important;
  }

  .hcv8-step[data-step="3"] .hcv8-flavor-bank{
    grid-template-columns:repeat(2,1fr) !important;
  }

  .hcv8-step[data-step="4"] .hcv8-grid{
    grid-template-columns:1fr !important;
  }

  .hcv8-footer{
    bottom:calc(76px + env(safe-area-inset-bottom)) !important;
  }
}

/* Very short phones */
@media(max-height:720px){
  .hcv8-step h2{
    font-size:19px !important;
    margin-bottom:7px !important;
  }

  .hcv8-top b{
    font-size:18px !important;
  }

  .hcv8-card{
    min-height:76px !important;
    padding:10px !important;
  }

  .hcv8-flavor{
    min-height:62px !important;
  }

  .hcv8-fields input,
  .hcv8-fields select{
    min-height:40px !important;
  }

  .hcv8-fields textarea{
    min-height:54px !important;
    max-height:54px !important;
  }

  .hcv8-times-two label{
    min-height:50px !important;
  }

  .hcv8-summary-row{
    padding:5px 2px !important;
  }
}


/* V29: smart fullscreen scrolling
   - Step 3 flavors: internal scroll
   - Step 4 addons: internal scroll
   - Step 5 address: no scroll, full-screen fit
   - Step 6 summary: no scroll, full-screen fit
*/

body:has(.hcv8){
  overflow:hidden !important;
  height:100dvh !important;
}

.hcv8{
  height:100dvh !important;
  min-height:100dvh !important;
  overflow:hidden !important;
  padding-top:12px !important;
  padding-bottom:calc(154px + env(safe-area-inset-bottom)) !important;
}

.hcv8 form{
  height:calc(100dvh - 166px) !important;
  min-height:0 !important;
  overflow:hidden !important;
}

/* Base step shell */
.hcv8-step{
  max-height:calc(100dvh - 224px) !important;
  overflow:hidden !important;
  padding-bottom:4px !important;
}

.hcv8-step.active{
  display:flex !important;
  flex-direction:column !important;
}

/* Smart scroll only for large content steps */
.hcv8-step[data-step="3"],
.hcv8-step[data-step="4"]{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
  padding-bottom:20px !important;
}

.hcv8-step[data-step="3"]::-webkit-scrollbar,
.hcv8-step[data-step="4"]::-webkit-scrollbar{
  display:none !important;
}

/* Address and summary stay fixed/no-scroll */
.hcv8-step[data-step="5"],
.hcv8-step[data-step="6"]{
  overflow:hidden !important;
  padding-bottom:4px !important;
}

/* Restore more comfortable cards for scrollable pages */
.hcv8-step[data-step="3"] .hcv8-flavor-bank{
  display:grid !important;
  grid-template-columns:repeat(2,1fr) !important;
  gap:10px !important;
  overflow:visible !important;
  padding-bottom:12px !important;
}

.hcv8-step[data-step="3"] .hcv8-flavor{
  min-height:96px !important;
  border-radius:17px !important;
  font-size:14px !important;
}

.hcv8-step[data-step="3"] .hcv8-flavor-slots{
  position:sticky;
  top:0;
  z-index:4;
  background:linear-gradient(180deg,#071010 0%,rgba(7,16,16,.92) 78%,rgba(7,16,16,0) 100%);
  padding-bottom:8px !important;
}

/* Addons scrollable and readable */
.hcv8-step[data-step="4"] .hcv8-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  overflow:visible !important;
  padding-bottom:12px !important;
}

.hcv8-step[data-step="4"] .hcv8-addon-card{
  min-height:112px !important;
  border-radius:18px !important;
  padding:13px !important;
}

.hcv8-step[data-step="4"] .hcv8-addon-counter{
  height:40px !important;
  grid-template-columns:42px 1fr 42px !important;
  margin-top:10px !important;
}

/* Address compact no-scroll */
.hcv8-step[data-step="5"] .hcv8-fields{
  gap:8px !important;
  overflow:hidden !important;
}

.hcv8-step[data-step="5"] .hcv8-fields input,
.hcv8-step[data-step="5"] .hcv8-fields select{
  min-height:44px !important;
}

.hcv8-step[data-step="5"] .hcv8-fields textarea{
  min-height:66px !important;
  max-height:66px !important;
  resize:none !important;
}

.hcv8-step[data-step="5"] .hcv8-times-two{
  grid-template-columns:repeat(2,1fr) !important;
}

/* Summary no-scroll, compact */
.hcv8-step[data-step="6"] .hcv8-summary-box{
  overflow:hidden !important;
}

.hcv8-step[data-step="6"] .hcv8-summary-row small{
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

/* Keep footer/nav fixed */
.hcv8-footer{
  bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  height:58px !important;
  z-index:1000000 !important;
}

.hcv8-mini-nav{
  height:62px !important;
  bottom:calc(10px + env(safe-area-inset-bottom)) !important;
  z-index:1000001 !important;
}

@media(max-width:800px){
  .hcv8{
    padding-top:10px !important;
    padding-bottom:calc(146px + env(safe-area-inset-bottom)) !important;
  }

  .hcv8 form{
    height:calc(100dvh - 156px) !important;
  }

  .hcv8-step{
    max-height:calc(100dvh - 212px) !important;
  }

  .hcv8-step[data-step="3"],
  .hcv8-step[data-step="4"]{
    max-height:calc(100dvh - 212px) !important;
    overflow-y:auto !important;
    padding-bottom:26px !important;
  }

  .hcv8-step[data-step="5"],
  .hcv8-step[data-step="6"]{
    max-height:calc(100dvh - 212px) !important;
    overflow:hidden !important;
  }

  .hcv8-step[data-step="3"] .hcv8-flavor-bank{
    grid-template-columns:repeat(2,1fr) !important;
  }

  .hcv8-step[data-step="3"] .hcv8-flavor{
    min-height:86px !important;
  }

  .hcv8-step[data-step="4"] .hcv8-grid{
    grid-template-columns:1fr !important;
  }
}

@media(max-height:720px){
  .hcv8-step[data-step="3"] .hcv8-flavor{
    min-height:74px !important;
  }

  .hcv8-step[data-step="4"] .hcv8-addon-card{
    min-height:98px !important;
  }

  .hcv8-step[data-step="5"] .hcv8-fields input,
  .hcv8-step[data-step="5"] .hcv8-fields select{
    min-height:40px !important;
  }

  .hcv8-step[data-step="5"] .hcv8-fields textarea{
    min-height:54px !important;
    max-height:54px !important;
  }
}


/* V30: final WhatsApp CTA polish + quick edit buttons */
.hcv8-summary-row > div{
  position:relative;
  padding-left:58px;
}

.hcv8-edit-step{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  min-width:48px;
  height:28px;
  border:1px solid rgba(53,94,59,.55);
  border-radius:999px;
  background:rgba(53,94,59,.14);
  color:#6fa676;
  font-size:11px !important;
  font-weight:900;
  padding:0 9px;
  cursor:pointer;
}

.hcv8-edit-step:active{
  transform:translateY(-50%) scale(.96);
}

.hcv8-footer.is-last .hcv8-submit{
  background:linear-gradient(135deg,#6fa676,#355E3B) !important;
  box-shadow:0 0 18px rgba(53,94,59,.42) !important;
}

.hcv8-footer.is-last .hcv8-submit::before{
  content:"☘" !important;
  display:inline-block !important;
  font-size:15px !important;
  margin-left:5px !important;
}

.hcv8-summary-price{
  box-shadow:0 0 24px rgba(53,94,59,.20);
}

.hcv8-wa-btn{
  font-size:17px !important;
  gap:8px;
}

.hcv8-wa-btn:before{
  content:"↗";
  font-size:20px;
  line-height:1;
}

@media(max-width:800px){
  .hcv8-summary-row > div{
    padding-left:50px;
  }
  .hcv8-edit-step{
    min-width:42px;
    height:25px;
    font-size:10px !important;
    padding:0 7px;
  }
}


/* V31: discount code and order code */
.hcv8-discount-msg{
  min-height:18px;
  font-size:12px;
  color:#6fa676;
  margin-top:-4px;
}
.hcv8-discount-msg.bad{color:#ff8b8b}
.hcv8-summary-discount{
  border:1px solid rgba(53,94,59,.45);
  border-radius:16px;
  background:rgba(255,255,255,.025);
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:8px;
}
.hcv8-summary-discount span{font-size:13px;color:#fff;font-weight:900}
.hcv8-summary-discount b{color:#6fa676;font-size:13px;white-space:nowrap}
.hcv8-thanks-code{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border:1px solid rgba(53,94,59,.55);
  border-radius:999px;
  color:#6fa676;
  background:rgba(53,94,59,.12);
  font-weight:950;
  margin:8px 0 12px;
  direction:ltr;
}
