*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--bg-base);color:var(--text-secondary);font-family:var(--font-corpo);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.5}h1,h2,h3{font-family:var(--font-titulo);color:var(--text-primary);margin:0;font-weight:700;line-height:1.2}p{margin:0}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.menu{max-width:640px;min-height:100dvh;padding-bottom:calc(104px + env(safe-area-inset-bottom));margin:0 auto}.topo-menu{padding:calc(var(--e5) + env(safe-area-inset-top)) var(--e4) var(--e3)}.topo-menu h1{text-wrap:balance;font-size:22px}.topo-menu p{color:var(--text-tertiary);margin-top:2px;font-size:14px}.topo-menu .botao{margin-top:var(--e3)}.topo-linha{justify-content:space-between;align-items:center;gap:var(--e3);margin-top:2px;display:flex}.topo-linha p{min-width:0;margin-top:0}.seletor-idioma{color:var(--text-secondary);flex:none;align-items:center;display:inline-flex;position:relative}.seletor-idioma svg{pointer-events:none;position:absolute;left:12px}.seletor-idioma select{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--raio-pilula);min-height:44px;font:inherit;color:var(--text-primary);cursor:pointer;padding:0 12px 0 34px;font-size:16px}.seletor-idioma select:focus-visible{border-color:var(--border-focus)}.so-leitor{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ecra-centro{justify-content:center;align-items:center;gap:var(--e3);min-height:100dvh;padding:var(--e6) var(--e5);text-align:center;flex-direction:column;display:flex}.ecra-centro h1{font-size:26px}.ecra-centro p{max-width:34ch}.botao{justify-content:center;align-items:center;gap:var(--e2);min-height:44px;padding:0 var(--e4);background:var(--bg-surface-raised);border:1px solid var(--border-strong);border-radius:var(--raio-botao);font-family:var(--font-titulo);color:var(--text-primary);cursor:pointer;font-size:15px;font-weight:700;display:inline-flex}.botao:disabled{opacity:.5;cursor:not-allowed}.botao-primario{background:var(--brand-orange-deep);color:#fff;border-color:#0000;width:100%;min-height:56px;font-size:19px}.botao-primario:active:not(:disabled){background:var(--brand-orange);color:var(--bg-base)}@media (hover:hover){.botao-primario:hover:not(:disabled){background:var(--brand-orange);color:var(--bg-base)}}.botao-primario:disabled{background:var(--bg-surface-raised);color:var(--text-disabled);opacity:1}.botao-bloco{width:100%}.icone{border:1px solid var(--border-default);border-radius:var(--raio-pilula);width:44px;height:44px;color:var(--text-primary);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:inline-flex}.icone:disabled{opacity:.35;cursor:not-allowed}.ligacao{color:var(--brand-orange);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.categorias{z-index:10;gap:var(--e2);padding:var(--e3) var(--e4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border-subtle);scrollbar-width:none;background:#0d0d0df0;display:flex;position:sticky;top:0;overflow-x:auto}.categorias::-webkit-scrollbar{display:none}.categoria-chip{min-height:40px;padding:0 var(--e4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--raio-pilula);color:var(--text-secondary);white-space:nowrap;cursor:pointer;flex:none;font-size:15px;font-weight:600}.categoria-chip[aria-current=true]{border-color:var(--brand-orange);color:var(--brand-orange);background:#ff8a0014}.seccao{padding:var(--e5) var(--e4) 0;scroll-margin-top:72px}.seccao h2{margin-bottom:var(--e1);font-size:20px}.produto{align-items:center;gap:var(--e3);padding:var(--e4) 0;border-bottom:1px solid var(--border-subtle);display:flex}.produto-corpo{text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;gap:4px;min-width:0;padding:0;display:flex}div.produto-corpo{cursor:default}.produto-nome{color:var(--text-primary);font-size:17px;font-weight:600}.produto-descricao{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}.produto-preco{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.produto-foto{background:var(--bg-surface-raised);border-radius:var(--raio-interno);object-fit:cover;flex:none;width:88px;height:88px}.produto-adicionar{border:1px solid var(--brand-orange);border-radius:var(--raio-pilula);width:48px;height:48px;color:var(--brand-orange);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:inline-flex}.produto-adicionar:active:not(:disabled){background:#ff8a0026}.produto-adicionar:disabled{opacity:.4}.barra-fundo{z-index:20;padding:var(--e5) var(--e4) calc(var(--e3) + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg-base) 72%, #0d0d0d00);pointer-events:none;position:fixed;bottom:0;left:0;right:0}.barra-fundo-interior{gap:var(--e2);pointer-events:auto;max-width:608px;margin:0 auto;display:flex}.barra-fundo .botao{flex:1;min-height:56px}.faixa{align-items:flex-start;gap:var(--e2);margin:0 var(--e4) var(--e3);padding:var(--e3) var(--e4);background:var(--bg-surface);border:1px solid var(--state-warning);border-radius:var(--raio-interno);color:var(--state-warning);font-weight:600;display:flex}.faixa svg{flex:none;margin-top:2px}.faixa-acoes{flex-wrap:wrap}.faixa-botoes{gap:var(--e4);margin-left:auto;display:flex}.faixa-dentro{margin:0;font-weight:400}.levar-numero{align-items:center;gap:var(--e3) var(--e5);margin:0 var(--e4) var(--e3);padding:var(--e4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--raio-card);flex-wrap:wrap;display:flex}.levar-numero-rotulo{color:var(--text-tertiary);font-size:13px;font-weight:600}.levar-numero-valor{font-family:var(--font-titulo);color:var(--text-primary);font-size:44px;font-weight:700;line-height:1.1}.levar-numero-estado{flex-direction:column;flex:180px;align-items:flex-start;gap:6px;display:flex}.levar-numero-estado .nota{text-align:left}.entrega-estado{gap:var(--e3);margin:0 var(--e4) var(--e3);padding:var(--e4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--raio-card);flex-direction:column;display:flex}.entrega-estado-topo{align-items:flex-start;gap:var(--e3);color:var(--text-primary);display:flex}.entrega-estado-rotulo{color:var(--text-tertiary);font-size:13px;font-weight:600}.entrega-estado-morada{color:var(--text-primary);font-weight:600}.entrega-estado-fundo{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.entrega-estado-fundo .nota{text-align:left}.entrega-zonas{margin-top:var(--e4);padding-top:var(--e3);border-top:1px solid var(--border-default)}.entrega-zonas-titulo{color:var(--text-tertiary);margin-bottom:6px;font-size:13px;font-weight:600}.entrega-zonas ul{flex-direction:column;gap:4px;list-style:none;display:flex}.entrega-zonas li{justify-content:space-between;gap:var(--e2);color:var(--text-secondary);flex-wrap:wrap;font-size:14px;display:flex}.linha-extra{font-family:var(--font-corpo);color:var(--text-secondary);font-size:14px;font-weight:600}.levar-pronto{color:var(--state-ready);font-weight:700}.aviso{top:calc(var(--e3) + env(safe-area-inset-top));z-index:60;align-items:flex-start;gap:var(--e2);width:min(600px,100% - 32px);padding:var(--e3) var(--e4);background:var(--bg-surface-raised);border-radius:var(--raio-interno);box-shadow:var(--sombra-popup);border:1px solid;font-weight:600;display:flex;position:fixed;left:50%;transform:translate(-50%)}.aviso svg{flex:none;margin-top:2px}.aviso span{color:var(--text-primary)}.aviso-ok{color:var(--state-ready)}.aviso-erro{color:var(--state-danger)}.nota{color:var(--text-tertiary);text-align:center;font-size:13px}.folha-fundo{z-index:50;background:var(--bg-overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.folha{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--raio-card) var(--raio-card) 0 0;border-bottom:0;outline:none;flex-direction:column;width:100%;max-width:640px;max-height:92dvh;display:flex}.folha-topo{justify-content:space-between;align-items:center;gap:var(--e3);padding:var(--e4) var(--e4) var(--e2);display:flex}.folha-topo h2{font-size:20px}.folha-corpo{gap:var(--e4);padding:0 var(--e4) var(--e4);flex-direction:column;display:flex;overflow-y:auto}.folha-rodape{gap:var(--e3);padding:var(--e3) var(--e4) calc(var(--e3) + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);flex-direction:column;display:flex}.folha-foto{border-radius:var(--raio-interno);object-fit:cover;width:100%;max-height:220px}.grupo{border:0;margin:0;padding:0}.grupo legend{margin-bottom:var(--e1);font-size:14px;font-weight:600}.opcao{align-items:center;gap:var(--e3);border-bottom:1px solid var(--border-subtle);min-height:48px;color:var(--text-primary);cursor:pointer;display:flex}.opcao input{width:22px;height:22px;accent-color:var(--brand-orange)}.opcao-preco{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:auto}.campo{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.campo input,.campo textarea{background:var(--bg-base);border:1px solid var(--border-strong);border-radius:var(--raio-botao);color:var(--text-primary);padding:10px 12px;font-size:16px;font-weight:400}.campo input:focus,.campo textarea:focus{border-color:var(--border-focus);outline:none}.erro-campo{color:var(--state-danger);font-size:14px;font-weight:600}.form-conta{gap:var(--e4);flex-direction:column;display:flex}.segmentos{gap:var(--e2);grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.segmento{min-height:52px;padding:0 var(--e2);background:var(--bg-surface-raised);border:1px solid var(--border-strong);border-radius:var(--raio-botao);font-family:var(--font-titulo);color:var(--text-primary);cursor:pointer;font-size:15px;font-weight:700}.segmento[aria-pressed=true]{border-color:var(--brand-orange);box-shadow:inset 0 0 0 1px var(--brand-orange);color:var(--brand-orange)}.linha-quantidade{color:var(--text-primary);justify-content:space-between;align-items:center;font-weight:600;display:flex}.quantidade{align-items:center;gap:var(--e2);display:inline-flex}.quantidade span{min-width:32px;font-family:var(--font-titulo);color:var(--text-primary);text-align:center;font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.linha-total{font-family:var(--font-titulo);color:var(--text-primary);justify-content:space-between;align-items:baseline;font-weight:700;display:flex}.linha-total strong{color:var(--brand-orange);font-size:26px}.item{align-items:center;gap:var(--e3);padding:var(--e3) 0;border-bottom:1px solid var(--border-subtle);display:flex}.item-texto{flex:1;min-width:0}.item-nome{color:var(--text-primary);font-weight:600}.item-detalhe{color:var(--text-tertiary);font-size:14px}.item-preco{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.pedido{gap:var(--e2);padding:var(--e3) 0;border-bottom:1px solid var(--border-subtle);flex-direction:column;display:flex}.pedido-topo{justify-content:space-between;align-items:center;gap:var(--e2);flex-wrap:wrap;display:flex}.pedido-topo h3{font-size:16px}.pedido-item{justify-content:space-between;align-items:center;gap:var(--e2);color:var(--text-primary);flex-wrap:wrap;display:flex}.chip{background:var(--bg-surface);border-radius:var(--raio-pilula);white-space:nowrap;border:1px solid;align-items:center;gap:6px;padding:4px 12px 4px 10px;font-size:13px;font-weight:600;line-height:1.2;display:inline-flex}.chip-novo{color:var(--state-new)}.chip-progresso{color:var(--state-progress)}.chip-pronto{color:var(--state-ready)}.chip-aviso{color:var(--state-warning)}.chip-perigo{color:var(--state-danger)}.chip-pago{color:var(--state-paid)}.chip-neutro{color:var(--text-tertiary)}.consumo-vazio{padding:var(--e4) 0;color:var(--text-tertiary)}.linha-total-consumo{margin:var(--e4) 0 var(--e3)}.rodape-tablet{padding:var(--e6) var(--e4) 0;justify-content:center;display:flex}.botao-tablet{color:var(--text-secondary);font-size:14px}.produto-menu{padding-left:var(--e3);border-left:3px solid var(--brand-orange-deeper)}.etiqueta-menu{background:var(--brand-orange-deeper);color:#fff;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.opcao-descricao{color:var(--text-secondary);font-size:13px;display:block}.nota-legenda{color:var(--text-tertiary);font-weight:400}
