/* ==========================================================================
   Styles pour les pages Recettes
   ========================================================================== */

.container-recettes {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.hero {
    background: linear-gradient(90deg, #a90173, #c11c8a);
    color: white;
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 150px;
    position: relative;
}

.hero h1, .hero h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-top: 1rem;
}

.hero img {
    width: 315px;
    height: auto;
    position: absolute;
    right: 100px;
    display: block;
    top: 20%;
}

.breadcrumb {
    margin: 1.5rem 1rem;
    font-size: 0.9rem;
    color: var(--color-primary);
}

.breadcrumb a {
    color: var(--color-primary);
    text-decoration: none;
}

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

/* --- Section Recette du moment --- */
.section-recette {
    display: flex;
    gap: 2rem;
    padding: 2rem 0;
    align-items: center;
}

.section-recette .text {
    display: flex;
    flex-direction: row;
    gap: 4rem;
    width: 100%;
    align-items: flex-start;
}

.section-recette .text .flex {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.section-recette h2 {
    color: var(--color-primary);
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.section-title-full-bleed-line {
    /* On établit un contexte de positionnement pour la ligne */
    position: relative;
    /* On s'assure que le titre prend toute la largeur de son conteneur flex */
    width: 100%;
    text-align: left;
    /* Force l'alignement à gauche */
}

.section-title-full-bleed-line::before {
    content: '';
    /* On sort la ligne du flux normal */
    position: absolute;
    height: 1px;
    background-color: var(--color-primary);
    top: 50%;
    /* On la centre verticalement par rapport au texte */
    transform: translateY(-50%);

    /* On positionne la FIN de la ligne juste avant le début du titre */
    right: 100%;
    /* On ajoute un espace entre la ligne et le titre */
    margin-right: 1.5rem;

    /* LA FORMULE MAGIQUE POUR LA LARGEUR */
    /* Cette formule calcule l'espace exact entre le bord de votre 
     conteneur principal (.container-recettes) et le bord de la fenêtre. */
    width: calc(50vw - 50% - 20px);
}

.section-recette p {
    line-height: 1.6;
}

/* --- Barre d'informations (détail recette) --- */
.recipe-info-bar {
    display: flex;
    justify-content: space-around;
    padding: 2rem 0;
    margin: 5rem 0 0 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    list-style: none; /* Ajout pour la sémantique <ul> */
}

.recipe-info-bar li {
    position: relative;
    padding-left: 30px; /* Espace pour l'icône */
    display: flex;
    align-items: center;
}

.recipe-info-bar li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

/* Icônes spécifiques */
.info-difficulty::before {
    /* background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="17" height="39" viewBox="0 0 17 39" fill="none"><rect width="17" height="39" transform="matrix(-1 0 0 1 17 0)" fill="url(%23pattern0_837_496)" /><defs><pattern id="pattern0_837_496" patternContentUnits="objectBoundingBox" width="1" height="1"><use xlink:href="%23image0_837_496" transform="matrix(0.0089614 0 0 0.00390625 0.0922564 0)" /></pattern><image id="image0_837_496" width="91" height="256" preserveAspectRatio="none" xlink:href="data:image/png;base64,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" /></defs></svg>');
    width: 17px;
    height: 39px;
    top: 40%; */
}

.info-difficulty img {
    height: 40px;
    padding-right: 5px;
}

.info-servings::before {
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20.0002' cy='13.3334' r='6.66667' fill='%23BC088B'/%3E%3Cpath d='M9.78211 25.9026C10.7499 23.1998 13.4386 21.6667 16.3094 21.6667H23.6909C26.5618 21.6667 29.2504 23.1998 30.2182 25.9026C30.8783 27.746 31.492 30.0134 31.6354 32.3339C31.6695 32.8851 31.2191 33.3334 30.6668 33.3334H9.3335C8.78121 33.3334 8.33087 32.8851 8.36494 32.3339C8.50836 30.0134 9.12203 27.746 9.78211 25.9026Z' fill='%23BC088B'/%3E%3C/svg%3E");
    width: 25px;
    height: 25px;
}

.info-time::before {
    background-image: url("data:image/svg+xml,%3Csvg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13 0C20.1797 0 26 5.8203 26 13C26 20.1797 20.1797 26 13 26C5.8203 26 0 20.1797 0 13C0 5.8203 5.8203 0 13 0ZM13 3.61111C12.2023 3.61111 11.5556 4.25781 11.5556 5.05556V12.6389C11.5556 13.6361 12.3639 14.4444 13.3611 14.4444H18.0556C18.8533 14.4444 19.5 13.7977 19.5 13C19.5 12.2023 18.8533 11.5556 18.0556 11.5556H14.4444V5.05556C14.4444 4.25781 13.7977 3.61111 13 3.61111Z' fill='%23BC088B'/%3E%3C/svg%3E");
    width: 26px;
    height: 26px;
}

.info-cost::before {
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='27' viewBox='0 0 19 27' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.512 11.996V9.368H18.296V11.996H0.512ZM0.152 16.568V13.94H17.504V16.568H0.152ZM6.884 13.4C6.884 15.248 7.16 16.832 7.712 18.152C8.264 19.472 9.032 20.492 10.016 21.212C11 21.908 12.128 22.256 13.4 22.256C15.464 22.256 17.264 21.512 18.8 20.024V25.1C17.984 25.556 17.12 25.916 16.208 26.18C15.32 26.444 14.384 26.576 13.4 26.576C11.168 26.576 9.212 26 7.532 24.848C5.876 23.696 4.58 22.136 3.644 20.168C2.732 18.176 2.276 15.92 2.276 13.4C2.276 11.528 2.54 9.788 3.068 8.18C3.596 6.572 4.34 5.168 5.3 3.968C6.284 2.768 7.46 1.844 8.828 1.196C10.196 0.524 11.72 0.188 13.4 0.188C14.384 0.188 15.32 0.319999 16.208 0.583999C17.12 0.823999 17.984 1.184 18.8 1.664V6.776C17.264 5.288 15.464 4.544 13.4 4.544C12.128 4.544 11 4.904 10.016 5.624C9.032 6.32 8.264 7.328 7.712 8.648C7.16 9.944 6.884 11.528 6.884 13.4Z' fill='%23BC088B'/%3E%3C/svg%3E");
    width: 19px;
    height: 27px;
}

.section-recette .text button {
    border: inherit;
    align-self: flex-start;
}

.section-recette .image-recette {
    flex: 0 0 300px;
    height: 350px;
    position: relative;
}

.section-recette .image-recette img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    display: block;
    object-fit: cover;
}

/* --- Section de toutes les recettes (page liste) --- */
.section-all-recettes {
    padding: 2rem 1rem;
}

.section-all-recettes .flex {
    display: flex;
    gap: 3rem;
}

.filters {
    flex: 0 0 250px;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.filter-group h3 {
    margin-bottom: 0.8rem;
    color: #333;
    font-size: 1.1rem;
    border-bottom: 2px solid var(--color-primary);
    padding-bottom: 0.5rem;
}

.filter-group label {
    display: block;
    margin-bottom: 0.5rem;
    cursor: pointer;
}

.filter-group input {
    margin-right: 0.5rem;
}

.grid-wrapper {
    flex: 1;
}

.grid-recettes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 1.5rem;
}

/* --- Cartes de recette (composant réutilisé) --- */
.recette-card {
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    transition: transform 0.2s ease;
    height: 250px;
    background: #333;
}

.recette-card:hover {
    transform: scale(1.03);
}

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

.recette-title {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1.5rem 1rem 1rem;
    margin: 0;
    color: white;
    font-weight: bold;
    font-size: 1.1rem;
    text-align: left;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
    border-radius: 0 0 10px 10px;
}

.load-more-container {
    text-align: center;
    margin-top: 2rem;
}

.hidden-recipe {
    display: none;
}

.filter-toggle-button,
.apply-filters-button,
.close-filters {
    display: none;
}

.more-recette {
    margin-top: 20px;
    justify-self: center;
    margin-left: 300px;
}

/* --- Page de détail d'une recette --- */
.recipe-detail-main {
    display: flex;
    gap: 2rem;
    align-items: center;
    
}

.recipe-detail-image {
    flex: 1;
    display: flex;
    max-width: 500px;
    max-height: 400px; /* limite visible */
    overflow: hidden;  /* masque ce qui dépasse */
    border-radius: 10px;
    justify-content: center;    /* centre horizontalement */
  align-items: center;
}

.recipe-detail-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* garde le ratio, remplit toujours la largeur */
    object-position: center;
    display: block;
}

.recipe-detail-content {
    flex: 1;
}

.recipe-title-main {
    font-size: 2.5rem;
    text-align: left;
    margin-bottom: 1rem;
    color: var(--color-primary);
}

.recipe-info-bar {
    display: flex;
    justify-content: space-around;
    padding: 2rem 0;
    margin: 5rem 0 0 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.recipe-body {
    display: flex;
    gap: 4rem;
    margin-top: 5rem;
}

.recipe-ingredients,
.recipe-preparation {
    flex: 1;
}

.recipe-body ul {
    list-style-type: disc;
    padding-left: 20px;
    margin-bottom: 1.5rem;
}

.recipe-body li {
    margin-bottom: 0.5rem;
}

.recipe-subtitle {
    text-align: left;
    margin-bottom: 1.5rem;
    color: var(--color-primary);
}

.other-recipes-section {
    padding-bottom: 10rem;
    margin-top: 5rem;
}

.other-recipes-section .grid-recettes {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

/* --- Résumé des filtres (page liste) --- */
.filter-summary {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin: -1rem 0 2rem 0; /* Ajustement du margin pour le positionnement */
}

.filter-summary h4 {
    color: var(--color-primary);
    margin: 0; /* Annule la marge par défaut du titre */
    font-size: 1.1rem; /* Assure une taille cohérente */
}

.filter-summary a {
    color: black;
    text-decoration: none;
}

.filter-summary a:hover {
    text-decoration: underline;
}