     .islamic-pattern {
            background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%231B5E20' fill-opacity='0.03'%3E%3Cpath d='M30 30c0-16.569-13.431-30-30-30v60c16.569 0 30-13.431 30-30zM0 30c0 16.569 13.431 30 30 30V0C13.431 0 0 13.431 0 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
        }
        
        .glass-morphism {
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }
        
        .text-gradient {
            background: linear-gradient(135deg, #1B5E20, #FFD700);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        
        .card-shadow {
            box-shadow: 0 8px 32px rgba(27, 94, 32, 0.1);
        }
        
        .card-shadow-hover {
            box-shadow: 0 12px 40px rgba(27, 94, 32, 0.2);
        }
        
        /* Mobile-first animations */
        @media (max-width: 768px) {
            .mobile-card {
                transform: translateY(0);
                transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            }
            
            .mobile-card:active {
                transform: scale(0.98) translateY(2px);
            }
            
            .mobile-icon {
                transition: all 0.2s ease;
            }
            
            .mobile-card:active .mobile-icon {
                transform: scale(1.1);
            }
        }
        
        .notification-dot {
            animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        }
        
        /* Enhanced mobile touch targets */
        .touch-target {
            min-height: 44px;
            min-width: 44px;
        }
        
        /* Status bar safe area */
        .safe-area-top {
            padding-top: env(safe-area-inset-top);
        }
        
        .safe-area-bottom {
            padding-bottom: env(safe-area-inset-bottom);
        }