@charset "UTF-8";
@font-face {
  font-family: Philosopher;
  font-family: Roboto;
  src: url("fontes/Philosopher-Bold.ttf"), url("/fontes/Philosopher-Regular.ttf"), url("/fontes/Philosopher-Italic.ttf"), url("/fontes/Philosopher-BoldItalic"), url("/fontes/Roboto-Bold.ttf"), url("/fontes/Roboto-BoldItalic.ttf"), url("/fontes/Roboto-Italic.ttf"), url("/fontes/Roboto-Regular.ttf");
}
@media print {
  #noimprime {
    display: none;
  }
}
@media (min-width: 1081px) {
  .mobile-tablet {
    display: none;
  }
}
@media (max-width: 1080px) {
  .desktop-only {
    display: none;
  }
  .mobile-tablet {
    display: block;
  }
  header {
    height: 3.5rem;
  }
  .imgLogo {
    height: 5rem;
  }
}
*::before,
*::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  margin: 0;
  padding: 0;
  height: 100%;
  /*font-family: 'Segoe UI', Roboto, sans-serif;*/
  background-color: #e9f7f6;
  overflow-x: hidden;
  /* conserve le blocage horizontal */
  overflow-y: auto;
  /* autorise le scroll vertical */
  -webkit-text-size-adjust: none; /* Chrome & Safari */
  -moz-text-size-adjust: none;
       text-size-adjust: none; /* standard */
}

html {
  font-family: "Segoe UI", Roboto, sans-serif;
  background-color: #ECF8F6;
  color: #18534F;
}

header,
footer {
  width: 100%;
  margin: 0;
  background-color: #18534F;
}
header div,
footer div {
  display: inline;
  float: left;
  text-align: center;
  vertical-align: middle;
}

header {
  height: 5rem;
  display: grid;
  grid-template-columns: 25% 50% 25%;
  align-items: center;
}
header h4 {
  color: #ECF8F6;
}

footer {
  height: 4.5rem;
  padding-top: 0.3rem;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  align-items: center;
}

.logo {
  z-index: 20;
}

.imgLogo {
  height: 6.5rem;
}

main ul {
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.5rem;
}
main ul li {
  margin: 0.5rem;
  list-style: none;
}

h2,
h3,
h4,
h5,
h6 {
  display: inline;
}

h1,
h2 {
  font-family: Philosopher;
  font-weight: bold;
  font-style: italic;
}

h1 {
  font-size: 3rem;
  color: #ECF8F6;
}

h2 {
  font-size: 2rem;
  color: #18534F;
}

h3 {
  font-size: 1.5rem;
  color: #226D68;
}

h4 {
  font-size: 1.2rem;
  font-style: italic;
  color: #18534F;
}

h5 {
  font-size: 1rem;
  color: #18534F;
}

h6 {
  font-size: 1rem;
  color: #18534F;
  font-style: italic;
  font-weight: bold;
}

p {
  font-family :arial;
}

.red {
  color: #FF0000;
  font-style: italic;
  font-size: 1.1rem;
  font-weight: bold;
}

.infos {
  font-size: 1.1rem;
  color: #18534F;
  font-style: italic;
}

nav {
  font-family: Arial, Helvetica, sans-serif;
  height: 2rem;
  background-color: #18534F;
  margin: 0 auto;
  display: block;
  position: sticky;
  top: 0rem;
  padding-top: 0.2rem;
  padding-right: 0.8rem;
  text-align: right;
  font-size: 1.1rem;
  z-index: 10;
}
nav ul li {
  list-style: none;
  max-width: 11rem;
  margin: 0 auto;
  display: inline-block;
  padding: 0 0.5rem;
  position: relative;
  text-decoration: none;
  text-align: center;
}
nav ul li:hover {
  transition: all 0.5s ease;
}
nav ul li a {
  text-decoration: none;
  color: #ECF8F6;
}
nav ul li a:hover {
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  transition: all 0.3s ease;
}
nav ul li ul {
  visibility: hidden;
  opacity: 0;
  max-width: 11rem;
  position: absolute;
  padding-left: 0;
  margin-top: -0.2rem;
  left: 0;
  display: none;
  background: #18534F;
}
nav ul li ul li {
  clear: both;
  width: 100%;
  text-align: left;
  margin-bottom: 1rem;
  border-style: none;
}
nav ul li ul li a {
  transition: all 0.5s ease;
  text-decoration: none;
}
nav ul li ul li a:hover {
  padding-left: 0.8rem;
  text-decoration: none;
  border-left: 0.2rem solid #FEEAA1;
  transition: all 0.3s ease;
}
nav ul li:hover > ul,
nav ul li ul:hover {
  visibility: visible;
  opacity: 1;
  display: block;
  min-width: 12rem;
  text-align: left;
  padding-top: 1rem;
  box-shadow: 0px 3px 5px -1px #FEEAA1;
}

