:root{--red: #c0392b;--red-dark: #a93226;--bg: #f5f5f5;--surface: #ffffff;--border: #e0e0e0;--text: #1a1a1a;--muted: #666666;--shadow: 0 2px 8px rgba(0,0,0,.1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);min-height:100dvh;max-width:480px;margin:0 auto}.header{background:var(--red);color:#fff;padding:16px 16px 12px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow)}.header-title{font-size:1.2rem;font-weight:700}.header-back{background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;padding:4px 8px}.cart-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;position:relative;padding:4px 8px}.cart-badge{position:absolute;top:0;right:0;background:#fff;color:var(--red);border-radius:50%;width:18px;height:18px;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center}.category{padding:0 12px}.category-name{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--red);padding:16px 4px 8px}.product-card{background:var(--surface);border-radius:10px;margin-bottom:8px;display:flex;align-items:center;padding:12px;box-shadow:var(--shadow);gap:12px;cursor:pointer;transition:transform .1s}.product-card:active{transform:scale(.98)}.product-card.esgotado{opacity:.55;cursor:not-allowed}.product-emoji{font-size:2rem;flex-shrink:0}.product-info{flex:1}.product-name{font-weight:600;font-size:.95rem}.product-desc{font-size:.8rem;color:var(--muted);margin-top:2px}.product-price{font-weight:700;color:var(--red);font-size:.95rem;margin-top:4px}.product-badge{font-size:.7rem;background:#eee;color:var(--muted);padding:2px 6px;border-radius:4px;white-space:nowrap}.add-btn{background:var(--red);color:#fff;border:none;border-radius:8px;width:34px;height:34px;font-size:1.3rem;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.page{padding:12px}.cart-item{background:var(--surface);border-radius:10px;padding:12px;margin-bottom:8px;box-shadow:var(--shadow)}.cart-item-header{display:flex;align-items:center;justify-content:space-between}.cart-item-name{font-weight:600;font-size:.95rem}.cart-item-price{color:var(--red);font-weight:700;font-size:.9rem}.qty-row{display:flex;align-items:center;gap:10px;margin-top:8px}.qty-btn{background:var(--red);color:#fff;border:none;border-radius:6px;width:28px;height:28px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.qty-val{font-weight:600;min-width:20px;text-align:center}.obs-input{width:100%;border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:.82rem;color:var(--text);margin-top:8px;background:var(--bg)}.obs-input:focus{outline:2px solid var(--red)}.cart-empty{text-align:center;padding:48px 0;color:var(--muted);font-size:1.1rem}.total-row{background:var(--surface);border-radius:10px;padding:14px;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:1.05rem;margin:12px 0;box-shadow:var(--shadow)}.section-title{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red);margin:16px 0 8px}.field{margin-bottom:10px}.field label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:4px}.field input,.field select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:.95rem;background:var(--surface)}.field input:focus,.field select:focus{outline:2px solid var(--red)}.toggle-row{display:flex;gap:8px;margin-bottom:10px}.toggle-btn{flex:1;padding:10px;border-radius:8px;border:2px solid var(--border);background:var(--surface);font-weight:600;cursor:pointer;font-size:.9rem;transition:all .15s}.toggle-btn.active{border-color:var(--red);background:#fdecea;color:var(--red)}.error-box{background:#fdecea;border:1px solid var(--red);border-radius:8px;padding:10px 12px;color:var(--red-dark);font-size:.88rem;margin:8px 0}.btn-primary{background:var(--red);color:#fff;border:none;border-radius:10px;padding:14px;width:100%;font-size:1rem;font-weight:700;cursor:pointer;margin-top:12px;transition:background .15s}.btn-primary:hover{background:var(--red-dark)}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:12px;width:100%;font-size:.95rem;font-weight:600;cursor:pointer;margin-top:8px}.pix-page{padding:20px 16px;text-align:center}.pix-qr{background:var(--surface);border-radius:12px;padding:16px;margin:16px 0;box-shadow:var(--shadow)}.pix-qr img{max-width:220px;width:100%}.pix-payload{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px;font-size:.78rem;word-break:break-all;color:var(--muted);margin:8px 0}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:700;margin:8px 0}.status-PENDENTE{background:#fff3cd;color:#856404}.status-CONFIRMADO{background:#d4edda;color:#155724}.status-FALHOU{background:#f8d7da;color:#721c24}.confirmado-page{padding:40px 20px;text-align:center}.confirmado-icon{font-size:4rem;margin-bottom:16px}.confirmado-title{font-size:1.4rem;font-weight:700;margin-bottom:8px}.confirmado-sub{color:var(--muted);margin-bottom:24px}.spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle;margin-right:6px}@keyframes spin{to{transform:rotate(360deg)}}.loading-page{display:flex;justify-content:center;align-items:center;min-height:200px;color:var(--muted);gap:10px}
