:root{--teal: #0f766e;--teal-dark: #115e59;--bg: #f8fafc;--card: #ffffff;--border: #e2e8f0;--text: #0f172a;--muted: #64748b;--danger: #dc2626;--ok: #16a34a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}h1{font-size:1.5rem}h2{font-size:1.1rem;margin:0 0 .5rem}code{background:#eef2f5;padding:0 .25rem;border-radius:4px}.container{max-width:640px;margin:0 auto;padding:1rem}.container.narrow{max-width:420px}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);font-weight:500}.ok{color:var(--ok);font-weight:500}.link{color:var(--teal);text-decoration:none}.topbar{display:flex;justify-content:space-between;align-items:center;background:var(--teal);color:#fff;padding:.75rem 1rem}.brand{color:#fff;font-weight:700;text-decoration:none;text-transform:capitalize}.cart-badge{color:#fff;text-decoration:none;font-size:1.2rem}.brand{display:inline-flex;align-items:center;gap:.5rem}.topbar-logo{height:32px;width:32px;object-fit:cover;border-radius:6px;background:#fff}.logo-row{display:flex;align-items:center;gap:1rem}.logo-preview{height:64px;width:64px;object-fit:cover;border-radius:10px;border:1px solid var(--border)}.logo-preview.empty{display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--muted);background:#f1f5f9}.grid{display:grid;gap:.75rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.card-body h3{margin:0 0 .25rem}.floating-cart{position:fixed;left:1rem;right:1rem;bottom:1rem;max-width:608px;margin:0 auto;background:var(--teal);color:#fff;text-align:center;padding:.9rem;border-radius:12px;text-decoration:none;font-weight:600;box-shadow:0 4px 14px #00000026}.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}input,select,textarea{width:100%;padding:.6rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;font-family:inherit}.row{display:flex;gap:.5rem}.row .small{max-width:90px}label{font-size:.9rem;color:var(--muted)}label.radio{display:flex;align-items:center;gap:.5rem;color:var(--text)}label.radio input{width:auto}button{padding:.55rem .9rem;border:1px solid var(--border);background:#fff;color:var(--text);border-radius:8px;cursor:pointer;font-size:.95rem}button:hover{background:#f1f5f9}button.primary{background:var(--teal);color:#fff;border-color:var(--teal)}button.primary:hover{background:var(--teal-dark)}button.primary:disabled{opacity:.5;cursor:not-allowed}button.big{width:100%;padding:.9rem;font-size:1.05rem}button.danger{color:var(--danger);border-color:#fecaca}.line{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem 0}.line.total{font-weight:700;border-top:1px solid var(--border);margin-top:.25rem;padding-top:.5rem}.qty{display:inline-flex;align-items:center;gap:.5rem}.qty button{padding:.1rem .55rem}.totals .line{padding:.25rem 0}.tag{background:#e2e8f0;color:#334155;border-radius:999px;padding:.05rem .5rem;font-size:.75rem}.status-pill{display:inline-block;background:#ecfeff;color:var(--teal-dark);border:1px solid #99f6e4;border-radius:999px;padding:.2rem .7rem;font-weight:600}.pix .qr{width:220px;height:220px;align-self:center;image-rendering:pixelated}.painel{display:flex;min-height:100vh}.sidebar{width:220px;background:#0f172a;color:#cbd5e1;padding:1rem;display:flex;flex-direction:column;gap:.25rem}.sidebar .brand{color:#fff;font-size:1.1rem;margin-bottom:.25rem}.sidebar nav{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}.sidebar nav a{color:#cbd5e1;text-decoration:none;padding:.5rem .6rem;border-radius:8px}.sidebar nav a:hover{background:#1e293b}.sidebar nav a.active{background:var(--teal);color:#fff}.sidebar .logout{margin-top:auto;background:transparent;color:#cbd5e1;border-color:#334155}.painel-content{flex:1;padding:1.5rem;max-width:720px}.order .items-mini{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}.order .items-mini span{background:#f1f5f9;border-radius:6px;padding:.1rem .45rem;font-size:.85rem}@media (max-width: 640px){.painel{flex-direction:column}.sidebar{width:auto;flex-direction:row;flex-wrap:wrap;align-items:center}.sidebar nav{flex-direction:row;flex-wrap:wrap;margin-top:0}.sidebar .logout{margin-top:0}}