@media (min-width: 1081px) {
  .menu-toggle {
    display: none;
  }
}
@media (max-width: 1080px) {
  nav {
    position: relative;
    /* nécessaire pour le positionnement absolu du ul */
  }
  nav ul {
    display: none;
    position: absolute;
    top: 60px;
    /* ajuste selon la hauteur du header */
    right: 0;
    /* colle bien le menu au bord droit */
    width: 60%;
    max-width: 200px;
    background-color: #18534F;
    padding: 0;
    box-shadow: -2px 0 8px rgba(0, 0, 0, 0.3);
    /* ombre côté gauche */
    transition: transform 0.3s ease;
    transform: translateX(100%);
    /* décalé hors écran à droite */
    text-align: left;
    list-style: none;
    /* pas de puces */
    /* enlève l'espace intérieur qui crée la bande */
    margin: 0;
    /* enlève les marges externes */
    font-size: 16px;
    /* empêche tout espace fantôme lié au rendu du texte */
  }
  nav ul.active {
    display: block;
    transform: translateX(0);
    /* coulisse à l'écran */
  }
  nav ul li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    /* pas de padding parasite */
    font-size: 16px;
    /* on remet la taille du texte ici */
    line-height: 1.4;
    text-align: left;
    list-style: none;
    border-style: none;
  }
  nav ul li a {
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    background-color: #18534F;
    /* chaque lien recouvre toute la ligne */
    padding: 10px 15px;
    border-color: #18534F;
    box-sizing: border-box;
    /* évite un décalage de largeur */
    text-align: left;
  }
  /* Corrige l'alignement des sous-menus */
  nav ul li ul.dropdown {
    position: relative;
    top: 100%;
    /* juste en dessous du parent */
    right: auto;
    /* annule le décalage forcé */
    left: 0;
    /* colle le sous-menu au parent à gauche */
    transform: none;
    /* pas de translation */
    width: 100%;
    /* prend toute la largeur du parent */
    max-width: none;
    /* évite la contrainte 200px */
    background-color: #18534F;
    margin: 0;
    padding: 15px;
    list-style: none;
    text-align: left;
    box-shadow: none;
  }
  nav ul li ul.dropdown li a {
    display: block;
    width: 100%;
    padding: 5px 10px;
    color: #fff;
    text-decoration: none;
    text-align: left;
    background-color: #18534F;
    box-sizing: border-box;
  }
  .menu-toggle {
    display: block;
    background: #103532;
    color: #fff;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 18px;
    border-radius: 5px;
    position: absolute;
    top: 10px;
    right: 10px;
  }
  .menu-toggle:focus,
  .menu-toggle:active {
    background-color: #18534F;
    /* la même couleur que l'état normal */
    color: #fff;
    /* idem que ton bouton par défaut */
    outline: none;
    /* supprime le contour bleu sur certains navigateurs */
    box-shadow: none;
    /* empêche l'effet d'ombre du navigateur */
  }
  /* neutraliser apparences natives */
  .menu-toggle {
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
    background-color: #103532 !important;
    color: #fff !important;
    border: none !important;
    background-image: none !important;
    box-shadow: none !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent;
    /* empêche le "flash" mobile */
    -webkit-touch-callout: none;
  }
  /* états qui changent souvent la couleur : override */
  .menu-toggle:active,
  .menu-toggle:focus,
  .menu-toggle:focus-visible,
  .menu-toggle:hover {
    background-color: #103532 !important;
    color: #fff !important;
    box-shadow: none !important;
    outline: none !important;
    filter: none !important;
  }
  /* Firefox : retire le padding interne du bouton */
  .menu-toggle::-moz-focus-inner {
    border: 0;
    padding: 0;
  }
  /* garder l'indicateur de focus pour les utilisateurs clavier, mais pas pour les clics */
  .menu-toggle:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
  }
}
.container {
  padding: 0.3rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  justify-items: center;
  align-content: space-around;
  /* ajout JBR */
  position: absolute;
  top: 100px;
  /* header (60px) + nav (40px) */
  bottom: 0px;
  /* footer height */
  left: 0;
  right: 0;
  display: flex;
  overflow: auto;
  /* pas de scroll ici */
  flex-direction: column;
  background-color: #e9f7f6;
}

