/* NovaSoft B2B Engineering - Design System (Zinc / Slate Edition) */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  color-scheme: dark;
}

body {
  background-color: #09090b; /* zinc-950 */
  color: #a1a1aa; /* zinc-400 */
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Subtle, fine dot matrix pattern */
.bg-subtle-grid {
  background-size: 32px 32px;
  background-image: radial-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  mask-image: radial-gradient(ellipse at center, black 35%, transparent 75%);
  -webkit-mask-image: radial-gradient(ellipse at center, black 35%, transparent 75%);
}

/* Custom Scrollbar for minimalist zinc feel */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: #09090b;
}

::-webkit-scrollbar-thumb {
  background: #27272a; /* zinc-800 */
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #3f3f46; /* zinc-700 */
}

/* Bento Card Style */
.bento-card {
  background: rgba(24, 24, 27, 0.45); /* zinc-900/45 */
  border: 1px solid rgba(39, 39, 42, 0.8); /* zinc-800/80 */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: border-color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

.bento-card:hover {
  border-color: rgba(63, 63, 70, 0.9); /* zinc-700 */
  background: rgba(24, 24, 27, 0.7);
}

/* Clean Input Field */
.form-input {
  background-color: rgba(9, 9, 11, 0.85);
  border: 1px solid rgba(39, 39, 42, 0.9);
  color: #f4f4f5;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-input:focus {
  border-color: #71717a;
  outline: none;
  box-shadow: 0 0 0 1px #71717a;
}

/* Toast Animation */
@keyframes toastIn {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.97);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.toast-enter {
  animation: toastIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
