:root { --vert: #2e7d32; --rouge: #c62828; --gris: #f4f4f4; --texte: #1b1b1b; }
* { box-sizing: border-box; }
body {
  margin: 0; padding: 0 0 5rem;
  font: 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--texte); background: #fff;
}
.eleve {
  display: flex; align-items: center; gap: .75rem;
  min-height: 56px; padding: .5rem 1rem; border-bottom: 1px solid #e0e0e0;
  cursor: pointer;
}
.eleve.absent { background: #ffebee; }
.eleve img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; background: var(--gris); }
button { min-height: 48px; padding: 0 1.25rem; font-size: 1rem; border: 0; border-radius: 8px; }
.principal { position: fixed; left: 0; right: 0; bottom: 0; width: 100%; background: var(--vert); color: #fff; }
.erreur { padding: 1rem; background: var(--rouge); color: #fff; font-weight: 600; }
