/*
 * Orides Entrega — modal de CEP, faixa de prazo e conserto do carrinho.
 * As cores saem de --orides-cor-1 e --orides-cor-2; sem elas, um azul neutro.
 */

.orides-promessa { display: inline-flex; align-items: center; gap: .45em; }
.orides-promessa b { font-weight: 800; letter-spacing: .01em; }
.orides-promessa em { font-style: normal; opacity: .92; display: inline-flex; align-items: center; gap: .35em; }
.orides-promessa-conta {
  font-style: normal; font-weight: 800; font-variant-numeric: tabular-nums;
  background: rgba(255, 255, 255, .18); border-radius: .35em; padding: .12em .42em;
  min-width: 5.4em; text-align: center; display: inline-block;
}
.orides-promessa-urgente .orides-promessa-conta {
  background: #ffc107; color: #1f2937; animation: orides-pulsa 1.4s ease-in-out infinite;
}
@keyframes orides-pulsa { 50% { opacity: .62; } }

.orides-cep-trocar {
  display: inline-flex; align-items: center; gap: .38em;
  background: rgba(255, 255, 255, .13); border: 1px solid rgba(255, 255, 255, .28);
  color: inherit; font: inherit; font-weight: 600; line-height: 1;
  padding: .38em .7em; border-radius: 999px; cursor: pointer;
  transition: background .18s ease, border-color .18s ease;
}
.orides-cep-trocar:hover { background: rgba(255, 255, 255, .24); border-color: rgba(255, 255, 255, .5); }
.orides-cep-trocar svg { flex: 0 0 auto; opacity: .9; }
.orides-cep-trocar.orides-cep-ok-area { background: rgba(46, 204, 113, .22); border-color: rgba(46, 204, 113, .55); }
.orides-cep-trocar.orides-cep-fora-area { background: rgba(255, 193, 7, .2); border-color: rgba(255, 193, 7, .5); }

/* ---- modal "vamos confirmar se entregamos" ---- */
.orides-cep-fundo {
  position: fixed; inset: 0; background: rgba(28, 22, 51, .55);
  backdrop-filter: blur(2px); z-index: 99998; opacity: 0; transition: opacity .25s ease;
}
.orides-cep-fundo.orides-aberta { opacity: 1; }

