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

a{
  text-decoration: none;
  color: black;
}

li{
  list-style-type: none;
}

h1{
  font-size: 4.75rem;
  font-weight: bold;
}

p{
  font-size: 1rem;
}

.primary-btn{
  border: 1px solid black;
  border-radius: 10px;
  padding: 0.5rem;
  width: fit-content;
}

.pictos{
    width: 1rem;
}

.etiquette{
  background-color: #dbdbdb;
  padding: 0.5rem;
  display: inline-block;
  width: fit-content;
  border-radius: 10px;
}

.container{
  width: 80%;
  margin: auto;
}

.row{
  display: flex;
  flex-direction: column;
  margin-top: 1.5rem;
  gap: 1rem;
}

.trait{
  height: 3px;
  margin: auto;
  background-color: black;
  width: 95%;

}

img{
  width: 100%;
}

header{
  .row{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-top: 1rem;
    margin-left: 2rem;
    margin-right: 2rem;
    align-content: center;
    margin-top: 0rem;

    nav{
      ul{
        display: flex;
        justify-content: center;
        gap: 1rem;
      }
    }

    .user-menu{
      ul{
        display: flex;
        justify-content: center;
        gap: 1rem;
      }
    }
  }
}

.titre{
  .row{
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    
  }
}

.auteur{
  display: flex;
  align-items: center;
  gap: 1.5rem;

  img {
    width: 50px;
    height: 50px;
    object-fit: cover; /* très utile pour garder la tête centrée */
    border-radius: 50%;
  }  

}

/*CSS page app/index*/
.banner{
  .card-une{
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 1.5rem;

      .column-45{
        width: 45%;

        img{
          height: 100%;
          object-fit: cover;
          display: block;
        }

        .encart-une{
          display: flex;
          flex-direction: column;
          gap: 1rem;
          justify-content: space-between;
          height: 100%;          
        }
      }
  }
}

.info-article{
  display: flex;
  flex-direction: row;
  justify-content: space-between;

  .avis{
    display: flex;
    flex-direction: row;
    gap: 2rem;

    .commentaire{
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }

    .like{
      display: flex;
      gap: 0.5rem;
      align-items: center;
    }
  }
}


.container-card{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}


/*Css de ma _cardArticle*/
.card{
  display: flex;
  gap: 1rem;
  align-items: stretch;

  .column-35{
    width: 35%;

        img{
          height: 100%;
          object-fit: cover;
          display: block;
        }
  }
  .column-60{
    width: 60%;

    .encart{
      display: flex;
      flex-direction: column;
      gap: 1rem;
      justify-content: space-between;
      height: 100%;

      .card-top{
        display: flex;
        justify-content: space-between;
      }

      .card-head{
        .sous-titre{
          font-size: 12px;
          color: #7f7f7f;
        }
      }

      .card-date{
        p{
          font-size: 10px;
          color: #7f7f7f;
          text-align: right;
        }
      }

      .chapeau{
        font-size: 14px;
      }

      .cta{
        a{
          display: flex;
          gap: 1rem;
          justify-content: right;
        }
      }

    }
  }
}

/*Css de la recherche*/
.search-bar{
  display: flex;
  justify-content: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.list-categorie{
  margin-top: 1rem;
  ul{
    display: flex;
    justify-content: center;
    gap: 1rem;
  }
}

/*Css app/show*/
.lecture-article{
  .row{
    .article-img{
      width: 60%;
      margin: auto;
      object-fit: cover;
    }

    .footer-article{
      display: flex;
      justify-content: space-between;
      margin-bottom: 2rem;

      

      .avis{
        display: flex;
        flex-direction: row;
        gap: 2rem;

        .commentaire{
          display: flex;
          gap: 0.5rem;
          align-items: center;
        }

        .like{
          display: flex;
          gap: 0.5rem;
          align-items: center;
        }
      }
    }
  }
}

.commentaires{
  .container-avis{
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
}

.invit-connexion{
  font-size: 2rem;
  text-align: center;
}

/*Css de la _cardCommentaire*/
.card-commentaire{
  border: 1px solid black;
  padding: 1rem;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;

  .header-card-commentaire{
    display: flex;
    justify-content: space-between;
  }
}

/* CSS du formulaire de commentaire*/
.form-commentaire{
  display: flex;
  flex-direction: column;
  gap: 1rem;

  form{
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  #commentaire{
    div{
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }

    #commentaire_contenu{
      width: 50%;
      height: 150px;
    }
  }
}

/*Css du formulaire de creation/modification article*/
.creation-modification-article{
  display: flex;
  flex-direction: column;
  gap: 3rem;

  form{
    display: flex;
    flex-direction: column;
    gap: 2rem;

    .champs{
      display: flex;
      flex-direction: column;
      gap: 0.5rem;

      .error{
        color: #F0515A;
      }

      .message-flash{
        position: fixed;
        bottom: 64px;
        transition: bottom 0.6s ease;
        z-index: 999;
        width: 100%;
        padding: 16px;
      }

      .succes{
        background-color: rgb(7, 219, 148);
        color: green;
      }
    }

    .checkbox{
      display: flex;
      align-items: center;
      gap: 1rem;
    }
  }
}

/*Css du formulaire de creation de compte*/
.creation-compte{
  width: 80%;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 5rem;

  form{
    display: flex;
    flex-direction: column;
    gap: 1rem;

    div{
      display: flex;
      gap: 1rem;
    }
  }
}

/*Css du formulaire de login*/
.se-connecter{
  width: 80%;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 5rem;

  form{
    display: flex;
    flex-direction: column;
    gap: 1rem;

    div{
      display: flex;
      gap: 1rem;
    }
  }
}