/* ReyDelivery V84 native polish: loader, account drawer, checkout CTA. */
:root{
  --rd-v84-orange:#ff4b0a;
  --rd-v84-orange2:#ff7a00;
  --rd-v84-ink:#111827;
  --rd-v84-muted:#667085;
  --rd-v84-line:#e7edf5;
  --rd-v84-shadow:0 22px 70px rgba(15,23,42,.16);
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode){
  background:#fff!important;
}

body.rd-v84-native.rd-boot-loading::after{
  content:"";
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  z-index:10050;
  background:linear-gradient(90deg,transparent 0,var(--rd-v84-orange) 20%,#ffb000 50%,var(--rd-v84-orange) 80%,transparent 100%);
  background-size:210% 100%;
  animation:rd-v84-loadbar 5.2s ease-in-out infinite;
  box-shadow:0 -5px 18px rgba(255,90,0,.36);
}

body.rd-v84-native .rd-native-loader{
  position:fixed!important;
  inset:0!important;
  z-index:10000!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:linear-gradient(180deg,#fff8ef 0%,#ffffff 45%,#fff3e8 100%)!important;
}

body.rd-v84-native .rd-native-loader .rd-v79-loader-video{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:0!important;
  opacity:1!important;
  filter:saturate(1.05) contrast(1.02) brightness(1.03)!important;
}

body.rd-v84-native .rd-native-loader::before,
body.rd-v84-native .rd-native-loader::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}

body.rd-v84-native .rd-native-loader::before{
  background:
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.10),rgba(255,255,255,.32) 42%,rgba(255,249,242,.62) 100%),
    linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,245,236,.20) 58%,rgba(255,116,20,.16));
}

body.rd-v84-native .rd-native-loader::after{
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0) 34%,rgba(255,255,255,.36) 100%);
}

body.rd-v84-native .rd-native-loader:not(.rd-loader-error) .rd-loader-stage{
  opacity:1!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:2!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:clamp(58px,10vh,112px)!important;
  width:100%!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  gap:10px!important;
  padding:0 28px!important;
  border-radius:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  text-align:center!important;
}

body.rd-v84-native .rd-loader-brand-sequence{
  display:none!important;
}

body.rd-v84-native .rd-native-loader .rd-loader-wordmark,
body.rd-v84-native .rd-native-loader .rd-loader-icon{
  display:block!important;
  object-fit:contain!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.rd-v84-native .rd-native-loader .rd-loader-icon{
  width:96px!important;
  height:96px!important;
  border-radius:28px!important;
  filter:drop-shadow(0 18px 40px rgba(255,90,0,.28))!important;
  animation:rd-v84-icon-intro 5.2s ease-in-out infinite!important;
}

body.rd-v84-native .rd-native-loader .rd-loader-wordmark,
body.rd-v84-native .rd-native-loader:not(.rd-loader-error) .rd-loader-logo{
  position:absolute!important;
  inset:auto!important;
  width:min(340px,82vw)!important;
  max-height:128px!important;
  filter:drop-shadow(0 20px 45px rgba(255,90,0,.22))!important;
  animation:rd-v84-wordmark-open 5.2s cubic-bezier(.2,.8,.2,1) infinite!important;
}

body.rd-v84-native .rd-loader-error .rd-loader-logo{
  width:min(280px,72vw)!important;
  max-height:130px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 18px 40px rgba(255,90,0,.2))!important;
}

body.rd-v84-native .rd-native-loader b{
  color:var(--rd-v84-ink)!important;
  font-size:28px!important;
  line-height:1.05!important;
  letter-spacing:0!important;
  text-shadow:0 1px 0 rgba(255,255,255,.74),0 12px 28px rgba(255,255,255,.55)!important;
}

body.rd-v84-native .rd-native-loader span,
body.rd-v84-native .rd-native-loader small{
  position:static!important;
  display:block!important;
  max-width:310px!important;
  margin:0 auto!important;
  color:#667085!important;
  text-shadow:0 1px 0 rgba(255,255,255,.86),0 14px 30px rgba(255,255,255,.56)!important;
  font-weight:900!important;
  line-height:1.28!important;
  opacity:1!important;
}