.orides-cep-caixa {
  position: fixed; z-index: 99999; left: 50%; top: 50%;
  transform: translate(-50%, -46%) scale(.96); opacity: 0;
  transition: opacity .25s ease, transform .25s cubic-bezier(.2, .8, .3, 1);
  width: min(420px, calc(100vw - 2rem));
  background: #fff; border-radius: 18px; box-shadow: var(--orides-sombra-alta, 0 14px 34px rgba(58, 33, 171, .18));
  padding: 1.9rem 1.5rem 1.4rem; text-align: center; font-family: var(--orides-fonte, inherit);
}
.orides-cep-caixa.orides-aberta { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.orides-cep-caixa[hidden], .orides-cep-fundo[hidden] { display: none; }

.orides-cep-x {
  position: absolute; top: .5rem; right: .7rem; background: none; border: 0;
  font-size: 1.7rem; line-height: 1; color: #9a95b5; cursor: pointer; padding: .1em .25em;
}
.orides-cep-x:hover { color: var(--orides-cor-1, #2563eb); }

.orides-cep-pino { width: 42px; height: 42px; color: var(--orides-cor-1, #2563eb); }
.orides-cep-caixa h2 { font-size: 1.28rem; font-weight: 800; margin: .45rem 0 .3rem; color: #1c1633; }
.orides-cep-sub { font-size: .9rem; color: #5d5878; margin: 0 0 1.15rem; line-height: 1.45; }

.orides-cep-form { display: flex; gap: .5rem; }
.orides-cep-campo {
  flex: 1; min-width: 0; font-size: 1.15rem; font-weight: 700; letter-spacing: .04em;
  text-align: center; padding: .62em .5em; border: 2px solid #e5e2f2; border-radius: 11px;
  color: #1c1633; background: #fff;
}
.orides-cep-campo:focus { outline: 0; border-color: var(--orides-cor-1, #2563eb); }
.orides-cep-ok {
  background: var(--orides-cor-1, #2563eb); color: #fff; border: 0; cursor: pointer;
  font-weight: 800; font-size: .95rem; padding: 0 1.15em; border-radius: 11px;
  transition: background .18s ease;
}
.orides-cep-ok:hover { background: var(--orides-cor-2, #1d4ed8); }

.orides-cep-resposta { font-size: .9rem; line-height: 1.4; margin-top: .9rem; border-radius: 11px; }
.orides-cep-resposta:empty { display: none; }
.orides-cep-resposta b { display: block; font-weight: 800; }
.orides-cep-resposta span { display: block; margin-top: .15em; opacity: .85; font-size: .85rem; }
.orides-cep-carregando { color: #5d5878; }
.orides-cep-sim { background: #e8f8ef; color: #1a7f47; padding: .7em .8em; }
.orides-cep-nao { background: #fff6e0; color: #8a6100; padding: .7em .8em; }
.orides-cep-erro { background: #fdecec; color: #b3261e; padding: .7em .8em; }

.orides-cep-depois {
  display: block; margin: 1rem auto 0; background: none; border: 0; cursor: pointer;
  color: #837da3; font-size: .85rem; text-decoration: underline; padding: .3em;
}
.orides-cep-depois:hover { color: var(--orides-cor-1, #2563eb); }

/* dedo tem 44px: no celular os alvos crescem */
@media (max-width: 689px) {
  .orides-cep-campo, .orides-cep-ok { min-height: 48px; }
  .orides-cep-depois { min-height: 44px; }
  .orides-cep-x { min-width: 44px; min-height: 44px; display: flex; align-items: center; justify-content: center; top: .2rem; right: .3rem; }
  .orides-cep-trocar { min-height: 32px; }
}

/* ---- selo de oferta com prazo no cartao do produto ---- */
.orides-conta {
  display: inline-flex; align-items: center; gap: .35em; align-self: flex-start;
  background: #fff1e6; color: #c2410c; border: 1px solid #fed7aa;
  font-size: .68rem; font-weight: 700; line-height: 1;
  padding: .3em .55em; border-radius: 999px; margin-top: .3rem; white-space: nowrap;
}
.orides-conta b { font-weight: 800; letter-spacing: .04em; }
.orides-conta i { font-style: normal; font-variant-numeric: tabular-nums; opacity: .9; }
.orides-conta-urgente { background: #fee2e2; color: #b91c1c; border-color: #fecaca; animation: orides-pulsa 1.4s ease-in-out infinite; }

/* ---- carrinho: a celula de envio nao pode espremer o nome do metodo ---- */
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th { width: auto; }
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td { width: auto; min-width: 15rem; }
/* Com UMA opcao so o Woo nao imprime o radio, e o grid do tema deixava o rotulo
   com 22px de largura - o nome do metodo descia letra por letra. Flex resolve os
   dois casos (com radio e sem). */
.woocommerce-shipping-methods { min-width: 0; width: 100%; }
.woocommerce-shipping-methods li {
  display: flex; align-items: center; flex-wrap: wrap; gap: .45em;
  min-width: 0; width: 100%;
}
.woocommerce-shipping-methods li > label {
  flex: 1 1 auto; min-width: 0; width: auto;
  overflow-wrap: normal; word-break: normal; hyphens: none;
}
.woocommerce-shipping-methods li > input { flex: 0 0 auto; }

/* ---- formas de pagamento no rodape do checkout ---- */
.co-footer__icons { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .4rem; }
.orides-pgto-titulo { flex: 0 0 100%; font-size: .78rem; font-weight: 700; color: #5d5878; margin-bottom: .1rem; }
.orides-pgto {
  font-size: .74rem; font-weight: 600; color: #3a21ab;
  background: #f4f3fb; border: 1px solid #e5e2f2; border-radius: 999px; padding: .26em .62em;
}
.orides-pgto-nota { flex: 0 0 100%; font-size: .7rem; color: #837da3; margin-top: .12rem; }

/* contagem ao lado do título "Ofertas do dia" */
.orides-ofertas-conta {
  display: inline-flex; align-items: center; gap: .35em;
  font-size: .62em; font-weight: 700; vertical-align: middle;
  color: #c2410c; background: #fff1e6; border: 1px solid #fed7aa;
  border-radius: 999px; padding: .3em .7em; margin-left: .6em;
  text-transform: none; letter-spacing: 0;
}
.orides-ofertas-conta i { font-style: normal; font-variant-numeric: tabular-nums; }
.orides-ofertas-urgente { background: #fee2e2; color: #b91c1c; border-color: #fecaca; animation: orides-pulsa 1.4s ease-in-out infinite; }

/* botão "Carregar mais" no lugar da paginação numérica */
.orides-mais-caixa { display: flex; justify-content: center; margin: 2rem 0 1rem; }
.orides-mais {
  font: inherit; font-weight: 700; cursor: pointer;
  background: var(--orides-cor-1, #2563eb); color: #fff; border: 0;
  border-radius: 999px; padding: .85em 2.4em; font-size: .95rem;
  transition: background .18s ease, transform .12s ease;
}
.orides-mais:hover:not(:disabled) { background: var(--orides-cor-2, #1d4ed8); }
.orides-mais:active:not(:disabled) { transform: translateY(1px); }
.orides-mais:disabled { opacity: .65; cursor: progress; }
