:root{--bg:#f4f5f7;--surface:#fff;--line:#e2e5ea;--line-strong:#c9ced7;--text:#1c2027;--muted:#6b7280;--accent:#1f5f4e;--accent-soft:#e6f0ec;--warn:#b45309;--danger:#b91c1c;--ok:#15803d;--radius:10px;--shadow:0 1px 3px rgba(16,24,40,.08), 0 8px 24px rgba(16,24,40,.06)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}button{font:inherit;cursor:pointer}input{font:inherit}.hide{display:none!important}header.top{position:sticky;top:0;z-index:30;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:10px 18px}.brand{font-weight:700;letter-spacing:.5px}.brand span{color:var(--accent)}.badge-proto{background:#fef3c7;color:#92400e;border:1px solid #fcd34d;border-radius:99px;padding:2px 9px;font-size:11px;font-weight:600}.top .spacer{flex:1}.ctx{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.ctx b{color:var(--text)}.linkbtn{background:none;border:none;color:var(--accent);font-weight:600;padding:4px 6px;border-radius:6px}.linkbtn:hover{background:var(--accent-soft)}main{max-width:1180px;margin:0 auto;padding:22px 18px 120px}h1{font-size:20px;margin:0 0 4px}h2{font-size:16px;margin:0 0 12px}.sub{color:var(--muted);margin:0 0 20px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-weight:600}.btn:hover{filter:brightness(1.08)}.btn.ghost{background:var(--surface);color:var(--text);border:1px solid var(--line-strong)}.btn.ghost:hover{background:#f7f8fa;filter:none}.btn.sm{padding:6px 12px;font-size:13px}.login-wrap{min-height:70vh;display:grid;place-items:center}.login{width:380px;padding:28px}.login h1{text-align:center;margin-bottom:2px}.login p.sub{text-align:center}.field{margin-bottom:12px}.field label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:5px}.field input{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px}.perfil{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 18px}.perfil button{padding:12px 8px;border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;text-align:center;font-weight:600}.perfil button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.perfil small{display:block;font-weight:400;color:var(--muted);font-size:11px;margin-top:2px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.search{flex:1;min-width:220px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}table{width:100%;border-collapse:collapse;background:var(--surface)}thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--line);font-weight:600}tbody td{padding:12px 14px;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:none}tbody tr.click{cursor:pointer}tbody tr.click:hover{background:#f8fafb}.num{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-block;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap}.st-rascunho{background:#eef2f7;color:#475569}.st-pendente{background:#fef3c7;color:#92400e}.st-aprovado{background:#dcfce7;color:#166534}.st-conferencia{background:#e0e7ff;color:#3730a3}.st-faturado{background:#e5e7eb;color:#374151}.banners{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.banner{border:none;padding:0;border-radius:var(--radius);overflow:hidden;text-align:left;box-shadow:var(--shadow);color:#fff;min-height:170px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;background-size:cover}.banner:hover{transform:translateY(-2px);transition:transform .12s}.banner .bg{position:absolute;top:0;right:0;bottom:0;left:0}.banner .txt{position:relative;padding:16px 18px;background:linear-gradient(transparent,#0000009e)}.banner .txt h3{margin:0 0 3px;font-size:18px}.banner .txt p{margin:0;font-size:12.5px;opacity:.92}.banner .tag{position:absolute;top:12px;left:14px;background:#ffffffeb;color:#111;border-radius:99px;padding:3px 10px;font-size:11px;font-weight:700}.grid-prod{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.prod{padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;overflow:hidden;text-align:left;box-shadow:var(--shadow)}.prod:hover{border-color:var(--accent)}.prod .foto{height:250px;position:relative;overflow:hidden}.prod .carrossel{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.prod .carrossel::-webkit-scrollbar{display:none}.prod .foto-img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;display:block;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.prod .dots{position:absolute;left:0;right:0;bottom:9px;display:flex;justify-content:center;gap:5px;z-index:2}.prod .dots .dot{width:14px;height:14px;cursor:pointer;padding:0;flex:none;transition:transform .12s,box-shadow .12s}.prod .dots .dot.on{transform:scale(1.35);box-shadow:0 0 0 2px var(--accent),0 1px 3px #0006}.prod .info{padding:11px 13px 13px}.prod .cod{font-size:11px;color:var(--muted);font-weight:600}.prod .nome{font-size:13px;line-height:1.35;height:36px;overflow:hidden;margin:3px 0 8px}.prod .preco{font-weight:700;font-size:15px}.prod .lanc{display:block;margin-top:6px;font-size:12px;color:var(--accent);font-weight:600}.dot{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #0000004d}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--surface);border-radius:12px;width:min(920px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 50px #00000040}.modal header{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;gap:12px}.modal header h2{margin:0 0 2px;font-size:16px}.modal header .cod{font-size:12px;color:var(--muted)}.modal .body{padding:14px 20px;overflow:auto}.modal footer{padding:14px 20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px}.modal footer .spacer{flex:1}.fechar{background:none;border:none;font-size:22px;color:var(--muted);line-height:1;padding:0 4px}table.grade{border-collapse:separate;border-spacing:0;width:100%}table.grade th,table.grade td{border-bottom:1px solid var(--line);padding:6px 4px;text-align:center}table.grade th.cor,table.grade td.cor{text-align:left;padding-left:6px;min-width:170px}table.grade thead th{font-size:12px;color:var(--muted);text-transform:none;letter-spacing:0}.corcel{display:flex;align-items:center;gap:8px;font-size:13px}.corcel .dot{width:18px;height:18px;border:1px solid var(--line-strong);box-shadow:none}.mini{width:38px;height:50px;object-fit:cover;border-radius:5px;border:1px solid var(--line);background:#fafafa;flex:none}td.cell input{width:46px;padding:6px 2px;text-align:center;border:1px solid var(--line-strong);border-radius:6px;font-variant-numeric:tabular-nums}td.cell input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}td.cell input.tem{background:var(--accent-soft);border-color:var(--accent);font-weight:700}td.cell input:disabled{background:#f1f2f4;color:#b6bcc5;border-style:dashed}.saldo{display:block;font-size:10.5px;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums}.saldo.zero{color:#c0c6cf}tr.total td,td.tot{font-weight:700;background:#fafbfc}.grade-hint{font-size:12px;color:var(--muted);margin:0 0 10px}.cartbar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--surface);border-top:1px solid var(--line-strong);box-shadow:0 -4px 16px #10182814}.cartbar .inner{max-width:1180px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;gap:16px}.cartbar .resumo{display:flex;gap:22px;align-items:baseline}.cartbar .resumo .k{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);display:block}.cartbar .resumo .v{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}.cartbar .spacer{flex:1}.riscado{text-decoration:line-through;color:var(--muted);font-weight:400;font-size:.88em}.promo{color:var(--accent)}.off{background:var(--accent-soft);color:var(--accent);border-radius:99px;padding:1px 7px;font-size:11px;font-weight:700;white-space:nowrap}@media(max-width:560px){main{padding:16px 12px 132px}.grid-prod{grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:12px}.prod .foto{height:215px}.cartbar .resumo{gap:14px}.cartbar .resumo .v{font-size:16px}}.empty{padding:40px;text-align:center;color:var(--muted)}.obs{font-size:12px;color:var(--muted);margin-top:10px}