body.rd-v84-native .rd-native-loader small{
  color:var(--rd-v84-orange)!important;
}

body.rd-v84-native .rd-native-loader .rd-loader-stage::after{
  content:"";
  width:min(290px,72vw);
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--rd-v84-orange),#ffb000,var(--rd-v84-orange),transparent);
  background-size:220% 100%;
  animation:rd-v84-loadbar 5.2s ease-in-out infinite;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-fixed-logo,
body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-logo{
  content:url("../img/rd-ui-v79/logo_wordmark_v80.png")!important;
  object-fit:contain!important;
}

body.rd-v84-native .rd-bottom-menu{
  z-index:760!important;
  bottom:calc(4px + env(safe-area-inset-bottom))!important;
  width:min(520px,calc(100% - 22px))!important;
  height:68px!important;
  grid-template-columns:1fr 1fr 88px 1fr 1fr!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.92)!important;
  transition:transform .24s ease,opacity .2s ease!important;
}

body.rd-v84-native.rd-v84-nav-hidden .rd-bottom-menu{
  transform:translateX(-50%) translateY(calc(92px + env(safe-area-inset-bottom)))!important;
  opacity:.12!important;
  pointer-events:none!important;
}

body.rd-v84-native .rd-bottom-menu button span{
  font-size:10px!important;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-native-main{
  padding-bottom:calc(164px + env(safe-area-inset-bottom))!important;
}

body.rd-v84-native .rd-carta-section,
body.rd-v84-native .rd-product-grid,
body.rd-v84-native .rd-product-grid-v59{
  padding-bottom:calc(122px + env(safe-area-inset-bottom))!important;
}

body.rd-v84-native .rd-product,
body.rd-v84-native .rd-product-v59,
body.rd-v84-native .rd-shop-card{
  scroll-margin-bottom:calc(150px + env(safe-area-inset-bottom))!important;
}

body.rd-v84-native .rd-cart-mochi{
  isolation:isolate!important;
  background:conic-gradient(from 210deg,rgba(255,90,0,.22),rgba(255,255,255,.92) 0)!important;
  border-color:#fff!important;
  box-shadow:0 18px 46px rgba(255,90,0,.18)!important;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease!important;
  width:78px!important;
  height:78px!important;
  margin-top:-25px!important;
}

body.rd-v84-native .rd-cart-mochi img.rd-cart-app-icon{
  filter:grayscale(.8) saturate(.9) opacity(.72)!important;
  transition:filter .2s ease,transform .2s ease!important;
}

body.rd-v84-native .rd-cart-mochi.ready{
  background:conic-gradient(from 215deg,var(--rd-v84-orange) max(4%,var(--rd-cart-fill,0%)),rgba(255,244,236,.92) 0)!important;
}

body.rd-v84-native .rd-cart-mochi.ready img.rd-cart-app-icon,
body.rd-v84-native .rd-cart-mochi.loaded img.rd-cart-app-icon{
  filter:saturate(1.25) contrast(1.08) drop-shadow(0 7px 16px rgba(255,90,0,.24))!important;
  transform:scale(1.03)!important;
}

body.rd-v84-native .rd-cart-mochi.loaded{
  box-shadow:0 24px 62px rgba(255,90,0,.34)!important;
}

body.rd-v84-native .rd-sheet-backdrop{
  z-index:2400!important;
}

body.rd-v84-native .rd-confirm{
  z-index:4200!important;
}

body.rd-v84-native .rd-checkout-sheet,
body.rd-v84-native .rd-cart-sheet,
body.rd-v84-native .rd-sheet:has(.rd-cart-item){
  max-height:calc(100dvh - 18px)!important;
  padding-bottom:calc(116px + env(safe-area-inset-bottom))!important;
}

body.rd-v84-native .rd-checkout-sheet .rd-btn-primary,
body.rd-v84-native .rd-cart-sheet .rd-btn-primary,
body.rd-v84-native .rd-sheet:has(.rd-cart-item) .rd-btn-primary.full{
  position:sticky!important;
  bottom:calc(12px + env(safe-area-inset-bottom))!important;
  z-index:5!important;
  min-height:62px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,var(--rd-v84-orange),#ff6500)!important;
  box-shadow:0 20px 48px rgba(255,90,0,.30)!important;
}

body.rd-v84-native .rd-account-backdrop-v84{
  place-items:stretch start!important;
  justify-content:start!important;
  align-items:stretch!important;
  padding:0!important;
  background:rgba(17,24,39,.42)!important;
}

body.rd-v84-native .rd-account-drawer-v84{
  width:min(355px,86vw)!important;
  height:100dvh!important;
  max-height:100dvh!important;
  margin:0!important;
  border-radius:0 28px 28px 0!important;
  padding:0!important;
  background:#f7f7f8!important;
  color:var(--rd-v84-ink)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:auto!important;
  box-shadow:28px 0 80px rgba(15,23,42,.18)!important;
}

body.rd-v84-native .rd-account-head-v84{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  margin:0!important;
  padding:18px 18px 12px!important;
  background:linear-gradient(180deg,#fff 0%,rgba(247,247,248,.96) 100%)!important;
  border-bottom:1px solid #e6e7ea!important;
}

body.rd-v84-native .rd-account-head-v84 h2{
  margin:0!important;
  font-size:18px!important;
  line-height:1.05!important;
}

body.rd-v84-native .rd-account-head-v84 small{
  display:block!important;
  color:#9aa1ad!important;
  font-size:11px!important;
  font-weight:900!important;
  margin-top:3px!important;
}

body.rd-v84-native .rd-account-back-v84{
  width:40px!important;
  height:40px!important;
  border:0!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111827!important;
  box-shadow:0 8px 22px rgba(15,23,42,.08)!important;
  font-size:28px!important;
  line-height:1!important;
}

body.rd-v84-native .rd-account-user-v84{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 20px!important;
  gap:12px!important;
  align-items:center!important;
  margin:14px 16px!important;
  padding:10px!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 10px 30px rgba(15,23,42,.08)!important;
  cursor:pointer!important;
}

body.rd-v84-native .rd-account-avatar-v84,
body.rd-v84-native .rd-account-avatar-v84 img,
body.rd-v84-native .rd-account-avatar-v84 span{
  width:52px!important;
  height:52px!important;
  border-radius:50%!important;
}

body.rd-v84-native .rd-account-avatar-v84 span{
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--rd-v84-orange),#111827)!important;
  font-weight:1000!important;
}

body.rd-v84-native .rd-account-avatar-v84 img{object-fit:cover!important;}

body.rd-v84-native .rd-account-user-v84 b,
body.rd-v84-native .rd-account-user-v84 small,
body.rd-v84-native .rd-account-user-v84 em{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.rd-v84-native .rd-account-user-v84 b{font-size:14px!important;}
body.rd-v84-native .rd-account-user-v84 small{color:#475467!important;font-size:12px!important;font-weight:850!important;}
body.rd-v84-native .rd-account-user-v84 em{color:#111827!important;font-size:11px!important;font-style:normal!important;font-weight:900!important;}

body.rd-v84-native .rd-account-menu-v84{
  padding:2px 18px 28px!important;
}

body.rd-v84-native .rd-account-menu-v84 section{
  padding:14px 0!important;
  border-top:1px solid #d9dce2!important;
}

body.rd-v84-native .rd-account-menu-v84 small{
  display:block!important;
  margin:0 0 10px!important;
  color:#99a0ab!important;
  font-size:10px!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
}

body.rd-v84-native .rd-account-menu-v84 button{
  width:100%!important;
  min-height:34px!important;
  padding:8px 0!important;
  border:0!important;
  background:transparent!important;
  color:#111827!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  text-align:left!important;
  font-size:14px!important;
  font-weight:850!important;
}

body.rd-v84-native .rd-account-menu-v84 button i,
body.rd-v84-native .rd-account-user-v84 i{
  color:#ff2f57!important;
  font-style:normal!important;
  font-weight:1000!important;
}

body.rd-v84-native .rd-account-menu-v84 button b{
  min-width:20px!important;
  height:20px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:#d9ffe5!important;
  color:#13b75b!important;
  font-size:11px!important;
}

body.rd-v84-native .rd-account-logout-v84{
  color:#e11d48!important;
  justify-content:flex-start!important;
  margin-top:10px!important;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-guest-v79,
body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-action-v79{
  max-width:100%!important;
  overflow:hidden!important;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-guest-v79{
  width:calc(100vw - 48px)!important;
  max-width:calc(100vw - 48px)!important;
  justify-self:center!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  padding:0 12px!important;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-guest-v79 b,
body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-action-v79 b{
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.14!important;
}

body.rd-v84-native.rd-mobile-app-mode:not(.rd-admin-mode) .rd-entry-guest-v79 b{
  font-size:15px!important;
}

body.rd-v84-native .rd-account-detail-v84{
  padding:18px!important;
}

body.rd-v84-native .rd-account-detail-v84 .rd-form-grid,
body.rd-v84-native .rd-account-drawer-v84 .rd-form-grid{
  grid-template-columns:1fr!important;
}

body.rd-v84-native .rd-account-addresses-v84 article{
  grid-template-columns:1fr!important;
  background:#fff!important;
}

body.rd-v84-native .rd-account-guest-v84{
  display:grid!important;
  gap:12px!important;
  padding:28px 18px!important;
}

body.rd-v84-native .rd-account-guest-v84 img{
  width:190px!important;
  max-width:100%!important;
}

body.rd-v84-native .rd-account-guest-v84 b{
  font-size:24px!important;
  line-height:1.1!important;
}

body.rd-v84-native .rd-account-guest-v84 p{
  color:var(--rd-v84-muted)!important;
  font-weight:800!important;
  margin:0!important;
}

body.rd-v84-native .rd-auth-sheet-v84{
  border-radius:30px!important;
  background:#fff!important;
}

body.rd-v84-native .rd-google-btn-v84{
  width:100%!important;
  min-height:58px!important;
  border-radius:18px!important;
  border:1px solid var(--rd-v84-line)!important;
  background:#fff!important;
  color:#111827!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  font-weight:950!important;
  box-shadow:0 12px 28px rgba(15,23,42,.07)!important;
  margin-bottom:12px!important;
}

body.rd-v84-native .rd-google-btn-v84 span{
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  font-weight:1000!important;
  color:#4285f4!important;
  background:#f8fafc!important;
}

body.rd-v84-native .rd-auth-sep-v84{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#98a2b3!important;
  font-size:12px!important;
  font-weight:900!important;
  margin:6px 0 12px!important;
}

body.rd-v84-native .rd-auth-sep-v84::before,
body.rd-v84-native .rd-auth-sep-v84::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--rd-v84-line);
}

body.rd-v84-native .rd-google-note-v84{
  display:block!important;
  margin-top:12px!important;
  color:#98a2b3!important;
  line-height:1.35!important;
  font-weight:800!important;
}

@keyframes rd-v84-loadbar{
  from{background-position:180% 0}
  to{background-position:-80% 0}
}

@keyframes rd-v84-loader-pulse{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-6px) scale(1.05)}
}

@keyframes rd-v84-loader-spin{
  0%{transform:rotate(0deg) scale(1)}
  45%{transform:rotate(330deg) scale(1.04)}
  55%{transform:rotate(360deg) scale(1.04)}
  100%{transform:rotate(720deg) scale(1)}
}

@keyframes rd-v84-icon-intro{
  0%{opacity:0;transform:translateY(10px) scale(.82) rotate(-10deg)}
  12%{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}
  40%{opacity:1;transform:translateY(-4px) scale(1.07) rotate(355deg)}
  52%{opacity:0;transform:translateY(-18px) scale(.76) rotate(420deg)}
  100%{opacity:0;transform:translateY(-18px) scale(.76) rotate(420deg)}
}

@keyframes rd-v84-wordmark-open{
  0%,46%{opacity:0;transform:scale(.64) translateY(26px)}
  58%{opacity:1;transform:scale(.92) translateY(0)}
  78%{opacity:1;transform:scale(1.08) translateY(0)}
  100%{opacity:.98;transform:scale(2.18) translateY(-10px)}
}

@media (max-width:420px){
  body.rd-v84-native .rd-account-drawer-v84{width:88vw!important;border-radius:0 24px 24px 0!important;}
  body.rd-v84-native .rd-bottom-menu{height:66px!important;}
  body.rd-v84-native .rd-cart-mochi{width:76px!important;height:76px!important;}
}