.conteneur {
  position: fixed;
  top: 100px;
  /* header (60px) + nav (40px) */
  bottom: 0px;
  /* footer height */
  left: 0;
  right: 0;
  display: flex;
  overflow: auto;
  /* pas de scroll ici */
}

@media (max-width: 1080px) {
  .conteneur {
    position: fixed;
    top: 80px;
    bottom: 0px;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    overflow: auto;
    /* pas de scroll ici */
  }
  .colonne-gauche,
  .colonne-droite {
    width: 100%;
    padding: 15px;
    overflow: visible;
  }
}
/* Affichage sur deux colonnes. Gauche fixe, droite ajustable */
.colonne-gauche {
  flex: 1;
  background-color: #e9f7f6;
  overflow-y: auto;
  padding: 10px;
  box-sizing: border-box;
}

.colonne-droite {
  width: 600px;
  background-color: #e9f7f6;
  overflow-y: auto;
  padding: 10px;
  box-sizing: border-box;
}

.section {
  width: 100%;
  height: auto;
  margin-bottom: 10px;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 5px;
}

/* style des sections */
.section h1 {
  font-size: 24px;
  margin-bottom: 20px;
  border-left: 5px solid #18534F;
  padding-left: 15px;
  color: #18534F;
}

.section h2 {
  font-size: 18px;
  margin-bottom: 20px;
  padding-left: 15px;
  color: #18534F;
}

.section st {
  font-size: 16px;
  font-weight: bold;
  font-style: italic;
}

.section p {
  font-size: 16px;
}

/* Fin du style des sections */
.edito {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 10px;
  /*margin-left: 10px;*/
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  text-align: justify;
}

.edito-image {
  width: 14%;
  position: relative;
  border-radius: 8px;
  /*box-shadow: 0.3rem 0.3rem 0.3rem #226D68;*/
  float: left;
  margin-left: 1rem;
  margin-right: 1.2rem;
}

.edito h1 {
  font-size: 24px;
  margin-bottom: 20px;
  border-left: 5px solid #18534F;
  padding-left: 15px;
  color: #18534F;
}

.edito h2 {
  font-size: 18px;
  margin-bottom: 20px;
  padding-left: 15px;
  color: #18534F;
}

/*
.edito p {
	font-size: 18px;
	margin-left: 10px;
	margin-bottom: 20px;
	padding-left: 15px;
	color: #18534F;
}
*/
/* Fin du style de l'edito */
/* Style des actualités :
         - une image à gauche, 
         - un texte à droite, 
         - une date de publication */
.actualite {
  display: flex;
  width: 100%;
  gap: 20px;
  margin-bottom: 20px;
  align-items: flex-start;
}

.actualite img {
  flex-shrink: 0;
  width: 30%;
  height: auto;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
}

.actualite-logo {
  flex-shrink: 0;
  /*width: 30%;*/
  width: 10%;
  height: auto;
  border-radius: 8px;
  -o-object-fit: cover;
  object-fit: cover;
}

