body
{
  background-color:#A3BCF6;
}
h1,h2 {
  text-align : center;
}
.avatar-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 15px;
  margin-top: 10px;
}

.avatar-grid input[type="radio"] {
  display: none;
}

.avatar-grid label {
  cursor: pointer;
}

.avatar-grid img {
  width: 174px;
  height: 170px;
  object-fit: cover;
  border-radius: 8px;
  border: 3px solid transparent;
  transition: 0.2s;
}

.avatar-grid img:hover {
  transform: scale(1.05);
}

.avatar-grid input[type="radio"]:checked + label img {
  border-color: #2ecc71;
  box-shadow: 0 0 10px rgba(46, 204, 113, 0.8);
}
.avatar-choice input[type="radio"] {
    display: none;
}

.avatar-choice img {
    cursor: pointer;
    border: 3px solid transparent;
    border-radius: 10px;
}

.avatar-choice input[type="radio"]:checked + img {
    border-color: #00aaff;
    box-shadow: 0 0 10px #00aaff;
}
.grid-photos {
    display: grid;
    grid-template-columns: repeat(5, 90px); /* 5 images par ligne */
    gap: 10px;

    justify-content: center; /* centre la grille */
    margin: 0 auto;
}

.grid-photos .thumb img {
    width: 90px;
    height: 90px;
    object-fit: cover;
    display: block;
}

/* Lightbox */
.lightbox {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.8);
  justify-content: center;
  align-items: center;
  z-index: 999;
}

.lightbox-img {
  max-width: 90%;
  max-height: 90%;
}

.lightbox .close {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}

.lightbox .nav {
  position: absolute;
  top: 50%;
  font-size: 60px;
  color: #fff;
  cursor: pointer;
  user-select: none;
  padding: 10px;
}

.lightbox .prev { left: 20px; }
.lightbox .next { right: 20px; }

p
{
  text-align: center;
  display:block;
  width:80%;
}

.intro_caps
{
  display:block;
  width:80%;
}

.avatar
{
  float:left;
  width:100px;
}

.liens
{
  padding: 1em;
  border: 0;
}

.classement
{
  padding: 1em;
}

.resume
{
  float:right;
  padding: 10px;
}
.gestion_membres
{
  border-collapse: collapse; width: 60%; margin-top: 10px; 
}

.intro
{
  margin-top: 10px;
  text-align: center;
}

.mp
{
  width:5%;
  height:auto;
}

.logo
{
  display: block;
  width: 10%;
  margin: auto;
}

.perso
{
  font-weight: bold;
  position: absolute;
  top : 20px;
  left: 20px;
  background-color: #B1B5C3;
  border-radius: 10px;
  box-shadow: 6px 6px 25px rgba(0, 0, 0, 0.5);
  padding: 10px;
}

.container
{
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 70%;
}

.regle1
{
  border-width : 0;
  border-left-width : 0;
}
textarea.message {
    width: 40%;
    min-height: 200px;   /* hauteur */
    resize: vertical;   /* l'utilisateur peut agrandir */
    font-size: 16px;
    padding: 10px;
}


.caps1
{
  width:300px;
  height:auto;
}
.para1
{
  texte-align:center;
}
.para2
{
  texte-align:center;
}
.caps2
{
  width:300px;
  height:auto;
}

.menu
{
  text-align: center;
}
.nav li {
    float: left;
    width: 14.2857142857%; /* 100/7 */
    text-align: center;
}

.nav a {
	display: block;
	width: auto;
}

.nav ul {
	max-width: 1240px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.5em;
	font-weight: 300;
}

.nav li span {
	display: block;
}

.nav a {
	display: block;
	color: rgba(249, 249, 249, .9);
	text-decoration: none;
	}

