  html,
    body {
      height: 100%;
      margin: 0;
      padding: 0;
      overflow: hidden;
      background: black;
    }

    body {
      display: flex;
      align-items: center;
      justify-content: center;
      background-image: url('./../img/nuxbot.webp');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      opacity: 0;
    }

    /* Effet fade-in */
    body.fade-in {
      animation: fadeIn 1s forwards;
    }

    @keyframes fadeIn {
      to {
        opacity: 1;
      }
    }

    /* Terminal Simulation Style pour le terminal en haut à gauche */
    .terminal {
      position: absolute;
      top: 40px;
      left: 20px;
      width: 500px;
      height: 300px;
      overflow: hidden;
      font-family: monospace;
      color: #ffffff;
      background-color: rgba(0, 0, 0, 0.5);
      padding: 20px;
      border-radius: 10px;
      text-align: left;
    }

    .log-line {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      font-size: 14px;
      margin: 0;
      opacity: 1;
    }

    /* Effet de frappe au clavier pour le terminal */
    @keyframes typing {
      from {
        width: 0;
      }
      to {
        width: 100%;
      }
    }

    @keyframes blink {
      50% {
        border-color: transparent;
      }
    }

    .typewriter {
      border-right: 2px solid rgba(255, 255, 255, 0.75);
      white-space: nowrap;
      overflow: hidden;
      display: inline-block;
      animation: typing 2s steps(40, end) forwards, blink .75s step-end infinite;
    }

    /* Style pour le formulaire de connexion */
    .form-signin {
      width: 350px;
      padding: 20px;
      background-color: rgba(0, 0, 0, 0.6); /* Fond semi-transparent */
      border-radius: 10px;
      box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5); /* Ombre */
    }

    /* Animation d'apparition progressive pour "Login" et "Password" */
    .form-signin .form-floating {
      margin-bottom: 15px;
      animation: typing 2s steps(40, end) forwards, blink .75s step-end infinite;
    }

    /* Effet de chargement progressif pour les champs */
    .form-signin input[type="text"],
    .form-signin input[type="password"] {
      background-color: rgba(255, 255, 255, 0.1); /* Fond plus clair pour les champs */
      color: #ffffff;
      border: 1px solid rgba(255, 255, 255, 0.2); /* Bordure légère */
      padding: 10px 15px;
      border-radius: 5px;
      font-size: 16px;
      box-shadow: inset 0px 0px 5px rgba(0, 0, 0, 0.5);
      position: relative;
      overflow: hidden;
    }

    /* Animation pour le champ de saisie */
    .form-signin input::before {
      content: "";
      position: absolute;
      top: 0;
      left: -100%;
      height: 100%;
      width: 100%;
      background: rgba(255, 255, 255, 0.2);
      animation: loadEffect 1.5s infinite;
    }

    /* Animation de chargement progressif */
    @keyframes loadEffect {
      0% {
        left: -100%;
      }
      50% {
        left: 100%;
      }
      100% {
        left: 100%;
      }
    }

    .form-signin input::placeholder {
      color: rgba(255, 255, 255, 0.6); /* Placeholder plus clair */
    }

    .form-signin label {
      color: rgba(255, 255, 255, 0.7); /* Texte plus subtil */
    }

    .form-signin button[type="submit"] {
      background-color: #007bff;
      border: none;
      padding: 10px 20px;
      border-radius: 5px;
      font-size: 18px;
      font-weight: bold;
      color: #fff;
      width: 100%;
      transition: background-color 0.3s, transform 0.3s ease;
    }

    .form-signin button[type="submit"]:hover {
      background-color: #0056b3;
      transform: scale(1.05); /* Légère expansion */
    }

    .form-signin p {
      margin-top: 20px;
      color: rgba(255, 255, 255, 0.5);
      font-size: 12px;
    }

    /* Glitch effect */
    @keyframes glitch {
      0% {
        opacity: 1;
      }
      25% {
        opacity: 0.8;
        transform: translate(2px, -2px);
      }
      50% {
        opacity: 1;
      }
      75% {
        opacity: 0.6;
        transform: translate(-2px, 2px);
      }
      100% {
        opacity: 1;
      }
    }

    /* Effet pour nUx */
    h1 {
      color: #ffffff;
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
    }