.alert-container {
            width: 100%;
            max-width: 500px;
        }
        
        .alert {
            position: relative;
            padding: 20px 25px;
            margin-bottom: 20px;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
            color: white;
            display: flex;
            align-items: center;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 0.5s forwards;
            transition: all 0.3s ease;
        }
        
        .alert:hover {
            transform: translateY(-3px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
        }
        
        .alert-success {
            background: linear-gradient(135deg, #4CAF50, #45a049);
            border-left: 5px solid #2E7D32;
        }
        
        .alert-warning {
            background: linear-gradient(135deg, #FF9800, #F57C00);
            border-left: 5px solid #E65100;
        }
        
        .alert-error {
            background: linear-gradient(135deg, #f44336, #d32f2f);
            border-left: 5px solid #b71c1c;
        }
        
        .alert-info {
            background: linear-gradient(135deg, #2196F3, #1976D2);
            border-left: 5px solid #0D47A1;
        }
        
        .alert-icon {
            font-size: 24px;
            margin-right: 15px;
        }
        
        .alert-content {
            flex: 1;
        }
        
        .alert-title {
            font-weight: 600;
            margin-bottom: 5px;
            font-size: 18px;
        }
        
        .alert-message {
            font-size: 15px;
            opacity: 0.9;
        }
        
        .alert-close {
            background: none;
            border: none;
            color: white;
            font-size: 20px;
            cursor: pointer;
            opacity: 0.7;
            transition: opacity 0.3s;
            margin-left: 15px;
        }
        
        .alert-close:hover {
            opacity: 1;
        }
        
        .alert-buttons {
            display: flex;
            justify-content: flex-end;
            margin-top: 10px;
            gap: 10px;
        }
        
        .alert-btn {
            padding: 8px 16px;
            border: none;
            border-radius: 6px;
            cursor: pointer;
            font-weight: 500;
            transition: all 0.3s;
        }
        
        .alert-btn-primary {
            background: rgba(255, 255, 255, 0.2);
            color: white;
        }
        
        .alert-btn-primary:hover {
            background: rgba(255, 255, 255, 0.3);
        }
        
        .alert-btn-secondary {
            background: rgba(255, 255, 255, 0.1);
            color: white;
        }
        
        .alert-btn-secondary:hover {
            background: rgba(255, 255, 255, 0.2);
        }
        
        @keyframes fadeInUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        .demo-button {
            display: block;
            width: 100%;
            padding: 15px;
            background: white;
            color: #764ba2;
            border: none;
            border-radius: 12px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            margin-top: 30px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            transition: all 0.3s;
        }
        
        .demo-button:hover {
            transform: translateY(-3px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
        }
        
        .delay-1 { animation-delay: 0.2s; }
        .delay-2 { animation-delay: 0.4s; }
        .delay-3 { animation-delay: 0.6s; }
        .delay-4 { animation-delay: 0.8s; }