/* Cardápio dos clientes — mesa do restaurante, celular primeiro. Paleta da casa (verde da mata, papel claro, toque de urucum). */
:root{
  --bg:#f6f4ee; --surface:#ffffff; --ink:#1c2925; --muted:#5b6964; --line:#e2ded3;
  --accent:#1f6b52; --accent-ink:#ffffff; --accent-soft:#e2eee8; --warm:#a65a17; --warm-soft:#f6eadf; --danger:#b3261e;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Figtree","Segoe UI",system-ui,sans-serif;
  --r:14px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#111715; --surface:#19221f; --ink:#e4ebe7; --muted:#97a6a0; --line:#2b3732;
  --accent:#62c09a; --accent-ink:#0b1a14; --accent-soft:#1d3a2f; --warm:#e3a466; --warm-soft:#3a2a1b; --danger:#f2857c; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#111715; --surface:#19221f; --ink:#e4ebe7; --muted:#97a6a0; --line:#2b3732;
  --accent:#62c09a; --accent-ink:#0b1a14; --accent-soft:#1d3a2f; --warm:#e3a466; --warm-soft:#3a2a1b; --danger:#f2857c; color-scheme:dark}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.45;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:16px 120px}
h1,h2,h3{font-family:var(--display);margin:0;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:2rem;line-height:1.1}
.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}
.num{font-variant-numeric:tabular-nums}
button{font:inherit;cursor:pointer;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);min-height:44px;padding:8px 14px;font-weight:600}
button:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
button:disabled{opacity:.55;cursor:not-allowed}

.topo{max-width:720px;margin:0 auto 16px;display:grid;gap:10px}
.topo-linha{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.idiomas{display:flex;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:3px}
.idiomas button{border:0;border-radius:99px;min-height:38px;padding:6px 14px;background:transparent;color:var(--muted)}
.idiomas button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
.mesa-faixa{background:var(--accent);color:var(--accent-ink);border-radius:var(--r);padding:10px 14px;font-weight:700;font-size:1.05rem}
.aviso{margin:0;background:var(--warm-soft);border-radius:var(--r);padding:10px 14px;font-size:.95rem}

.menu{max-width:720px;margin:0 auto;display:grid;gap:22px}
.categoria{display:grid;gap:10px}
.categoria h2{font-size:1.25rem;color:var(--warm)}
.item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center}
.item-nome{font-weight:700;font-size:1.05rem}
.item-desc{margin:0;color:var(--muted);font-size:.92rem}
.item-preco{font-weight:700;color:var(--accent);white-space:nowrap}
.item-acao{grid-column:1/-1;display:flex;justify-content:flex-end}
.passo{display:flex;align-items:center;gap:6px}
.passo button{width:44px;padding:0;font-size:1.2rem}
.passo .qtd{min-width:28px;text-align:center;font-weight:700}
.btn-add{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.vazio{color:var(--muted);text-align:center;padding:24px 0}

.barra{position:fixed;left:0;right:0;bottom:0;padding:12px max(16px,env(safe-area-inset-left,0px)) calc(12px + env(safe-area-inset-bottom,0px));
  background:linear-gradient(to top,var(--bg) 70%,transparent);z-index:5}
.btn-principal{width:100%;max-width:720px;display:block;margin:0 auto;background:var(--accent);color:var(--accent-ink);border-color:var(--accent);min-height:52px;font-size:1.05rem}
.btn-texto{border:0;background:transparent;color:var(--accent);min-height:44px}

.sacola,.feito{position:fixed;inset:0;background:rgb(0 0 0 / .45);z-index:10;display:grid;align-items:end}
.sacola-caixa,.feito-caixa{background:var(--bg);border-radius:20px 20px 0 0;max-height:88vh;overflow:auto;display:grid;gap:12px;
  padding:18px max(16px,env(safe-area-inset-left,0px)) calc(18px + env(safe-area-inset-bottom,0px));width:100%;max-width:720px;margin:0 auto}
.sacola-topo{display:flex;justify-content:space-between;align-items:center;gap:8px}
.sacola-itens{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sacola-itens li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.sacola-itens .sub{color:var(--muted);font-size:.9rem}
label{font-weight:600;font-size:.92rem}
textarea{font:inherit;font-size:16px;width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surface);color:var(--ink);resize:vertical}
.sacola-total{display:flex;justify-content:space-between;font-size:1.15rem}
.nota{margin:0;color:var(--muted);font-size:.92rem}
.erro{margin:0;color:var(--danger);font-weight:600;min-height:1.2em}
.feito-caixa{text-align:center;justify-items:center}
.feito-icone{width:64px;height:64px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:2rem;font-weight:700}
@media (prefers-reduced-motion:no-preference){.sacola-caixa,.feito-caixa{animation:sobe .2s ease-out}@keyframes sobe{from{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}}