.actualite-texte {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
}

.actualite-content {
  flex-grow: 1;
}

.date {
  font-style: italic;
  margin-bottom: 8px;
  display: block;
}

/* Fin du style actualités */
/* Style Vie du Club 
        - un texte d'accroche,
        - un diaporama affiché par un carroussel 
        - boutons de navigation */
.carrousel-container {
  width: 80%;
  position: relative;
  max-width: 600px;
  margin: 50px auto;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.slides {
  display: flex;
  transition: transform 0.5s ease-in-out;
  width: 100%;
}

.slide {
  min-width: 100%;
  box-sizing: border-box;
}

.slide img {
  width: 100%;
  display: block;
}

img.imgIdent,
img.imgGau {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
}

.imgIdent {
  width: 18%;
  position: relative;
  box-shadow: 0.1rem 0.1rem 0.1rem #226D68;
  float: left;
  margin: 0.5 rem;
  margin-right: 20px;
}

.nav-buttons {
  position: absolute;
  top: 50%;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
}

.nav-buttons button {
  background-color: rgba(0, 0, 0, 0.5);
  border: none;
  color: white;
  padding: 12px;
  cursor: pointer;
  border-radius: 50%;
}

.nav-buttons button:hover {
  background-color: rgba(0, 0, 0, 0.8);
}

/* Fin du style Vie du Club */
.demi {
  width: 49%;
}

/*
.breve,
.edito,
.compte,
.diapo,
.video {
	width: 32.5%;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
*/
.edito {
  order: 2;
}

.alerte {
  margin: 0.3rem;
  padding: 0.5rem;
  color: #18534F;
  background-color: #FEEAA1;
  border: 0.5rem groove #D0854B;
  width: 99%;
  order: 1;
}

.compte {
  order: 1;
}

.breve {
  order: 3;
  min-height: 14rem;
  overflow-y: auto;
}
.breve li {
  margin-left: 1rem;
  list-style-position: outside;
  list-style-type: square;
}

.video {
  order: 5;
  text-align: center;
  border: 0.2rem ridge #18534F;
}

.diapo {
  order: 6;
  position: relative;
  border: 0.2rem ridge #18534F;
  overflow: hidden;
}

.bienvenue {
  display: block;
  border: 0.1rem solid #18534F;
  border-radius: 0.5rem;
  padding: 0.5rem;
  margin: 0.6rem 0.3rem;
  background-color: #226D68;
  text-align: center;
}
.bienvenue > h5 {
  color: #FEEAA1;
}

.mini,
.reduit,
.basic,
.moyen,
.grand,
.maxi {
  overflow-y: visible;
}

.mini {
  max-height: 10rem;
}

.reduit {
  max-height: 15rem;
}

.basic {
  max-height: 19rem;
}

.moyen {
  max-height: 22rem;
}

.grand {
  max-height: 25rem;
}

.maxi {
  max-height: 35rem;
}

.deroul {
  overflow-y: scroll;
}

fieldset,
details {
  /*
  margin: 0.3rem;
  padding: 0.3rem;
  border: 0.1rem solid $Fc1;*/
  /* ajout JBR */
  border: 1px solid #ccc;
  padding: 0.5rem;
  margin: 0 0.5rem;
  border-radius: 8px;
  margin-bottom: 10px;
  background-color: white;
}
fieldset.exergue,
details.exergue {
  text-align: justify;
  color: #18534F;
  background-color: #FEEAA1;
  border: 0.2rem solid #18534F;
}

legend,
summary {
  font-family: Philosopher;
  font-weight: bold;
  font-size: 1.2rem;
  background-color: #e9f7f6;
  /*ajout JBR */
  padding: 0 10px;
  margin: 0 10px;
  color: #18534F;
  margin-bottom: 10px;
}

.event-card {
  width: 100%;
  margin-bottom: 10px;
  background-color: #f8eded;
  border-radius: 8px;
  padding: 10px;
  box-shadow: 0 4px 12px rgba(5, 0, 0, 0.05);
}

.event-row {
  margin-bottom: 3px;
  font-size: 0.95rem;
}

.event-row strong {
  display: inline-block;
  color: #333;
}

/* Style des cartes équipes */
.team-card {
  /* border: 1px solid #ccc;
             border-radius: 3px;*/
  padding: 5px;
  margin-bottom: 10px;
  /* background-color: #fdfdfd;
             box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.04);*/
  margin-left: 0;
  row-gap: 2px;
}

.team-card form {
  row-gap: 2px;
  margin-left: 0;
}

.team-card input,
.team-card select,
.team-card textarea {
  width: 15%;
  min-width: 120px;
  max-width: 15%;
  padding: 5px;
  font-size: 1rem;
  margin: 1px;
  border: 1px solid #bbb;
  border-radius: 6px;
  box-sizing: border-box;
}

.team-card label {
  width: 15%;
  max-width: 15%;
  padding: 5px;
  font-size: 1rem;
  margin: 1px;
  border: none;
}

.team-card button {
  background-color: #18534F;
  display: flex;
  width: 15%;
  max-width: 15%;
  margin: 1px;
  color: white;
  border: none;
  padding: 5px;
  border-radius: 6px;
  font-size: 1rem;
  cursor: pointer;
  flex-direction: column;
}

.team-card button:hover {
  background-color: #13706A;
}

@media (max-width: 1080px) {
  legend,
  summary {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1rem;
  }
  .edito-image {
    width: 20%;
  }
}
dialog {
  position: absolute;
  top: 30%;
  left: 35%;
  display: block;
  padding: 1rem;
  background-color: #FEEAA1;
  border: 0.3rem solid #226D68;
  color: #18534F;
  text-align: center;
  font-size: 1.2rem;
  min-width: 20rem;
}
dialog button {
  bottom: 1rem;
  float: right;
  color: #226D68;
  padding-left: 0.3rem;
  padding-right: 0.3rem;
  background-color: #ECF8F6;
  border-radius: 0.3rem;
  border: 0.2rem outset #226D68;
  min-width: 5rem;
  font-size: 1.2rem;
  outline: none;
  cursor: pointer;
}
dialog button:hover, dialog button:focus {
  background-color: #D0854B;
  color: #FEEAA1;
  border: 0.2rem ridge #226D68;
}

table td, table th {
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}

.tblEquipe td {
  padding-left: 0.1rem;
  padding-right: 0.2rem;
}

.tblDroits td, .tblDroits th {
  text-align: center;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}
.tblDroits td:nth-child(-n+4), .tblDroits th:nth-child(-n+4) {
  text-align: left;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}

.tblTournois td, .tblTournois th {
  padding-left: 0.3rem;
  padding-right: 0.3rem;
  text-align: center;
}

.tblBasic {
  border-collapse: collapse;
  empty-cells: show;
  border: 0.1rem solid #18534F;
}
.tblBasic td, .tblBasic th {
  border: 0.1rem solid #18534F;
}

.calendar {
  table-layout: fixed;
  margin-top: 0.5rem;
  margin: 0.5rem auto;
  border-collapse: collapse;
  empty-cells: show;
  width: 99%;
  border: 0.2rem solid #18534F;
}
.calendar tbody th {
  color: #ECF8F6;
  background-color: #18534F;
  text-align: center;
  border: 0.1rem solid #18534F;
}
.calendar tbody th.today {
  background-color: #FEEAA1;
  color: #226D68;
}
.calendar tbody td {
  text-align: left;
  font-size: 1rem;
  padding: 0.2rem;
  border: 0.1rem solid #18534F;
  color: #18534F;
  word-wrap: break-word;
}
.calendar tbody td:first-child {
  font-weight: bold;
  font-style: italic;
  text-align: center;
  background-color: #FEEAA1;
}
.calendar tbody td.T, .calendar tbody td.Q, .calendar tbody td.K {
  color: #18534F;
}
.calendar tbody td.R {
  color: #ECF8F6;
  font-style: italic;
  font-weight: bold;
  background-color: #D0854B;
}
.calendar tbody td.F {
  color: #D0854B;
  font-style: italic;
  font-weight: bold;
  background-color: #FEEAA1;
}
.calendar tbody td.C {
  color: #18534F;
  background-color: #FEEAA1;
  font-style: italic;
  font-weight: bold;
}
.calendar tbody td.X {
  color: #ECF8F6;
  font-style: italic;
  font-weight: bold;
  background-color: #226D68;
  text-align: center;
}
.calendar tbody hr {
  color: #18534F;
  height: 0;
}

@media (max-width: 1080px) {
  .calendar th {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.8rem;
  }
  .calendar tbody td {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.8rem;
  }
}
.naviCal {
  display: flex;
  justify-content: center;
}

.tblCours {
  border-collapse: collapse;
}
.tblCours td, .tblCours th {
  padding-left: 0.3rem;
  padding-right: 0.3rem;
  border-bottom: 0.1rem solid #18534F;
  text-align: center;
}
.tblCours td:first-child, .tblCours td:last-child {
  text-align: left;
}

.multi {
  width: 60%;
  white-space: normal;
}

label {
  font-size: 1.1rem;
}

textarea {
  background-color: #FEEAA1;
  vertical-align: top;
  font-size: 1rem;
}

button, input[type=button] {
  position: static;
  float: left;
  padding-left: 0.3rem;
  padding-right: 0.3rem;
  margin-right: 0.2rem;
  color: #18534F;
  background-color: #FEEAA1;
  border: 0.1rem outset #FEEAA1;
  border-radius: 0.3rem;
  font-size: 1rem;
  vertical-align: bottom;
  cursor: pointer;
}
button:hover, input[type=button]:hover {
  background-color: #ECF8F6;
}
button:disabled, input[type=button]:disabled {
  cursor: default;
  color: #D0854B;
}
button:disabled:hover, input[type=button]:disabled:hover {
  background-color: #FEEAA1;
}

input, select {
  font-size: 1rem;
  outline: none;
  padding: 0.1rem 0.2rem;
  background-color: #FEEAA1;
  color: #18534F;
}

input[type=file]::file-selector-button {
  background: #FEEAA1;
  color: #18534F;
  border: 0.3rem outset #FEEAA1;
}
input[type=file]::file-selector-button:hover {
  cursor: pointer;
  background-color: #ECF8F6;
}

.tab1, .tab2, .tab3, .tab4, .tab5, .tab6, .tab7, .tab8, .tab12, .tab20, .tab35 {
  margin-right: 0.3rem;
}

.tab1 {
  margin-left: 1rem;
}

.tab2 {
  margin-left: 2rem;
}

.tab3 {
  margin-left: 3rem;
}

.tab4 {
  margin-left: 4rem;
}

.tab5 {
  margin-left: 5rem;
}

.tab6 {
  margin-left: 6rem;
}

.tab7 {
  margin-left: 7rem;
}

.tab8 {
  margin-left: 8rem;
}

.tab12 {
  margin-left: 12rem;
}

.tab20 {
  margin-left: 20rem;
}

.tab35 {
  margin-left: 35rem;
}

.logoLien {
  height: 3.6rem;
}
.logoLien:hover {
  cursor: pointer;
  border: 0.1rem outset #18534F;
}

.icoGau {
  width: 6rem;
  position: relative;
  float: left;
  margin: 0.3rem;
}

.min {
  width: 3rem;
}

.imgGau, .imgDrt {
  position: relative;
  box-shadow: 0.3rem 0.3rem 0.3rem #18534F;
  margin: 0.3rem 1.3rem 0.3rem 0.3rem;
}

.imgGau {
  float: left;
}

.imgDrt {
  float: right;
}

.paysage {
  width: 45%;
}

.portrait {
  width: 27.5%;
}

.imgIdent {
  width: 18%;
  position: relative;
  box-shadow: 0.3rem 0.3rem 0.3rem #226D68;
  float: left;
  margin: 0.5rem;
}

.minima {
  max-width: 13rem;
}

.imgReac {
  cursor: pointer;
}

iframe {
  transform: scale(1);
  width: 100%;
  height: 1000px;
}

#avance, #recule {
  position: absolute;
  top: 50%;
  cursor: pointer;
}

