:root {
  --gris: #333;
  --gris-clair: #666;
  --orange: #ffcc99;
  --rose: #ff99cc;
  --blanc: #fff;
  --vert:#99ff99;
}
/* Body global */
body {
    font-family: 'Arial', sans-serif;
    background-color: var(--white);
    margin: 0;
    padding: 0;
    list-style: none;
}
.text-center {
    text-align: center;
}

header, nav.menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: var(--rose);
    color: var(--blanc);
    padding: 15px 20px;
    text-align: center;
}
nav a {
    color: var(--blanc);
    margin: 0 15px;
    text-decoration: none;
    font-weight: bold;
}
nav.menu > li {
      position: relative;
      padding-bottom: 10px;
    }

li:hover  {
    text-decoration: underline;
}
/* Sous-menu caché par défaut */
nav.sous-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--orange);
    list-style: none;
    padding: 0;
    min-width: 150px;
}

nav.sous-menu li a {
    display: block;
    padding: 10px 15px;
    color: var(--blanc);
    text-decoration: none;
}

/* Affichage du sous-menu au survol */
nav.menu > li:hover > nav.sous-menu {
    display: block;
}

/*Carnet ferme */

.fond {
    width:100%;
    height:100vh;
    background-image:url('/images/carnet-ecriture.jpg');
    background-size:cover;
    background-position:center;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    text-align:center;
}

.bouton1 {
    background:var(--orange);
}

.bouton2 {
    background:var(--rose);
}

.bouton {
    display:inline-block;
    margin:10px;
    padding:12px 18px;
    color:var(--gris);
    border-radius:10px;
    text-decoration:none;
    font-size:18px;
}

.carnet-closed .success-message {
    margin-top:20px;
    padding:10px 15px;
    background:rgba(0, 255, 0, 0.2);
    border:1px solid green;
    border-radius:5px;
    color:green;
    font-weight:bold;
}

/*Carnet ouvert */

.fond2 {
    width:100%;
    height:100vh;
    background-image:url('/images/carnet-ferme.jpg');
    background-size:cover;
    background-position:center;
    padding-top:20px
}

.carnet {
    width:58%;
    height: 80%;
    margin:auto;
    margin-top:20px;
    padding:50px;
    background-image:url('/images/carnet-ouvert.jpg');
    background-size:cover;
    background-position:center;
    border-radius:12px;
    box-shadow:0 6px 18px rgba(0,0,0,0.08);
}

.carnet-opened .page {
    display:flex;
    gap:20px;
    max-height:100%;
    justify-content:center;
}
.carnet-opened .card {
    display:flex;
    background:var(--blanc);
    padding:12px;
    border-radius:8px;
    margin-bottom:14px;
    gap:30px;
}
.carnet-opened .card img {
    width:50%;
    object-fit:cover;
    border-radius:6px;
}

.card p{
    margin-top:2px;
    font-size:14px;
    color:var(--gris-clair);
}

.recipe-btn {
    margin-top:8px;
    display:inline-block;
    padding:6px 10px;
    border-radius:6px;
    color:var(--gris);
    text-decoration:none;
    background-color: var(--vert);
}

/* Recette */

.recipeModal {
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.5);
    justify-content:center;
    align-items:center;
}

.recipeModal .main {
    background-color:#E4DFD4;
    padding:20px;
    width:90%;
    max-width:600px;
    border-radius:10px;
    position:relative;
}

.recipeModal button {
    position: absolute;
    right:14px;
    top:10px;
    color: var(--rose);
}

.recipeModal .recipeContent {
    white-space:pre-wrap;
    margin-top:10px;
    color:var(--gris);
}



/*Carnet creation */

.carnet-created h2 {
    text-align:center;
    margin-bottom:20px;
}

.carnet-created .form-row {
    display:flex;
    gap:50px;
    margin: 20px;
    margin-left: 0px;
}

.form-side, .side {
    flex:1;
}

.carnet-created label {
    display:block;
    margin-top:8px;
    font-weight:600;
}

.carnet-created input, .carnet-created textarea {
    width:100%;
    padding:8px;
    margin-top:6px;
    border:1px solid var(--blanc);
    border-radius:6px;
    font-size:16px;
}

.carnet-created button {
    margin-top:15px;
    padding:12px 20px;
    background:var(--rose);
    color:var(--gris);
    border:none;
    border-radius:10px;
    font-size:18px;
    cursor:pointer;
}

/* Jeu */
.fond3 {
    width:100%;
    height:100vh;
    background-image:url('/images/fond-sanscarnet.png');
    background-size:cover;
    background-position:center;
    padding-top:20px
}

.gameCanvas {
    border:2px solid var(--gris);
    display:block;
    margin:auto;
    background:var(--vert);
}

.startbtn {
    display:block;
    margin:20px auto;
}

/* Calendrier */

.fond-clair {
    background-color:#E4DFD4;
    border-radius: 10px;
    padding: 20px;
    display: grid;
    gap: 10px;
    max-width: 600px;
    margin: auto;
}
.calendar {
   grid-template-columns: repeat(5, 1fr);
}
.cadeau-ferme {
    background: url('/images/cadeau_ferme.png') no-repeat center center;
    background-size: cover;
    width:100%;
    height:100%;
    display:flex;
    align-items: center;
    justify-content:center;
    font-size:24px;
    color:var(--blanc);
    font-weight:bold;
    text-shadow: 1px 1px 2px black;
}

.case {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}

.lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    align-items: center;
    justify-content: center;
}


/* Accueil */

.accueil {
    text-align: center;
    background-color: #E4DFD4;
    height: auto;
    width: auto;
}

.equilibre {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    text-align:center;
}
