/* --- VARIABLES GLOBALES --- */
:root {
  --fond: #fff0f3;
  --carte: rgba(255, 255, 255, 0.7);
  --texte-principal: #d10024;
  --texte-secondaire: #ff6b81;
  --texte-courant: #333;
  --bordure: #ffb6c1;
  --ombre: rgba(209, 0, 36, 0.15);
}

/* --- MODE SOMBRE --- */
body.sombre {
  --fond: #1a0a10;
  --carte: rgba(40, 15, 25, 0.8);
  --texte-principal: #ff6b81;
  --texte-secondaire: #ffb6c1;
  --texte-courant: #f0d0d8;
  --bordure: #d10024;
  --ombre: rgba(255, 107, 129, 0.3);
}

body {
  margin: 0;
  font-family: 'Georgia', serif;
  background: var(--fond);
  color: var(--texte-principal);
  text-align: center;
  transition: background 0.5s, color 0.5s;
}

/* --- MENU DE NAVIGATION --- */
nav {
  background: var(--carte);
  backdrop-filter: blur(10px);
  padding: 15px 0;
  box-shadow: 0 2px 10px var(--ombre);
  position: sticky;
  top: 0;
  z-index: 100;
}
nav a {
  color: var(--texte-principal);
  text-decoration: none;
  font-size: 1.1em;
  margin: 0 10px;
  font-weight: bold;
  transition: color 0.3s;
}
nav a:hover { color: var(--texte-secondaire); }

.bouton-sombre {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1.2em;
  margin-left: 10px;
  transition: transform 0.3s;
}
.bouton-sombre:hover { transform: scale(1.2); }

h1 { margin-top: 40px; font-size: 2.5em; }
/* --- TRAÎNÉE DE CŒURS QUI SUIT LE DOIGT --- */
.coeur-souris {
  position: fixed;
  color: #ff6b81;
  font-size: 20px;
  pointer-events: none;
  z-index: 9999;
  user-select: none;
  animation: disparaitre 1s ease-out forwards;
}
@keyframes disparaitre {
  0%   { opacity: 1; transform: translate(-50%, -50%) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -100%) scale(0.3); }
}