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

        body {
            background-color: #f5f5f5;
        }
        
        
/*DIV FILTER BTN*/

        .container{
            background-color: #2d5f3f;
            width: 100%;
            height: 50px;
            display: flex;
            justify-content: center;
            align-items: center;
            
        }
        
        .filter-button{
            background-color: #6ec585;
            font-size: 1rem;
            color: #ffffff;
            font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
            border-radius: 30px;
            outline: none;
            font-size: 1rem;
            font-weight: bold;
            cursor: pointer;
            width: 150px;
            padding:8px 20px;  
            display: flex; 
            justify-content: center;
        }
        .filter-button:hover{
            
            transform: translateY(-2px);
            }
        .filter-button:focus,
        button:focus {
            outline: 3px solid var(--color-vert-fonce);
            outline-offset: 2px;
        }
            
/*FILTER MENU*/

/* OVERLAY */
        
        .overlay.visible {
            opacity: 1;
            visibility: visible;
}

/* FILTER MENU */

        .filtres-menu {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%) scale(0.8);
            background-color: white;
            padding: 40px;
            border-radius: 15px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
            z-index: 999;
            max-width: 500px;
            width: 90%;
        }

        .filtres-menu.open {
            opacity: 1;
            visibility: visible;
            transform: translate(-50%, -50%) scale(1);
        }

        .filtres-section {
            margin-bottom: 30px;
            font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
            
        }

        .filtres-section h3 {
            color: #000000;
            margin-bottom: 15px;
            font-size: 16px;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .filter-btn {
            background-color: #2d5a3d;
            color: white;
            border: none;
            padding: 10px 20px;
            border-radius: 25px;
            margin: 5px;
            cursor: pointer;
            font-size: 14px;
            transition: all 0.3s;
        }
        .filter-btn:hover {
            background-color: #6ec585;
            transform: translateY(-2px);
        }

        .filter-btn.open {
            background-color: #f5c126;
        }
        .filter-btn.active {
            background-color: var(--color-vert-clair, #6ec585);
            color: white;
}
        
        .valider-btn{
            background-color: #6ec585;
            color: white;
            border: none;
            padding: 10px 40px;
            border-radius: 25px;
            margin: 5px;
            cursor: pointer;
            font-size: 14px;
            transition: all 0.3s;
        }

        .valider-btn:hover {
            background-color: #90f2b0;
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
        }

        .valider-btn:active {
            transform: translateY(0);
        }

         .reset-btn{
            background-color: #f9bd15;
            color: white;
            border: none;
            padding: 10px 40px;
            border-radius: 25px;
            margin: 5px;
            cursor: pointer;
            font-size: 14px;
            transition: all 0.3s;
        }

        .reset-btn:hover {
            background-color: #facb4a;
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
        }

        .reset-btn:active {
            transform: translateY(0);
        }

/* MENUCARD*/

        #cardsContainer {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
            gap: 30px;
            max-width: 1200px;
            margin: 40px auto;
            justify-items: center;
            margin-top: 120px;
            
        }
        .card {
            width: 300px;
            background: white;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
            position: relative;
            font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
        }

        .card-header {
            padding: 20px 20px 10px;
            text-align: center;
        }

        .badge-category {
            display: inline-block;
            background: #ff9a9e;
            color: #8e0717;
            padding: 8px 25px;
            border-radius: 20px;
            font-size: 16px;
            font-weight: bold;
            margin-bottom: 10px;
        }

        .dish-title {
            font-size: 18px;
            color: #000000;
            margin: 10px 0;
            font-weight: normal;
        }

        .persons {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 5px;
            margin: 8px 0;
            font-size: 13px;
            color: #666;
        }

        .image-container {
            width: 100%;
            height: 200px;
            position: relative;
        }

        .dish-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .price-badge {
            position: absolute;
            bottom: -15px;
            right: 20px;
            background:#6ec585;
            color: #224e04;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            font-size: 16px;
            box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
        }

        .details-badge {
            position: absolute;
            top:90px;
            left: 15px;
            background:#9ef78c;
            width: 30px;
            height: 30px;
            border-top-right-radius: 10px;
            border-bottom-left-radius: 10px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            font-size: 8px;
            box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
            cursor: pointer;
        }

        .fa-solid.fa-cart-shopping{
            font-size: 15px;
            color:#2d5016;
        }
        

        .card-footer {
            padding: 25px 20px 20px;
            text-align: center;
        }

        .badge-diet {
            display: inline-block;
            background-color: #ffd966;
            color: #563e01;
            padding: 8px 20px;
            border-radius: 20px;
            font-size: 16px;
            font-weight: bold;
        }
        
        .menu_footer{
            text-align: center;
            color: red;
            font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
            font-style: bold;
            margin-bottom: 20px;

        }

   

/* RESPONSIVE */
       
        @media (max-width: 480px) {
            
            .filtres-actions{
                display: flex;

                justify-content: center;
            }
        }