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

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

.fade-in { animation: fadeIn .25s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px);} to { opacity:1; transform:none;} }

.spin { animation: spin 0.8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* sortable table headers */
th.sortable { cursor: pointer; user-select: none; }
th.sortable:hover { background: #f1f5f9; }

/* nav active */
.nav-active { background: #1d4ed8; color: #fff; }

/* table row hover */
tbody tr.clickable:hover { background: #f8fafc; }

/* status badges */
.badge { display:inline-flex; align-items:center; padding:2px 10px; border-radius:9999px; font-size:11px; font-weight:600; }

/* toast */
.toast { min-width: 240px; padding: 12px 16px; border-radius: 8px; color:#fff; box-shadow: 0 10px 25px rgba(0,0,0,.15); animation: fadeIn .2s ease; }
