/* Consulta de cashback no carrinho lateral */
.moca-cashback{margin:4px 0 0;padding:16px;border:1px solid #d9e5ef;border-radius:15px;background:#f8fbff;color:#0b2a4a;font-family:inherit}
.moca-cashback__heading{display:flex;align-items:center;gap:8px;font-size:15px}.moca-cashback__heading strong{font-weight:800}.moca-cashback__tag{margin-left:auto;font-size:9px;font-weight:800;letter-spacing:.06em;color:#326489}
.moca-cashback__intro{font-size:12px;line-height:1.5;color:#56708a;margin:8px 0 14px}
.moca-cashback__form label{display:block;font-size:11px;font-weight:750;margin-bottom:6px}
.moca-cashback__field{display:flex;gap:7px}.moca-cashback__field input{width:0;flex:1;min-width:0;height:40px;border:1px solid #cad8e5;border-radius:9px;background:white;padding:0 10px;color:#0b2a4a;font-size:13px;outline-offset:2px}.moca-cashback__field button,.moca-cashback__result button{border:0;border-radius:9px;background:#0b2a4a;color:white;font-size:12px;font-weight:750;padding:0 14px;cursor:pointer}.moca-cashback button:disabled{opacity:.55;cursor:not-allowed}
.moca-cashback__message{margin-top:10px;font-size:12px;color:#9d3838;line-height:1.5}
.moca-cashback__result{margin-top:12px;padding-top:12px;border-top:1px solid #d9e5ef}.moca-cashback__result>span{display:block;color:#56708a;font-size:12px}.moca-cashback__result>strong{display:block;font-size:24px;font-weight:850;margin:3px 0 12px}.moca-cashback__result button{min-height:40px;width:100%;background:#f5c93b;color:#0b2a4a}.moca-cashback__result p{font-size:12px;line-height:1.5;color:#56708a;margin:10px 0 0}
.moca-cashback [hidden]{display:none!important}

/* Bottom sheet interno ao carrinho */
minicart-drawer .moca-sacola__utilities-hint{margin:-12px 0 0;color:#6b8298;font-size:11px;line-height:1.45;text-align:center}
minicart-drawer .moca-cashback-sheet[hidden]{display:none!important}
minicart-drawer .moca-cashback-sheet{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:flex-end}
minicart-drawer .moca-cashback-sheet__backdrop{position:absolute;inset:0;background:rgba(8,27,48,.38);border:0;cursor:pointer}
minicart-drawer .moca-cashback-sheet__panel{position:relative;width:100%;max-height:min(85dvh,680px);overflow-y:auto;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -12px 35px rgba(8,27,48,.12);padding:0 18px 22px;animation:moca-cashback-rise .2s ease-out}
minicart-drawer .moca-cashback-sheet__top{height:39px;display:flex;align-items:center;justify-content:center;position:relative}
minicart-drawer .moca-cashback-sheet__handle{width:38px;height:4px;background:#d8e3ed;border-radius:8px}
minicart-drawer .moca-cashback-sheet__close{position:absolute;right:0;top:4px;width:31px;height:31px;background:transparent;border:0;font-size:26px;line-height:1;color:#526b81;cursor:pointer}
minicart-drawer .moca-cashback{border:0;background:transparent;padding:0;margin:0}
minicart-drawer .moca-cashback__tag{display:none}
@keyframes moca-cashback-rise{from{transform:translateY(18px);opacity:.6}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){minicart-drawer .moca-cashback-sheet__panel{animation:none}}

/* Ajustes de novembro: teclado iOS sem zoom e cupom aplicado no resumo. */
minicart-drawer .moca-cashback__field input,
minicart-drawer .moca-cashback input[type="text"]{font-size:16px!important;line-height:1.35}
minicart-drawer .moca-sacola__coupon-applied{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #b8d8ce;background:#f2faf6;border-radius:12px}
minicart-drawer .moca-sacola__coupon-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
minicart-drawer .moca-sacola__coupon-label{font-size:12px;font-weight:750;color:#236b53}
minicart-drawer .moca-sacola__coupon-copy small{font-size:11px;overflow-wrap:anywhere;color:#496b60}
minicart-drawer .moca-sacola__coupon-saving{font-size:13px;color:#19734c;white-space:nowrap}
minicart-drawer .moca-sacola__coupon-remove-form{flex:0 0 auto}
minicart-drawer .moca-sacola__coupon-remove{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d6e5df;border-radius:9px;background:#fff;color:#9c3d48;cursor:pointer}
minicart-drawer .moca-sacola__coupon-remove:hover{background:#fff1f2}
minicart-drawer .moca-sacola__coupon-remove svg{width:17px;height:17px}
minicart-drawer .moca-sacola__coupon-remove:disabled{opacity:.45;cursor:wait}

/* Aviso discreto no painel lateral de cashback. */
.moca-cashback__limit-notice--sheet{display:flex;align-items:flex-start;gap:8px;margin:9px 0 14px;padding:0;background:none;border:0;border-radius:0;color:#61717f;font-size:12px;line-height:1.5;font-weight:450}
.moca-cashback__limit-notice--sheet svg{flex:none;width:15px;height:15px;margin-top:1px;color:#54718a}
.moca-cashback__limit-notice--sheet strong{color:#233e54;font-weight:650}


/* Bottom sheets LI: seletores reais, inclusive o botão recalculado via HTMX. */
#freight-calculator-portal .bottom-sheet-overlay,
#coupon-portal .bottom-sheet-overlay{background:rgba(6,30,52,.45)}
#freight-calculator-portal .bottom-sheet-content-dialog,
#coupon-portal .bottom-sheet-content-dialog{background:#fff;border-radius:15px 15px 0 0;box-shadow:0 -12px 36px rgba(6,30,52,.16);overflow:hidden}
#freight-calculator-portal #freight-calculator-container,
#coupon-portal .coupon-container{background:#fff;color:#0b2a4a;padding:22px 20px 26px}
#freight-calculator-portal h3,
#coupon-portal label[for="minicart-coupon-input-field"]{color:#0b2a4a;font-size:19px;font-weight:800;letter-spacing:-.025em}
#freight-calculator-portal .bottom-sheet-close:not(.bottom-sheet-overlay),
#coupon-portal .bottom-sheet-close:not(.bottom-sheet-overlay){border:0;background:transparent;color:#0b2a4a;box-shadow:none}
#freight-calculator-portal input[data-testid="li-minicart-freight-input"],
#coupon-portal input[data-testid="li-minicart-coupon-input"]{
  min-height:46px;background:#fff;border:1px solid #cbd9e5;border-radius:8px;
  color:#0b2a4a;font-size:16px;box-shadow:none;
}
#freight-calculator-portal input:focus,
#coupon-portal input:focus{border-color:#0b6ca9;outline:2px solid #0b6ca922}
#freight-calculator-portal button[data-testid="li-minicart-freight-submit"],
#coupon-portal button[data-testid="li-minicart-coupon-submit"]{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  width:100%;min-height:46px!important;padding:10px 16px!important;
  background:#ffda3d!important;border:1px solid #f4cb27!important;border-radius:9px!important;
  color:#08294a!important;font-family:inherit;font-size:13px!important;font-weight:800!important;
  line-height:1.2!important;box-shadow:none!important;opacity:1;
}
#freight-calculator-portal button[data-testid="li-minicart-freight-submit"]:hover,
#coupon-portal button[data-testid="li-minicart-coupon-submit"]:hover{background:#ffcf21!important;border-color:#edc01b!important}
#freight-calculator-portal button[data-testid="li-minicart-freight-submit"]:disabled,
#coupon-portal button[data-testid="li-minicart-coupon-submit"]:disabled{opacity:.55;cursor:wait}
#freight-calculator-portal button[data-testid="li-minicart-freight-submit"] .moca-modal-action-icon,
#coupon-portal button[data-testid="li-minicart-coupon-submit"] .moca-modal-action-icon{width:17px;height:17px;flex:none;stroke:currentColor}
@media(max-width:380px){minicart-drawer .moca-sacola__utilities{gap:5px}minicart-drawer .moca-sacola__utilities > button.btn,minicart-drawer .moca-sacola__utilities > button.moca-cashback__trigger{font-size:11px;padding-inline:4px;gap:4px}}



/* Serviços da sacola: cartões leves integrados ao resumo.
   Ordem visual: Frete, Cashback, Cupom. Sem alterar HTMX ou DOM. */
minicart-drawer .moca-sacola__utilities{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:8px!important;padding:10px!important;background:#f4f8fb!important;
 border:0!important;border-radius:10px!important;align-items:stretch!important;
}
minicart-drawer .moca-sacola__utilities > button.btn,
minicart-drawer .moca-sacola__utilities > button.moca-cashback__trigger{
 appearance:none!important;display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;gap:7px!important;
 flex:none!important;width:100%!important;min-width:0!important;
 height:76px!important;min-height:76px!important;margin:0!important;padding:10px 3px!important;
 background:#fff!important;border:1px solid #d6e2eb!important;border-radius:7px!important;
 color:#0b2a4a!important;box-shadow:none!important;font-family:inherit!important;
 font-size:12px!important;font-weight:700!important;line-height:1.2!important;
 text-align:center!important;white-space:normal!important;letter-spacing:0!important;
 transition:border-color .16s ease,background-color .16s ease!important;
}
minicart-drawer .moca-sacola__utilities > button::before{
 content:""!important;display:block!important;flex:none!important;width:21px!important;height:21px!important;
 background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;
}
minicart-drawer .moca-sacola__utilities > button::after{content:none!important}
minicart-drawer .moca-sacola__utilities > [data-testid="li-minicart-freight-btn"]{order:1!important}
minicart-drawer .moca-sacola__utilities > .moca-cashback__trigger{order:2!important;justify-self:stretch!important}
minicart-drawer .moca-sacola__utilities > [data-testid="li-minicart-coupon-btn"]{order:3!important}
minicart-drawer .moca-sacola__utilities > [data-testid="li-minicart-freight-btn"]::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230B2A4A%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h11v11H3zM14%2010h4l3%203v4h-7z%22%2F%3E%3Ccircle%20cx%3D%227.5%22%20cy%3D%2218%22%20r%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%2217.5%22%20cy%3D%2218%22%20r%3D%221.5%22%2F%3E%3C%2Fsvg%3E")!important}
minicart-drawer .moca-sacola__utilities > .moca-cashback__trigger::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230B2A4A%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%2010h18M7%203h10%22%2F%3E%3Ccircle%20cx%3D%2216%22%20cy%3D%2215%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")!important}
minicart-drawer .moca-sacola__utilities > [data-testid="li-minicart-coupon-btn"]::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230B2A4A%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%208V5h18v3a3%203%200%200%200%200%206v3H3v-3a3%203%200%200%200%200-6z%22%2F%3E%3Cpath%20d%3D%22M12%205v12%22%20stroke-dasharray%3D%222%203%22%2F%3E%3C%2Fsvg%3E")!important}
minicart-drawer .moca-sacola__utilities > button:hover{background:#fff!important;border-color:#8ca9c1!important;color:#0b2a4a!important}
minicart-drawer .moca-sacola__utilities > button:focus-visible{outline:2px solid #0b2a4a!important;outline-offset:2px!important}
minicart-drawer .moca-sacola__utilities .htmx-indicator{pointer-events:none}
@media(max-width:370px){
 minicart-drawer .moca-sacola__utilities{gap:5px!important;padding:7px!important}
 minicart-drawer .moca-sacola__utilities > button.btn,
 minicart-drawer .moca-sacola__utilities > button.moca-cashback__trigger{font-size:11px!important;height:70px!important;min-height:70px!important}
}

/* Moça do Pop — calculadora de frete do minicart (LI Render / HTMX) */
#freight-calculator-container{
  --moca-freight-ink:#0b2a4a;
  --moca-freight-muted:#60778b;
  --moca-freight-line:#dbe5ec;
  background:#fff!important;
  padding:24px 22px 26px!important;
  gap:19px!important;
  color:var(--moca-freight-ink);
  font-family:inherit;
}
#freight-calculator-container > .flex.items-center.justify-between{
  padding:0 0 15px;
  border-bottom:1px solid var(--moca-freight-line);
}
#freight-calculator-container h3{
  margin:0!important;
  font-size:19px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  color:var(--moca-freight-ink)!important;
}
#freight-calculator-container .bottom-sheet-close{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  background:#f3f7fa!important;
  border:1px solid var(--moca-freight-line)!important;
  border-radius:7px!important;
  box-shadow:none!important;
  color:var(--moca-freight-ink)!important;
}
#freight-calculator-container .bottom-sheet-close svg{width:17px;height:17px}
#freight-calculator-container .bottom-sheet-close svg path{fill:var(--moca-freight-ink)}
#freight-calculator-container .bottom-sheet-close:hover{background:#eaf1f6!important}
#freight-calculator-container #minicart-zipcode-form,
#freight-calculator-container #minicart-shipping-calculation{
  gap:12px!important;
}
#freight-calculator-container input-mask{display:block;width:100%}
#freight-calculator-container #minicart-zipcode{
  width:100%!important;
  min-height:48px!important;
  height:48px!important;
  padding:0 15px!important;
  background:#fff!important;
  color:var(--moca-freight-ink)!important;
  border:1px solid #cddce6!important;
  border-radius:7px!important;
  box-shadow:none!important;
  font-size:15px!important;
  font-weight:650!important;
  letter-spacing:.035em!important;
}
#freight-calculator-container #minicart-zipcode:focus{
  outline:2px solid rgba(11,42,74,.15)!important;
  outline-offset:0!important;
  border-color:#0b2a4a!important;
}
#freight-calculator-container [data-testid="li-minicart-freight-submit"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  width:100%!important;
  min-height:48px!important;
  padding:12px 16px!important;
  background:#ffda3d!important;
  border:1px solid #ffda3d!important;
  border-radius:7px!important;
  color:#0b2a4a!important;
  box-shadow:none!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-transform:none!important;
  transition:background .16s ease,border-color .16s ease!important;
}
#freight-calculator-container [data-testid="li-minicart-freight-submit"]:hover{
  background:#f5ca19!important;
  border-color:#f5ca19!important;
}
#freight-calculator-container [data-testid="li-minicart-freight-submit"]:disabled{opacity:.6!important;cursor:wait}
#freight-calculator-container [data-testid="li-minicart-freight-submit"] .moca-modal-action-icon{
  display:block!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  color:#0b2a4a!important;
}
/* O resultado é substituído por HTMX; estilizar pelo contêiner estável. */
#freight-calculator-container #minicart-shipping-calculation > .border{
  margin-top:6px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--moca-freight-ink)!important;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
  list-style:none!important;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:5px!important;
  min-width:0!important;
  padding:13px 14px!important;
  border:1px solid var(--moca-freight-line)!important;
  border-radius:8px!important;
  background:#f8fafc!important;
  box-shadow:none!important;
  color:var(--moca-freight-ink)!important;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li > .flex{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:0!important;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li > .flex > span:first-child{
  order:2;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:800!important;
  color:var(--moca-freight-ink)!important;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li > .flex > span:nth-child(2){
  order:1;
  opacity:1!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:600!important;
  color:var(--moca-freight-muted)!important;
  overflow-wrap:anywhere;
}
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li > span:last-child{
  align-self:center!important;
  max-width:115px;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:800!important;
  text-align:right!important;
  color:#278768!important;
}
#freight-calculator-container #minicart-shipping-calculation > p.text-xs{
  margin:2px 0 0!important;
  font-size:11px!important;
  font-weight:500!important;
  line-height:1.5!important;
  opacity:1!important;
  color:var(--moca-freight-muted)!important;
}
@media(max-width:380px){
  #freight-calculator-container{padding:20px 16px 24px!important}
  #freight-calculator-container #minicart-shipping-calculation > .border > ul > li{padding:12px!important;column-gap:8px!important}
  #freight-calculator-container #minicart-shipping-calculation > .border > ul > li > span:last-child{max-width:90px;font-size:11px!important}
}

/* Prazo em duas linhas, como no carrinho principal. */
#freight-calculator-container #minicart-shipping-calculation > .border > ul > li > .moca-mini-freight-time {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:3px!important;
  max-width:150px;
  text-align:right!important;
  white-space:normal!important;
}
#freight-calculator-container .moca-mini-freight-days {
  display:block;
  font-size:12px!important;
  font-weight:650!important;
  line-height:1.35!important;
  color:#0b2a4a!important;
}
#freight-calculator-container .moca-mini-freight-date {
  display:block;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.35!important;
  color:#27a47d!important;
}
/* O drawer nativo vinha com arredondamento apenas no topo. */
#freight-calculator-portal .bottom-sheet-content-dialog {
  border-radius:14px!important;
  overflow:hidden!important;
}
#freight-calculator-portal #freight-calculator-container {
  border-radius:0 0 14px 14px!important;
  overflow:hidden!important;
}
@media(max-width:380px){
  #freight-calculator-container #minicart-shipping-calculation > .border > ul > li > .moca-mini-freight-time {max-width:115px}
  #freight-calculator-container .moca-mini-freight-date {font-size:11px!important}
}

/* Order bump lateral — layout compacto para drawer estreito. */
.moca-bump--cart .moca-bump__cart-content {
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:10px;
  row-gap:8px;
}
.moca-bump--cart .moca-bump__cart-content > img {
  grid-column:1;grid-row:1;width:48px;height:48px;object-fit:contain;
}
.moca-bump--cart .moca-bump__cart-content > .moca-bump__copy {
  grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;
  align-items:flex-start;gap:2px;
}
.moca-bump--cart .moca-bump__copy > strong {font-size:13px;line-height:1.25}
.moca-bump--cart .moca-bump__copy > span {font-size:12px;line-height:1.3}
.moca-bump--cart .moca-bump__price--cart {
  display:block;margin:3px 0 0;font-size:12px;font-weight:600;
  line-height:1.25;letter-spacing:0;color:#0b2a4a;white-space:nowrap;
}
.moca-bump--cart .moca-bump__cart-content > .moca-bump__add {
  grid-column:3;grid-row:1;justify-self:end;align-self:center;
  margin:0;padding:8px 11px;font-size:12px;line-height:1.2;
  white-space:nowrap;
}
.moca-bump--cart .moca-bump__cart-content > .moca-bump__compatibility {
  grid-column:1 / -1;grid-row:2;display:flex;align-items:flex-start;
  gap:5px;margin:0;min-width:0;font-size:10.5px;line-height:1.3;
}
.moca-bump--cart .moca-bump__compatibility-icon {
  flex:0 0 12px;width:12px;height:12px;margin-top:1px;
  stroke:currentColor;fill:none;stroke-width:1.7;
}
@media(max-width:360px){
  .moca-bump--cart .moca-bump__cart-content{grid-template-columns:40px minmax(0,1fr) auto;column-gap:7px}
  .moca-bump--cart .moca-bump__cart-content > img{width:40px;height:40px}
  .moca-bump--cart .moca-bump__cart-content > .moca-bump__add{padding:7px 8px}
}
