/* Aucune valeur en dur : tout vient de `systeme.css`. */

/* `display: grid` sur .carte écrase le `display: none` par défaut de [hidden] : sans cette
   règle, le formulaire de connexion reste affiché une fois connecté. Trouvé à l'écran, pas
   en test — un test de DOM l'aurait manqué de la même façon. */
[hidden] {
  display: none !important;
}

.page {
  max-width: 480px;
  margin: 0 auto;
  padding: var(--espace-5) var(--espace-3);
}

.carte {
  background: var(--fond-carte);
  color: var(--texte-carte);
  border: 1px solid var(--bordure);
  border-radius: var(--rayon);
  padding: var(--espace-3);
  display: grid;
  gap: var(--espace-2);
}

input,
button {
  font: inherit;
  padding: var(--espace-2);
  border-radius: var(--rayon);
  border: 1px solid var(--bordure);
  background: var(--fond-page);
  color: var(--texte-page);
}

button {
  background: var(--fond-marque);
  color: var(--texte-marque);
  border-color: transparent;
  cursor: pointer;
}

button.discret {
  background: var(--fond-discret);
  color: var(--texte-discret);
}

.code {
  font-family: ui-monospace, monospace;
  font-size: var(--taille-titre);
  letter-spacing: 0.15em;
  text-align: center;
}

.alerte {
  background: var(--fond-alerte);
  color: var(--texte-alerte);
  padding: var(--espace-2);
  border-radius: var(--rayon);
  margin: 0;
}

.discrete {
  color: var(--texte-discret);
  font-size: var(--taille-petite);
}

#deck {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.barre {
  position: fixed;
  left: 50%;
  bottom: var(--espace-3);
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: var(--espace-2);
  background: var(--fond-carte);
  color: var(--texte-carte);
  border: 1px solid var(--bordure);
  border-radius: var(--rayon);
  padding: var(--espace-2) var(--espace-3);
}
