/* =========================================================
   GiraMesa Delivery — APP UI 2B MASTER FIEL
   Referência homologada em 23/09/2026.
   Objetivos:
   - visual claro premium: branco + roxo + verde-limão;
   - Home, Produto, Checkout e Conta fiéis ao mockup aprovado;
   - busca e categorias SEMPRE acessíveis durante a rolagem;
   - nenhuma alteração de regra de negócio.
========================================================= */

:root{
  --gm2b-primary:var(--gm2-primary,#221934);
  --gm2b-primary-deep:var(--gm2-primary-deep,#150F1F);
  --gm2b-accent:var(--gm2-accent,#C7D630);
  --gm2b-bg:var(--gm2-bg,#F7F5F9);
  --gm2b-surface:var(--gm2-surface,#FFFFFF);
  --gm2b-text:var(--gm2-text,#201A28);
  --gm2b-muted:#817987;
  --gm2b-line:#E7E1E9;
  --gm2b-soft:#F6F3F7;
  --gm2b-pink:#E83F73;
  --gm2b-green:#36B77A;
  --gm2b-warn:#E9A23B;
  --gm2b-shadow:0 10px 28px rgba(34,25,52,.075);
  --gm2b-shadow-strong:0 20px 55px rgba(34,25,52,.14);
  --gm2b-header-h:78px;
  --gm2b-search-h:66px;
  --gm2b-cat-h:82px;
}

html{background:var(--gm2b-bg)!important;scroll-behavior:smooth}
body.gm-app-ui-v2b{background:var(--gm2b-bg)!important;color:var(--gm2b-text)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important}
.gm-app-ui-v2b .app-shell{background:var(--gm2b-bg)!important;color:var(--gm2b-text)!important;min-height:100dvh}
.gm-app-ui-v2b .conteudo-app{max-width:720px!important;margin:0 auto!important;background:var(--gm2b-bg)!important;padding-bottom:92px!important}
.gm-app-ui-v2b button,.gm-app-ui-v2b input,.gm-app-ui-v2b textarea,.gm-app-ui-v2b select{font:inherit}
.gm-app-ui-v2b button{-webkit-tap-highlight-color:transparent}
.gm-app-ui-v2b [hidden]{display:none!important}

/* =========================================================
   1. TOPO — IGUAL AO MOCKUP
========================================================= */
.gm-app-ui-v2b .topo-app{
  position:sticky!important;top:0!important;z-index:230!important;
  background:linear-gradient(135deg,var(--gm2b-primary-deep),var(--gm2b-primary))!important;
  border:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 8px 24px rgba(34,25,52,.18)!important;
}
.gm-app-ui-v2b .topo-conteudo{
  min-height:var(--gm2b-header-h)!important;max-width:720px!important;margin:0 auto!important;
  padding:10px 16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important
}
.gm-app-ui-v2b .marca-loja{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important;text-decoration:none!important}
.gm-app-ui-v2b .marca-loja img{
  width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:15px!important;
  padding:4px!important;object-fit:contain!important;background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.20)!important;box-shadow:none!important
}
.gm-app-ui-v2b .gm2-brand-copy{display:flex!important;flex-direction:column!important;gap:1px!important;min-width:0!important}
.gm-app-ui-v2b .gm2-brand-copy strong,.gm-app-ui-v2b .marca-loja>strong{
  color:#fff!important;font-size:16px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.035em!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
}
.gm-app-ui-v2b .gm2-brand-copy small{
  color:rgba(255,255,255,.72)!important;font-size:6.7px!important;font-weight:900!important;letter-spacing:.17em!important;text-transform:uppercase!important
}
.gm-app-ui-v2b .topo-acoes{display:flex!important;align-items:center!important;gap:7px!important}
.gm-app-ui-v2b .status-loja-topo{display:none!important}
.gm-app-ui-v2b .botao-perfil-topo,.gm-app-ui-v2b .botao-icone{
  width:39px!important;height:39px!important;display:grid!important;place-items:center!important;border-radius:13px!important;
  background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;box-shadow:none!important
}
.gm-app-ui-v2b .botao-perfil-topo svg,.gm-app-ui-v2b .botao-icone svg{width:18px!important;height:18px!important}

/* =========================================================
   2. HOME / MENU
========================================================= */
.gm-app-ui-v2b #paginaInicio{padding:12px 0 30px!important;background:var(--gm2b-bg)!important}
.gm-app-ui-v2b .bloco-cardapio{padding:0 14px 26px!important;background:transparent!important;border:0!important;box-shadow:none!important}

/* Loja/status */
.gm-app-ui-v2b .gm2-loja-status-card{
  min-height:64px!important;margin:0 0 10px!important;padding:9px 11px!important;
  display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;
  background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:18px!important;box-shadow:var(--gm2b-shadow)!important
}
.gm-app-ui-v2b .gm2-loja-status-icon{width:38px!important;height:38px!important;border-radius:13px!important;background:#F3F6E9!important;border:1px solid #E8EDD6!important}
.gm-app-ui-v2b .gm2-loja-status-icon span{width:9px!important;height:9px!important}
.gm-app-ui-v2b .gm2-loja-status-copy strong{font-size:12.5px!important;font-weight:900!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .gm2-loja-status-copy small{margin-top:2px!important;font-size:8px!important;font-weight:700!important;color:var(--gm2b-green)!important}
.gm-app-ui-v2b .gm2-loja-status-profile{min-width:52px!important;min-height:34px!important;color:var(--gm2b-primary)!important;font-size:8.5px!important;font-weight:900!important}

/* BUSCA STICKY. Fica fixa logo abaixo do cabeçalho quando rolar. */
.gm-app-ui-v2b .linha-busca{
  position:sticky!important;top:var(--gm2b-header-h)!important;z-index:210!important;
  margin:0 -14px!important;padding:7px 14px 5px!important;background:rgba(247,245,249,.965)!important;
  backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important
}
.gm-app-ui-v2b .linha-busca.gm2b-stuck{box-shadow:0 9px 20px rgba(34,25,52,.08)!important}
.gm-app-ui-v2b .campo-busca{
  height:52px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:0 13px!important;
  background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:17px!important;box-shadow:0 6px 18px rgba(34,25,52,.055)!important
}
.gm-app-ui-v2b .campo-busca>svg{width:20px!important;height:20px!important;color:var(--gm2b-primary)!important;stroke-width:2!important}
.gm-app-ui-v2b .campo-busca input{min-width:0!important;flex:1!important;color:var(--gm2b-text)!important;font-size:10.5px!important;font-weight:600!important;background:transparent!important}
.gm-app-ui-v2b .campo-busca input::placeholder{color:#9D96A1!important;font-weight:500!important}
.gm-app-ui-v2b .campo-busca button{color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .gm2b-search-filter{
  width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border:1px solid var(--gm2b-line);border-radius:11px;background:#fff;color:var(--gm2b-primary)
}
.gm-app-ui-v2b .gm2b-search-filter svg{width:17px;height:17px}

/* Promoção principal */
.gm-app-ui-v2b #paginaInicio .banner-promocoes{
  display:block!important;margin:8px 0 10px!important;border-radius:18px!important;overflow:hidden!important;
  border:1px solid rgba(34,25,52,.10)!important;background:var(--gm2b-primary-deep)!important;box-shadow:var(--gm2b-shadow)!important
}
.gm-app-ui-v2b .trilho-promocoes,.gm-app-ui-v2b .slide-promocao,.gm-app-ui-v2b .banner-carregando{min-height:190px!important}
.gm-app-ui-v2b .slide-promocao{padding:19px 18px 27px!important;align-items:flex-end!important}
.gm-app-ui-v2b .slide-promocao::after{background:linear-gradient(90deg,rgba(12,8,20,.94) 0%,rgba(12,8,20,.66) 53%,rgba(12,8,20,.16) 100%)!important}
.gm-app-ui-v2b .slide-promocao h2{max-width:64%!important;margin:0 0 6px!important;color:#fff!important;font-size:22px!important;line-height:1!important;font-weight:900!important;letter-spacing:-.035em!important}
.gm-app-ui-v2b .slide-promocao p{max-width:62%!important;margin:0 0 10px!important;color:rgba(255,255,255,.82)!important;font-size:8.4px!important;line-height:1.4!important}
.gm-app-ui-v2b .slide-promocao button,.gm-app-ui-v2b .slide-promocao .acao-banner{min-height:34px!important;padding:0 12px!important;border:0!important;border-radius:10px!important;background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;font-size:8.5px!important;font-weight:900!important}
.gm-app-ui-v2b .controle-slider{display:none!important}
.gm-app-ui-v2b .indicadores-promocoes{bottom:8px!important;gap:5px!important}
.gm-app-ui-v2b .indicadores-promocoes button{width:5px!important;height:5px!important;background:rgba(255,255,255,.58)!important}
.gm-app-ui-v2b .indicadores-promocoes button.ativo{width:15px!important;border-radius:99px!important;background:#fff!important}

/* CATEGORIAS STICKY. Depois de alcançarem a busca, permanecem visíveis juntas. */
.gm-app-ui-v2b .gm2-section-label-categorias{
  margin:2px 0 6px!important;padding:0 1px!important;display:flex!important;align-items:center!important;justify-content:space-between!important
}
.gm-app-ui-v2b .gm2-section-label-categorias strong{font-size:13px!important;font-weight:900!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .gm2-section-label-categorias span{font-size:8px!important;font-weight:800!important;color:var(--gm2b-pink)!important}
.gm-app-ui-v2b .abas-categorias{
  position:sticky!important;top:calc(var(--gm2b-header-h) + var(--gm2b-search-h))!important;z-index:205!important;
  display:flex!important;gap:7px!important;overflow-x:auto!important;margin:0 -14px!important;padding:7px 14px 10px!important;
  background:rgba(247,245,249,.965)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
  scroll-snap-type:x proximity!important;scrollbar-width:none!important
}
.gm-app-ui-v2b .abas-categorias::-webkit-scrollbar{display:none!important}
.gm-app-ui-v2b .abas-categorias.gm2b-stuck{box-shadow:0 10px 22px rgba(34,25,52,.08)!important}
.gm-app-ui-v2b .abas-categorias button{
  min-width:64px!important;min-height:58px!important;flex:0 0 auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;
  padding:7px 9px!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;background:#fff!important;color:var(--gm2b-primary)!important;
  box-shadow:none!important;font-size:7.7px!important;font-weight:850!important;scroll-snap-align:start!important
}
.gm-app-ui-v2b .abas-categorias button.ativo{background:var(--gm2b-accent)!important;border-color:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;box-shadow:0 7px 15px rgba(199,214,48,.22)!important}
.gm-app-ui-v2b .gm2b-cat-icon{width:19px;height:19px;display:grid;place-items:center;color:currentColor}
.gm-app-ui-v2b .gm2b-cat-icon svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.gm-app-ui-v2b .gm2b-cat-label{display:block;white-space:nowrap}

/* Seções */
.gm-app-ui-v2b .secao-produtos{margin:10px 0 0!important}
.gm-app-ui-v2b .cabecalho-secao{min-height:28px!important;margin:0 1px 7px!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
.gm-app-ui-v2b .cabecalho-secao h2,.gm-app-ui-v2b .titulo-com-icone h2{font-size:13px!important;line-height:1!important;font-weight:900!important;letter-spacing:-.02em!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .cabecalho-secao button{font-size:8px!important;font-weight:900!important;color:var(--gm2b-pink)!important}
.gm-app-ui-v2b .titulo-com-icone>svg{display:none!important}

/* Destaques + catálogo em duas colunas no celular, como a referência. */
.gm-app-ui-v2b .lista-destaques{
  display:grid!important;grid-auto-flow:column!important;grid-auto-columns:calc(50% - 5px)!important;gap:10px!important;overflow-x:auto!important;padding:0 0 3px!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important
}
.gm-app-ui-v2b .lista-destaques::-webkit-scrollbar{display:none!important}
.gm-app-ui-v2b .lista-produtos{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.gm-app-ui-v2b .cartao-produto,.gm-app-ui-v2b .cartao-destaque{
  min-width:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#fff!important;
  border:1px solid var(--gm2b-line)!important;border-radius:15px!important;box-shadow:0 6px 16px rgba(34,25,52,.055)!important;color:var(--gm2b-text)!important
}
.gm-app-ui-v2b .cartao-destaque{scroll-snap-align:start!important}
.gm-app-ui-v2b .cartao-produto .imagem-produto,.gm-app-ui-v2b .cartao-destaque .imagem-produto{
  width:100%!important;aspect-ratio:1.23/1!important;min-height:0!important;object-fit:cover!important;background:#ECE8EE!important;border:0!important
}
.gm-app-ui-v2b .cartao-produto .corpo-produto,.gm-app-ui-v2b .cartao-destaque .corpo-produto{position:relative!important;flex:1!important;padding:8px 9px 9px!important;display:flex!important;flex-direction:column!important;gap:3px!important}
.gm-app-ui-v2b .cartao-produto h3,.gm-app-ui-v2b .cartao-destaque h3{margin:0!important;color:var(--gm2b-text)!important;font-size:10.5px!important;line-height:1.18!important;font-weight:900!important;letter-spacing:-.015em!important}
.gm-app-ui-v2b .cartao-produto p,.gm-app-ui-v2b .cartao-destaque p{margin:0!important;color:var(--gm2b-muted)!important;font-size:7.6px!important;line-height:1.34!important;min-height:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.gm-app-ui-v2b .rodape-produto{margin-top:auto!important;min-height:35px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:5px!important}
.gm-app-ui-v2b .rodape-produto strong,.gm-app-ui-v2b .preco-produto{color:var(--gm2b-primary)!important;font-size:10.5px!important;line-height:1!important;font-weight:900!important}
.gm-app-ui-v2b .cartao-produto .rodape-produto button,.gm-app-ui-v2b .cartao-destaque .rodape-produto button,.gm-app-ui-v2b .adicionar-produto{
  width:29px!important;height:29px!important;min-width:29px!important;display:grid!important;place-items:center!important;padding:0!important;border:0!important;border-radius:99px!important;
  background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;font-size:19px!important;font-weight:700!important;box-shadow:0 5px 12px rgba(199,214,48,.24)!important
}

/* =========================================================
   3. PRODUTO / DETALHES — FULL SCREEN NO CELULAR
========================================================= */
.gm-app-ui-v2b .gm2-produto-overlay,.gm-app-ui-v2b #modalProduto{
  position:fixed!important;inset:0!important;z-index:9800!important;padding:0!important;display:grid!important;place-items:stretch!important;background:rgba(16,10,24,.5)!important;backdrop-filter:blur(7px)!important
}
.gm-app-ui-v2b #modalProduto[hidden]{display:none!important}
.gm-app-ui-v2b .gm2-produto-sheet,.gm-app-ui-v2b #folhaProduto{
  position:relative!important;width:min(520px,100%)!important;height:100dvh!important;max-height:none!important;margin-left:auto!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;
  background:#fff!important;border:0!important;border-radius:0!important;box-shadow:var(--gm2b-shadow-strong)!important;color:var(--gm2b-text)!important
}
.gm-app-ui-v2b #folhaProduto .cabecalho-modal{
  position:absolute!important;z-index:5!important;top:12px!important;left:12px!important;right:12px!important;padding:0!important;border:0!important;background:transparent!important;pointer-events:none!important
}
.gm-app-ui-v2b #folhaProduto .cabecalho-modal>div{display:none!important}
.gm-app-ui-v2b #folhaProduto .fechar-modal{
  pointer-events:auto!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;margin-right:auto!important;border-radius:12px!important;
  background:rgba(255,255,255,.94)!important;color:var(--gm2b-primary)!important;border:1px solid rgba(34,25,52,.10)!important;box-shadow:0 7px 20px rgba(0,0,0,.12)!important;font-size:0!important
}
.gm-app-ui-v2b #folhaProduto .fechar-modal::before{content:'←';font-size:19px;font-weight:800}
.gm-app-ui-v2b #folhaProduto .corpo-modal{flex:1!important;display:block!important;padding:0 0 92px!important;overflow:auto!important;background:#fff!important}
.gm-app-ui-v2b #folhaProduto .imagem-produto-modal{width:100%!important;height:42dvh!important;min-height:290px!important;max-height:430px!important;display:block!important;object-fit:cover!important;background:#ECE8EE!important;border:0!important;border-radius:0!important}
.gm-app-ui-v2b #folhaProduto .detalhes-produto-modal{padding:15px 18px 24px!important;background:#fff!important;border-radius:24px 24px 0 0!important;margin-top:-19px!important;position:relative!important;z-index:2!important;box-shadow:0 -8px 26px rgba(34,25,52,.06)!important}
.gm-app-ui-v2b #folhaProduto .detalhes-produto-modal>h3{margin:0 0 4px!important;color:var(--gm2b-primary)!important;font-size:23px!important;line-height:1.02!important;font-weight:950!important;letter-spacing:-.045em!important}
.gm-app-ui-v2b #folhaProduto .detalhes-produto-modal>p{margin:0 0 9px!important;color:var(--gm2b-muted)!important;font-size:10px!important;line-height:1.45!important}
.gm-app-ui-v2b #folhaProduto .preco-modal{margin:8px 0 12px!important;color:var(--gm2b-primary)!important;font-size:22px!important;font-weight:950!important;letter-spacing:-.035em!important}
.gm-app-ui-v2b #folhaProduto .grupo-opcoes{padding:12px 0!important;border-top:1px solid var(--gm2b-line)!important}
.gm-app-ui-v2b #folhaProduto .grupo-opcoes h4{margin:0 0 8px!important;font-size:11px!important;font-weight:900!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b #folhaProduto .grupo-opcoes label{min-height:38px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:7px 0!important;color:var(--gm2b-text)!important;font-size:9px!important}
.gm-app-ui-v2b #folhaProduto input[type="radio"],.gm-app-ui-v2b #folhaProduto input[type="checkbox"]{accent-color:var(--gm2b-accent)!important}
.gm-app-ui-v2b #folhaProduto .observacao-item{width:100%!important;min-height:50px!important;margin-top:10px!important;padding:12px!important;border:1px solid var(--gm2b-line)!important;border-radius:13px!important;background:#FBFAFC!important;color:var(--gm2b-text)!important;font-size:9.5px!important;resize:vertical!important}
.gm-app-ui-v2b #folhaProduto .rodape-modal{
  position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:10!important;padding:10px 13px max(10px,env(safe-area-inset-bottom))!important;
  background:rgba(255,255,255,.97)!important;border-top:1px solid var(--gm2b-line)!important;backdrop-filter:blur(16px)!important
}
.gm-app-ui-v2b #folhaProduto .rodape-adicionar{display:grid!important;grid-template-columns:105px minmax(0,1fr)!important;gap:9px!important;align-items:center!important}
.gm-app-ui-v2b #folhaProduto .quantidade-modal{height:48px!important;display:grid!important;grid-template-columns:1fr 34px 1fr!important;align-items:center!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;background:#fff!important}
.gm-app-ui-v2b #folhaProduto .quantidade-modal button{height:100%!important;border:0!important;background:transparent!important;color:var(--gm2b-primary)!important;font-size:19px!important}
.gm-app-ui-v2b #folhaProduto .quantidade-modal b{text-align:center!important;font-size:11px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b #folhaProduto .botao-confirmar-produto{height:48px!important;border:0!important;border-radius:14px!important;background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;font-size:10.5px!important;font-weight:950!important;box-shadow:0 7px 18px rgba(199,214,48,.24)!important}

/* =========================================================
   4. CARRINHO / CHECKOUT
========================================================= */
.gm-app-ui-v2b #paginaCarrinho{background:#fff!important;min-height:calc(100dvh - var(--gm2b-header-h))!important;padding-bottom:84px!important}
.gm-app-ui-v2b #paginaCarrinho .cabecalho-pagina{padding:16px 14px 8px!important;background:#fff!important;border:0!important;box-shadow:none!important}
.gm-app-ui-v2b #paginaCarrinho .cabecalho-pagina span{display:none!important}
.gm-app-ui-v2b #paginaCarrinho .cabecalho-pagina h1{font-size:20px!important;line-height:1.05!important;color:var(--gm2b-primary)!important;font-weight:950!important;letter-spacing:-.035em!important}
.gm-app-ui-v2b #paginaCarrinho .cabecalho-pagina p{margin-top:2px!important;font-size:8.5px!important;color:var(--gm2b-muted)!important}
.gm-app-ui-v2b .gm2b-checkout-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;padding:4px 14px 11px;background:#fff;border-bottom:1px solid var(--gm2b-line)}
.gm-app-ui-v2b .gm2b-step{position:relative;display:grid;justify-items:center;gap:4px;color:#AAA2AD;font-size:6.8px;font-weight:800;text-align:center}
.gm-app-ui-v2b .gm2b-step:not(:last-child)::after{content:'';position:absolute;top:8px;left:58%;right:-42%;height:1px;background:#D9D3DC}
.gm-app-ui-v2b .gm2b-step i{position:relative;z-index:2;width:17px;height:17px;display:grid;place-items:center;border-radius:99px;background:#F2EFF3;border:1px solid #DED9E2;color:#AAA2AD;font-style:normal;font-size:8px}
.gm-app-ui-v2b .gm2b-step.is-active{color:var(--gm2b-primary)}
.gm-app-ui-v2b .gm2b-step.is-active i{background:var(--gm2b-accent);border-color:var(--gm2b-accent);color:var(--gm2b-primary)}
.gm-app-ui-v2b .gm2b-step.is-active:not(:last-child)::after{background:linear-gradient(90deg,var(--gm2b-accent),#D9D3DC)}
.gm-app-ui-v2b .lista-carrinho-pagina{display:grid!important;gap:8px!important;padding:11px 14px 5px!important;background:#fff!important}
.gm-app-ui-v2b .item-carrinho{display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;gap:10px!important;padding:8px!important;background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;box-shadow:0 4px 13px rgba(34,25,52,.04)!important}
.gm-app-ui-v2b .item-carrinho>img{width:72px!important;height:72px!important;border-radius:11px!important;object-fit:cover!important}
.gm-app-ui-v2b .item-carrinho h3{font-size:10.5px!important;color:var(--gm2b-primary)!important;font-weight:900!important}
.gm-app-ui-v2b .item-carrinho p{font-size:7.5px!important;color:var(--gm2b-muted)!important;line-height:1.35!important}
.gm-app-ui-v2b .item-carrinho .remover-item{font-size:0!important;width:28px!important;height:28px!important;border:0!important;background:transparent!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .item-carrinho .remover-item::before{content:'×';font-size:19px}
.gm-app-ui-v2b .controle-qtd{height:30px!important;border:1px solid var(--gm2b-line)!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important}
.gm-app-ui-v2b .controle-qtd button{width:28px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .subtotal-item{font-size:10.5px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .resumo-carrinho{margin:6px 14px 10px!important;padding:11px!important;background:#FAF9FB!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;box-shadow:none!important}
.gm-app-ui-v2b .linha-resumo{font-size:9px!important;color:var(--gm2b-muted)!important}
.gm-app-ui-v2b .linha-resumo strong{color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .linha-resumo.total{font-size:14px!important;font-weight:900!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .botao-checkout{min-height:47px!important;margin-top:8px!important;border:0!important;border-radius:14px!important;background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;font-size:10px!important;font-weight:950!important}

.gm-app-ui-v2b .checkout-carrinho{margin:7px 14px 14px!important;padding:0!important;background:#fff!important;border:0!important;box-shadow:none!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .checkout-carrinho>h2{display:none!important}
.gm-app-ui-v2b .checkout-carrinho>p{display:none!important}
.gm-app-ui-v2b .grupo-checkout{margin:0 0 9px!important;padding:11px!important;background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;box-shadow:none!important}
.gm-app-ui-v2b .grupo-checkout h3{margin:0 0 8px!important;font-size:10px!important;font-weight:900!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .opcoes-modalidade,.gm-app-ui-v2b .opcoes-pagamento{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
.gm-app-ui-v2b .opcoes-modalidade button,.gm-app-ui-v2b .opcoes-pagamento button{min-height:54px!important;padding:8px!important;border:1px solid var(--gm2b-line)!important;border-radius:12px!important;background:#fff!important;color:var(--gm2b-text)!important;box-shadow:none!important}
.gm-app-ui-v2b .opcoes-modalidade button.ativo,.gm-app-ui-v2b .opcoes-pagamento button.ativo{background:#F7FBDD!important;border-color:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;box-shadow:0 0 0 2px rgba(199,214,48,.12)!important}
.gm-app-ui-v2b .grade-formulario{gap:8px!important}
.gm-app-ui-v2b .grade-formulario label,.gm-app-ui-v2b .grupo-checkout label{color:var(--gm2b-text)!important;font-size:8px!important;font-weight:750!important}
.gm-app-ui-v2b .grade-formulario input,.gm-app-ui-v2b .grupo-checkout input,.gm-app-ui-v2b .grupo-checkout textarea,.gm-app-ui-v2b .grupo-checkout select{min-height:43px!important;border:1px solid var(--gm2b-line)!important;border-radius:11px!important;background:#FBFAFC!important;color:var(--gm2b-text)!important;font-size:9.5px!important;-webkit-text-fill-color:var(--gm2b-text)!important}
.gm-app-ui-v2b .grupo-checkout textarea{min-height:70px!important}
.gm-app-ui-v2b .endereco-validado-cabecalho{background:#F7FBDD!important;border-color:#E3EAB2!important;color:var(--gm2b-primary)!important}

/* =========================================================
   5. CONTA / PEDIDOS — PAINEL IGUAL AO MOCKUP
========================================================= */
.gm-app-ui-v2b #modalConta{
  position:fixed!important;inset:0!important;z-index:9800!important;padding:0!important;display:flex!important;justify-content:flex-end!important;background:rgba(16,10,24,.48)!important;backdrop-filter:blur(7px)!important
}
.gm-app-ui-v2b #modalConta[hidden]{display:none!important}
.gm-app-ui-v2b #folhaConta{
  width:min(500px,100%)!important;height:100dvh!important;max-height:none!important;overflow:auto!important;border:0!important;border-radius:0!important;
  background:#F8F6F9!important;color:var(--gm2b-text)!important;box-shadow:var(--gm2b-shadow-strong)!important
}
.gm-app-ui-v2b #folhaConta .cabecalho-painel,.gm-app-ui-v2b #folhaConta .cabecalho-modal{
  position:sticky!important;top:0!important;z-index:8!important;padding:17px 16px 14px!important;background:linear-gradient(135deg,var(--gm2b-primary-deep),var(--gm2b-primary))!important;color:#fff!important;border:0!important;box-shadow:0 8px 20px rgba(34,25,52,.16)!important
}
.gm-app-ui-v2b #folhaConta .cabecalho-painel h2,.gm-app-ui-v2b #folhaConta .cabecalho-modal h2{color:#fff!important;font-size:20px!important;line-height:1.05!important;font-weight:950!important}
.gm-app-ui-v2b #folhaConta .cabecalho-painel p,.gm-app-ui-v2b #folhaConta .cabecalho-modal p{color:rgba(255,255,255,.76)!important;font-size:8.5px!important}
.gm-app-ui-v2b #folhaConta .fechar-modal,.gm-app-ui-v2b #folhaConta .fechar-painel{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;border-radius:11px!important}
.gm-app-ui-v2b #folhaConta .conteudo-painel,.gm-app-ui-v2b #folhaConta .corpo-modal{padding:12px!important;background:#F8F6F9!important}
.gm-app-ui-v2b .gm-crm-auth-card,.gm-app-ui-v2b .gm-crm-card,.gm-app-ui-v2b .gm-crm-secao,.gm-app-ui-v2b .cartao-perfil,.gm-app-ui-v2b .opcao-conta{
  background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;box-shadow:0 4px 13px rgba(34,25,52,.04)!important;color:var(--gm2b-text)!important
}
.gm-app-ui-v2b .gm-crm-auth-card{padding:12px!important}
.gm-app-ui-v2b .gm-crm-auth-actions,.gm-app-ui-v2b .acoes-modal-conta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.gm-app-ui-v2b .gm-crm-auth-actions button,.gm-app-ui-v2b .acoes-modal-conta button{min-height:43px!important;border-radius:11px!important;font-size:9px!important;font-weight:900!important}
.gm-app-ui-v2b .gm-crm-auth-actions button:not(.secundario),.gm-app-ui-v2b .acoes-modal-conta button:not(.secundario){background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important;border-color:var(--gm2b-accent)!important}
.gm-app-ui-v2b .gm-crm-form input,.gm-app-ui-v2b .gm-crm-campo-fixo{background:#FBFAFC!important;color:var(--gm2b-text)!important;-webkit-text-fill-color:var(--gm2b-text)!important;border-color:var(--gm2b-line)!important;opacity:1!important}
.gm-app-ui-v2b .gm-crm-campo-fixo b,.gm-app-ui-v2b .gm-crm-campo-fixo span,.gm-app-ui-v2b .gm-crm-auth-card h3,.gm-app-ui-v2b .gm-crm-auth-card label{color:var(--gm2b-text)!important;opacity:1!important}
.gm-app-ui-v2b .opcao-conta{min-height:55px!important;padding:9px 11px!important}
.gm-app-ui-v2b .opcao-conta strong{font-size:10px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .opcao-conta small{font-size:7.6px!important;color:var(--gm2b-muted)!important}

/* Pedidos */
.gm-app-ui-v2b #paginaPedidos{background:var(--gm2b-bg)!important}
.gm-app-ui-v2b #paginaPedidos .cabecalho-pagina{padding:17px 14px 8px!important;background:transparent!important;border:0!important}
.gm-app-ui-v2b #paginaPedidos .cabecalho-pagina h1{font-size:20px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b #estadoContaPedidos{margin:0 14px 9px!important;border-radius:14px!important;background:#fff!important;border:1px solid var(--gm2b-line)!important;box-shadow:var(--gm2b-shadow)!important}
.gm-app-ui-v2b #listaPedidosCliente{display:grid!important;gap:8px!important;padding:0 14px 16px!important}
.gm-app-ui-v2b .cartao-pedido{padding:11px!important;background:#fff!important;border:1px solid var(--gm2b-line)!important;border-radius:14px!important;box-shadow:0 5px 14px rgba(34,25,52,.04)!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .cartao-pedido h3{font-size:11px!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .cartao-pedido p{font-size:8px!important;color:var(--gm2b-muted)!important}
.gm-app-ui-v2b .status-pedido{font-size:7.5px!important;border-radius:99px!important}
.gm-app-ui-v2b .acoes-pedido button{min-height:35px!important;border:1px solid var(--gm2b-line)!important;border-radius:10px!important;background:#fff!important;color:var(--gm2b-primary)!important;font-size:8.5px!important;font-weight:900!important}

/* Repetir pedido */
.gm-app-ui-v2b .gm-repeat-overlay{z-index:9900!important;background:rgba(18,12,27,.48)!important;backdrop-filter:blur(8px)!important}
.gm-app-ui-v2b .gm-repeat-modal{border-radius:22px!important;border-color:var(--gm2b-line)!important;background:#fff!important;color:var(--gm2b-text)!important}
.gm-app-ui-v2b .gm-repeat-confirm{background:var(--gm2b-accent)!important;color:var(--gm2b-primary)!important}

/* =========================================================
   6. NAVEGAÇÃO INFERIOR — 4 ITENS
========================================================= */
.gm-app-ui-v2b .barra-inferior{
  position:fixed!important;z-index:500!important;left:50%!important;bottom:0!important;transform:translateX(-50%)!important;
  width:min(720px,100%)!important;height:auto!important;min-height:66px!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;
  padding:6px 8px max(6px,env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.98)!important;border:0!important;border-top:1px solid var(--gm2b-line)!important;border-radius:0!important;box-shadow:0 -8px 24px rgba(34,25,52,.10)!important;backdrop-filter:blur(16px)!important
}
.gm-app-ui-v2b .barra-inferior .item-nav{
  min-width:0!important;min-height:54px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;
  border:0!important;border-radius:12px!important;background:transparent!important;color:#817988!important;font-size:8px!important;font-weight:800!important
}
.gm-app-ui-v2b .barra-inferior .item-nav svg{width:19px!important;height:19px!important}
.gm-app-ui-v2b .barra-inferior .item-nav small{font-size:7.3px!important;font-weight:850!important}
.gm-app-ui-v2b .barra-inferior .item-nav.ativo{background:#F6F8DE!important;color:var(--gm2b-primary)!important}
.gm-app-ui-v2b .barra-inferior .item-nav.ativo::after{content:'';width:18px;height:3px;border-radius:99px;background:var(--gm2b-accent)!important;margin-top:1px}
.gm-app-ui-v2b .barra-inferior .item-nav b{top:3px!important;right:calc(50% - 18px)!important;background:var(--gm2b-pink)!important;color:#fff!important}
.gm-app-ui-v2b .barra-inferior .item-nav[data-nav="info"]{display:flex!important}

.gm-app-ui-v2b .carrinho-flutuante{display:none!important}

/* Offline / toast */
.gm-app-ui-v2b .aviso-offline{z-index:11000!important;border-radius:11px!important;background:var(--gm2b-primary)!important;color:#fff!important}
.gm-app-ui-v2b .toast{z-index:12000!important;border-radius:13px!important;background:var(--gm2b-primary)!important;color:#fff!important;box-shadow:0 16px 40px rgba(34,25,52,.24)!important}

/* =========================================================
   MOBILE FINO
========================================================= */
@media(max-width:640px){
  :root{--gm2b-header-h:72px;--gm2b-search-h:64px;--gm2b-cat-h:78px}
  .gm-app-ui-v2b .topo-conteudo{min-height:var(--gm2b-header-h)!important;padding:8px 12px!important}
  .gm-app-ui-v2b .marca-loja img{width:43px!important;height:43px!important;flex-basis:43px!important;border-radius:14px!important}
  .gm-app-ui-v2b .gm2-brand-copy strong,.gm-app-ui-v2b .marca-loja>strong{font-size:14px!important;max-width:46vw!important}
  .gm-app-ui-v2b .botao-perfil-topo,.gm-app-ui-v2b .botao-icone{width:37px!important;height:37px!important}
  .gm-app-ui-v2b #paginaInicio{padding-top:10px!important}
  .gm-app-ui-v2b .bloco-cardapio{padding-left:11px!important;padding-right:11px!important}
  .gm-app-ui-v2b .linha-busca{margin-left:-11px!important;margin-right:-11px!important;padding-left:11px!important;padding-right:11px!important}
  .gm-app-ui-v2b .abas-categorias{margin-left:-11px!important;margin-right:-11px!important;padding-left:11px!important;padding-right:11px!important}
  .gm-app-ui-v2b .gm2-loja-status-card{border-radius:16px!important}
  .gm-app-ui-v2b .trilho-promocoes,.gm-app-ui-v2b .slide-promocao,.gm-app-ui-v2b .banner-carregando{min-height:175px!important}
  .gm-app-ui-v2b .slide-promocao h2{font-size:20px!important}
  .gm-app-ui-v2b .lista-produtos{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .gm-app-ui-v2b #folhaProduto{width:100%!important}
  .gm-app-ui-v2b #folhaProduto .imagem-produto-modal{height:38dvh!important;min-height:250px!important}
  .gm-app-ui-v2b #modalConta{display:block!important}
  .gm-app-ui-v2b #modalConta[hidden]{display:none!important}
  .gm-app-ui-v2b #folhaConta{width:100%!important}
}

/* Desktop/tablet: mantém estética do mockup, sem esticar demais. */
@media(min-width:641px){
  .gm-app-ui-v2b .lista-produtos{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .gm-app-ui-v2b .lista-destaques{grid-auto-columns:calc(33.333% - 7px)!important}
  .gm-app-ui-v2b #folhaProduto{border-radius:24px 0 0 24px!important}
  .gm-app-ui-v2b #folhaConta{border-radius:24px 0 0 24px!important}
}
