/* Alice Admin Console — design tokens & refinements beyond Tailwind defaults.
   Kept intentionally small: Tailwind utility classes do the heavy lifting;
   this file only holds things utilities can't express cleanly. */

:root {
  --shadow-card: 0 1px 2px 0 rgb(0 0 0 / 0.04), 0 1px 3px 0 rgb(0 0 0 / 0.06);
  --shadow-card-hover: 0 4px 12px -2px rgb(0 0 0 / 0.08), 0 2px 4px -2px rgb(0 0 0 / 0.06);
}

* { -webkit-font-smoothing: antialiased; }

.card {
  background: #fff;
  border: 1px solid rgb(226 232 240);
  border-radius: 0.75rem;
  box-shadow: var(--shadow-card);
  transition: box-shadow 150ms ease, border-color 150ms ease;
}

.focus-ring:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

/* Skeleton loading shimmer */
.skeleton {
  background: linear-gradient(90deg, #eef1f6 25%, #e2e7f0 37%, #eef1f6 63%);
  background-size: 400% 100%;
  animation: shimmer 1.4s ease infinite;
  border-radius: 0.375rem;
}
@keyframes shimmer {
  0% { background-position: 100% 50%; }
  100% { background-position: 0 50%; }
}

/* Toast */
.toast-enter { animation: toast-in 200ms ease-out; }
@keyframes toast-in {
  from { opacity: 0; transform: translateY(-8px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Kanban column scroll */
.kanban-col { scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.kanban-col::-webkit-scrollbar { width: 6px; }
.kanban-col::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }

/* Route transition */
.route-enter { animation: route-fade 180ms ease-out; }
@keyframes route-fade {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}
