/* ═══════════════════════════════════════════════
   WEBTAK — login.css
═══════════════════════════════════════════════ */

body {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* ─── FOND ANIMÉ ─── */
.grid-bg {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(126, 200, 160, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(126, 200, 160, 0.04) 1px, transparent 1px);
  background-size: 40px 40px;
}

.scan-line {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(transparent 50%, rgba(0, 0, 0, 0.03) 50%);
  background-size: 100% 4px;
  animation: scan 8s linear infinite;
}

@keyframes scan {
  from { background-position: 0 0; }
  to   { background-position: 0 100vh; }
}

/* ─── CARTE LOGIN ─── */
.login-card {
  width: 360px;
  background: var(--bg1);
  border: 0.5px solid var(--border);
  border-radius: 12px;
  padding: 2.5rem 2rem;
  position: relative;
  z-index: 1;
}

/* Ligne verte en haut */
.login-card::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 20px;
  right: 20px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--green), transparent);
  border-radius: 2px;
}

/* ─── COINS TACTIQUES ─── */
.corner {
  position: absolute;
  width: 10px;
  height: 10px;
  border-color: var(--green);
  border-style: solid;
}
.corner.tl { top: 8px; left: 8px;  border-width: 1px 0 0 1px; }
.corner.tr { top: 8px; right: 8px; border-width: 1px 1px 0 0; }
.corner.bl { bottom: 8px; left: 8px;  border-width: 0 0 1px 1px; }
.corner.br { bottom: 8px; right: 8px; border-width: 0 1px 1px 0; }

/* ─── LOGO ─── */
.login-logo {
  text-align: center;
  margin-bottom: 2rem;
}
.login-logo-text {
  font-family: var(--font-mono);
  font-size: 28px;
  color: var(--green);
  letter-spacing: 6px;
}
.login-logo-sub {
  font-size: 11px;
  color: var(--text4);
  letter-spacing: 3px;
  margin-top: 4px;
}

/* ─── CHAMPS ─── */
.login-card .field-group label {
  font-family: var(--font-mono);
}
.login-card input {
  font-family: var(--font-mono);
  font-size: 14px;
}

/* ─── BOUTON CONNEXION ─── */
.login-btn {
  width: 100%;
  padding: 12px;
  margin-top: 1.5rem;
  background: transparent;
  border: 0.5px solid var(--green);
  border-radius: var(--radius-md);
  color: var(--green);
  font-family: var(--font-mono);
  font-size: 14px;
  letter-spacing: 3px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.login-btn:hover {
  background: var(--green);
  color: var(--bg);
}

/* ─── ERREUR ─── */
.login-error {
  margin-top: 1rem;
  padding: 8px 12px;
  background: rgba(212, 112, 112, 0.1);
  border: 0.5px solid var(--red);
  border-radius: var(--radius-md);
  color: var(--red);
  font-size: 12px;
  display: none;
}
