/* Paleta e tipos do sistema do mercado: verde de gôndola, etiqueta amarela de preço. */
:root{
  --bg:#f3f5ef;--card:#ffffff;--fg:#16231d;--muted:#5b6b62;--line:#d7ddd3;--soft:#e8ece3;
  --brand:#155a3e;--brand-fg:#ffffff;--tag:#ffd23f;--tag-fg:#16231d;--zap:#1c8a4e;--zap-fg:#ffffff;
  --ok:#1f7a45;--ok-bg:#dff1e5;--warn:#8a4b0a;--warn-bg:#fdf0dc;--bad:#9d2b1d;--bad-bg:#fbe5e1;
  --display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--body:"Barlow",Arial,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0f1814;--card:#18231e;--fg:#ebf1e8;--muted:#a1b0a7;--line:#2f3d36;--soft:#22302a;
  --brand:#1f6b4b;--brand-fg:#ffffff;--tag:#ffd23f;--tag-fg:#16231d;--zap:#5fd394;--zap-fg:#0f1d17;
  --ok:#86d9a6;--ok-bg:#1d3a29;--warn:#f3c27d;--warn-bg:#3a2a12;--bad:#f2a091;--bad-bg:#3d1d18;color-scheme:dark}}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font:16px/1.45 var(--body);margin:0}
.topo{position:sticky;top:0;z-index:5;background:var(--brand);color:var(--brand-fg)}
.topo-in{max-width:1000px;margin:0 auto;padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between}
.topo nav{display:flex;gap:4px;flex-wrap:wrap}
.topo nav a{color:inherit;text-decoration:none;font:700 16px var(--display);padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.14)}
h1,h2,h3{font-family:var(--display);margin:0;line-height:1.05;text-wrap:balance}
h1{font-size:28px}h2{font-size:28px;display:flex;align-items:center;gap:10px}h3{font-size:21px}
h2 .n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--tag);color:var(--tag-fg);font-size:20px;flex:none}
.wrap{max-width:1000px;margin:0 auto;padding:18px max(16px,env(safe-area-inset-right,0px)) 60px max(16px,env(safe-area-inset-left,0px));display:grid;gap:22px}
section.bloco{display:grid;gap:12px;scroll-margin-top:70px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:12px;min-width:0}
.intro{color:var(--muted);margin:0}
select,input,textarea{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:9px 10px;min-width:0}
textarea{width:100%;min-height:90px;resize:vertical}
button,.btn{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--tag);outline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:9px;padding:10px 16px;font-weight:700;background:var(--brand);color:var(--brand-fg);text-decoration:none}
.btn.claro{background:var(--soft);color:var(--fg)}
.btn.amarelo{background:var(--tag);color:var(--tag-fg)}
.btn.zap{background:var(--zap);color:var(--zap-fg)}
.btn.peq{padding:6px 11px;font-size:14px}
.btn:disabled{opacity:.5;cursor:default}
.topo .btn.claro{background:rgba(255,255,255,.16);color:inherit}
.acoes{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.entre{justify-content:space-between}
.status{font-size:14px;color:var(--muted)}
.aviso{border-radius:10px;padding:10px 14px;background:var(--warn-bg);color:var(--warn)}
.aviso.ruim{background:var(--bad-bg);color:var(--bad)}
.aviso.bom{background:var(--ok-bg);color:var(--ok)}
.vazio{border:2px dashed var(--line);border-radius:12px;padding:16px;color:var(--muted);text-align:center}
.tabela{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
th,td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
th{font-size:13px;color:var(--muted);font-weight:600}
td.num,th.num{text-align:right}
.t-nome{width:100%;min-width:150px}
.t-qtd{width:70px;text-align:center}
.t-un{width:72px}
.t-preco{width:96px;text-align:right}
.x{border:0;background:none;color:var(--muted);font-size:22px;line-height:1;padding:4px 8px;border-radius:6px}
.conversa{display:grid;gap:8px;max-height:340px;overflow:auto;padding:4px}
.bolha{max-width:85%;padding:9px 12px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.bolha.pai{justify-self:end;background:var(--tag);color:var(--tag-fg);border-bottom-right-radius:4px}
.bolha.claude{justify-self:start;background:var(--soft);border-bottom-left-radius:4px}
.bolha small{display:block;font-size:12px;font-weight:600;opacity:.7;margin-bottom:2px}
.falar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.falar textarea{min-height:56px}
.pilula{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;border-radius:999px;padding:3px 10px;background:var(--soft);color:var(--muted)}
.pilula.ok{background:var(--ok-bg);color:var(--ok)}
.pilula.aviso{background:var(--warn-bg);color:var(--warn)}
.forn-lista{display:grid;gap:8px}
.forn-linha{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px}
.forn-linha input[type=checkbox]{width:20px;height:20px}
.forn-linha .info small{display:block;color:var(--muted)}
@media (max-width:640px){.forn-linha{grid-template-columns:auto minmax(0,1fr)}.forn-linha .acoes{grid-column:1/-1}}
.preco{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:8px;padding:5px 8px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:left}
.preco small{display:block;font-size:11px;opacity:.85}
.preco.escolhido{background:var(--tag);border-color:var(--tag);color:var(--tag-fg);font-weight:700}
.preco.melhor::after{content:" ★"}
.precos{display:flex;flex-wrap:wrap;gap:6px}
.resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.resumo .card{gap:4px;padding:14px}
.rotulo{font-size:13px;color:var(--muted);font-weight:600;letter-spacing:.03em;text-transform:uppercase}
.num-grande{font:700 32px/1 var(--display);font-variant-numeric:tabular-nums}
.pedido{border-left:5px solid var(--tag)}
.pedido h3{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.mensagem{white-space:pre-wrap;font:14px/1.5 ui-monospace,Menlo,Consolas,monospace;background:var(--soft);border-radius:10px;padding:12px;max-height:240px;overflow:auto;overflow-wrap:anywhere}
.login{max-width:420px;margin:8vh auto;padding:0 16px}
.login form{display:grid;gap:10px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
