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

body {
    font-family: 'Inter', sans-serif;
}

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

/* Sidebar Animation */
.custom-sidebar {
    transition: width 0.3s ease, transform 0.3s ease;
}

/* Fade In Animation */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fade-in {
    animation: fadeIn 0.4s ease-out forwards;
}

/* Status Badges */
.badge {
    @apply px-2.5 py-0.5 rounded-full text-xs font-bold;
}
.badge-success { @apply bg-green-100 text-green-700; }
.badge-warning { @apply bg-yellow-100 text-yellow-700; }
.badge-danger { @apply bg-red-100 text-red-700; }
.badge-info { @apply bg-blue-100 text-blue-700; }

/* TOTP Input Styling */
.totp-input {
    text-align: center;
    transition: all 0.2s;
}
.totp-input:focus {
    transform: scale(1.05);
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.2);
}

/* Toast Notification */
.toast {
    animation: slideInRight 0.3s ease-out forwards;
}
@keyframes slideInRight {
    from { opacity: 0; transform: translateX(100%); }
    to { opacity: 1; transform: translateX(0); }
}