/*
 * NA LENHA — camada visual pública ultra premium, 100% isolada por rota.
 * Ativa somente quando nalenha-premium.js adiciona uma das classes abaixo ao <html>:
 *   .nalenha-cardapio   -> /cardapio/nalenha
 *   .nalenha-site       -> /restaurante/nalenha
 *
 * Nunca estilizar classes genéricas sem o prefixo de rota: esta folha NÃO pode vazar
 * para BLESS, Mix, Hotelaria, Eventos ou qualquer outro tenant.
 */

html.nalenha-cardapio,
html.nalenha-cardapio body,
html.nalenha-site,
html.nalenha-site body{
  background:#090604!important;
}

/* ═══════════════════════════════════════════════════════════════
   CARDÁPIO IMERSIVO — MOBILE FIRST
   ═══════════════════════════════════════════════════════════════ */
@media (max-width:640px){
  /* Header compacto, legível e sem quebra vertical da marca. */
  html.nalenha-cardapio .gv-top{
    height:calc(env(safe-area-inset-top) + 64px)!important;
    padding:env(safe-area-inset-top) 10px 0!important;
    grid-template-columns:minmax(112px,1fr) auto!important;
    gap:8px!important;
    background:linear-gradient(180deg,rgba(8,4,2,.98) 0%,rgba(8,4,2,.93) 76%,rgba(8,4,2,.72) 100%)!important;
    border-bottom:1px solid rgba(245,130,32,.16)!important;
    box-shadow:0 12px 30px -24px rgba(0,0,0,.95)!important;
    backdrop-filter:blur(18px) saturate(1.15)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.15)!important;
  }
  html.nalenha-cardapio .gv-topzone{height:calc(env(safe-area-inset-top) + 16px)!important}
  html.nalenha-cardapio .gv-brandlink{
    min-width:112px!important;
    max-width:146px!important;
    width:auto!important;
    gap:8px!important;
    overflow:hidden!important;
  }
  html.nalenha-cardapio .gv-navflame{
    width:38px!important;height:38px!important;border-radius:12px!important;
    font-size:17px!important;box-shadow:0 8px 24px -10px rgba(245,130,32,.95)!important;
  }
  html.nalenha-cardapio .gv-navlogo{height:36px!important;max-width:118px!important}
  html.nalenha-cardapio .gv-brand{
    min-width:0!important;
    color:#fff7ed!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1.02!important;
    letter-spacing:1.8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
  html.nalenha-cardapio .gv-brand small{
    display:block!important;
    margin-top:5px!important;
    color:#F58220!important;
    font-size:7.5px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:1.25px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
  html.nalenha-cardapio .gv-navtools{gap:5px!important;min-width:0!important}
  html.nalenha-cardapio .gv-menubtn{
    width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;
    border-radius:12px!important;font-size:0!important;
    background:rgba(255,255,255,.055)!important;border-color:rgba(245,130,32,.22)!important;
  }
  html.nalenha-cardapio .gv-menubtn::before{content:'☰';font-size:17px;color:#f7e8d5}
  html.nalenha-cardapio .gv-menubtn span{display:none!important}
  html.nalenha-cardapio .gv-navtools .sl-btn{
    width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;
    border-radius:12px!important;background:rgba(255,255,255,.055)!important;
  }
  html.nalenha-cardapio .gv-navtools .sl-btn i{display:none!important}
  html.nalenha-cardapio .gv-navtools .sl-fl{width:20px!important;height:14px!important}
  html.nalenha-cardapio .gv-navtools .sa-chip{
    width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;
    border-radius:12px!important;background:rgba(255,255,255,.055)!important;
  }
  html.nalenha-cardapio .gv-navtools .sa-av{width:30px!important;height:30px!important}
  /* Logout continua disponível no painel da conta; removê-lo daqui libera espaço crítico. */
  html.nalenha-cardapio .gv-navtools .sa-out{display:none!important}
  html.nalenha-cardapio .gv-chip{
    width:40px!important;height:40px!important;padding:0!important;display:inline-flex!important;
    align-items:center!important;justify-content:center!important;border-radius:12px!important;
    background:linear-gradient(180deg,rgba(245,130,32,.13),rgba(255,255,255,.05))!important;
    border-color:rgba(245,130,32,.28)!important;font-size:16px!important;
  }
  html.nalenha-cardapio .gv-count{top:-5px!important;right:-5px!important;min-width:18px!important;height:18px!important;font-size:10px!important}

  /* A mesa fica mais perto do cabeçalho no panorama, sem mudar coordenadas/hotspots.
     `translate` é uma propriedade independente do transform inline do motor de câmera. */
  html.nalenha-cardapio:has(.gv-tour) div:has(> img[alt="Mesa panorâmica"]){
    translate:0 -42px;
    transition:translate .45s cubic-bezier(.2,.8,.2,1);
  }

  /* Dock inferior: uma única barra premium, com alvos de toque >=44px. */
  html.nalenha-cardapio .gv-tour{
    left:10px!important;right:10px!important;
    bottom:calc(env(safe-area-inset-bottom) + 10px)!important;
    gap:6px!important;justify-content:center!important;align-items:center!important;
    padding:6px!important;border:1px solid rgba(245,130,32,.14)!important;
    border-radius:24px!important;
    background:rgba(12,7,4,.68)!important;
    backdrop-filter:blur(18px) saturate(1.2)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.2)!important;
    box-shadow:0 18px 50px -20px rgba(0,0,0,.95)!important;
  }
  html.nalenha-cardapio .gv-navb{
    width:44px!important;height:44px!important;min-width:44px!important;
    border-radius:16px!important;background:rgba(255,255,255,.055)!important;
    border-color:rgba(242,231,216,.14)!important;font-size:19px!important;
  }
  html.nalenha-cardapio .gv-navb.wide{
    width:auto!important;min-width:0!important;height:44px!important;
    padding:0 13px!important;border-radius:16px!important;font-size:11.5px!important;
    line-height:1.15!important;white-space:normal!important;text-align:center!important;
  }
  html.nalenha-cardapio .gv-navb.wide.alt{
    color:#ffad61!important;border-color:rgba(245,130,32,.38)!important;
    background:linear-gradient(180deg,rgba(245,130,32,.12),rgba(245,130,32,.05))!important;
  }

  /* Full menu vira sheet de tela cheia, com cabeçalho/footer sempre acessíveis. */
  html.nalenha-cardapio .gv-menu{width:100%!important;border-right:0!important}
  html.nalenha-cardapio .gv-menu-head{
    padding:calc(env(safe-area-inset-top) + 14px) 16px 12px!important;
    background:rgba(20,14,9,.96)!important;backdrop-filter:blur(16px)!important;
  }
  html.nalenha-cardapio .gv-menu-head b{font-size:15px!important;letter-spacing:1.4px!important}
  html.nalenha-cardapio .gv-menu-head button{width:42px!important;height:42px!important}
  html.nalenha-cardapio .gv-menu-cats{padding:10px 12px!important;scroll-padding-inline:12px!important}
  html.nalenha-cardapio .gv-menu-cats button{min-height:36px!important;padding:8px 12px!important}
  html.nalenha-cardapio .gv-menu-body{padding:4px 12px 18px!important;overscroll-behavior:contain!important}
  html.nalenha-cardapio .gv-menu-item{grid-template-columns:68px minmax(0,1fr) 44px!important;gap:11px!important;padding:11px 0!important}
  html.nalenha-cardapio .gv-menu-item img,
  html.nalenha-cardapio .gv-menu-noimg{width:68px!important;height:68px!important;border-radius:14px!important}
  html.nalenha-cardapio .gv-menu-add{width:42px!important;height:42px!important}
  html.nalenha-cardapio .gv-menu-foot{background:rgba(20,14,9,.97)!important;padding:10px 12px calc(env(safe-area-inset-bottom) + 10px)!important}

  /* Item e carrinho: tipografia/ritmo para 360–430px sem esmagar conteúdo. */
  html.nalenha-cardapio .gv-card{padding:14px 14px calc(env(safe-area-inset-bottom) + 14px)!important;border-radius:22px 22px 0 0!important}
  html.nalenha-cardapio .gv-cardhead{gap:10px!important}
  html.nalenha-cardapio .gv-carddesc{font-size:12.5px!important;line-height:1.45!important}
  html.nalenha-cardapio .gv-actions{gap:8px!important;margin-top:12px!important}
  html.nalenha-cardapio .gv-qty button{width:38px!important;height:38px!important}
  html.nalenha-cardapio .gv-add{min-height:46px!important;padding:12px 9px!important}
  html.nalenha-cardapio .gv-drawer{width:100%!important;border-left:0!important}
  html.nalenha-cardapio .gv-drhead{padding:calc(env(safe-area-inset-top) + 14px) 16px 12px!important}
  html.nalenha-cardapio .gv-drbody{padding:8px 16px!important}
  html.nalenha-cardapio .gv-drfoot{padding:14px 16px calc(env(safe-area-inset-bottom) + 14px)!important}
}

/* Celulares muito estreitos: preserva a marca e remove um controle redundante do topo.
   O cardápio completo continua disponível no dock inferior. */
@media (max-width:359px){
  html.nalenha-cardapio .gv-brandlink{min-width:104px!important;max-width:116px!important}
  html.nalenha-cardapio .gv-brand{font-size:12px!important;letter-spacing:1.35px!important}
  html.nalenha-cardapio .gv-brand small{font-size:7px!important;letter-spacing:.95px!important}
  html.nalenha-cardapio .gv-menubtn{display:none!important}
  html.nalenha-cardapio .gv-tour{left:6px!important;right:6px!important}
  html.nalenha-cardapio .gv-navb.wide{padding:0 9px!important;font-size:10.5px!important}
}

/* Mobile baixo (teclado/browser chrome ocupando muito espaço): evita dock encostar na mesa. */
@media (max-width:640px) and (max-height:700px){
  html.nalenha-cardapio:has(.gv-tour) div:has(> img[alt="Mesa panorâmica"]){translate:0 -28px}
  html.nalenha-cardapio .gv-tour{bottom:calc(env(safe-area-inset-bottom) + 6px)!important}
}

/* ═══════════════════════════════════════════════════════════════
   CARDÁPIO — TABLET
   ═══════════════════════════════════════════════════════════════ */
@media (min-width:641px) and (max-width:1024px){
  html.nalenha-cardapio .gv-top{
    height:calc(env(safe-area-inset-top) + 68px)!important;
    padding:env(safe-area-inset-top) 18px 0!important;
    background:linear-gradient(180deg,rgba(8,4,2,.94),rgba(8,4,2,.46) 82%,transparent)!important;
  }
  html.nalenha-cardapio .gv-brandlink{min-width:190px!important}
  html.nalenha-cardapio .gv-brand{white-space:nowrap!important;font-size:14px!important}
  html.nalenha-cardapio .gv-brand small{white-space:nowrap!important}
  html.nalenha-cardapio .gv-navtools{gap:7px!important}
  html.nalenha-cardapio .gv-tour{bottom:calc(env(safe-area-inset-bottom) + 16px)!important}
  html.nalenha-cardapio .gv-navb{width:50px!important;height:50px!important}
  html.nalenha-cardapio .gv-navb.wide{height:50px!important}
}

/* ═══════════════════════════════════════════════════════════════
   CARDÁPIO — DESKTOP/WIDE
   Não muda a coreografia; apenas acabamento do chrome.
   ═══════════════════════════════════════════════════════════════ */
@media (min-width:1025px){
  html.nalenha-cardapio .gv-top{
    background:linear-gradient(180deg,rgba(8,4,2,.86),rgba(8,4,2,.28) 78%,transparent)!important;
  }
  html.nalenha-cardapio .gv-brand{white-space:nowrap!important}
  html.nalenha-cardapio .gv-brand small{white-space:nowrap!important}
  html.nalenha-cardapio .gv-menubtn,
  html.nalenha-cardapio .gv-chip{transition:transform .18s,border-color .18s,background .18s!important}
  html.nalenha-cardapio .gv-menubtn:hover,
  html.nalenha-cardapio .gv-chip:hover{transform:translateY(-1px);border-color:rgba(245,130,32,.55)!important}
}

/* ═══════════════════════════════════════════════════════════════
   SITE INSTITUCIONAL /restaurante/nalenha — MOBILE
   ═══════════════════════════════════════════════════════════════ */
@media (max-width:640px){
  html.nalenha-site .rs-nav{
    height:calc(env(safe-area-inset-top) + 64px)!important;
    padding:env(safe-area-inset-top) 10px 0!important;
    grid-template-columns:minmax(112px,1fr) auto!important;
    gap:8px!important;
    background:rgba(10,6,3,.9)!important;
    border-bottom-color:rgba(245,130,32,.16)!important;
    backdrop-filter:blur(18px) saturate(1.15)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.15)!important;
  }
  html.nalenha-site .rs-navbrand{gap:8px!important;min-width:112px!important;max-width:142px!important;overflow:hidden!important}
  html.nalenha-site .rs-navflame{width:38px!important;height:38px!important;border-radius:12px!important}
  html.nalenha-site .rs-navwm{min-width:0!important}
  html.nalenha-site .rs-navwm b{font-size:13px!important;letter-spacing:1.7px!important;white-space:nowrap!important}
  html.nalenha-site .rs-navwm i{display:block!important;font-size:7.5px!important;letter-spacing:1.15px!important;white-space:nowrap!important;overflow:hidden!important}
  html.nalenha-site .rs-navtools{gap:5px!important}
  html.nalenha-site .rs-navtools .sl-btn{width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;border-radius:12px!important}
  html.nalenha-site .rs-navtools .sl-btn i{display:none!important}
  html.nalenha-site .rs-navtools .sa-chip{width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;border-radius:12px!important}
  html.nalenha-site .rs-navtools .sa-av{width:30px!important;height:30px!important}
  html.nalenha-site .rs-navtools .sa-out{display:none!important}
  html.nalenha-site .rs-navcta{
    width:38px!important;height:38px!important;padding:0!important;justify-content:center!important;
    border-radius:12px!important;font-size:0!important;box-shadow:none!important;
  }
  html.nalenha-site .rs-navcta::before{content:'🛵';font-size:16px}
  html.nalenha-site .rs-burger{display:inline-flex!important;width:38px!important;height:38px!important;border-radius:12px!important}
  html.nalenha-site .rs-hero{min-height:100svh!important;padding-top:calc(env(safe-area-inset-top) + 64px)!important}
  html.nalenha-site .rs-herobody{padding:26px 18px 54px!important;justify-content:center!important}
  html.nalenha-site .rs-title{font-size:clamp(44px,15vw,62px)!important;letter-spacing:2px!important}
  html.nalenha-site .rs-tagline{font-size:18px!important;line-height:1.25!important;max-width:330px!important}
  html.nalenha-site .rs-sub{font-size:13px!important;line-height:1.6!important;max-width:340px!important}
  html.nalenha-site .rs-ctas{width:100%!important;max-width:340px!important;display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  html.nalenha-site .rs-ctas .rs-btn{width:100%!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important}
  html.nalenha-site .rs-sec{padding-left:18px!important;padding-right:18px!important}
  html.nalenha-site .rs-menu-grid{grid-template-columns:1fr!important}
  html.nalenha-site .rs-mitem{min-height:104px!important}
  html.nalenha-site .rs-mitem-btn{min-width:46px!important;min-height:40px!important}
  html.nalenha-site .rs-mfab{right:12px!important;bottom:calc(env(safe-area-inset-bottom) + 12px)!important}
  html.nalenha-site .rs-chat{left:10px!important;right:10px!important;width:auto!important;bottom:calc(env(safe-area-inset-bottom) + 10px)!important;max-height:min(74svh,620px)!important}
}

@media (max-width:380px){
  html.nalenha-site .rs-navbrand{max-width:118px!important}
  html.nalenha-site .rs-navwm i{display:none!important}
  html.nalenha-site .rs-navcta{display:none!important}
}

/* SITE — tablet */
@media (min-width:641px) and (max-width:1024px){
  html.nalenha-site .rs-nav{padding-left:20px!important;padding-right:20px!important;gap:14px!important}
  html.nalenha-site .rs-navwm b{white-space:nowrap!important}
  html.nalenha-site .rs-navwm i{white-space:nowrap!important}
  html.nalenha-site .rs-herobody{padding-left:28px!important;padding-right:28px!important}
}

/* SITE — desktop */
@media (min-width:1025px){
  html.nalenha-site .rs-navbrand,
  html.nalenha-site .rs-navwm b,
  html.nalenha-site .rs-navwm i{white-space:nowrap!important}
  html.nalenha-site .rs-nav{max-width:100vw!important}
}

/* Acessibilidade e toque: apenas superfícies NA LENHA. */
html.nalenha-cardapio button:focus-visible,
html.nalenha-cardapio a:focus-visible,
html.nalenha-site button:focus-visible,
html.nalenha-site a:focus-visible{
  outline:2px solid #ff9b45!important;
  outline-offset:3px!important;
}

@media (prefers-reduced-motion:reduce){
  html.nalenha-cardapio *,html.nalenha-site *{scroll-behavior:auto!important}
  html.nalenha-cardapio .gv-ember,
  html.nalenha-cardapio .gv-steam{animation-duration:.001ms!important;animation-iteration-count:1!important}
}
