import "package:flutter/material.dart";
import "package:google_fonts/google_fonts.dart";
import "../theme/ensup_colors.dart";

/// Carte de profil de l'étudiant identifié (accueil).
class ProfileCard extends StatelessWidget {
  const ProfileCard({
    super.key,
    required this.name,
    required this.subtitle,
    required this.initials,
  });

  final String name;
  final String subtitle;
  final String initials;

  @override
  Widget build(BuildContext context) {
    return Container(
      padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 14),
      decoration: BoxDecoration(
        gradient: LinearGradient(
          colors: [
            EnsupColors.cyan.withValues(alpha: 0.06),
            EnsupColors.teal.withValues(alpha: 0.04),
          ],
        ),
        borderRadius: BorderRadius.circular(12),
        border: Border.all(color: EnsupColors.cyan.withValues(alpha: 0.15), width: 1.5),
      ),
      child: Row(
        children: [
          Container(
            width: 48,
            height: 48,
            decoration: const BoxDecoration(
              shape: BoxShape.circle,
              gradient: LinearGradient(colors: [EnsupColors.teal, EnsupColors.cyan]),
            ),
            alignment: Alignment.center,
            child: Text(
              initials,
              style: GoogleFonts.darkerGrotesque(
                color: Colors.white,
                fontWeight: FontWeight.w900,
                fontSize: 18,
              ),
            ),
          ),
          const SizedBox(width: 14),
          Expanded(
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: [
                Text(
                  name,
                  style: GoogleFonts.darkerGrotesque(
                    fontWeight: FontWeight.w800,
                    fontSize: 20,
                    color: EnsupColors.text,
                  ),
                ),
                const SizedBox(height: 2),
                Text(
                  subtitle,
                  style: GoogleFonts.titilliumWeb(fontSize: 12, color: EnsupColors.muted),
                ),
              ],
            ),
          ),
          Container(
            padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 5),
            decoration: BoxDecoration(
              color: EnsupColors.green.withValues(alpha: 0.12),
              borderRadius: BorderRadius.circular(999),
            ),
            child: Text(
              "Connecté",
              style: GoogleFonts.titilliumWeb(
                fontSize: 12,
                fontWeight: FontWeight.w600,
                color: EnsupColors.green,
              ),
            ),
          ),
        ],
      ),
    );
  }
}
