html {min-height: 100vh;background-color: #fff;margin: 0;padding: 0;}
body {min-height: 100vh;font-family: 'Helvetica';width: 100%;max-width: 1400px;margin: 0 auto;background-color: #fff;}
#pageSite {max-width: 1404px;margin: 0 auto;color: #353d46;min-height: 100vh;padding: 0;}
@media screen and (min-width: 1400px) {
  html {
    background-color: #eff2f7; /* gris clair sur les côtés */
  }
  body {
    background-color: #fff; /* contenu toujours blanc */
  }
}
table {border-spacing:0;}
.aff1 {border:1px solid #000;border-collapse:collapse;margin:0px auto;padding:0;}
.aff1 tr {height:16px;padding:0;}
.aff1 td {padding:0;word-wrap:break-word !important;}
.aff1 table {border:1px solid #000;border-radius:10px;padding:1px;background-color:#87cefa;width:100%;}
.aff1 table td {text-align:center;}
.aff1 table td input[type=checkbox] {opacity:0;height:0px;width:0px;margin:0;padding:0;}
.aff1 table td input[type=checkbox]:checked + label {background:#cd853f;}
.aff1 table td input[type=checkbox]:disabled + label:hover {box-shadow:none;cursor:not-allowed;background:#a9a9a9;}
.aff1 table td input[type=checkbox]:disabled + label {background:#a9a9a9;overflow:hidden;}
.aff1 table td label {display:block;position:relative;width:50px;text-align:center;font-size:16px;font-weight:bold;line-height:1.4rem;padding:1px;background:#90ee90;border-radius:50px;margin:0;}
.aff1 table td label:before {content: "";position:absolute;width:80%;height:80%;top:1px;left:50%;transform:translate(-50%, 0%);background:rgba(255, 255, 255, 0.3);border-radius:50px;}
.aff1 table td label:hover {cursor:pointer;//box-shadow:0 0 0px 2px #5c6aff;background:#f6e497;}
.bordN {border:1px solid #000;text-align:center !important;vertical-align:middle !important;overflow-wrap: break-word;background:#003366;color:#fff;}
.ptr {cursor:pointer;font-size:16px;font-weight:bold;}
.ital {font-style: italic;}
#suiteSite {display:none;max-width:1400px;text-align:center;margin:auto;}
#suiteSite i {padding-top:10vw;font-size:10vw !important;color:#fd6f10;}
/* h2{text-align:center;color:#4d4cff;font-size:20px;margin:0;padding:10px 0;} */
/* Titres uniformes */
h1, h4 {
  text-align: center;
  color: #353d46;     /* gris foncé sobre */
  font-weight: normal;
  margin: 15px 0 10px;
  padding: 0;
}
h2 {
  text-align: center;
  color: #353d46;     /* gris foncé sobre */
  font-weight: bold; /* gras */
  font-size: 20px;
  margin: 15px 0 10px;
  padding: 0;
}
h5 {
  text-align: center;
  color: #353d46;     /* gris foncé sobre */
  font-style: italic;
  font-size: 20px;
  margin: 15px 0 10px;
  padding: 0;
}
/* Taille adaptée par niveau */
h1 { font-size: 22px;}
h4 { font-size: 18px;}
h3 {
  text-align: center;
  color: #d9534f;    /* rouge discret */
  font-weight: bold;
  font-size: 20px;
  margin:0;
  padding:5px 0;
}
/* h3{text-align:center;color:#ff0000;font-size:20px;margin:0;padding:5px 0;} */
hr{height:0px;border:0;border-top:1px solid #000;width:75%;}
.mail {display:none;}
.cent {text-align:center;}
.droi {text-align:right;padding-right:5px !important;}
.aff2 {border:1px solid #000;margin:0px auto;color:#00008c;font-weight:500;}
.resa {font-size:18px;}
.aff2 tr {font-size:20px;}
.aff2 input, .aff2 textarea, .aff2 select, .resa input, .resa textarea, .resa select {color:#000;background-color:#dbdbea;font-size:16px;font-weight:normal;border:1px solid #00f;}
.aff2 input[type=checkbox], .resa input[type=checkbox] {outline: 1px solid #00f;}
.erreur{color:#f00;background-color:#CFCFCF;width:800px;border:1px solid #000;padding:10px;margin:0px auto;}
.titre{color:#000;background-color:#ffebcd;border:1px solid #000;}
.btn {
  cursor: pointer;
  font-size: 16px;
  font-weight: bold !important;
  padding: 12px 28px;
  border: none !important;
  border-radius: 6px;
  background: linear-gradient(135deg, #2196F3, #0D47A1);
  color: #fff !important;/* texte blanc */
  text-transform: uppercase;
  letter-spacing: 1px;
  text-shadow: 0 1px 2px rgba(0,0,0,0.3); /* ombre légère */
  box-shadow: 0 4px 6px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
  margin-top: 20px;
  margin-bottom: 0;
}

.btn:hover {
  background: linear-gradient(135deg, #42A5F5, #1565C0);
  transform: translateY(-2px);
  box-shadow: 0 6px 10px rgba(0,0,0,0.25);
}

.btn:active {
  transform: translateY(1px);
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}
.btn-green {
  cursor: pointer;
  font-size: 16px;
  font-weight: bold !important;
  padding: 12px 28px;
  border: none !important;
  border-radius: 6px;
  background: linear-gradient(135deg, #4CAF50, #2E7D32); /* vert clair -> vert foncé */
  color: #fff !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-shadow: 0 1px 2px rgba(0,0,0,0.3);
  box-shadow: 0 4px 6px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
  margin-top: 20px;
  margin-bottom: 0;
}

.btn-green:hover {
  background: linear-gradient(135deg, #66BB6A, #388E3C);
  transform: translateY(-2px);
  box-shadow: 0 6px 10px rgba(0,0,0,0.25);
}

.btn-green:active {
  transform: translateY(1px);
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}
.btn-red {
  cursor: pointer;
  font-size: 16px;
  font-weight: bold !important;
  padding: 12px 28px;
  border: none !important;
  border-radius: 6px;
  background: linear-gradient(135deg, #E57373, #C62828); /* rouge clair -> rouge foncé */
  color: #fff !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-shadow: 0 1px 2px rgba(0,0,0,0.3);
  box-shadow: 0 4px 6px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
  margin-top: 20px;
  margin-bottom: 0;
}

.btn-red:hover {
  background: linear-gradient(135deg, #EF5350, #B71C1C);
  transform: translateY(-2px);
  box-shadow: 0 6px 10px rgba(0,0,0,0.25);
}

.btn-red:active {
  transform: translateY(1px);
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}