#avance {
  right: 1%;
}

#recule {
  left: 1%;
}

.items {
  display: flex;
  margin-bottom: -0.25rem;
}

.item {
  flex: 1 0 100%;
  position: relative;
}
.item > img {
  width: 100%;
}

.caption {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  padding: 0.5rem;
  background-color: #ECF8F6;
  opacity: 0.6;
}

.datepicker {
  display: inline-block;
  border: 1px solid #18534F;
  border-radius: 3px;
  box-shadow: 0.5px 0.5px 0px #18534F;
}

.datepicker > .datepicker_header {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 5px;
  padding-right: 5px;
  background-color: #18534F;
  color: #FEEAA1;
  text-align: center;
  font-size: 1.1rem;
  font-weight: bold;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.datepicker > .datepicker_header > a {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  color: #FEEAA1;
}

.datepicker > .datepicker_header > a:hover {
  color: #18534F;
  background-color: #FEEAA1;
}

.datepicker > .datepicker_header > a:active {
  color: #FFFFFF;
  background-color: #ECF8F6;
}

.datepicker > .datepicker_header > span {
  margin-left: 20px;
  margin-right: 20px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.datepicker_inner_container {
  margin: -2px 0px -2px 0px;
  background-color: #FEEAA1;
  border: 1px solid #D0854B;
  border-radius: 3px;
  box-shadow: 0.5px 0px 3px #D0854B;
}

.datepicker_inner_container:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.datepicker_calendar {
  float: left;
  width: auto;
  margin-top: -0.5px;
  margin-left: -1px;
  margin-bottom: -2px;
  background-color: #FEEAA1;
  border: 1px solid #D0854B;
  border-top: none;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}

.datepicker_table {
  padding: 10px;
}

.datepicker_table > tr > th {
  color: #18534F;
  width: 18px;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: center;
}

.datepicker_table > tr > td {
  color: #18534F;
  background-color: #FEEAA1;
  font-size: 1.1em;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}

.datepicker_table > tr > td.today {
  border-bottom: #18534F solid 2px;
  background-color: #ECF8F6;
  margin-bottom: -2px;
}

.datepicker_table > tr > td.wday_sat {
  color: #FEEAA1;
  background-color: #18534F;
}

.datepicker_table > tr > td.wday_sun {
  color: #FEEAA1;
  background-color: #18534F;
}

.datepicker_table > tr > td.day_another_month {
  color: #000000;
}

.datepicker_table > tr > td.day_in_past {
  cursor: default;
  background-color: #FEEAA1;
  color: #D0854B;
}

.datepicker_table > tr > td.day_in_unallowed {
  cursor: default;
  color: #FFFFFF;
}

.datepicker_table > tr > td.out_of_range {
  cursor: default;
  color: #FFFFFF;
}

.datepicker_table > tr > td.active {
  color: #FEEAA1;
  background-color: #18534F;
}

.datepicker_table > tr > td:hover {
  color: #FEEAA1;
  background-color: #18534F;
}

.datepicker_timelist {
  float: left;
  width: 4.2em;
  height: 118px;
  margin-top: -0.5px;
  padding: 5px;
  padding-left: 0px;
  padding-right: 0px;
  overflow: auto;
  overflow-x: hidden;
  background-color: #ECF8F6;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}

div.timelist_item {
  padding-top: 1px;
  padding-bottom: 1px;
  padding-left: 7px;
  padding-right: 25px;
  margin-top: 5px;
  margin-bottom: 2px;
  font-size: 1.1rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}

div.timelist_item.time_in_past {
  cursor: default;
  color: #D0854B;
}

div.timelist_item.out_of_range {
  cursor: default;
  color: #FEEAA1;
}

div.timelist_item.active {
  color: #18534F;
  background-color: #226D68;
}

div.timelist_item.hover {
  color: #FEEAA1;
  background-color: #18534F;
}

/*  style enchères */
.enchere {
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: normal;
  justify-content: center;
  text-align: justify;
  margin-top: 0;
}

.main,
.sequence {
  background-color: white;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 0px;
  box-shadow: 0 0px 4px rgba(0, 0, 0, 0.3);
  margin-top: 0px;
}

.sequence {
  font-family: monospace;
  white-space: pre-wrap;
  line-height: 0.5;
  width: 100%;
  max-width: 300px;
}

.main {
  width: 100%;
  max-width: 300px;
}

.spades,
.clubs {
  color: black;
}

.hearts,
.diamonds {
  font-size: 0.8rem;
  color: red;
}

.hand {
  position: relative;
  width: 100%;
  height: 110px;
  margin: 0;
  padding: 0;
}

.hand img {
  position: absolute;
  top: 0;
  width: 60px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
}

.exocarte {
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: normal;
  justify-content: center;
  text-align: justify;
  margin-top: 0;
  padding-bottom: 0px;
  margin-bottom: 0px;
  /*background-image: url('./Public/images/cartes/tapis.jpg');
  background-size: cover;   /* pour que l'image remplisse le div */
  background-position: center;
  /*width: 600px;            */
  /*height: 400px;            */
}

.hand-carte {
  width: 350px;
  display: flex;
  padding-left: 50px;
  align-items: flex-start;
  /*height: auto;      /* conteneur visible */
}

.colonne-couleur {
  position: relative;
  width: 100px;
  height: 300px;
  margin-right: 5px;
}

.colonne-couleur img {
  position: absolute;
  width: 60px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
}

.entame {
  position: relative;
  justify-content: center;
  width: 250px; /* largeur du conteneur */
  height: 200px; /* hauteur du conteneur */
  margin-left: 60px;
}

.entame img {
  position: absolute;
  top: 0 auto;
  border-radius: 8px;
}

.carte {
  padding-top: 60px;
  left: 0; /* première image */
  z-index: 2; /* au-dessus */
  width: 60px;
  border-radius: 8px;
}

.tapis {
  left: 45px; /* décalage horizontal → chevauchement */
  z-index: 1; /* en-dessous */
  width: 200px;
  height: 200px;
}

.popup {
  display: block;
  margin: 1rem;
}

/* Fond semi-transparent */
/* Contenu de la popup */
.popup-content {
  background: white;
  padding: 20px 30px;
  border-radius: 12px;
  max-width: 400px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
  position: relative;
  animation: fadeIn 0.3s ease-out;
}

/* Croix ronde au-dessus du popup */
.popup-close {
  position: absolute;
  top: -12px;
  /* au-dessus du popup */
  left: -12px;
  right: auto;
  /* légèrement à l'extérieur */
  /*transform: translate(50%, -50%);*/
  font-size: 26px;
  cursor: pointer;
  color: #333;
  background: #fff;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.25);
  z-index: 10000;
}

.popup-close:hover {
  color: #000;
}

/* Animation */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
/* ========== POPUP MODAL GLOBAL ========== */
#popupModal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  justify-content: center;
  align-items: flex-start;
  z-index: 1000;
  border-radius: 10px;
}

#popupContent {
  position: relative;
  /* margin-top: 20vh;
   width: 90%;*/
  margin-top: 0;
  width: 100%;
  max-width: 600px;
  height: 80%;
  background: white;
  border-radius: 10px;
  /*overflow:flex;
          position: relative;
          margin-top: 2cqmin;
          width: 90%;
          max-width: 600px;
          height: 80%;
          background: white;
          border-radius: 10px;*/
  overflow: hidden;
}

#popupIframe {
  width: 100%;
  height: 100%;
  border: none;
  padding-left: 10px;
  border-radius: 10px;
}

#popup-msg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.45);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

#closeBtn {
  position: absolute;
  top: -15px;
  left: -15px;
  right: auto;
  background: white;
  border: none;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  font-size: 25px;
  font-weight: bold;
  color: black;
  cursor: pointer;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  z-index: 1001;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}/*# sourceMappingURL=lmbc.css.map */