a, button {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.sujet {
    background: #C1D2E8;
    border-radius: 8px;
    padding: 15px 20px;
    box-shadow: 0 0 6px rgba(0,0,0,0.05);
    margin-bottom: 15px;
}

.sujet a {
    font-size: 18px;
    font-weight: bold;
    color: #2c3e50;
    text-decoration: none;
}

.sujet a:hover {
    text-decoration: underline;
}

.sujet p {
    margin: 10px 0;
    font-size: 14px;
    line-height: 1.5;
    color: black;
}

.sujet small {
    color: #888;
}

/* Hover effect for the whole navigation to make the hovered item stand out */

.no-touch .nav ul:hover a {
	color: rgba(249, 249, 249, .5);
}

.no-touch .nav ul:hover a:hover {
	color: rgba(249, 249, 249, 0.99);
}

/* Adding some background color to the different menu items */

.nav li:nth-child(7n+1) { background: rgb(208, 101, 3); }
.nav li:nth-child(7n+2) { background: rgb(233, 147, 26); }
.nav li:nth-child(7n+3) { background: rgb(22, 145, 190); }
.nav li:nth-child(7n+4) { background: rgb(22, 107, 162); }
.nav li:nth-child(7n+5) { background: rgb(27, 54, 71); }
.nav li:nth-child(7n+6) { background: rgb(21, 40, 54); }
.nav li:nth-child(7n+7) { background: rgb(50, 50, 50); }

/* For screen bigger than 800px */
@media (min-width: 50em) {
  .nav li {
    float: left;
    width: 14.2857142857%; /* 100/7 */
    text-align: center;
  }
}

	.nav a {
		display: block;
		width: auto;
	}

	

@media (min-width: 50em) and (max-width: 61.250em) {

	/* Size and font adjustments to make it fit into the screen*/
	.nav ul {
		font-size: 1.2em;
	}

}

/* The "tablet" and "mobile" version */

@media (max-width: 49.938em) {		
	
	/* Instead of adding a border, we transition the background color */
	.no-touch .nav ul li:nth-child(7n+1) a:hover,
	.no-touch .nav ul li:nth-child(7n+1) a:active,
	.no-touch .nav ul li:nth-child(7n+1) a:focus {
		background: rgb(227, 119, 20);
	}

	.no-touch .nav li:nth-child(7n+2) a:hover,
	.no-touch .nav li:nth-child(7n+2) a:active,
	.no-touch .nav li:nth-child(7n+2) a:focus {
		background: rgb(245, 160, 41);
	}

	.no-touch .nav li:nth-child(7n+3) a:hover,
	.no-touch .nav li:nth-child(7n+3) a:active,
	.no-touch .nav li:nth-child(7n+3) a:focus {
		background: rgb(44, 168, 219);
	}

	.no-touch .nav li:nth-child(7n+4) a:hover,
	.no-touch .nav li:nth-child(7n+4) a:active,
	.no-touch .nav li:nth-child(7n+4) a:focus {
		background: rgb(31, 120, 176);
	}

	.no-touch .nav li:nth-child(7n+5) a:hover,
	.no-touch .nav li:nth-child(7n+5) a:active,
	.no-touch .nav li:nth-child(7n+5) a:focus {
		background: rgb(39, 70, 90);
	}

	.no-touch .nav li:nth-child(7n+6) a:hover,
	.no-touch .nav li:nth-child(7n+6) a:active,
	.no-touch .nav li:nth-child(7n+6) a:focus {
		background: rgb(32, 54, 68);
	}
  
  	.no-touch .nav li:nth-child(7n+7) a:hover,
	.no-touch .nav li:nth-child(7n+7) a:active,
	.no-touch .nav li:nth-child(7n+7) a:focus {
		background: rgb(32, 54, 68);
	}

	.nav ul li {
		-webkit-transition: background 0.5s;
		-moz-transition: background 0.5s;
		-o-transition: background 0.5s;
		-ms-transition: background 0.5s;
		transition: background 0.5s;
	}	

}

/* CSS specific to the 2x3 columns version */
@media (min-width:32.5em) and (max-width: 49.938em) {
	
	/* Creating the 2 column layout using floating elements once again */
	.nav li {
		display: block;
		float: left;
		width: 50%;
	}
	
	/* Adding some padding to make the elements look nicer*/
	.nav a {
		padding: 0.8em;		
	}

	

	/* Adaptating to the icons to animate the size and border of the rounded background in a more discreet way */
	.nav li i {
		display: inline-block;
		padding: 8% 9%;
		border: 4px solid transparent;
		border-radius: 50%;
		font-size: 1.5em;
		background: rgba(255,255,255,0.1);
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}

	/* Transition effect on the border color */
	.no-touch .nav li:hover i,
	.no-touch .nav li:active i,
	.no-touch .nav li:focus i {
		border: 4px solid rgba(255,255,255,0.1);
	}
	
}

/* Styling the toggle menu link and hiding it */
.nav .navtoogle{
	display: none;	
	width: 100%;
	padding: 0.5em 0.5em 0.8em;
	font-family: 'Lato',Calibri,Arial,sans-serif;
	font-weight: normal;
	text-align: left;
	color: rgb(7, 16, 15);
	font-size: 1.2em;
	background: none;	
	border: none;
	border-bottom: 4px solid rgb(221, 221, 221);
	cursor: pointer;
}

.navtoogle i{
	z-index:-1;
}

.icon-menu {
	position: relative;
	top: 3px;
	line-height: 0;
	font-size: 1.6em;
}

@media (max-width: 32.438em) {

	/* Unhiding the styled menu link */
	.nav .navtoogle{
		margin: 0;
		display: block;
	}
	
	/* Animating the height of the navigation when the button is clicked */
	
	/* When JavaScript is disabled, we hide the menu */
	.no-js .nav ul {
		max-height: 30em;
		overflow: hidden;
	}
	
	/* When JavaScript is enabled, we hide the menu */
	.js .nav ul {
		max-height: 0em;
		overflow: hidden;
	}
	
	/* Displaying the menu when the user has clicked on the button*/
	.js .nav .active + ul {		
		max-height: 30em;
		overflow: hidden;
		-webkit-transition: max-height .4s;
		-moz-transition: max-height .4s;
		-o-transition: max-height .4s;
		-ms-transition: max-height .4s;
		transition: max-height .4s;
	}

	/* Adapting the layout of the menu for smaller screens : icon on the left and text on the right*/
	
	.nav li span {
		display: inline-block;
		height: 100%;
	}

	.nav a {
		padding: 0.5em;		
	}
	
	.icon + span {
		margin-left: 1em;
		font-size: 0.8em;
	}
	
	/* Adding a left border of 8 px with a different color for each menu item*/
	.nav li:nth-child(6n+1) {
		border-left: 8px solid rgb(174, 78, 1);
	}

	.nav li:nth-child(6n+2) {
		border-left: 8px solid rgb(191, 117, 20);
	}

	.nav li:nth-child(6n+3) {
		border-left: 8px solid rgb(13, 111, 150);
	}

	.nav li:nth-child(6n+4) {
		border-left: 8px solid rgb(10, 75, 117);
	}

	.nav li:nth-child(6n+5) {
		border-left: 8px solid rgb(16, 34, 44);
	}

	.nav li:nth-child(6n+6) {
		border-left: 8px solid rgb(9, 18, 25);
	}

	/* make the nav bigger on touch screens */
	.touch .nav a {
		padding: 0.8em;
	}
}