@import "tailwindcss";

@layer utilities {
    * { font-family: 'Plus Jakarta Sans', sans-serif; }
    .gradient-primary { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); }
    .gradient-success { background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%); }
    .gradient-warning { background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); }
    .gradient-info { background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); }
    .card-shadow { box-shadow: 0 10px 40px -10px rgba(0,0,0,0.15); }
    .nav-shadow { box-shadow: 0 -4px 20px rgba(0,0,0,0.1); }
    .pulse-animation { animation: pulse 2s infinite; }
    @keyframes pulse {
      0%, 100% { transform: scale(1); opacity: 1; }
      50% { transform: scale(1.05); opacity: 0.8; }
    }
    .slide-up { animation: slideUp 0.3s ease-out; }
    @keyframes slideUp {
      from { transform: translateY(20px); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }
    .face-scanner {
      background: conic-gradient(from 0deg, transparent 0deg, #667eea 30deg, transparent 60deg);
      animation: scan 2s linear infinite;
    }
    @keyframes scan {
      from { transform: rotate(0deg); }
      to { transform: rotate(360deg); }
    }
    .toast {
      animation: toastIn 0.3s ease-out, toastOut 0.3s ease-in 2.7s forwards;
    }
    @keyframes toastIn {
      from { transform: translateY(-100px); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }
    @keyframes toastOut {
      from { transform: translateY(0); opacity: 1; }
      to { transform: translateY(-100px); opacity: 0; }
    }
    .tab-active { border-bottom: 3px solid #667eea; color: #667eea; }
    ::-webkit-scrollbar { width: 4px; height: 4px; }
    ::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 10px; }
    ::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 10px; }
    ::-webkit-scrollbar-thumb:hover { background: #a1a1a1; }
}
