/* CNCutt Business — estilos base */
:root { --brand: #1d72f1; }

* { -webkit-tap-highlight-color: transparent; }
body { font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; }

/* Scrollbar sutil */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Transições suaves */
.fade-in { animation: fadeIn .25s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* Sidebar link ativo */
.nav-link.active {
  background: rgba(29,114,241,.12);
  color: #1d72f1;
  font-weight: 600;
}
.nav-link.active i { color: #1d72f1; }

/* Badges de status */
.badge { display:inline-flex; align-items:center; gap:.35rem; padding:.15rem .6rem; border-radius:9999px; font-size:.72rem; font-weight:600; }
.badge-new     { background:#dbeafe; color:#1e40af; }
.badge-draft   { background:#f1f5f9; color:#475569; }
.badge-sent    { background:#fef9c3; color:#854d0e; }
.badge-closed  { background:#dcfce7; color:#166534; }
.badge-queued  { background:#e0e7ff; color:#3730a3; }
.badge-progress{ background:#fef3c7; color:#92400e; }
.badge-done    { background:#dcfce7; color:#166534; }

/* Card hover */
.hover-lift { transition: box-shadow .18s ease, transform .18s ease; }
.hover-lift:hover { box-shadow: 0 8px 24px -8px rgba(0,0,0,.15); transform: translateY(-1px); }

/* Toast */
.toast { animation: fadeIn .2s ease; }

/* Loading spinner */
.spinner { border:3px solid #e2e8f0; border-top-color: var(--brand); border-radius:50%; width:2rem; height:2rem; animation: spin .7s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* Inputs consistentes */
.field {
  width:100%; border:1px solid #cbd5e1; border-radius:.5rem; padding:.55rem .75rem;
  font-size:.9rem; outline:none; transition: border-color .15s, box-shadow .15s; background:#fff;
}
.field:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(29,114,241,.15); }
.label { display:block; font-size:.8rem; font-weight:600; color:#475569; margin-bottom:.3rem; }
