:root{--header-height: 3.5rem;--first-color: hsl(28, 88%, 62%);--title-color: hsl(0, 0%, 95%);--text-color: hsl(0, 0%, 0%);--body-color: hsl(0, 0%, 6%);--body-font: "Montserrat", sans-serif;--second-font: "Dancing Script", cursive;--h2-font-size: 1.25rem;--small-font-size: .813rem;--font-semi-bold: 600;--z-tooltip: 10;--z-fixed: 100}*{box-sizing:border-box;padding:0;margin:0}html,body{height:100%;margin:0;background-color:var(--body-color);color:var(--text-color)}ul{list-style:none}a{text-decoration:none}.list__social_icon{flex:fit-content;right:0;text-align:right}a{margin:.25rem}.menu{position:relative;background-color:transparent;z-index:var(--z-fixed);padding:.25rem 1rem;align-items:center;display:flex;justify-content:center}.nav{display:flex;align-items:center;justify-content:space-between;position:relative;height:var(--header-height)}.nav__toggle,.nav__close{font-size:1.5rem;color:var(--title-color);cursor:pointer}.nav__cta{background-color:var(--first-color);color:var(--title-color);border:none;border-radius:4px;cursor:pointer;transition:background-color .3s ease;padding:.75rem 1.5rem}.nav__list{display:flex;flex-direction:column;row-gap:2.5rem}.nav__link{color:var(--title-color);font-weight:var(--font-semi-bold);transition:color .4s}.nav__link:hover{color:var(--first-color)}.nav__close{position:absolute;top:1rem;right:1.5rem}.show-menu{left:20%}.current_menu{color:var(--first-color)}@media screen and (max-width: 1150px){.nav__menu{position:fixed;top:0;right:-130%;width:80%;height:100%;padding:6rem;transition:right 1s;background-color:#0f0f0f33;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.menu{justify-content:right}.current__menu{color:var(--first-color);position:absolute;font-weight:var(--font-semi-bold);left:45%}}@media screen and (min-width: 1150px){.current__menu{display:none}.nav{height:calc(var(--header-height) + 1rem)}.nav__toggle,.nav__close{display:none}.nav__list{flex-direction:row;column-gap:2.5rem}}.visible-menu{display:none}header{background:#fff;color:#000;display:flex;align-items:center}.logo{display:flex;align-items:center}.logo_img{width:3rem;height:3rem;margin:1rem}footer{background-color:#222;color:#fff;text-align:center;padding:.25rem}.page-container{display:flex;flex-direction:column;min-height:100vh}main{flex:1;#background-image: url(/wood-1846849.jpg);background:linear-gradient(135deg,#f5f7fa,#c3cfe2);background-size:cover;background-repeat:no-repeat;background-attachment:fixed}.calendar-container{font-family:Arial,sans-serif;overflow:hidden;box-shadow:0 4px 8px #000;border-radius:8px;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);margin-top:1rem;width:100%}.calendar-header{display:flex;justify-content:space-between;align-items:center;background-color:#f4f4f4;padding:1rem;font-size:1rem;font-weight:700}.calendar-header button{background:none;border:none;cursor:pointer;color:#333}.calendar-header button:hover{color:#007bff}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);background-color:#fff}@media screen and (min-width: 1150px){.calendar-grid{gap:.25rem;padding:1rem}}.calendar-day{height:2rem;display:flex;align-items:center;justify-content:center;border:.1rem solid #e6e6e6;border-radius:.5rem;color:#333}.week{background:linear-gradient(-45deg,#cac4bf 25%,#ffffffe8 25%,#ffffffe8 50%,#cac4bf 50%,#cac4bf 75%,#ffffffe8 75%,#ffffffe8);background-size:.5rem .5rem;opacity:.5;flex:1}.calendar-day-header,.calendar-day-header-mobile{height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.5rem;color:#333}@media screen and (min-width: 1150px){.calendar-day-header-mobile{display:none}}@media screen and (max-width: 1150px){.calendar-day-header{display:none}}.calendar-day.empty{background-color:transparent;border:none}.calendar-day-not-available{height:2rem;display:flex;align-items:center;justify-content:center;border:.1rem solid #e6e6e6;border-radius:.5rem;color:#333;background:red;opacity:50%}.calendar-day-one-latest{height:2rem;display:flex;align-items:center;justify-content:center;border:.1rem solid #e6e6e6;border-radius:.5rem;color:#000;background:#ffb15d;opacity:80%}.weekend{flex:1}.weekend:hover{background-color:#35b120;color:#fff;cursor:pointer;transition:all .3s}.calendar-day-not-available:hover{height:2rem;display:flex;align-items:center;justify-content:center;border:.1rem solid #e6e6e6;border-radius:.5rem;color:#333;background:red;opacity:50%}.calendar-day-one-latest:hover{height:2rem;display:flex;align-items:center;justify-content:center;border:.1rem solid #e6e6e6;border-radius:.5rem;color:#333;background:#35b120}.hovered{white-space:nowrap;position:absolute;transition:bottom .3s;background-color:#3f3f44;height:2rem;display:none;align-items:center;justify-content:center;border-radius:.5rem;color:#fff;top:-100%}@media screen and (max-width: 1150px){.hovered{padding:.25rem}}@media screen and (min-width: 1150px){.hovered{width:100%}}.weekend:hover+div{display:flex}.container{position:relative;display:flex;justify-content:center}select{margin-left:.25rem;padding:.5rem;font-size:16px;border:none;background-color:transparent;font-weight:700}.open-button{background-color:#3b82f6;color:#fff;font-weight:500;padding:.5rem 1rem;border-radius:.25rem;border:none;cursor:pointer;transition:background-color .2s}.open-button:hover{background-color:#2563eb}.open-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f680}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:150;overflow:hidden}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;transition:opacity .3s ease}.modal-container{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:1rem}.modal{background-color:#fff;border-radius:.5rem;box-shadow:0 10px 25px #0003;width:100%;max-width:28rem;z-index:51;animation:modal-appear .3s ease-out}@keyframes modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.close-button{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;transition:color .2s}.close-button:hover{color:#4b5563}.close-button:focus{outline:none}.modal-body{padding:1rem 1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#4b5563;margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.25rem;box-shadow:0 1px 2px #0000000d;font-size:.875rem;color:#111827;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f640}.form-textarea{height:8rem;resize:none}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.cancel-button,.submit-button{padding:.5rem 1rem;border-radius:.25rem;font-weight:500;cursor:pointer;transition:background-color .2s}.cancel-button{background-color:#e5e7eb;color:#4b5563;border:none}.cancel-button:hover{background-color:#d1d5db}.submit-button{background-color:#3b82f6;color:#fff;border:none}.submit-button:hover{background-color:#2563eb}.submit-button:focus,.cancel-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f640}.notification-container{position:fixed;top:1rem;right:1rem;z-index:50;display:flex;flex-direction:column;gap:.5rem}.notification{color:#fff;padding:.75rem 1rem;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;display:flex;align-items:center}.notification.success{background-color:#22c55e}.notification.error{background-color:#ef4444}.close-button{margin-left:1rem;color:#fff;background:none;border:none;font-size:1.2rem;cursor:pointer}.close-button:hover{color:#e5e7eb}.carousel .control-arrow,.carousel.carousel-slider .control-arrow{-webkit-transition:all .25s ease-in;-moz-transition:all .25s ease-in;-ms-transition:all .25s ease-in;-o-transition:all .25s ease-in;transition:all .25s ease-in;opacity:.4;filter:alpha(opacity=40);position:absolute;z-index:2;top:20px;background:none;border:0;font-size:32px;cursor:pointer}.carousel .control-arrow:focus,.carousel .control-arrow:hover{opacity:1;filter:alpha(opacity=100)}.carousel .control-arrow:before,.carousel.carousel-slider .control-arrow:before{margin:0 5px;display:inline-block;border-top:8px solid transparent;border-bottom:8px solid transparent;content:""}.carousel .control-disabled.control-arrow{opacity:0;filter:alpha(opacity=0);cursor:inherit;display:none}.carousel .control-prev.control-arrow{left:0}.carousel .control-prev.control-arrow:before{border-right:8px solid #fff}.carousel .control-next.control-arrow{right:0}.carousel .control-next.control-arrow:before{border-left:8px solid #fff}.carousel-root{outline:none}.carousel{position:relative;width:100%}.carousel *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.carousel img{width:100%;display:inline-block;pointer-events:none}.carousel .carousel{position:relative}.carousel .control-arrow{outline:0;border:0;background:none;top:50%;margin-top:-13px;font-size:18px}.carousel .thumbs-wrapper{margin:20px;overflow:hidden}.carousel .thumbs{-webkit-transition:all .15s ease-in;-moz-transition:all .15s ease-in;-ms-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translateZ(0);position:relative;list-style:none;white-space:nowrap}.carousel .thumb{-webkit-transition:border .15s ease-in;-moz-transition:border .15s ease-in;-ms-transition:border .15s ease-in;-o-transition:border .15s ease-in;transition:border .15s ease-in;display:inline-block;margin-right:6px;white-space:nowrap;overflow:hidden;border:3px solid #fff;padding:2px}.carousel .thumb:focus{border:3px solid #ccc;outline:none}.carousel .thumb.selected,.carousel .thumb:hover{border:3px solid #333}.carousel .thumb img{vertical-align:top}.carousel.carousel-slider{position:relative;margin:0;overflow:hidden}.carousel.carousel-slider .control-arrow{top:0;color:#fff;font-size:26px;bottom:0;margin-top:0;padding:5px}.carousel.carousel-slider .control-arrow:hover{background:#0003}.carousel .slider-wrapper{overflow:hidden;margin:auto;width:100%;-webkit-transition:height .15s ease-in;-moz-transition:height .15s ease-in;-ms-transition:height .15s ease-in;-o-transition:height .15s ease-in;transition:height .15s ease-in}.carousel .slider-wrapper.axis-horizontal .slider{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-horizontal .slider .slide{flex-direction:column;flex-flow:column}.carousel .slider-wrapper.axis-vertical{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-vertical .slider{-webkit-flex-direction:column;flex-direction:column}.carousel .slider{margin:0;padding:0;position:relative;list-style:none;width:100%}.carousel .slider.animated{-webkit-transition:all .35s ease-in-out;-moz-transition:all .35s ease-in-out;-ms-transition:all .35s ease-in-out;-o-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.carousel .slide{min-width:100%;margin:0;position:relative;text-align:center}.carousel .slide img{width:100%;vertical-align:top;border:0}.carousel .slide iframe{display:inline-block;width:calc(100% - 80px);margin:0 40px 40px;border:0}.carousel .slide .legend{-webkit-transition:all .5s ease-in-out;-moz-transition:all .5s ease-in-out;-ms-transition:all .5s ease-in-out;-o-transition:all .5s ease-in-out;transition:all .5s ease-in-out;position:absolute;bottom:40px;left:50%;margin-left:-45%;width:90%;border-radius:10px;background:#000;color:#fff;padding:10px;font-size:12px;text-align:center;opacity:.25;-webkit-transition:opacity .35s ease-in-out;-moz-transition:opacity .35s ease-in-out;-ms-transition:opacity .35s ease-in-out;-o-transition:opacity .35s ease-in-out;transition:opacity .35s ease-in-out}.carousel .control-dots{position:absolute;bottom:0;margin:10px 0;padding:0;text-align:center;width:100%;z-index:1}@media (min-width: 960px){.carousel .control-dots{bottom:0}}.carousel .control-dots .dot{-webkit-transition:opacity .25s ease-in;-moz-transition:opacity .25s ease-in;-ms-transition:opacity .25s ease-in;-o-transition:opacity .25s ease-in;transition:opacity .25s ease-in;opacity:.3;filter:alpha(opacity=30);box-shadow:1px 1px 2px #000000e6;background:#fff;border-radius:50%;width:8px;height:8px;cursor:pointer;display:inline-block;margin:0 8px}.carousel .control-dots .dot.selected,.carousel .control-dots .dot:hover{opacity:1;filter:alpha(opacity=100)}.carousel .carousel-status{position:absolute;top:0;right:0;padding:5px;font-size:10px;text-shadow:1px 1px 1px rgba(0,0,0,.9);color:#fff}.carousel:hover .slide .legend{opacity:1}.carousel-container{width:40%;margin:auto;overflow:hidden;position:relative;text-align:center}.carousel .slide img{display:block;width:100%;height:auto;border-radius:10px}@media screen and (max-width: 1150px){.carousel .control-arrow{display:none}}.carousel .thumbs-wrapper{display:flex;justify-content:center}.carousel .carousel-status{display:none}.carousel .control-dots{bottom:10px}.carousel .control-dots .dot{background-color:#ffffffb3;border:none;box-shadow:none;width:12px;height:12px}.carousel .control-dots .dot.selected{background-color:#fff}.carousel .thumb{border:none}.overlay-container{position:relative;display:flex;align-items:center;justify-content:center;margin-left:1rem;margin-right:1rem;max-width:50%}.text-overlay{background:#000c;color:#fff;padding:1rem 2rem;border-radius:8px;text-align:center;box-shadow:0 4px 20px #000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overlay-title{font-size:2.5rem;margin-bottom:10px}.overlay-description{font-size:.75rem;line-height:1.6}@media screen and (max-width: 1150px){.overlay-container{max-width:none}}.infos{display:flex;justify-content:space-between;align-items:center;padding:1rem;font-size:1rem;font-weight:700}@media screen and (max-width: 1150px){.infos{flex-direction:column}}.disponibilite{justify-content:space-between;align-items:center;padding:1rem}.gallery-container{position:relative;padding:20px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:15px}.gallery-item{overflow:hidden;border-radius:8px;cursor:pointer;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease,box-shadow .3s ease}.gallery-item img{width:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.2)}.gallery-item.visible{opacity:1;transform:translateY(0)}.gallery-item.hidden{opacity:0;transform:translateY(30px)}.gallery-item:hover{transform:scale(1.03);box-shadow:0 4px 15px #000c}.overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.overlay-image{max-width:90%;max-height:90%;border-radius:10px;box-shadow:0 4px 30px #000000e6;transition:transform .3s ease}.overlay:hover .overlay-image{transform:scale(1.02)}@media (min-width: 1150px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (min-width: 1150px){.gallery-grid{grid-template-columns:repeat(7,1fr)}}.tarif{display:flex;justify-content:center;align-items:center;margin:0}.tarification-card{width:100%;max-width:350px;border:1px solid #ccc;border-radius:10px;padding:20px;margin:1.5rem;box-shadow:0 4px 6px #0000001a;font-family:Arial,sans-serif;background-color:#fff;transition:transform .3s ease-in-out}.tarification-card:hover{transform:scale(1.05)}.tarification-header{margin-bottom:15px;text-align:center;background-color:#f0f0f0;padding:10px;border-radius:8px}.tarification-details{margin-bottom:20px}.tarification-details ul{list-style-type:none;padding:0}.tarification-details li{margin-bottom:10px;display:flex;align-items:center}.icon{margin-right:10px;font-size:20px}.check{color:#4caf50}.cross{color:#f44336}.tarification-footer{display:flex;justify-content:center}.btn{padding:10px 20px;background-color:#4caf50;color:#fff;border:none;border-radius:5px;cursor:pointer;text-decoration:none}.btn:hover{background-color:#45a049}@media (max-width: 480px){.tarification-card{padding:15px}.btn{padding:8px 16px}}.error-container{display:flex;justify-content:center;align-items:center;height:100vh}.error-message{text-align:center;background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 8px #0000001a}.error-message h1,.error-message p{color:#000}.error-image{max-width:300px;margin:20px 0;border-radius:8px}.admin-container{max-width:1200px;margin:0 auto;padding:20px}.admin-tabs{display:flex;border-bottom:2px solid #e1e5e9;margin-bottom:30px;gap:0}.tab-button{background:none;border:none;padding:15px 25px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;color:#6c757d;position:relative}.tab-button:hover{background-color:#f8f9fa;color:#495057}.tab-button.active{color:#007bff;border-bottom-color:#007bff;background-color:#fff}.tab-button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background-color:#007bff}.tab-content{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.admin-container{padding:10px}.admin-tabs{flex-direction:column;border-bottom:none;border-right:2px solid #e1e5e9;margin-bottom:20px}.tab-button{text-align:left;border-bottom:none;border-right:3px solid transparent;padding:12px 20px}.tab-button.active{border-right-color:#007bff;border-bottom-color:transparent}.tab-button.active:after{display:none}}.reservation-card{display:flex;justify-content:space-between;padding:.75rem;border:1px solid #ccc;border-radius:8px;background:#fefefe}.reservation-info .client{font-weight:700;margin-bottom:.25rem}.reservation-info .location{font-size:.9rem;color:#555}.reservation-info .phone{font-size:.85rem;color:#777}.status{padding:.25rem .5rem;border-radius:5px;font-size:.8rem;align-self:flex-start;text-transform:capitalize}.status-confirmée{background-color:#d4edda;color:#155724}.status-en-attente{background-color:#fff3cd;color:#856404}.status-annulée{background-color:#f8d7da;color:#721c24}.weekend-group{background:#fff;border:1px solid #ddd;border-radius:10px;padding:1rem;margin-bottom:1.5rem}.weekend-title{font-size:1.2rem;color:#2c3e50;margin-bottom:1rem}.reservation-list{display:flex;flex-direction:column;gap:.75rem}.timeline-container{padding:2rem;background:#f8f9fa}.timeline-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.avis-management{width:100%}.avis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:15px}.avis-header h2{color:#2c3e50;font-size:28px;margin:0}.avis-stats{display:flex;gap:15px;flex-wrap:wrap}.stat{background:#f8f9fa;padding:8px 12px;border-radius:20px;font-size:14px;font-weight:500;border:1px solid #dee2e6}.stat.pending{background:#fff3cd;color:#856404;border-color:#ffeaa7}.stat.validated{background:#d4edda;color:#155724;border-color:#c3e6cb}.stat.rejected{background:#f8d7da;color:#721c24;border-color:#f5c6cb}.avis-filters{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.filter-btn{background:#f8f9fa;border:1px solid #dee2e6;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500}.filter-btn:hover{background:#e9ecef;border-color:#adb5bd}.filter-btn.active{background:#007bff;color:#fff;border-color:#007bff}.avis-list{display:flex;flex-direction:column;gap:20px}.no-avis{text-align:center;padding:40px 20px;background:#f8f9fa;border-radius:8px;color:#6c757d}.no-avis p{font-size:16px;margin:0}@media (max-width: 768px){.avis-header{flex-direction:column;align-items:flex-start}.avis-header h2{font-size:24px}.avis-stats{width:100%;justify-content:space-between}.stat{flex:1;text-align:center;font-size:12px;padding:6px 8px}.avis-filters{width:100%}.filter-btn{flex:1;text-align:center;font-size:12px;padding:8px 12px}}.generate-token{display:flex;flex-direction:column}.avis-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:all .3s ease}.avis-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.avis-card.etat-pending{border-left:4px solid #ffc107}.avis-card.etat-validated{border-left:4px solid #28a745}.avis-card.etat-rejected{border-left:4px solid #dc3545}.avis-header-card{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.avis-client-info h4{margin:0 0 5px;color:#2c3e50;font-size:18px;font-weight:600}.client-email{margin:0;color:#6c757d;font-size:14px}.avis-meta{text-align:right;flex-shrink:0}.avis-rating{display:flex;align-items:center;gap:5px;margin-bottom:5px;justify-content:flex-end}.star{font-size:16px}.star.filled{filter:brightness(1)}.star.empty{filter:grayscale(100%) brightness(2)}.rating-number{font-size:14px;color:#6c757d;font-weight:500}.avis-date{margin:0;font-size:12px;color:#6c757d}.avis-content{margin-bottom:20px}.avis-comment{margin:0;line-height:1.6;color:#495057;font-size:15px;background:#f8f9fa;padding:15px;border-radius:8px;border-left:3px solid #007bff}.avis-footer{display:flex;justify-content:space-between;align-items:center;gap:15px}.etat-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.etat-badge.etat-pending{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.etat-badge.etat-validated{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.etat-badge.etat-rejected{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.avis-actions{display:flex;gap:8px;flex-wrap:wrap}.avis-actions button{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .3s ease;white-space:nowrap}.btn-validate{background:#28a745;color:#fff}.btn-validate:hover{background:#218838;transform:translateY(-1px)}.btn-reject{background:#dc3545;color:#fff}.btn-reject:hover{background:#c82333;transform:translateY(-1px)}.btn-delete{background:#6c757d;color:#fff}.btn-delete:hover{background:#5a6268;transform:translateY(-1px)}@media (max-width: 768px){.avis-card{padding:15px}.avis-header-card{flex-direction:column;gap:10px}.avis-meta{text-align:left;width:100%}.avis-rating{justify-content:flex-start}.avis-client-info h4{font-size:16px}.avis-comment{font-size:14px;padding:12px}.avis-footer{flex-direction:column;align-items:flex-start;gap:10px}.avis-actions{width:100%;justify-content:space-between}.avis-actions button{flex:1;padding:10px 8px;font-size:11px}}.avis-container{max-width:1024px;margin:0 auto;padding:24px}.avis-header{margin-bottom:32px}.avis-header-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.avis-title{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:8px}.avis-stats{display:flex;align-items:center;gap:16px}.avis-stars-container{display:flex;align-items:center;gap:8px}.avis-stars{display:flex;gap:4px}.star{width:20px;height:20px}.star-filled{color:#fbbf24;fill:#fbbf24}.star-empty{color:#d1d5db}.avis-rating-text{font-size:1.25rem;font-weight:600;color:#1f2937}.avis-count{color:#6b7280}.avis-list{display:flex;flex-direction:column;gap:24px}.avis-card{background:#fff;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:24px;border:1px solid #f3f4f6;transition:box-shadow .3s ease}.avis-card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.avis-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.avis-user-info{display:flex;align-items:center;gap:12px}.avis-avatar{width:48px;height:48px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;display:flex;align-items:center;justify-content:center}.avis-avatar img{width:48px;height:48px;border-radius:50%;object-fit:cover}.avis-avatar-icon{width:24px;height:24px;color:#fff}.avis-user-details h3{font-weight:600;color:#1f2937;font-size:1.125rem;margin:0}.avis-user-rating{display:flex;align-items:center;gap:8px;margin-top:4px}.avis-user-stars{display:flex;gap:2px}.avis-user-stars .star{width:16px;height:16px}.avis-rating-number{font-size:.875rem;color:#6b7280;font-weight:500}.avis-date{display:flex;align-items:center;font-size:.875rem;color:#6b7280}.avis-date-icon{width:16px;height:16px;margin-right:4px}.avis-card-title{font-weight:600;color:#374151;margin-bottom:12px;font-size:1.125rem}.avis-comment{color:#374151;line-height:1.6;margin-bottom:16px}.avis-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.avis-category-tag{padding:4px 12px;background-color:#dbeafe;color:#1e40af;font-size:.875rem;border-radius:9999px;font-weight:500}.avis-recommendation{margin-top:16px;padding-top:16px;border-top:1px solid #f3f4f6}.avis-recommendation-content{display:flex;align-items:center;gap:8px}.avis-recommendation-text{font-size:.875rem;color:#6b7280}.avis-empty-state{text-align:center;padding:48px 0}.avis-empty-icon{width:64px;height:64px;background-color:#f3f4f6;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.avis-empty-icon .star{width:32px;height:32px;color:#9ca3af}.avis-empty-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:8px}.avis-empty-description{color:#6b7280}@media (max-width: 768px){.avis-container{padding:16px}.avis-header-content{flex-direction:column;align-items:flex-start}.avis-title{font-size:1.75rem}.avis-card{padding:16px}.avis-card-header{flex-direction:column;gap:12px}.avis-stats{flex-direction:column;align-items:flex-start;gap:8px}}.ajouter-avis-form{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.ajouter-avis-form__container{max-width:600px;width:100%;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;padding:2.5rem;border:1px solid #e5e7eb}.ajouter-avis-form__header{text-align:center;margin-bottom:2rem}.ajouter-avis-form__header h1{margin:0 0 .5rem;color:#1f2937;font-size:2rem;font-weight:700}.ajouter-avis-form__header p{margin:0;color:#6b7280;font-size:1.1rem}.ajouter-avis-form__error{background-color:#fee2e2;color:#991b1b;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #fca5a5;font-weight:500}.ajouter-avis-form__form{display:flex;flex-direction:column;gap:1.5rem}.form-field-form{display:flex;flex-direction:column;gap:.5rem}.form-label-form{font-weight:600;color:#374151;font-size:.9rem}.form-input-form,.form-textarea-form{padding:.875rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background-color:#fff;font-family:inherit}.form-input-form:focus,.form-textarea-form:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-textarea-form{resize:vertical;min-height:120px}.star-rating-form{display:flex;align-items:center;gap:.25rem;margin-top:.5rem}.star-form{background:none;border:none;font-size:2rem;cursor:pointer;color:#d1d5db;transition:color .2s ease,transform .1s ease;padding:.25rem;border-radius:4px}.star-form:hover{transform:scale(1.1)}.star-form--active{color:#fbbf24}.star-form:hover,.star-form:focus{outline:2px solid #3b82f6;outline-offset:2px}.rating-text-form{margin-left:1rem;font-weight:700;color:#1f2937;font-size:1.1rem}.form-actions-form{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;flex-wrap:wrap}.btn-primary-form,.btn-secondary-form{padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;min-width:120px}.btn-primary-form{background-color:#3b82f6;color:#fff}.btn-primary-form:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.btn-primary-form:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}.btn-secondary-form{background-color:#f9fafb;color:#374151;border:2px solid #d1d5db}.btn-secondary-form:hover{background-color:#f3f4f6;border-color:#9ca3af}.ajouter-avis-form__loading,.ajouter-avis-form__error-page,.ajouter-avis-form__success-page{text-align:center;max-width:400px;width:100%;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;padding:3rem 2rem}.loading-spinner-form{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-icon-form,.success-icon-form{font-size:4rem;margin-bottom:1rem}.error-icon-form{color:#ef4444}.success-icon-form{color:#10b981;font-weight:700}.ajouter-avis-form__error-page h2,.ajouter-avis-form__success-page h2{color:#1f2937;margin:0 0 1rem;font-size:1.5rem}.ajouter-avis-form__error-page p,.ajouter-avis-form__success-page p{color:#6b7280;line-height:1.6;margin-bottom:2rem}.ajouter-avis-form__loading p{color:#6b7280;font-size:1.1rem}@media screen and (max-width: 768px){.ajouter-avis-form{padding:1rem}.ajouter-avis-form__container{padding:1.5rem}.ajouter-avis-form__header h1,.star-form{font-size:1.5rem}.form-actions-form{flex-direction:column}.btn-primary-form,.btn-secondary-form{width:100%}}.recommendation-selector{margin-bottom:1.5rem}.recommendation-buttons{display:flex;gap:1rem;margin-top:.5rem}.thumb-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border:2px solid #e5e7eb;border-radius:12px;background-color:#fff;cursor:pointer;transition:all .3s ease;min-width:120px;min-height:100px;font-family:inherit;position:relative;overflow:hidden}.thumb-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.thumb-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.thumb-up{border-color:#10b981;color:#065f46}.thumb-up:hover{background-color:#f0fdf4;border-color:#059669}.thumb-up.thumb-button--active{background-color:#10b981;border-color:#059669;color:#fff;box-shadow:0 4px 12px #10b9814d}.thumb-down{border-color:#ef4444;color:#991b1b}.thumb-down:hover{background-color:#fef2f2;border-color:#dc2626}.thumb-down.thumb-button--active{background-color:#ef4444;border-color:#dc2626;color:#fff;box-shadow:0 4px 12px #ef44444d}.thumb-icon{font-size:2rem;margin-bottom:.5rem;display:block;filter:grayscale(0);transition:all .3s ease}.thumb-button:not(.thumb-button--active) .thumb-icon{filter:grayscale(.7);opacity:.6}.thumb-button--active .thumb-icon{transform:scale(1.1)}.thumb-text{font-size:.875rem;font-weight:500;text-align:center;line-height:1.2}.recommendation-error{color:#dc2626;font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.25rem}.recommendation-error:before{content:"⚠";font-size:1rem}.thumb-button--active:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shine 1s ease-in-out}@keyframes shine{0%{left:-100%}to{left:100%}}@media (max-width: 640px){.recommendation-buttons{flex-direction:column;gap:.75rem}.thumb-button{flex-direction:row;min-height:60px;padding:.75rem}.thumb-icon{font-size:1.5rem;margin-bottom:0;margin-right:.5rem}.thumb-text{font-size:.875rem}}
