body {
    background-color: #f8fafc;
    color: #1e293b;
    transition: font-size 0.2s ease;
}

.tab-pane {
    animation: fadeIn 0.3s ease-in-out forwards;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Pulse and shake animations for floating action buttons */
@keyframes phoneRing {
    0% { transform: rotate(0) scale(1); }
    10% { transform: rotate(-15deg) scale(1.1); }
    20% { transform: rotate(15deg) scale(1.1); }
    30% { transform: rotate(-15deg) scale(1.1); }
    40% { transform: rotate(15deg) scale(1.1); }
    50% { transform: rotate(0) scale(1); }
    100% { transform: rotate(0) scale(1); }
}

.animate-ring {
    animation: phoneRing 2s infinite ease-in-out;
}

/* 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; }

#app { transition: all 0.2s ease; }