@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Open+Sans:wght@300;400;600&display=swap";:root{--bleu-marine: #0A1929;--bleu-marine-clair: #1B2838;--beige: #D4C5A9;--beige-fonce: #B8A689;--blanc: #FFFFFF;--noir: #1A1A1A;--font-titres: "Playfair Display", serif;--font-texte: "Open Sans", sans-serif;--border-radius: 8px;--box-shadow: 0 2px 8px rgba(0, 0, 0, .3);--transition: all .3s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-texte);color:var(--noir);background-color:var(--bleu-marine);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-titres);line-height:1.2;color:var(--bleu-marine);margin-bottom:1rem}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}p{margin-bottom:1rem;line-height:1.5}button{font-family:var(--font-texte);cursor:pointer;border:none;transition:var(--transition)}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:var(--font-texte);padding:.75rem;border:2px solid var(--beige);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);width:100%;background-color:var(--blanc)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--beige-fonce);box-shadow:0 0 0 3px #d4c5a933}a{color:var(--beige-fonce);text-decoration:none;transition:var(--transition)}a:hover{color:var(--beige)}.btn-primary{background-color:var(--beige-fonce);color:var(--blanc);padding:1rem 2rem;border-radius:var(--border-radius);font-size:1rem;font-weight:600;transition:var(--transition);border:2px solid var(--blanc)}.btn-primary:hover:not(:disabled){background-color:var(--beige);transform:translateY(-2px);box-shadow:0 4px 12px #ffffff4d}.btn-secondary{background-color:var(--bleu-marine-clair);color:var(--blanc);padding:1rem 2rem;border-radius:var(--border-radius);border:2px solid var(--beige);font-size:1rem;font-weight:600;transition:var(--transition)}.btn-secondary:hover:not(:disabled){background-color:var(--bleu-marine);border-color:var(--blanc);transform:translateY(-2px)}.card{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--box-shadow);transition:var(--transition);border:2px solid var(--blanc)}.card:hover{box-shadow:0 4px 16px #fff3;transform:translateY(-2px);border-color:var(--beige-fonce)}.container{max-width:1200px;margin:0 auto;padding:2rem}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:1.2rem;color:var(--beige-fonce)}.error{background-color:#fee;color:#c33;padding:1rem;border-radius:var(--border-radius);margin-bottom:1rem}.success{background-color:#efe;color:#3c3;padding:1rem;border-radius:var(--border-radius);margin-bottom:1rem}.header{background-color:var(--bleu-marine);box-shadow:var(--box-shadow);position:sticky;top:0;z-index:100;border-bottom:3px solid var(--blanc)}.header-content{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.logo{cursor:pointer;transition:var(--transition)}.logo:hover{opacity:.85}.logo h1{font-size:1.8rem;margin:0;color:var(--beige)}.logo-image{max-height:90px;max-width:300px;object-fit:contain;transition:var(--transition)}.logo:hover .logo-image{opacity:.9}.nav{display:flex;gap:1.5rem;align-items:center}.nav a{font-weight:600;transition:var(--transition);color:var(--beige)}.nav a:hover{color:var(--blanc)}.nav button{padding:.5rem 1rem}@media(max-width:768px){.header-content{flex-direction:column;gap:1rem}.nav{flex-wrap:wrap;justify-content:center;gap:1rem}}.sejour-entry{min-height:100vh;width:100%;position:relative}.sejour-entry-header-logo{position:absolute;top:2rem;left:2rem;z-index:100;transition:opacity .3s ease}.sejour-entry-header-logo:hover{opacity:.8}.sejour-entry-header-logo .logo-image{height:80px;width:auto;object-fit:contain;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5))}.sejour-entry-header-logo h1{color:var(--beige);font-size:1.8rem;font-weight:300;letter-spacing:1px;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.7)}.sejour-entry-hero{min-height:100vh;background:linear-gradient(#0a192980,#0a192980),url(https://images.pexels.com/photos/258154/pexels-photo-258154.jpeg?auto=compress&cs=tinysrgb&w=1920) center/cover;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}.sejour-entry-overlay{width:100%;max-width:600px;padding:2rem;text-align:center}.sejour-entry-title{color:var(--beige-fonce);font-size:3rem;font-weight:700;letter-spacing:2px;margin:0 0 2rem;text-shadow:2px 2px 8px rgba(255,255,255,.9);font-family:var(--font-titres)}.sejour-entry-content{background:#d4c5a9f2;border-radius:var(--border-radius);padding:3rem 2rem;box-shadow:0 10px 40px #0006;border:2px solid var(--blanc)}.sejour-entry-content h2{color:var(--bleu-marine);font-size:2rem;font-weight:600;margin-bottom:1rem;font-family:var(--font-titres);line-height:1.3}.entry-title-name{font-size:2.2rem}.entry-title-tagline{font-size:1.6rem;font-style:italic;font-weight:400}.sejour-entry-subtitle{color:var(--bleu-marine);font-size:1.1rem;line-height:1.6;margin-bottom:2.5rem}.sejour-entry-form{width:100%}.code-input-wrapper{position:relative;margin-bottom:1rem}.code-input{width:100%;padding:1.25rem 1.5rem;font-size:1.5rem;font-weight:600;text-align:center;letter-spacing:.5rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);background:var(--blanc);color:var(--bleu-marine);transition:var(--transition);font-family:Courier New,monospace}.code-input:focus{outline:none;border-color:var(--bleu-marine);box-shadow:0 0 0 3px #0a192933}.code-input.error{border-color:#c33}.code-input::placeholder{color:#bbb;letter-spacing:.3rem;font-weight:400}.code-counter{position:absolute;bottom:-1.5rem;right:.5rem;font-size:.875rem;color:var(--bleu-marine);opacity:.7}.error-message{color:#c33;font-size:.95rem;margin-bottom:1.5rem;padding:.75rem;background:#fee;border-radius:var(--border-radius);border-left:4px solid #c33}.btn-validate{width:100%;padding:1.25rem 2rem;font-size:1.1rem;font-weight:600;color:var(--blanc);background:linear-gradient(135deg,var(--beige-fonce) 0%,var(--beige) 100%);border:2px solid var(--blanc);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);margin-top:1.5rem}.btn-validate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #fff6;background:linear-gradient(135deg,var(--beige) 0%,var(--beige-fonce) 100%)}.btn-validate:active:not(:disabled){transform:translateY(0)}.btn-validate:disabled{opacity:.6;cursor:not-allowed}.sejour-entry-links{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--blanc)}.link-histoire{color:var(--bleu-marine);text-decoration:none;font-size:1rem;font-weight:600;transition:var(--transition)}.link-histoire:hover{color:var(--bleu-marine-clair);text-decoration:underline}@media(max-width:768px){.sejour-entry-header-logo{top:1rem;left:1rem}.sejour-entry-header-logo .logo-image{height:60px}.sejour-entry-header-logo h1{font-size:1.4rem}.sejour-entry-title{font-size:2rem}.sejour-entry-content{padding:2rem 1.5rem}.sejour-entry-content h2{font-size:1.6rem}.entry-title-name{font-size:1.8rem}.entry-title-tagline{font-size:1.2rem}.sejour-entry-subtitle{font-size:1rem}.code-input{font-size:1.25rem;letter-spacing:.3rem;padding:1rem}.btn-validate{padding:1rem 1.5rem;font-size:1rem}}.meteo-section{padding:2rem 1rem;background:var(--beige-fonce)}.meteo-card{max-width:1000px;margin:0 auto;background:var(--blanc);border:1px solid rgba(10,25,41,.1);border-radius:var(--border-radius);padding:2rem;box-shadow:0 2px 12px #00000014}.meteo-title{color:var(--bleu-marine);font-size:1.4rem;text-align:center;margin-bottom:.5rem}.meteo-subtitle{text-align:center;color:#888;font-size:.85rem;font-style:italic;margin:0 0 1.5rem}.meteo-card:not(:has(.meteo-subtitle)) .meteo-title{margin-bottom:1.5rem}.meteo-forecast-grid{display:flex;gap:4px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.meteo-day{flex:1;min-width:90px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:#0a192908;border-radius:6px;transition:background .2s ease}.meteo-day:hover{background:#0a192912}.meteo-day-average{background:#0a192905;border:1px dashed rgba(10,25,41,.12)}.meteo-day-average:hover{background:#0a19290d}.meteo-day-average .meteo-day-icon{opacity:.6}.meteo-day-name{color:var(--bleu-marine);font-size:.85rem;font-weight:600;text-transform:capitalize}.meteo-day-date{color:var(--beige-fonce);font-size:.75rem}.meteo-day-icon{font-size:1.8rem;line-height:1;margin:4px 0}.meteo-day-label{color:var(--bleu-marine);font-size:.7rem;text-align:center;line-height:1.2;min-height:28px;display:flex;align-items:center}.meteo-day-average .meteo-day-label{color:#999;font-style:italic}.meteo-day-temps{display:flex;gap:8px;align-items:baseline;margin-top:4px}.temp-max{color:var(--bleu-marine);font-size:1rem;font-weight:700}.temp-min{color:var(--beige-fonce);font-size:.85rem;font-weight:400}.meteo-day-average .temp-max,.meteo-day-average .temp-min{opacity:.7}.meteo-loading{text-align:center;color:var(--bleu-marine);padding:1.5rem;font-size:.95rem;opacity:.6}@media(max-width:768px){.meteo-section{padding:1.5rem .75rem}.meteo-card{padding:1.5rem 1rem}.meteo-title{font-size:1.2rem}.meteo-subtitle{font-size:.75rem}.meteo-day{min-width:75px;padding:10px 6px}.meteo-day-icon{font-size:1.5rem}.meteo-day-label{font-size:.65rem}}.home{min-height:100vh}.hero{background:linear-gradient(#0a192980,#0a192980),url(https://images.pexels.com/photos/258154/pexels-photo-258154.jpeg?auto=compress&cs=tinysrgb&w=1920) center/cover;min-height:600px;display:flex;align-items:center;justify-content:center;color:var(--blanc);text-align:center;position:relative;border-bottom:3px solid var(--blanc);padding:2rem 1rem}.hero-overlay{z-index:1;padding:2rem;width:100%;max-width:1000px}.hero h1{color:var(--beige);font-size:3rem;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.7);line-height:1.3}.hero-title-name{font-size:3.2rem}.hero-title-tagline{font-size:2.2rem;font-style:italic;font-weight:400}.hero-subtitle{font-size:1.5rem;font-weight:300;color:var(--blanc);margin-bottom:2rem;text-shadow:1px 1px 3px rgba(0,0,0,.7)}.hero-dates{margin-top:2rem}.hero-event-title{color:var(--beige);font-size:2rem;font-weight:600;margin:0 0 1.5rem;text-transform:uppercase;letter-spacing:.5px;text-shadow:2px 2px 4px rgba(0,0,0,.7)}.dates-cards-container{display:flex;gap:2rem;justify-content:center;align-items:stretch;flex-wrap:wrap}.date-card-hero{background:#0a1929bf;border:2px solid var(--blanc);border-radius:var(--border-radius);padding:1.5rem 2rem;flex:1;min-width:280px;max-width:400px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 16px #0006;transition:var(--transition)}.date-card-hero:hover{transform:translateY(-4px);box-shadow:0 6px 24px #ffffff4d;border-color:var(--beige)}.date-label{color:var(--beige);font-size:1rem;font-weight:600;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.date-value{color:var(--blanc);font-size:1.5rem;font-weight:700;line-height:1.3;text-shadow:1px 1px 3px rgba(0,0,0,.7)}.description-section{background-color:var(--bleu-marine);padding:3rem 2rem;text-align:center;color:var(--blanc)}.description-content{max-width:900px;margin:0 auto;font-size:1.2rem;line-height:1.8;white-space:pre-wrap}.description-content p{margin-bottom:1rem;color:var(--blanc)}.description-content strong{font-weight:700;color:var(--beige)}.description-content em{font-style:italic}.description-content ul,.description-content ol{text-align:left;max-width:700px;margin:1.5rem auto;padding-left:2rem}.description-content li{margin-bottom:.5rem;color:var(--blanc)}.actions-section{margin:3rem 0}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:2rem}.reservation-cta{display:flex;justify-content:center;margin-top:3rem}.btn-reservation{background:linear-gradient(135deg,var(--beige-fonce) 0%,var(--beige) 100%);color:var(--blanc);padding:1.5rem 3rem;border-radius:var(--border-radius);font-size:1.3rem;font-weight:700;text-decoration:none;border:3px solid var(--blanc);box-shadow:0 6px 20px #ffffff4d;transition:var(--transition);text-align:center}.btn-reservation:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 8px 30px #ffffff80;background:linear-gradient(135deg,var(--beige) 0%,var(--beige-fonce) 100%)}.action-card{text-align:center;transition:var(--transition)}.action-card:hover{border-color:var(--blanc);transform:translateY(-4px)}.action-card h3{margin-bottom:1rem;color:var(--bleu-marine)}.action-card p{color:var(--noir);margin:0}@media(max-width:768px){.hero{min-height:500px}.hero h1{font-size:2rem}.hero-title-name{font-size:2.2rem}.hero-title-tagline{font-size:1.5rem}.hero-subtitle{font-size:1.2rem}.hero-event-title{font-size:1.5rem}.dates-cards-container{flex-direction:column;gap:1rem}.date-card-hero{min-width:100%;max-width:100%}.date-label{font-size:.9rem}.date-value{font-size:1.2rem}.description-section{padding:2rem 1.5rem}.description-content{font-size:1rem;line-height:1.6}.actions-grid{grid-template-columns:1fr}.btn-reservation{padding:1.2rem 2rem;font-size:1.1rem}}.chateau{min-height:100vh}.chateau-hero{background:linear-gradient(#001f3fb3,#001f3fb3),url(https://images.pexels.com/photos/1105766/pexels-photo-1105766.jpeg?auto=compress&cs=tinysrgb&w=1920) center/cover;height:300px;display:flex;align-items:center;justify-content:center;color:var(--blanc);text-align:center}.chateau-hero h1{color:var(--blanc);font-size:2.5rem}.chateau-hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.btn-histoire{margin-top:0;padding:.875rem 2rem;background-color:var(--blanc);color:var(--bleu-marine);border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px #00000026}.btn-histoire:hover{background-color:var(--beige-fonce);transform:translateY(-2px);box-shadow:0 6px 16px #0003}.btn-livre-or{background-color:transparent;color:var(--blanc);border:2px solid var(--blanc)}.btn-livre-or:hover{background-color:#ffffff26;color:var(--blanc)}.btn-video{background-color:transparent;color:var(--blanc);border:2px solid var(--blanc)}.btn-video:hover{background-color:#ffffff26;color:var(--blanc)}.video-close-btn{position:absolute;top:1.5rem;right:1.5rem;z-index:10001;background:#ffffff26;border:none;color:#fff;font-size:1.5rem;width:3rem;height:3rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.video-close-btn:hover{background:#ffffff4d}.filters-section{margin:2rem 0}.filters-section h2{color:var(--blanc)}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:600;color:var(--blanc)}.chambres-section{margin:3rem 0;padding-bottom:3rem}.chambres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:2rem}.chambre-card{cursor:pointer;overflow:hidden;padding:0}.chambre-image{position:relative;height:200px;overflow:hidden}.chambre-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.chambre-card:hover .chambre-image img{transform:scale(1.05)}.status-badge{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-badge.disponible{background-color:#00c800e6;color:var(--blanc)}.status-badge.occupee{background-color:#c80000e6;color:var(--blanc)}.chambre-content{padding:1.5rem}.chambre-content h3{margin-bottom:.5rem}.chambre-specs{display:flex;gap:1rem;color:var(--bleu-marine);font-weight:600;margin:.5rem 0}.chambre-preview{color:#666;font-size:.9rem}.no-results{text-align:center;color:#666;padding:3rem;font-size:1.1rem}.chambre-detail{margin:2rem 0;padding-bottom:3rem}.chambre-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.chambre-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-bottom:2rem}.chambre-gallery img{width:100%;height:300px;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.chambre-info{background:var(--blanc);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}@media(max-width:768px){.chateau-hero h1{font-size:2rem}.chambre-header{flex-direction:column;align-items:flex-start;gap:1rem}}.histoire{min-height:100vh}.histoire-hero{height:300px;display:flex;align-items:center;justify-content:center;color:var(--blanc);text-align:center;background-size:cover;background-position:center}.histoire-hero h1{color:var(--blanc);font-size:2.5rem;margin:0}.histoire .back-button{margin:2rem 0}.histoire-content{background-color:var(--beige-fonce);padding:3rem;border-radius:var(--border-radius);margin:2rem 0 3rem;box-shadow:var(--box-shadow)}.histoire-content p{color:var(--bleu-marine);font-size:1.1rem;line-height:1.8;margin-bottom:1.5rem;text-align:justify}.histoire-content p:last-child{margin-bottom:0}.histoire-bottom-cards{margin:3rem 0;display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.wifi-container{background-color:var(--beige-fonce);padding:2.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center;max-width:400px;width:100%;flex:1;min-width:280px}.wifi-text{color:var(--bleu-marine);font-size:1.2rem;font-weight:500;margin-bottom:1.5rem;line-height:1.6}.wifi-qr-image{max-width:300px;width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a}.video-card-container{background-color:var(--beige-fonce);padding:2.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow);text-align:center;max-width:400px;width:100%;flex:1;min-width:280px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.video-card-container:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.video-card-text{color:var(--bleu-marine);font-size:1.2rem;font-weight:500;margin-bottom:1.5rem;line-height:1.6}.video-card-thumbnail{position:relative;display:inline-block;width:100%;max-width:300px}.video-card-image{width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:block}.video-card-play-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#00000059;border-radius:8px;transition:background .2s ease}.video-card-container:hover .video-card-play-icon{background:#00000080}.video-fullscreen-overlay{position:fixed;inset:0;z-index:10000;background:#000000f2;display:flex;align-items:center;justify-content:center}.video-close-btn{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;color:#fff;font-size:1.5rem;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10001;transition:background .2s ease}.video-close-btn:hover{background:#ffffff59}.video-fullscreen-player{max-width:95vw;max-height:90vh;border-radius:8px}@media(max-width:768px){.histoire-hero h1{font-size:1.8rem;padding:0 1rem}.histoire-content{padding:2rem 1.5rem}.histoire-content p{font-size:1rem}.histoire-bottom-cards{flex-direction:column;align-items:center}.wifi-container,.video-card-container{padding:1.5rem;max-width:100%}.wifi-text,.video-card-text{font-size:1rem;margin-bottom:1rem}.wifi-qr-image,.video-card-thumbnail{max-width:250px}}.admin-section{padding:2rem 0}.admin-section table{width:100%;border-collapse:collapse;background-color:var(--bleu-marine);color:#fff}.admin-section table th,.admin-section table td{padding:1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}.admin-section table th{background-color:#0003;font-weight:600;color:#fff}.admin-section table tbody tr:hover{background-color:#ffffff0d}.admin-section .table-container{background-color:var(--bleu-marine);border-radius:8px;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-header h2{margin:0;color:#fff}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.badge-success{background-color:#10b981;color:#fff}.badge-info{background-color:#0ea5e9;color:#fff}.badge-secondary{background-color:#6b7280;color:#fff}.badge-warning{background-color:#f59e0b;color:#fff}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;padding:2rem;border-radius:8px;max-width:90%;width:500px;max-height:90vh;overflow-y:auto;color:#1f2937}.modal-large{max-width:95%;width:900px}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:#1f2937}.modal-content h3{margin-top:0;margin-bottom:1rem;color:#374151;font-size:1.25rem;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.modal-content h4{margin-top:1rem;margin-bottom:.75rem;color:#4b5563;font-size:1.1rem}.modal-content h5{margin-top:.5rem;margin-bottom:.5rem;color:#6b7280;font-size:1rem}.info-message{padding:1rem;background-color:#dbeafe;border-left:4px solid #3b82f6;border-radius:4px;margin-bottom:1rem;color:#1e40af}.error-message{display:block;color:#dc2626;font-size:.875rem;margin-top:.25rem}.stat-card{text-align:center;padding:2rem}.stat-card h3{font-size:1rem;color:var(--bleu-marine);margin-bottom:1rem}.stat-number{font-size:3rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres);margin:0}.reservations-table{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--box-shadow);overflow-x:auto;border:2px solid var(--blanc)}.reservations-table table{width:100%;border-collapse:collapse}.reservations-table th,.reservations-table td{padding:.5rem;text-align:left;border-bottom:2px solid var(--blanc);white-space:nowrap;font-size:.9rem}.reservations-table th:nth-child(1),.reservations-table td:nth-child(1){min-width:120px}.reservations-table th:nth-child(2),.reservations-table td:nth-child(2){min-width:150px;font-size:.85rem;white-space:normal}.reservations-table th:nth-child(3),.reservations-table td:nth-child(3){width:70px;text-align:center;padding:.25rem}.reservations-table th:nth-child(4),.reservations-table td:nth-child(4){max-width:120px;min-width:120px;white-space:normal;word-break:break-word}.reservations-table th:nth-child(5),.reservations-table td:nth-child(5){width:50px;text-align:center}.reservations-table th:nth-child(6),.reservations-table td:nth-child(6){width:85px;min-width:85px;font-size:.8rem}.reservations-table th:nth-child(7),.reservations-table td:nth-child(7){width:85px;min-width:85px;font-size:.8rem}.reservations-table th:nth-child(8),.reservations-table td:nth-child(8){width:25px;text-align:center}.reservations-table th:nth-child(9),.reservations-table td:nth-child(9){width:100px;text-align:center}.reservations-table th{background-color:var(--beige-fonce);color:var(--blanc);font-weight:600}.reservations-table tr:hover{background-color:var(--beige-fonce)}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600}.status-badge.confirmée{background-color:#00c80033;color:#080}.status-badge.disponible{background-color:#00ff6440;color:#0f8;font-weight:600}.status-badge.occupee{background-color:#ff646440;color:#f66;font-weight:600}.no-data{text-align:center;padding:3rem;color:#666}.chambres-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.chambre-admin-card{padding:1.5rem}.chambre-admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.chambre-admin-header h3{margin:0}.chambre-admin-info{margin:1rem 0}.chambre-admin-info p{margin:.5rem 0;color:#666}.chambre-admin-card button{width:100%;margin-top:1rem}.activites-admin-list{display:flex;flex-direction:column;gap:1.5rem}.activite-admin-card{padding:1.5rem}.activite-admin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.activite-admin-header h3{margin:0}.activite-type{color:#666;font-size:.9rem;margin:.25rem 0}.activite-admin-card>button{margin-bottom:1rem}.creneaux-admin{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--beige-fonce)}.creneaux-admin h4{margin-bottom:1rem;color:var(--bleu-marine)}.creneaux-list{display:flex;flex-direction:column;gap:.75rem}.creneau-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--gris-clair);border-radius:var(--border-radius)}.status-badge-small{padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:600}.btn-small{padding:.5rem 1rem;font-size:.875rem;background-color:var(--bleu-marine);color:var(--blanc);border-radius:var(--border-radius)}.btn-small:hover{background-color:var(--bleu-clair)}.form-modal{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;overflow-y:auto}.modal-content{max-width:600px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem}.modal-content h3{margin-bottom:1.5rem}.modal-content h4{margin:1.5rem 0 1rem;color:var(--bleu-marine);border-bottom:2px solid var(--beige-fonce);padding-bottom:.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.ingredient-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.5rem;margin-bottom:.5rem}.menus-list{margin:2rem 0}.menus-list h3{margin-bottom:1rem}.menu-card{margin-bottom:1rem;padding:1.5rem}.menu-card h4{margin-bottom:1rem}.menu-card p{margin:.5rem 0}.liste-courses-section{margin-top:3rem;padding-top:2rem;border-top:2px solid var(--beige-fonce)}.liste-courses-section h3{color:var(--blanc);margin-bottom:1.5rem}.liste-courses-section h4{color:var(--blanc);margin-bottom:1rem}.liste-courses-section table{width:100%;border-collapse:collapse;margin-top:1rem;background:var(--beige-fonce);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.liste-courses-section th,.liste-courses-section td{padding:1rem;text-align:left;border-bottom:1px solid var(--beige-fonce);color:var(--bleu-marine)}.liste-courses-section th{background-color:var(--bleu-marine);color:var(--blanc);font-weight:600}.date-courses-group{margin-bottom:2rem}.date-courses-group h4{color:var(--blanc);margin-bottom:1rem;font-size:1.2rem;font-weight:600}.liste-courses-table{width:100%;border-collapse:collapse;margin-top:1rem;background:var(--beige-fonce);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.liste-courses-table th,.liste-courses-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--beige-fonce);color:var(--bleu-marine)}.liste-courses-table th{background-color:var(--bleu-marine);color:var(--blanc);font-weight:600}.btn-danger{background-color:#dc3545;color:var(--blanc);padding:.5rem 1rem;border-radius:var(--border-radius);font-weight:600}.btn-danger:hover{background-color:#c82333}.chambre-admin-photo{width:100%;height:200px;object-fit:cover;border-radius:var(--border-radius) var(--border-radius) 0 0}.chambre-admin-actions{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.chambre-admin-actions button{flex:1;min-width:100px}.photo-preview{width:100%;max-width:300px;height:auto;margin-top:.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.photo-preview-small{width:80px;height:80px;object-fit:cover;margin-top:.5rem;border-radius:var(--border-radius)}.photo-input-group{margin-bottom:1rem}.photo-upload-group{margin-bottom:1rem;padding:1rem;background-color:var(--gris-clair);border-radius:var(--border-radius)}.file-input-label{display:block;font-weight:600;color:var(--bleu-marine);margin-bottom:.5rem;cursor:pointer}.file-input{display:block;width:100%;padding:.5rem;margin-top:.5rem;border:2px dashed var(--beige-fonce);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.file-input:hover{border-color:var(--bleu-marine)}.meals-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin:1rem 0}.meal-card{padding:1rem;border:2px solid var(--gris-clair);border-radius:var(--border-radius);background-color:var(--blanc);transition:var(--transition)}.meal-card.selectable{cursor:pointer}.meal-card.selectable:hover{border-color:var(--bleu-marine);box-shadow:var(--box-shadow)}.meal-card.selected{border-color:#28a745;background-color:#f0fff4}.meal-card.validated{border-color:#28a745;background-color:#f8f9fa}.meal-card.refused{border-color:#dc3545;background-color:#f8f9fa}.meal-card .checkbox-wrapper{margin-bottom:.5rem}.meal-card .checkbox-wrapper input[type=checkbox]{width:18px;height:18px;cursor:pointer}.meal-card .meal-info{display:flex;flex-direction:column;gap:.25rem}.meal-card .meal-date{font-weight:600;color:var(--bleu-marine);font-size:14px}.meal-card .meal-type{color:var(--gris-fonce);font-size:14px}.meal-card .meal-servings{color:var(--gris-moyen);font-size:12px}.meal-card .refus-note{margin-top:.5rem;padding:.5rem;background-color:#fff5f5;border-left:3px solid #dc3545;font-size:12px;color:#721c24}.selection-summary{margin-top:1rem;padding:1rem;background-color:#e7f3ff;border-left:4px solid #007bff;border-radius:4px;font-size:14px}.selection-actions{display:flex;gap:1rem}.btn-link{background:none;border:none;color:var(--bleu-marine);text-decoration:underline;cursor:pointer;padding:0;font-size:14px}.btn-link:hover{color:var(--marron)}.btn-link:disabled{color:var(--gris-moyen);cursor:not-allowed;text-decoration:none}.recipe-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;padding:1.5rem;background-color:var(--gris-clair);border-radius:var(--border-radius)}.recipe-info h4{margin:0 0 1rem;color:var(--bleu-marine);font-size:1.5rem}.recipe-info p{margin:.5rem 0;color:var(--gris-fonce)}.ingredients-section{margin-bottom:2rem;padding:1rem;background-color:var(--blanc);border:1px solid var(--gris-clair);border-radius:var(--border-radius)}.ingredients-section h4{margin:0 0 1rem;color:var(--bleu-marine)}.ingredients-section ul{list-style-type:disc;padding-left:1.5rem;margin:0}.ingredients-section li{margin:.25rem 0;color:var(--gris-fonce)}.selection-section{margin-bottom:2rem}.selection-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.selection-section h4{margin:0;color:var(--bleu-marine)}.validated-section,.refused-section{margin-bottom:2rem}.validated-section h4,.refused-section h4{margin:0 0 1rem;color:var(--bleu-marine)}.meals-list{display:flex;flex-direction:column;gap:.5rem}.badge-occurrence{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background-color:#ffc107;color:#000;border-radius:12px;font-size:11px;font-weight:600;margin-left:.5rem}.btn-view-grouped{padding:.5rem 1rem;background-color:#17a2b8;color:var(--blanc);border:none;border-radius:var(--border-radius);cursor:pointer;font-size:14px;font-weight:600;transition:var(--transition)}.btn-view-grouped:hover{background-color:#138496}.photo-preview-container{position:relative;display:inline-block;margin-top:1rem}.photo-preview-container .photo-preview{max-width:100%;height:auto;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.btn-remove-photo{position:absolute;top:.5rem;right:.5rem;background-color:#dc3545;color:var(--blanc);border:none;border-radius:50%;width:32px;height:32px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003;transition:var(--transition)}.btn-remove-photo:hover{background-color:#c82333;transform:scale(1.1)}.form-help{font-size:.875rem;color:#666;margin-bottom:1rem;font-style:italic}.menu-grid-container{overflow-x:auto;margin:2rem 0}.menu-grid-table{width:100%;border-collapse:collapse;background:var(--beige);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow);border:2px solid var(--blanc)}.menu-grid-table th,.menu-grid-table td{padding:.75rem;border:2px solid var(--blanc);text-align:center;vertical-align:middle}.menu-grid-table th{background-color:var(--beige-fonce);color:var(--blanc);font-weight:600;position:sticky;top:0;z-index:10}.repas-header,.component-header{min-width:120px;background-color:var(--bleu-marine);color:var(--beige-fonce);border:2px solid var(--blanc)}.date-header{min-width:150px;font-size:.9rem;background-color:var(--bleu-marine-clair);color:var(--blanc)}.repas-cell{background-color:var(--beige-fonce);font-weight:600;color:var(--blanc);vertical-align:middle}.component-cell{background-color:var(--beige-fonce);font-weight:500;text-align:left;padding-left:1rem;color:var(--blanc)}.menu-cell{padding:.5rem;min-width:180px}.menu-input{width:100%;padding:.5rem;margin-bottom:.5rem;border:1px solid var(--beige-fonce);border-radius:4px;font-size:.875rem}.menu-select{width:100%;padding:.5rem;margin-bottom:.5rem;border:1px solid var(--beige-fonce);border-radius:4px;font-size:.875rem;background-color:var(--blanc)}.marmiton-input{font-size:.8rem;padding:.4rem}.convives-input{width:80px;padding:.5rem;text-align:center;border:1px solid var(--beige-fonce);border-radius:4px;font-size:.9rem;font-weight:600}.convives-row td{background-color:var(--beige-fonce);color:var(--blanc);font-weight:600}.admin-tabs-secondary{display:flex;gap:1.5rem;margin:2rem 0;justify-content:center}.tab-secondary{padding:2rem 4rem;background:var(--beige-fonce);border:5px solid var(--blanc);border-radius:var(--border-radius);font-size:1.6rem;font-weight:700;color:var(--blanc);cursor:pointer;transition:var(--transition);box-shadow:0 6px 15px #0006,inset 0 -3px 5px #0003;text-transform:uppercase;letter-spacing:1px;min-width:250px;text-align:center}.tab-secondary:hover{background:var(--beige);transform:translateY(-3px);box-shadow:0 8px 20px #ffffff80,inset 0 -3px 5px #00000026;border-color:var(--beige)}.tab-secondary.active{background:var(--beige);border-color:var(--bleu-marine);border-width:6px;color:var(--bleu-marine);transform:scale(1.08);box-shadow:0 8px 25px #fff9,inset 0 2px 8px #0a19294d}.section-subheader{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.activite-admin-photo{width:150px;height:150px;object-fit:cover;border-radius:var(--border-radius);margin-right:1.5rem}.activite-admin-card{display:flex;padding:1.5rem}.activite-admin-content{flex:1}.activite-admin-actions{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.activite-admin-actions button{padding:.5rem 1rem}.creneaux-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin:2rem 0}.creneau-day-card{background:var(--gris-clair);padding:1.5rem;border-radius:var(--border-radius);border:2px solid var(--beige-fonce)}.creneau-day-card h4{margin-bottom:1rem;color:var(--bleu-marine);font-size:1.1rem}.creneau-checkboxes{display:flex;flex-direction:column;gap:.75rem}.creneau-checkboxes label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.creneau-checkboxes input[type=checkbox]{width:auto;cursor:pointer}.synthese-section h3{color:var(--bleu-marine);margin-bottom:1.5rem;font-size:1.5rem;border-bottom:2px solid var(--beige-fonce);padding-bottom:.5rem}.creneaux-synthese{display:flex;flex-direction:column;gap:1.5rem}.creneau-synthese-card{padding:1.5rem}.creneau-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--beige-fonce)}.creneau-header h4{margin:0;color:var(--bleu-marine);font-size:1.2rem;text-transform:capitalize}.creneau-time{font-weight:700;font-size:1.1rem;color:var(--beige-fonce);background-color:var(--gris-clair);padding:.5rem 1rem;border-radius:var(--border-radius)}.creneau-activites-container{display:flex;flex-direction:column;gap:1rem}.activite-synthese-item{margin-bottom:0;padding:1rem;background-color:var(--gris-clair);border-radius:var(--border-radius);border:1px solid var(--beige-fonce)}.activite-synthese-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.activite-synthese-header strong{font-size:1.1rem;color:var(--bleu-marine)}.participant-count{background-color:var(--bleu-marine);color:var(--blanc);padding:.25rem .75rem;border-radius:15px;font-size:.9rem;font-weight:600}.participants-list li{padding:.5rem .75rem;background-color:var(--blanc);border-radius:var(--border-radius);font-size:.95rem;color:var(--bleu-marine);border-left:3px solid var(--beige-fonce)}.activite-synthese-card{padding:1.5rem}.chambre-photo-thumbnail{width:60px;height:60px;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.no-photo{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background-color:var(--gris-clair);border-radius:var(--border-radius);font-size:.65rem;color:#999;text-align:center;padding:.25rem}.action-edit-icon{background:none;border:none;cursor:pointer;font-size:1.5rem;opacity:0;transition:opacity .2s,transform .2s;padding:.5rem;color:#007bff}.reservations-table tbody tr:hover .action-edit-icon{opacity:1}.action-edit-icon:hover:not(:disabled){transform:scale(1.2);color:#0056b3}.action-edit-icon:disabled{cursor:not-allowed;opacity:.5}.action-delete-icon{background:none;border:none;cursor:pointer;font-size:1.5rem;opacity:0;transition:opacity .2s,transform .2s;padding:.5rem;color:#dc3545}.reservations-table tbody tr:hover .action-delete-icon{opacity:1}.action-delete-icon:hover:not(:disabled){transform:scale(1.2);color:#c82333}.action-delete-icon:disabled{cursor:not-allowed;opacity:.5}.delete-modal-content{background-color:#fff;padding:2rem;border-radius:8px;max-width:90%;width:550px;max-height:90vh;overflow-y:auto;color:#1f2937;border-top:4px solid #dc3545}.delete-modal-content h2{color:#1f2937;margin-bottom:1rem}.delete-modal-details{background-color:#f3f4f6;padding:1.5rem;border-radius:8px;margin:1.5rem 0}.delete-modal-details p{margin:.75rem 0;color:#374151}.delete-modal-warning{background-color:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;border-left:4px solid #dc2626;font-weight:600;margin:1.5rem 0}.delete-modal-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.btn-cancel{background-color:#6b7280;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-cancel:hover:not(:disabled){background-color:#4b5563}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-delete{background-color:#dc3545;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.btn-delete:hover:not(:disabled){background-color:#c82333}.btn-delete:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.reservations-table{overflow-x:scroll}.action-delete-icon{opacity:1}.delete-modal-content{width:95%;padding:1.5rem}.delete-modal-buttons{flex-direction:column}.delete-modal-buttons button{width:100%}.ingredient-row{grid-template-columns:1fr}.creneau-item{flex-direction:column;align-items:flex-start;gap:.5rem}.activite-admin-card{flex-direction:column}.activite-admin-photo{width:100%;height:200px;margin-right:0;margin-bottom:1rem}.chambre-admin-actions button,.activite-admin-actions button{flex:1 1 100%}.creneaux-grid{grid-template-columns:1fr}.creneau-header{flex-direction:column;align-items:flex-start;gap:.5rem}.participants-list,.activites-sans-creneaux{grid-template-columns:1fr}}.recette-signature-config-form{padding:2rem;background:#fff;border-radius:8px}.recette-signature-config-form .form-section{margin-bottom:2rem}.recette-signature-config-form h2,.recette-signature-config-form h3{color:var(--bleu-marine);margin-bottom:1.5rem}.recette-signature-config-form label{display:block;margin-bottom:.5rem;color:var(--bleu-marine);font-weight:500}.recette-signature-config-form textarea,.recette-signature-config-form input[type=number]{width:100%;padding:.75rem;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:var(--bleu-marine)}.recette-signature-config-form .inline-input{display:flex;align-items:center;gap:.5rem}.recette-signature-config-form .inline-input input{width:100px}.recette-signature-config-form .inline-input span{color:var(--bleu-marine)}.recette-signature-config-form small{display:block;margin-top:.25rem;color:#64748b;font-size:.875rem}.recette-signature-config-form .empty-state{background:#f1f5f9;padding:2rem;border-radius:8px;text-align:center;color:#64748b}.recette-signature-config-form .error-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:4px;margin-bottom:1rem}.repas-grid{display:grid;gap:1.5rem}.date-group{background:#f8fafc;padding:1rem;border-radius:8px;border:1px solid #e2e8f0}.date-group h4{color:var(--bleu-marine);margin-bottom:1rem}.repas-selector{background:#fff;padding:1rem;border-radius:4px;margin-bottom:.75rem;border:2px solid #e2e8f0;transition:all .2s}.repas-selector.selected{background:#1e40af;border:2px solid #1e3a8a}.repas-selector.selected .repas-header .type{color:#fff}.repas-selector.selected .repas-header .convives{color:#dbeafe}.repas-selector.selected .composants-selector label{color:#fff}.repas-selector.warning{border:2px solid #f59e0b;background:#fffbeb}.repas-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.repas-header label{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:0}.repas-header .type{font-weight:600;color:var(--bleu-marine)}.repas-header .convives{color:#64748b;font-size:.875rem}.repas-header .warning-badge{background:#fef3c7;color:#92400e;padding:.25rem .5rem;border-radius:4px;font-size:.75rem}.composants-selector{display:flex;gap:1rem;padding-top:.75rem;border-top:1px solid #e2e8f0;margin-top:.75rem}.composants-selector label{display:flex;align-items:center;gap:.25rem;cursor:pointer;margin-bottom:0;color:var(--bleu-marine);font-size:.875rem}.notification-badge{background:#ef4444;color:#fff;padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;margin-left:.5rem}.btn-special{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;cursor:pointer;transition:transform .2s}.btn-special:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b4d}.gestion-propositions{padding:2rem 0}.gestion-propositions .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.gestion-propositions .filters{display:flex;gap:.5rem}.gestion-propositions .filters button{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:4px;cursor:pointer}.gestion-propositions .filters button.active{background:#3b82f6;border-color:#3b82f6}.propositions-groups{display:flex;flex-direction:column;gap:2rem}.repas-group h3{color:#fff;margin-bottom:1rem;font-size:1.25rem}.propositions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.proposition-card{background:#ffffff1a;border-radius:8px;padding:1.5rem}.proposition-card.statut-en_attente{border-left:4px solid #f59e0b}.proposition-card.statut-validee{border-left:4px solid #10b981}.proposition-card.statut-refusee{border-left:4px solid #ef4444}.proposition-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.proposition-card .invite-info strong{color:#fff;display:block}.proposition-card .invite-info .email{color:#ffffffb3;font-size:.875rem}.proposition-card .badge{font-size:.75rem}.proposition-card .badge-en_attente{background:#f59e0b33;color:#fbbf24}.proposition-card .badge-validee{background:#10b98133;color:#34d399}.proposition-card .badge-refusee{background:#ef444433;color:#f87171}.proposition-card .composant-badge{display:inline-block;background:#fff3;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;margin-bottom:.5rem;color:#fff}.proposition-card h4{color:#fff;margin:.5rem 0}.proposition-card .meta-info{display:flex;gap:1rem;color:#ffffffb3;font-size:.875rem;margin-bottom:1rem}.proposition-card .ingredients-preview{background:#0003;padding:.75rem;border-radius:4px;margin-top:1rem}.proposition-card .ingredients-preview strong{color:#fff;display:block;margin-bottom:.5rem}.proposition-card .ingredients-preview ul{margin:0;padding-left:1.5rem;color:#fffc;font-size:.875rem}.proposition-card .card-actions{display:flex;gap:.5rem;margin-top:1rem}.btn-validate{flex:1;background:#10b981;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500}.btn-validate:hover{background:#059669}.btn-refuse{flex:1;background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500}.btn-refuse:hover{background:#dc2626}.validation-info,.refus-info{margin-top:1rem;padding:.75rem;border-radius:4px;font-size:.875rem}.validation-info{background:#10b98133;color:#34d399}.refus-info{background:#ef444433;color:#f87171}.streaming-providers-container{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;min-height:32px}.streaming-provider-logo{width:32px;height:32px;border-radius:6px;object-fit:cover;box-shadow:0 1px 3px #0000004d;cursor:help;transition:transform .2s ease}.streaming-provider-logo:hover{transform:scale(1.1);box-shadow:0 2px 6px #0006}.streaming-provider-count{font-size:.8rem;color:#9ca3af;font-weight:600;padding:0 .3rem}.status-badge.non-reference{background-color:#6b7280;color:#fff;font-size:.75rem;padding:.25rem .5rem}.alertes-menage-list{display:flex;flex-direction:column;gap:1.5rem}.alerte-menage-card{background:#fff;border-radius:8px;padding:1.5rem;border-left:4px solid #f59e0b;transition:all .2s ease}.alerte-menage-card.chambre-partageable{border-left-color:#3b82f6}.alerte-menage-card.chambre-privee{border-left-color:#f59e0b}.alerte-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.alerte-title-group{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.alerte-header h3{margin:0;color:#1f2937;font-size:1.25rem}.badge-room-type{display:inline-block;padding:.35rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;white-space:nowrap}.badge-room-type.partageable{background-color:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.badge-room-type.privee{background-color:#fef3c7;color:#92400e;border:1px solid #f59e0b}.alerte-details{margin:1rem 0}.transition-info{margin-bottom:1rem}.date-transition{font-size:1rem;color:#4b5563;margin:0}.personnes-info{display:flex;align-items:center;gap:1.5rem;padding:1rem;background:#f9fafb;border-radius:6px}.personne-sortante,.personne-entrante{flex:1;display:flex;flex-direction:column;gap:.5rem}.personnes-info .label{font-size:.875rem;color:#6b7280;font-weight:600;text-transform:uppercase}.personnes-info .nom{font-size:1rem;color:#1f2937;font-weight:600}.transition-arrow{font-size:1.5rem;color:#9ca3af;font-weight:700}.alerte-note{margin-top:1rem;padding:.75rem;background:#fef3c7;border-radius:6px;border-left:3px solid #f59e0b}.alerte-note p{margin:0;color:#92400e;font-size:.9rem;line-height:1.5}.shareable-note{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #fbbf24;color:#1e40af;font-style:italic;font-size:.85rem}.empty-state{text-align:center;padding:3rem 2rem;background:#fff;border-radius:8px;color:#6b7280}.empty-state p{margin:.5rem 0}.empty-state .help-text{font-size:.9rem;color:#9ca3af;margin-top:1rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:600}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer}.checkbox-label span{font-weight:400}.admin-chat-toolbar{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.admin-chat-search{flex:1;min-width:200px;padding:.75rem 1rem;border:2px solid rgba(255,255,255,.2);border-radius:var(--border-radius);background:#ffffff1a;color:#fff;font-size:.95rem;transition:var(--transition)}.admin-chat-search::placeholder{color:#ffffff80}.admin-chat-search:focus{outline:none;border-color:var(--beige);background:#ffffff26}.admin-chat-actions{display:flex;gap:.75rem;align-items:center}.admin-chat-messages-container{display:flex;flex-direction:column;background:#fff;border-radius:var(--border-radius);overflow:hidden;max-height:70vh;overflow-y:auto}.admin-chat-date-group{display:flex;flex-direction:column}.admin-chat-date-separator{display:flex;align-items:center;justify-content:center;padding:.75rem 1rem;background:#f1f5f9;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:1}.admin-chat-date-separator span{font-size:.85rem;font-weight:600;color:#64748b;text-transform:capitalize}.admin-chat-message-row{display:grid;grid-template-columns:32px 60px 140px 1fr;gap:.75rem;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background-color .15s}.admin-chat-message-row:hover{background-color:#f8fafc}.admin-chat-message-row.selected{background-color:#eff6ff}.admin-chat-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--bleu-marine)}.admin-chat-message-time{font-size:.8rem;color:#94a3b8;font-variant-numeric:tabular-nums}.admin-chat-message-author{font-weight:600;font-size:.9rem;color:var(--bleu-marine);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-chat-message-content{font-size:.9rem;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.admin-chat-message-row{grid-template-columns:32px 1fr;gap:.5rem}.admin-chat-message-time{grid-column:2;font-size:.75rem}.admin-chat-message-author,.admin-chat-message-content{grid-column:2;white-space:normal}.admin-chat-toolbar{flex-direction:column;align-items:stretch}.admin-chat-actions{justify-content:flex-end}.personnes-info{flex-direction:column;gap:1rem}.transition-arrow{transform:rotate(90deg)}.personne-sortante,.personne-entrante{width:100%}}.dietary-prefs-cartouche{background:linear-gradient(135deg,#fef9ef,#fdf4e3);border:2px solid #e8d5b5;border-left:5px solid #d4a76a;border-radius:8px;padding:1.5rem 2rem;margin:2rem 0}.dietary-prefs-cartouche h3{margin:0 0 1rem;color:#7c5a2e;font-size:1.15rem;font-weight:700;letter-spacing:.02em}.dietary-prefs-empty{margin:0;color:#8b7355;font-style:italic;font-size:.95rem}.dietary-prefs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.dietary-pref-item{display:flex;align-items:baseline;gap:.75rem;padding:.6rem 1rem;background:#ffffffb3;border-radius:6px;border:1px solid #e8d5b5}.dietary-pref-item strong{color:#5a3e1b;font-weight:700;white-space:nowrap;min-width:120px}.dietary-pref-item span{color:#c0392b;font-weight:500;font-size:.95rem}.dietary-prefs-cartouche--rendu{margin-top:2.5rem}.sejour-header-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-bottom:1.5rem;flex-wrap:wrap}.sejour-empty{text-align:center;padding:3rem 2rem;background:#ffffff14;border-radius:var(--border-radius);color:#fff9;font-size:1rem}.sejour-cards-list{display:flex;flex-direction:column;gap:1rem}.sejour-card{background:#f8f9fb;border:2px solid #e2e8f0;border-radius:10px;padding:1.25rem 1.5rem;transition:border-color .2s,box-shadow .2s}.sejour-card--active{border-color:#0ea5e9;background:#f0f9ff;box-shadow:0 0 0 1px #0ea5e9}.sejour-card-top{margin-bottom:1rem}.sejour-card-name-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.sejour-card-name{margin:0;font-size:1.2rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres)}.sejour-card-active-tag{display:inline-block;padding:.15rem .6rem;background:#0ea5e9;color:#fff;font-size:.75rem;font-weight:600;border-radius:10px;letter-spacing:.3px;text-transform:uppercase}.sejour-card-meta{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;flex-wrap:wrap}.sejour-card-code{background:#e5e7eb;padding:.2rem .6rem;border-radius:4px;font-family:monospace;font-size:.85rem;color:var(--bleu-marine)}.sejour-card-details{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.75rem 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;margin-bottom:.75rem}.sejour-card-detail-item{display:flex;flex-direction:column;gap:.15rem}.sejour-card-detail-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.4px}.sejour-card-detail-value{font-size:.9rem;color:var(--bleu-marine);font-weight:500}.sejour-card-detail-value.muted{color:#9ca3af;font-style:italic;font-weight:400}.sejour-card-toggles{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.sejour-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem 0}.sejour-toggle-label{font-size:.85rem;font-weight:600;color:#374151;white-space:nowrap}.sejour-toggle-control{display:flex;align-items:center;gap:.5rem}.btn-toggle{padding:.25rem .65rem!important;font-size:.8rem!important;min-width:80px}.sejour-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.75rem;border-top:1px solid #e5e7eb}.sejour-card-actions button{padding:.4rem 1rem;font-size:.85rem}.config-section-card{background:#f8f9fb;border:2px solid #e2e8f0;border-radius:10px;padding:1.5rem;margin-top:1.5rem}.config-section-card h3{margin:0 0 1rem;font-size:1.1rem;color:var(--bleu-marine);font-family:var(--font-titres)}.config-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.config-image-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.config-image-item label{display:block;font-weight:600;font-size:.85rem;color:var(--bleu-marine);margin-bottom:.5rem}.config-image-item .form-help{font-size:.8rem;margin-top:.5rem}.config-hint-box{padding:1rem;border-radius:8px;margin-bottom:1.25rem;font-size:.9rem;line-height:1.5}.config-hint-box--warm{background:#fef3c7;border-left:4px solid #f59e0b;color:#92400e}.config-hint-box--info{background:#f0f9ff;border-left:4px solid #0ea5e9;color:#0c4a6e}.config-hint-title{margin:0 0 .35rem;font-weight:600}.config-hint-text{margin:0}.config-hint-text a{color:#2563eb;font-weight:500}.config-hint-text code{background:#00000014;padding:.1rem .4rem;border-radius:3px;font-size:.85em}.config-textarea{width:100%;padding:.75rem;font-size:1rem;border-radius:6px;border:1px solid #d1d5db;font-family:inherit;resize:vertical;line-height:1.5;color:var(--bleu-marine)}.config-textarea:focus{outline:none;border-color:var(--bleu-marine)}.config-char-count{margin-top:.35rem;color:#6b7280;font-size:.8rem}.config-input-mono{width:100%;padding:.75rem;font-size:1rem;border-radius:6px;border:1px solid #d1d5db;font-family:monospace;color:var(--bleu-marine)}.config-input-mono:focus{outline:none;border-color:var(--bleu-marine)}.config-image-desc{margin:0 0 .5rem;font-size:.8rem;color:#6b7280;font-style:italic}.config-image-preview{margin-top:.75rem;border-radius:6px;overflow:hidden;background:#f5f5f5}.config-image-preview img{display:block;max-width:100%;max-height:180px;object-fit:cover;border-radius:6px}.config-image-preview--small img{max-height:100px;object-fit:contain;padding:.5rem}@media(max-width:768px){.sejour-card-details{grid-template-columns:1fr}.sejour-toggle-row{flex-direction:column;align-items:flex-start;gap:.4rem}.sejour-card-actions{flex-direction:column}.sejour-card-actions button{width:100%;text-align:center}.sejour-header-actions{flex-direction:column}.sejour-header-actions button{width:100%;text-align:center}.config-image-grid{grid-template-columns:1fr}}.email-preview-reservation-info{border-top:2px dashed #d1d5db;margin-top:1rem;padding-top:.75rem}.email-preview-divider{display:flex;align-items:center;margin-bottom:1rem}.email-preview-divider span{font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;background:#f3f4f6;padding:.25rem .75rem;border-radius:4px}.email-preview-section{margin-bottom:1rem;padding:.75rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.email-preview-section-title{margin:0 0 .5rem;font-size:.82rem;font-weight:700;color:#0a1929;text-transform:uppercase;letter-spacing:.3px}.email-preview-rooms{display:flex;flex-direction:column;gap:.35rem}.email-preview-room-item{display:flex;align-items:center;gap:.75rem;padding:.4rem .6rem;background:#fff;border-radius:4px;border-left:3px solid #0a1929}.email-preview-room-name{font-weight:600;font-size:.88rem;color:#0a1929;min-width:120px}.email-preview-room-occupants{font-size:.85rem;color:#4b5563}.email-preview-dates{display:flex;flex-direction:column;gap:.35rem}.email-preview-date-row{display:flex;align-items:center;gap:.75rem;padding:.35rem .6rem;background:#fff;border-radius:4px}.email-preview-date-label{font-weight:600;font-size:.82rem;color:#0a1929;min-width:60px}.email-preview-date-value{font-size:.88rem;color:#374151}.email-preview-programme{display:flex;flex-direction:column;gap:.75rem}.email-preview-day{background:#fff;border-radius:6px;overflow:hidden;border:1px solid #e5e7eb}.email-preview-day-header{padding:.5rem .75rem;background:#0a1929;color:#d4c5a9;font-weight:600;font-size:.85rem;text-transform:capitalize}.email-preview-day-slots{display:flex;flex-direction:column}.email-preview-slot{display:flex;align-items:center;gap:.75rem;padding:.4rem .75rem;border-bottom:1px solid #f3f4f6;font-size:.85rem}.email-preview-slot:last-child{border-bottom:none}.email-preview-slot--registered{background:#f0fdf4}.email-preview-slot-time{font-weight:600;color:#0a1929;min-width:100px;font-variant-numeric:tabular-nums;font-size:.82rem}.email-preview-slot-title{color:#374151;flex:1}.email-preview-slot-lieu{font-size:.78rem;color:#9ca3af}.email-preview-slot-badge{padding:.15rem .5rem;background:#10b981;color:#fff;border-radius:10px;font-size:.72rem;font-weight:600;white-space:nowrap}.email-preview-buttons-mock{display:flex;gap:.75rem;flex-wrap:wrap}.email-preview-mock-btn{padding:.5rem 1rem;background:#0a1929;color:#d4c5a9;border-radius:4px;font-size:.82rem;font-weight:600;opacity:.7}.message-bienvenue-editor{margin-bottom:1.5rem}.message-bienvenue-editor .config-textarea{background:#fff}@media(max-width:768px){.email-preview-room-item,.email-preview-date-row{flex-direction:column;align-items:flex-start;gap:.2rem}.email-preview-slot{flex-wrap:wrap;gap:.35rem}.email-preview-buttons-mock{flex-direction:column}}.propose-recipe-modal{background:var(--beige-fonce);border-radius:var(--border-radius);padding:2.5rem;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--box-shadow);color:var(--bleu-marine)}.propose-recipe-modal h2{color:var(--bleu-marine);font-family:var(--font-titres);font-size:1.75rem;font-weight:700;text-align:center;margin-bottom:2rem}.propose-recipe-modal h3{color:var(--bleu-marine);font-family:var(--font-titres);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.propose-recipe-modal h4{color:var(--bleu-marine);font-family:var(--font-titres);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.propose-recipe-modal .modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:2rem;cursor:pointer;color:var(--bleu-marine);width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition)}.propose-recipe-modal .modal-close:hover{background:var(--beige);color:var(--bleu-marine)}.select-meals-multiple-step,.select-component-step,.select-recipe-step,.manual-recipe-step,.confirmation-step{padding:1rem 0;color:var(--bleu-marine)}.select-meals-multiple-step h3,.select-component-step h3,.select-recipe-step h3,.manual-recipe-step h3,.confirmation-step h3{color:var(--bleu-marine);margin-bottom:1.5rem}.select-meals-multiple-step p,.select-component-step p,.select-recipe-step p,.manual-recipe-step p,.confirmation-step p{color:var(--bleu-marine)!important;line-height:1.6}.meals-list,.components-list,.components-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:1.5rem}.meal-card,.component-card{background:var(--blanc);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.5rem;cursor:pointer;transition:var(--transition);text-align:center}.meal-card:hover,.component-card:hover{background:var(--beige);border-color:var(--bleu-marine);transform:translateY(-2px);box-shadow:var(--box-shadow)}.meal-date,.component-label{font-size:1rem;color:var(--bleu-marine);font-weight:600;margin-bottom:.5rem;text-transform:capitalize}.meal-type{font-size:1.25rem;margin:.5rem 0;color:var(--bleu-marine);font-weight:600}.meal-servings{font-size:.9rem;color:var(--bleu-marine);font-style:italic;opacity:.8}.component-icon,.component-card .icon{font-size:2.5rem;margin-bottom:.5rem}.component-card .label{font-size:1rem;color:var(--bleu-marine);font-weight:600}.selected-recipe-info{background:var(--beige);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1rem 1.5rem;margin-bottom:1.5rem;text-align:center;color:var(--bleu-marine);font-size:1.1rem}.selected-recipe-info strong{color:var(--bleu-marine);font-weight:700;margin-right:.5rem}.source-selector{display:flex;gap:1rem;margin-bottom:2rem;justify-content:center}.source-button{background:var(--blanc);border:2px solid var(--beige-fonce);color:var(--bleu-marine);padding:.75rem 1.5rem;border-radius:var(--border-radius);cursor:pointer;font-size:1rem;font-weight:600;transition:var(--transition);font-family:var(--font-texte)}.source-button:hover{background:var(--beige);border-color:var(--bleu-marine)}.source-button.active{background:var(--bleu-marine);color:var(--blanc);border-color:var(--bleu-marine)}.recipe-actions{display:flex;gap:1rem;margin-top:2rem;justify-content:space-between}.recipe-actions button{padding:.875rem 1.5rem;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);border:none;font-family:var(--font-texte)}.recipe-actions button:first-child{background:var(--blanc);border:2px solid var(--beige-fonce);color:var(--bleu-marine)}.recipe-actions button:first-child:hover:not(:disabled){background:var(--beige);border-color:var(--bleu-marine)}.recipe-actions button:last-child{background:var(--bleu-marine);color:var(--blanc);border:2px solid var(--bleu-marine)}.recipe-actions button:last-child:hover:not(:disabled){background:var(--bleu-marine-clair);box-shadow:var(--box-shadow)}.recipe-actions button:disabled{opacity:.5;cursor:not-allowed}.confirmation-details{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;margin:1.5rem 0}.confirmation-details p{color:var(--bleu-marine);margin-bottom:.75rem;font-size:1rem;line-height:1.6}.confirmation-details strong{color:var(--bleu-marine);font-weight:700}.no-meals{text-align:center;padding:3rem 1rem;color:var(--bleu-marine);font-size:1.1rem;opacity:.7}.propose-recipe-modal input[type=text],.propose-recipe-modal input[type=number],.propose-recipe-modal textarea,.propose-recipe-modal select{width:100%;padding:.75rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);font-size:1rem;font-family:var(--font-texte);color:var(--bleu-marine)!important;background:var(--blanc)!important;transition:var(--transition)}.propose-recipe-modal input[type=text]::placeholder,.propose-recipe-modal input[type=number]::placeholder,.propose-recipe-modal textarea::placeholder{color:#0a192980!important}.propose-recipe-modal input[type=text]:focus,.propose-recipe-modal input[type=number]:focus,.propose-recipe-modal textarea:focus,.propose-recipe-modal select:focus{outline:none;border-color:var(--bleu-marine);box-shadow:0 0 0 3px #0a19291a}.propose-recipe-modal label{display:block;margin-bottom:.5rem;color:var(--bleu-marine);font-weight:600;font-size:.95rem}.propose-recipe-modal table{width:100%;border-collapse:collapse;margin:1rem 0}.propose-recipe-modal table th{background:var(--bleu-marine);color:var(--blanc);font-weight:700;padding:.75rem;text-align:left;border:1px solid var(--bleu-marine)}.propose-recipe-modal table td{padding:.75rem;border:1px solid var(--beige);color:var(--bleu-marine);background:var(--blanc)}.propose-recipe-modal table tbody tr:hover{background:var(--beige);color:var(--bleu-marine)}.portions-info-box{background:var(--blanc);border:2px solid var(--bleu-marine);border-radius:var(--border-radius);padding:1rem 1.5rem;margin:1rem 0 1.5rem;text-align:center}.portions-info-box p{font-size:1.1rem;font-weight:600;color:var(--bleu-marine);margin-bottom:.5rem}.portions-info-box small{font-size:.85rem;color:var(--bleu-marine);opacity:.8;font-style:italic}.meals-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin:1.5rem 0}.meal-checkbox-card{background:var(--blanc);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.5rem;cursor:pointer;transition:var(--transition);text-align:center;position:relative}.meal-checkbox-card:hover{border-color:var(--bleu-marine);transform:translateY(-2px);box-shadow:var(--box-shadow)}.meal-checkbox-card.selected{background:var(--beige);border-color:var(--beige-fonce);border-width:3px;box-shadow:0 4px 12px #d4c5a94d}.checkbox-wrapper{position:absolute;top:.75rem;right:.75rem}.checkbox-wrapper input[type=checkbox]{width:1.5rem;height:1.5rem;cursor:pointer;accent-color:var(--bleu-marine)}.meals-selection-summary{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;margin:1.5rem 0}.meals-selection-summary h4{color:var(--bleu-marine);margin-bottom:1rem}.meals-selection-summary ul{list-style:none;padding:0;margin:0 0 1rem}.meals-selection-summary li{padding:.5rem 0;color:var(--bleu-marine);border-bottom:1px solid var(--beige-fonce)}.meals-selection-summary li:last-child{border-bottom:none}.portions-note{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--beige-fonce)}.portions-note small{color:var(--bleu-marine);opacity:.8;font-style:italic}.or-divider{display:flex;align-items:center;text-align:center;margin:2rem 0}.or-divider:before,.or-divider:after{content:"";flex:1;border-bottom:2px solid var(--beige-fonce)}.or-divider span{padding:0 1rem;color:var(--bleu-marine);font-weight:600;font-size:.9rem}.btn-primary{background:var(--bleu-marine);color:var(--blanc);border:2px solid var(--bleu-marine);padding:.875rem 1.5rem;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:var(--font-texte)}.btn-primary:hover:not(:disabled){background:var(--bleu-marine-clair);box-shadow:var(--box-shadow)}.btn-secondary{background:var(--blanc);color:var(--bleu-marine);border:2px solid var(--beige-fonce);padding:.875rem 1.5rem;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:var(--font-texte)}.btn-secondary:hover:not(:disabled){background:var(--beige);border-color:var(--bleu-marine)}.btn-back{background:transparent;color:var(--bleu-marine);border:none;padding:.75rem 1rem;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:var(--font-texte)}.btn-back:hover{color:var(--beige-fonce)}.btn-add{background:var(--beige);color:var(--bleu-marine);border:2px solid var(--beige-fonce);padding:.75rem 1.5rem;border-radius:var(--border-radius);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:var(--font-texte);margin-top:.5rem}.btn-add:hover{background:var(--beige-fonce);border-color:var(--bleu-marine)}.actions{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap}.form-group{margin-bottom:1.5rem}.ingredient-row{display:grid;grid-template-columns:1fr 1fr 2fr auto;gap:.5rem;margin-bottom:.5rem}.ingredient-row input,.ingredient-row select{padding:.5rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);font-size:.95rem;font-family:var(--font-texte);color:var(--bleu-marine)!important;background:var(--blanc)!important}.ingredient-row input::placeholder{color:#0a192980!important}.ingredient-row button{background:transparent;border:none;cursor:pointer;font-size:1.5rem;transition:var(--transition)}.ingredient-row button:hover{transform:scale(1.1)}.summary-card{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;margin:1.5rem 0}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--beige-fonce);color:var(--bleu-marine)}.summary-row:last-child{border-bottom:none}.summary-row strong{font-weight:700;color:var(--bleu-marine)}.ingredients-preview{background:var(--blanc);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.5rem;margin:1.5rem 0}.ingredients-preview h4{color:var(--bleu-marine);margin-bottom:1rem}.ingredients-preview ul{list-style:disc;padding-left:1.5rem;margin:0}.ingredients-preview li{padding:.25rem 0;color:var(--bleu-marine)}.info-box{background:#d4c5a933;border-left:4px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1rem 1.5rem;margin:1.5rem 0}.info-box p{color:var(--bleu-marine)!important;margin:0;font-size:.95rem;line-height:1.6}.stepper{display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:0 1rem}.stepper>div{flex:1;text-align:center;padding:.5rem .25rem;color:var(--bleu-marine);font-weight:600;font-size:.8rem;background:var(--blanc);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);margin:0 .25rem;transition:var(--transition);opacity:.5}.stepper>div.active{opacity:1;background:var(--bleu-marine);color:var(--blanc);border-color:var(--bleu-marine)}.stepper>div.completed{opacity:1;background:var(--beige);color:var(--bleu-marine);border-color:var(--beige-fonce)}@media(max-width:768px){.propose-recipe-modal{padding:2rem 1.5rem;max-width:100%}.propose-recipe-modal h2{font-size:1.5rem}.meals-list,.meals-selection-grid,.components-list,.components-grid{grid-template-columns:1fr}.recipe-actions,.actions{flex-direction:column}.recipe-actions button,.actions button{width:100%}.ingredient-row{grid-template-columns:1fr}.stepper{font-size:.75rem;padding:0 .5rem}.stepper>div{padding:.5rem .25rem}}.tournament-view-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.tournament-view-modal{background:var(--blanc, #fff);border-radius:12px;width:100%;max-width:960px;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.tournament-view-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;border-bottom:2px solid var(--beige-fonce, #e8e0d4)}.tournament-view-title-section h2{margin:0 0 .25rem;color:var(--bleu-marine, #1a2a4a);font-size:1.3rem}.tournament-view-meta{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.tournament-view-badge{display:inline-block;padding:.2rem .7rem;border-radius:12px;font-size:.8rem;font-weight:600}.tournament-view-badge.brouillon{background:#e0e0e0;color:#666}.tournament-view-badge.publie{background:#d4edda;color:#155724}.tournament-view-badge.en_cours{background:#cce5ff;color:#004085}.tournament-view-badge.termine{background:#f8d7da;color:#721c24}.tournament-view-format-badge{font-size:.8rem;color:#666}.tournament-view-body{padding:1.5rem 2rem}.tournament-view-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.tournament-bracket-elimination{display:flex;gap:2rem;overflow-x:auto;padding-bottom:1rem}.tournament-round{display:flex;flex-direction:column;gap:1rem;min-width:240px}.tournament-round-title{text-align:center;font-weight:700;color:var(--bleu-marine, #1a2a4a);font-size:.95rem;padding-bottom:.5rem;border-bottom:2px solid var(--beige-fonce, #e8e0d4);margin-bottom:.5rem}.tournament-match-card{background:#fff;border:1.5px solid #e0e0e0;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.tournament-match-card:hover{box-shadow:0 2px 8px #0000001a}.tournament-match-card.termine{border-color:#28a745}.tournament-match-number{background:var(--gris-clair, #f5f5f5);padding:.2rem .5rem;font-size:.7rem;color:#999;text-align:center}.tournament-match-team{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #f0f0f0;font-size:.9rem;transition:background .2s}.tournament-match-team:last-child{border-bottom:none}.tournament-match-team.winner{background:#28a7451a;font-weight:700}.tournament-match-team.pending{color:#999;font-style:italic}.tournament-match-team-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tournament-match-score{min-width:40px;text-align:right;font-weight:700;color:var(--bleu-marine, #1a2a4a)}.tournament-match-edit-btn{background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--bleu-marine, #1a2a4a);padding:.2rem;opacity:.6;transition:opacity .2s}.tournament-match-edit-btn:hover{opacity:1}.tournament-round-robin-section,.tournament-poules-section{margin-bottom:2rem}.tournament-round-robin-section h3,.tournament-poules-section h3{color:var(--bleu-marine, #1a2a4a);margin-bottom:1rem;font-size:1.1rem}.tournament-standings-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem;font-size:.9rem}.tournament-standings-table th{background:var(--bleu-marine, #1a2a4a);color:#fff;padding:.6rem .75rem;text-align:left;font-weight:600}.tournament-standings-table th:not(:first-child){text-align:center}.tournament-standings-table td{padding:.6rem .75rem;border-bottom:1px solid #e0e0e0}.tournament-standings-table td:not(:first-child){text-align:center}.tournament-standings-table tr:nth-child(2n){background:var(--gris-clair, #f5f5f5)}.tournament-matchs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}.tournament-score-modal{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1100}.tournament-score-content{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:400px;box-shadow:0 10px 40px #0003}.tournament-score-content h3{margin:0 0 1.5rem;color:var(--bleu-marine, #1a2a4a)}.tournament-score-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.tournament-score-team-name{flex:1;font-weight:600;font-size:.95rem}.tournament-score-input{width:80px;padding:.5rem;border:2px solid #d0d0d0;border-radius:8px;font-size:1rem;text-align:center;font-weight:700}.tournament-score-input:focus{outline:none;border-color:var(--bleu-marine, #1a2a4a)}.tournament-score-actions{display:flex;gap:.5rem;margin-top:1.5rem;justify-content:flex-end}.tournament-winner-select{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.tournament-winner-select label{display:block;font-weight:600;margin-bottom:.5rem;font-size:.9rem;color:var(--bleu-marine, #1a2a4a)}.tournament-winner-select select{width:100%;padding:.5rem;border:2px solid #d0d0d0;border-radius:8px;font-size:.95rem}.tournament-view-footer{display:flex;justify-content:flex-end;padding:1.5rem 2rem;border-top:2px solid var(--beige-fonce, #e8e0d4)}@media(max-width:768px){.tournament-view-modal{max-width:100%}.tournament-view-header,.tournament-view-body,.tournament-view-footer{padding:1rem}.tournament-bracket-elimination{gap:1rem}.tournament-round{min-width:200px}.tournament-matchs-grid{grid-template-columns:1fr}}.capacity-badge{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.capacity-badge-available{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.capacity-badge-almost-full{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.capacity-badge-full{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.capacity-badge-no-limit{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}@media(max-width:768px){.capacity-badge{font-size:.75rem;padding:.4rem .75rem}}.programme-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:programmeOverlayIn .2s ease-out}@keyframes programmeOverlayIn{0%{opacity:0}to{opacity:1}}.programme-modal{background:var(--blanc);border-radius:12px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:programmeSlideIn .25s ease-out}@keyframes programmeSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.programme-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid var(--beige);flex-shrink:0}.programme-modal-header h2{font-family:var(--font-titres);color:var(--bleu-marine);font-size:1.5rem;margin:0}.programme-close-btn{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;line-height:1;padding:0 .25rem;transition:color .2s}.programme-close-btn:hover{color:var(--bleu-marine)}.programme-legend{display:flex;gap:.75rem;padding:.75rem 2rem;border-bottom:1px solid #eee;flex-wrap:wrap;flex-shrink:0}.legend-item{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:4px}.legend-incontournable{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.legend-optionnel{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.legend-libre{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.legend-toujours-ouvert{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.programme-body{overflow-y:auto;padding:1.5rem 2rem;flex:1}.programme-loading,.programme-empty{text-align:center;padding:3rem 1rem;color:#666;font-size:1rem}.programme-day{margin-bottom:2rem}.programme-day:last-child{margin-bottom:0}.programme-day-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--beige)}.programme-day-number{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bleu-marine);color:var(--blanc);border-radius:50%;font-family:var(--font-titres);font-size:1.25rem;font-weight:700;flex-shrink:0}.programme-day-info{display:flex;flex-direction:column}.programme-day-name{font-family:var(--font-titres);font-size:1.1rem;font-weight:600;color:var(--bleu-marine);text-transform:capitalize}.programme-day-month{font-size:.8rem;color:#888;text-transform:capitalize}.programme-toujours-ouverts{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;background:#f9fafb;border-radius:6px;border-left:3px solid #d1d5db}.toujours-ouvert-tag{display:inline-flex;align-items:center;gap:.375rem;font-size:.8rem;color:#4b5563;padding:.2rem .5rem;background:var(--blanc);border-radius:4px;border:1px solid #e5e7eb}.toujours-ouvert-horaires{font-size:.7rem;color:#9ca3af;font-weight:600}.programme-creneaux-list{display:flex;flex-direction:column;gap:.375rem}.programme-creneau{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:6px;transition:transform .15s ease}.programme-creneau:hover{transform:translate(2px)}.programme-creneau.incontournable{background:#fef3c7;border-left:3px solid #f59e0b}.programme-creneau.optionnel{background:#dbeafe;border-left:3px solid #3b82f6}.programme-creneau.libre{background:#f0fdf4;border-left:3px solid #86efac}.creneau-time-col{min-width:100px;font-size:.8rem;font-weight:600;color:#555;flex-shrink:0}.creneau-content-col{flex:1;display:flex;flex-direction:column;gap:.125rem}.creneau-name{font-size:.875rem;font-weight:600;color:var(--bleu-marine)}.libre .creneau-name{color:#166534;font-weight:500;font-style:italic}.creneau-lieu{font-size:.75rem;color:#888}.creneau-multi{font-size:.7rem;color:var(--beige-fonce);font-weight:600}.creneau-type-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.2rem .5rem;border-radius:4px;flex-shrink:0}.creneau-type-badge.incontournable{background:#fbbf24;color:#78350f}.creneau-type-badge.optionnel{background:#60a5fa;color:#1e3a5f}.creneau-type-badge.libre{background:#86efac;color:#14532d}.programme-creneau.cinema{align-items:flex-start}.creneau-cinema-details{display:flex;gap:.75rem;align-items:flex-start}.creneau-cinema-poster{width:42px;height:62px;object-fit:cover;border-radius:4px;flex-shrink:0;box-shadow:0 1px 4px #0003}.creneau-cinema-info{display:flex;flex-direction:column;gap:.15rem}.creneau-cinema-meta{display:flex;flex-wrap:wrap;gap:.125rem;font-size:.75rem;color:#666}.creneau-cinema-meta span{display:inline-flex;align-items:center}.creneau-cinema-meta span:not(:last-child):after{content:"·";margin:0 .35rem;color:#bbb;font-weight:700}.creneau-cinema-director{font-size:.75rem;color:#777;font-style:italic}.creneau-cinema-organizer{font-size:.7rem;color:#999}.creneau-name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.programme-menu-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .625rem;font-size:.7rem;font-weight:600;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.programme-menu-btn:hover{background:#fde68a;border-color:#f59e0b;transform:translateY(-1px);box-shadow:0 2px 4px #f59e0b33}.programme-footer{padding:1rem 2rem;border-top:2px solid var(--beige);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0}.programme-footer-message{font-size:.875rem;color:var(--beige-fonce);font-weight:600;font-style:italic;margin:0}.programme-footer .btn-primary{flex-shrink:0}@media(max-width:640px){.programme-modal{max-height:95vh;border-radius:8px}.programme-modal-header{padding:1rem 1.25rem}.programme-modal-header h2{font-size:1.25rem}.programme-legend{padding:.5rem 1.25rem;gap:.5rem}.programme-body{padding:1rem 1.25rem}.programme-creneau{flex-wrap:wrap;gap:.375rem}.creneau-time-col{min-width:80px;font-size:.75rem}.programme-footer{flex-direction:column;text-align:center;padding:1rem 1.25rem}.programme-footer-message{font-size:.8rem}}.reviews-list-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:reviewslist-fade-in .2s ease}@keyframes reviewslist-fade-in{0%{opacity:0}to{opacity:1}}.reviews-list-modal{background:var(--blanc);border-radius:16px;padding:2rem;max-width:640px;width:100%;position:relative;box-shadow:0 20px 60px #0006;max-height:90vh;display:flex;flex-direction:column}.reviews-list-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.75rem;color:#999;cursor:pointer;line-height:1;padding:.25rem}.reviews-list-close:hover{color:#333}.reviews-list-modal h2{color:var(--bleu-marine);margin-bottom:1rem;padding-right:2rem}.reviews-list-summary{background:linear-gradient(135deg,beige,#e8e3d3);padding:1.25rem;border-radius:var(--border-radius);margin-bottom:1.5rem}.reviews-list-moyenne{display:flex;align-items:center;gap:.75rem}.reviews-list-moyenne-number{font-size:2rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres)}.reviews-list-count{color:#666;font-size:.95rem}.reviews-list-stars .star{font-size:1.25rem}.reviews-list-stars .star.filled{color:#f59e0b}.reviews-list-stars .star.empty{color:#ddd}.reviews-list-content{flex:1;overflow-y:auto;min-height:100px}.reviews-list-loading,.reviews-list-empty{text-align:center;padding:3rem 1rem;color:#888;font-size:1rem}.reviews-list-items{display:flex;flex-direction:column;gap:1rem}.reviews-list-item{padding:1.25rem;background:#f8f8f8;border-radius:var(--border-radius);border:1px solid #e5e5e5;transition:var(--transition)}.reviews-list-item:hover{border-color:var(--beige-fonce)}.reviews-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.reviews-list-item-author{display:flex;align-items:center;gap:.5rem}.reviews-list-item-author strong{color:var(--bleu-marine);font-size:1rem}.reviews-list-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.reviews-list-item-date{color:#888;font-size:.85rem}.reviews-list-item-sejour{color:var(--beige-fonce);font-size:.8rem;font-weight:600}.reviews-list-item-comment{color:#444;line-height:1.6;margin-top:.5rem;margin-bottom:.5rem;font-size:.95rem}.reviews-list-item-delete{background:none;border:none;color:#c62828;font-size:.85rem;cursor:pointer;padding:0;font-weight:600;margin-top:.5rem}.reviews-list-item-delete:hover{text-decoration:underline}.reviews-list-footer{margin-top:1.5rem;display:flex;justify-content:center}.reviews-list-footer .btn-secondary{min-width:160px}@media(max-width:480px){.reviews-list-modal{padding:1.25rem}.reviews-list-item-header{flex-direction:column}.reviews-list-item-meta{align-items:flex-start}}.category-hub{padding:1rem 0}.category-hub-section-title{font-family:var(--font-titres);font-size:1.4rem;color:var(--blanc);margin-bottom:1.25rem;font-weight:600}.category-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-bottom:2.5rem}.category-hub-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem .75rem;background:var(--blanc);border:2px solid var(--beige);border-radius:12px;cursor:pointer;transition:all .25s ease;text-align:center}.category-hub-card:hover{border-color:var(--bleu-marine);transform:translateY(-3px);box-shadow:0 6px 16px #0a19291f}.category-hub-card-icon{font-size:2rem;line-height:1}.category-hub-card-name{font-family:var(--font-texte);font-size:.9rem;font-weight:600;color:var(--bleu-marine);line-height:1.2}.category-hub-card-count{font-size:.78rem;color:var(--beige-fonce);font-weight:600}.category-hub-quiz-prompt{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,beige,#e8e3d3);border-radius:12px;margin-bottom:2.5rem;cursor:pointer;transition:all .25s ease}.category-hub-quiz-prompt:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0a19291a}.category-hub-quiz-icon{font-size:2.5rem;flex-shrink:0}.category-hub-quiz-text{flex:1}.category-hub-quiz-text h3{font-size:1.1rem;margin-bottom:.25rem;color:var(--bleu-marine)}.category-hub-quiz-text p{font-size:.9rem;color:#555;margin:0}.category-hub-quiz-arrow{font-size:1.5rem;color:var(--beige-fonce);flex-shrink:0}.category-hub-recommended{margin-bottom:2.5rem}.category-hub-recommended-scroll{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.category-hub-reco-card{background:var(--blanc);border:2px solid var(--beige);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .25s ease}.category-hub-reco-card:hover{border-color:var(--bleu-marine);box-shadow:0 4px 12px #0a19291f}.category-hub-reco-image{width:100%;height:130px;overflow:hidden;background:var(--beige);display:flex;align-items:center;justify-content:center;font-size:3rem}.category-hub-reco-image img{width:100%;height:100%;object-fit:cover}.category-hub-reco-info{padding:.75rem}.category-hub-reco-info h4{font-size:.95rem;color:var(--bleu-marine);margin-bottom:.25rem;font-weight:600;line-height:1.3}.category-hub-reco-info p{font-size:.8rem;color:var(--beige-fonce);margin:0;font-weight:600}@media(max-width:768px){.category-hub-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}.category-hub-card{padding:1rem .5rem}.category-hub-card-icon{font-size:1.75rem}.category-hub-card-name{font-size:.82rem}.category-hub-quiz-prompt{padding:1rem;gap:.75rem}.category-hub-quiz-icon{font-size:2rem}.category-hub-quiz-text h3{font-size:1rem}.category-hub-recommended-scroll{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.category-hub-reco-image{height:100px}}.category-hub-card-all{border-color:var(--bleu-marine);background:#0a192908}.category-hub-card-all:hover{background:#0a192914}@media(max-width:400px){.category-hub-grid{grid-template-columns:repeat(2,1fr)}}.category-filter-bar{display:flex;gap:8px;overflow-x:auto;padding:.75rem 1rem;margin-bottom:1rem;background:#f8f6f2;border-radius:var(--border-radius);-webkit-overflow-scrolling:touch;scrollbar-width:none}.category-filter-bar::-webkit-scrollbar{display:none}.category-filter-bar.compact{padding:.5rem .75rem;margin-bottom:.75rem;gap:6px}.category-chip{display:flex;align-items:center;gap:6px;padding:6px 14px;background:var(--blanc);border:2px solid var(--beige);border-radius:20px;cursor:pointer;transition:var(--transition);white-space:nowrap;font-size:.9rem;font-family:var(--font-texte);color:var(--bleu-marine);flex-shrink:0}.category-chip:hover{border-color:var(--beige-fonce);background:var(--beige)}.category-chip.active{background:var(--bleu-marine);border-color:var(--bleu-marine);color:var(--blanc)}.compact .category-chip{padding:4px 10px;font-size:.82rem}.category-chip-icon{font-size:1em;line-height:1}.category-chip-count{font-size:.75em;opacity:.7;font-weight:600}@media(max-width:768px){.category-filter-bar{padding:.5rem;gap:6px}.category-chip{padding:5px 10px;font-size:.82rem}}.quiz-overlay{position:fixed;inset:0;background:#0a1929a6;z-index:1000;display:flex;align-items:flex-end;justify-content:center;animation:quizFadeIn .2s ease}@keyframes quizFadeIn{0%{opacity:0}to{opacity:1}}@keyframes quizSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.quiz-modal{background:var(--blanc);border-radius:20px 20px 0 0;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;padding:2rem;animation:quizSlideUp .3s ease}.quiz-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.quiz-modal-header h2{font-size:1.3rem;color:var(--bleu-marine);margin:0}.quiz-close-btn{background:none;border:none;font-size:1.75rem;color:#999;cursor:pointer;line-height:1;padding:0}.quiz-close-btn:hover{color:var(--bleu-marine)}.quiz-progress{display:flex;gap:8px;justify-content:center;margin-bottom:2rem}.quiz-progress-dot{width:10px;height:10px;border-radius:50%;background:var(--beige);transition:all .3s ease}.quiz-progress-dot.active{background:var(--bleu-marine);transform:scale(1.2)}.quiz-progress-dot.done{background:#2e7d32}.quiz-step-title{font-family:var(--font-titres);font-size:1.15rem;color:var(--bleu-marine);margin-bottom:1.25rem;text-align:center}.quiz-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:2rem}.quiz-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem .75rem;background:#f8f6f2;border:2px solid var(--beige);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center}.quiz-option:hover{border-color:var(--beige-fonce);background:#f0ebe0}.quiz-option.selected{border-color:var(--bleu-marine);background:#0a19290f}.quiz-option-icon{font-size:2rem}.quiz-option-label{font-size:.95rem;font-weight:600;color:var(--bleu-marine)}.quiz-categories-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.quiz-category-chip{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#f8f6f2;border:2px solid var(--beige);border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-family:var(--font-texte);color:var(--bleu-marine)}.quiz-category-chip:hover{border-color:var(--beige-fonce)}.quiz-category-chip.selected{background:var(--bleu-marine);border-color:var(--bleu-marine);color:var(--blanc)}.quiz-actions{display:flex;gap:.75rem;justify-content:space-between}.quiz-btn{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-family:var(--font-texte)}.quiz-btn-back{background:none;color:#999}.quiz-btn-back:hover{color:var(--bleu-marine)}.quiz-btn-next{background:var(--bleu-marine);color:var(--blanc);margin-left:auto}.quiz-btn-next:hover{background:#00274d}.quiz-btn-next:disabled{opacity:.4;cursor:not-allowed}.quiz-btn-skip{background:none;color:var(--beige-fonce);font-size:.85rem;text-decoration:underline}@media(max-width:768px){.quiz-modal{padding:1.5rem;max-height:90vh}.quiz-options-grid{gap:.5rem}.quiz-option{padding:1rem .5rem}.quiz-option-icon{font-size:1.75rem}.quiz-option-label{font-size:.85rem}}.quiz-inline-collapsed{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,beige,#e8e3d3);border-radius:12px;cursor:pointer;transition:all .25s ease}.quiz-inline-collapsed:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0a19291a}.quiz-inline-collapsed-icon{font-size:2.5rem;flex-shrink:0}.quiz-inline-collapsed-text{flex:1}.quiz-inline-collapsed-text h3{font-size:1.1rem;margin-bottom:.25rem;color:var(--bleu-marine)}.quiz-inline-collapsed-text p{font-size:.9rem;color:#555;margin:0}.quiz-inline-collapsed-arrow{font-size:2rem;color:var(--beige-fonce);flex-shrink:0;font-weight:300}.quiz-inline{background:linear-gradient(135deg,beige,#e8e3d3);border-radius:12px;padding:1.75rem;animation:quizInlineFadeIn .3s ease}@keyframes quizInlineFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.quiz-inline-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.quiz-inline-header-icon{font-size:2rem;flex-shrink:0}.quiz-inline-header h3{flex:1;font-size:1.2rem;color:var(--bleu-marine);margin:0}.quiz-inline-collapse-btn{background:none;border:none;color:var(--beige-fonce);font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:underline;font-family:var(--font-texte)}.quiz-inline-collapse-btn:hover{color:var(--bleu-marine)}.quiz-inline-questions{display:flex;flex-direction:column;gap:1.5rem}.quiz-inline-question-label{font-family:var(--font-titres);font-size:.95rem;color:var(--bleu-marine);margin-bottom:.75rem;font-weight:600}.quiz-inline-options{display:flex;flex-wrap:wrap;gap:.5rem}.quiz-inline-option{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--blanc);border:2px solid var(--beige);border-radius:10px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-weight:600;color:var(--bleu-marine);font-family:var(--font-texte)}.quiz-inline-option:hover{border-color:var(--beige-fonce)}.quiz-inline-option.selected{border-color:var(--bleu-marine);background:#0a19290f}.quiz-inline-option-icon{font-size:1.25rem}.quiz-inline-categories{display:flex;flex-wrap:wrap;gap:.5rem}.quiz-inline-cat-chip{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--blanc);border:2px solid var(--beige);border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:.85rem;font-family:var(--font-texte);color:var(--bleu-marine)}.quiz-inline-cat-chip:hover{border-color:var(--beige-fonce)}.quiz-inline-cat-chip.selected{background:var(--bleu-marine);border-color:var(--bleu-marine);color:var(--blanc)}.quiz-inline-actions{margin-top:1.5rem;text-align:center}.quiz-inline-save-btn{padding:.75rem 2rem;background:var(--bleu-marine);color:var(--blanc);border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:var(--font-texte)}.quiz-inline-save-btn:hover{background:#00274d}.quiz-inline-save-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.quiz-inline{padding:1.25rem}.quiz-inline-option{padding:.5rem .75rem;font-size:.85rem}.quiz-inline-option-icon{font-size:1.1rem}.quiz-inline-collapsed{padding:1rem;gap:.75rem}.quiz-inline-collapsed-icon{font-size:2rem}}.activites{min-height:100vh}.activites-hero{background:linear-gradient(#001f3fb3,#001f3fb3),url(https://images.pexels.com/photos/248547/pexels-photo-248547.jpeg?auto=compress&cs=tinysrgb&w=1920) center/cover;height:300px;display:flex;align-items:center;justify-content:center;color:var(--blanc);text-align:center}.activites-hero h1{color:var(--blanc);font-size:2.5rem}.btn-programme-propose{display:inline-block;margin-top:1.25rem;padding:.75rem 2rem;background:var(--beige);color:var(--bleu-marine);border:none;border-radius:8px;font-family:var(--font-titres);font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0003;letter-spacing:.5px}.btn-programme-propose:hover{background:var(--blanc);transform:translateY(-2px);box-shadow:0 6px 18px #00000040}.activites-tab-row{display:flex;gap:1rem;justify-content:center;padding:1.75rem 0 .75rem}.btn-tab-main{flex:1;max-width:320px;padding:1rem 2rem;border-radius:10px;font-family:var(--font-titres);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-align:center;letter-spacing:.3px}.btn-tab-main.active{background:var(--bleu-marine);color:var(--blanc);border:3px solid var(--beige-fonce);box-shadow:0 4px 16px #001f3f40}.btn-tab-main:not(.active){background:var(--beige-fonce);color:var(--bleu-marine);border:3px solid var(--blanc)}.btn-tab-main:not(.active):hover{transform:translateY(-2px);box-shadow:0 4px 12px #001f3f26}.activites-programme-row{text-align:center;padding:.75rem 0 1.5rem}.btn-programme-consulter{display:inline-block;padding:.625rem 1.75rem;background:none;color:var(--beige-fonce);border:2px solid var(--beige-fonce);border-radius:8px;font-family:var(--font-titres);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:.3px}.btn-programme-consulter:hover{background:var(--beige-fonce);color:var(--blanc);transform:translateY(-2px);box-shadow:0 4px 12px #001f3f26}.activites-quiz-section{margin-bottom:2rem}.activites-main-section{margin:3rem 0;padding:2.5rem 0;background:#f5f5dc1a;border-radius:12px}.activites-main-section:not(:last-child){margin-bottom:3rem}.section-title{font-size:2.2rem;color:var(--bleu-marine);margin-bottom:2rem;text-align:center;font-weight:700;text-transform:uppercase;letter-spacing:1px}.category-subtitle{font-size:1.5rem;color:var(--bleu-clair);margin:2rem 0 1.5rem;font-weight:600}.activites-content{margin:2rem 0;padding-bottom:3rem}.activites-category{margin:3rem 0}.activites-category h2{margin-bottom:1.5rem}.activites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.activite-card{cursor:pointer;overflow:hidden;padding:0;background:var(--blanc);border:2px solid var(--beige-fonce);transition:all .3s ease}.activite-card:hover{border-color:var(--bleu-marine);box-shadow:0 6px 16px #001f3f26}.activite-image{height:200px;overflow:hidden}.activite-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.activite-card:hover .activite-image img{transform:scale(1.05)}.activite-content{padding:1.5rem}.activite-content h3{margin-bottom:.5rem;color:var(--bleu-marine);font-weight:600}.activite-duree,.activite-distance,.activite-reservation{color:var(--beige-fonce);font-weight:600;font-size:.9rem;margin:.25rem 0}.activite-preview{color:#555;font-size:.9rem;margin-top:.75rem;line-height:1.5}.back-button{margin-bottom:2rem}.activite-detail{margin:2rem 0;padding-bottom:3rem}.activite-detail h1{margin-bottom:2rem;color:var(--blanc)}.activite-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-bottom:2rem}.activite-gallery img{width:100%;height:300px;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.activite-info{padding:2rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item strong{color:var(--bleu-marine)}.reservation-required{color:var(--bleu-clair);font-weight:600}.description{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--beige-fonce)}.description h3{margin-bottom:1rem}.activite-link{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--beige-fonce);text-align:center}.activite-link a{display:inline-block}.films-cinema-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--beige-fonce)}.film-search-section{margin-bottom:3rem;padding:2rem;background-color:#ffffff0d;border-radius:var(--border-radius);border:2px solid var(--beige-fonce)}.film-search-section h3{color:var(--bleu-clair);font-size:1.5rem;margin-bottom:1rem}.search-input-container{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.search-input{flex:1;padding:.75rem 1rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);font-size:1rem;background-color:var(--blanc);color:#333}.search-input:focus{outline:none;border-color:var(--bleu-clair)}.no-results-message{padding:2rem;text-align:center;background-color:#ffc1071a;border:2px solid #ffc107;border-radius:var(--border-radius);color:var(--blanc);font-size:1.1rem}.search-results{margin-top:2rem}.search-results h4{color:var(--bleu-clair);font-size:1.3rem;margin-bottom:1.5rem}.films-cinema-section h3{color:var(--bleu-marine);font-size:1.8rem;margin-bottom:.5rem}.films-intro{color:#666;font-size:1rem;margin-bottom:2rem;font-style:italic}.films-list{display:flex;flex-direction:column;gap:2rem}.film-detail-card{background-color:#f8f8f8;border-radius:var(--border-radius);padding:1.5rem;border:2px solid var(--beige-fonce)}.film-header{display:flex;gap:1.5rem;margin-bottom:1.5rem}.film-poster-small{flex-shrink:0;width:150px;height:220px;overflow:hidden;border-radius:var(--border-radius);box-shadow:0 4px 8px #00000026}.film-poster-small img{width:100%;height:100%;object-fit:cover}.film-header-info{flex:1;position:relative}.film-header-info h4{color:var(--bleu-marine);font-size:1.5rem;margin-bottom:.25rem;line-height:1.3}.film-original-title{color:#888;font-size:.95rem;font-style:italic;margin-bottom:.75rem}.film-meta{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.75rem}.film-badges{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.film-platform-badge{display:inline-block;background-color:var(--bleu-marine);color:var(--blanc);padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.film-type-badge{display:inline-block;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.film-type-badge.nouveaute{background-color:#27ae60;color:var(--blanc);box-shadow:0 2px 6px #27ae604d}.film-type-badge.classique{background-color:#c0392b;color:var(--blanc);box-shadow:0 2px 6px #c0392b4d}.film-review{background-color:#e8e8e8;padding:1rem;border-left:4px solid var(--beige-fonce);margin:1rem 0;font-size:.9rem;line-height:1.6;font-style:italic;color:#444}.seances-programmees-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--beige-fonce)}.seances-programmees-section h3{color:var(--bleu-marine);font-size:1.8rem;margin-bottom:.5rem}.seances-intro{color:#666;font-size:1rem;margin-bottom:2rem;font-style:italic}.seances-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.seance-card{background-color:#f8f8f8;border-radius:var(--border-radius);padding:1rem;border:2px solid var(--beige-fonce);transition:var(--transition)}.seance-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #00000026}.seance-content{display:flex;flex-direction:column;gap:1rem}.seance-poster{width:100%;height:200px;overflow:hidden;border-radius:var(--border-radius)}.seance-poster img{width:100%;height:100%;object-fit:cover}.seance-info h4{color:var(--bleu-marine);font-size:1.2rem;margin-bottom:.5rem}.seance-date,.seance-time,.seance-organizer{font-size:.9rem;color:#555;margin:.25rem 0}.seance-organizer{font-weight:600;color:var(--beige-fonce)}@media(max-width:768px){.activites-hero h1{font-size:2rem}.tabs{flex-direction:column;gap:0}.tab{border-bottom:1px solid var(--beige-fonce)}.film-header{flex-direction:column;align-items:center}.film-poster-small{width:100%;max-width:200px;height:300px}.search-input-container{flex-direction:column;align-items:stretch}.search-input-container .btn-primary{margin-left:0!important}.activites-personnalisables-grid{grid-template-columns:1fr}.section-title{font-size:1.8rem}.personnalisable-icon{font-size:2rem}.activites-filtered-header{padding:.75rem 0}.activites-tab-row{gap:.5rem;padding:1.25rem 0 .5rem}.btn-tab-main{font-size:.95rem;padding:.75rem 1rem}.btn-programme-consulter{font-size:.85rem;padding:.5rem 1.25rem}}.activites-filtered-header{padding:1rem 0;margin-bottom:.5rem}.btn-back-to-hub{display:inline-block;background:none;border:none;color:var(--beige-fonce);font-size:.95rem;font-weight:600;cursor:pointer;padding:.5rem 0;margin-bottom:.75rem;font-family:var(--font-texte);transition:color .2s ease}.btn-back-to-hub:hover{color:var(--bleu-marine)}.activites-personnalisables-section{margin-bottom:2rem;padding:1rem 0}.activites-personnalisables-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.activite-personnalisable-card{background:linear-gradient(135deg,beige,#e8e3d3);border:none;border-radius:12px;padding:1.25rem 1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.activite-personnalisable-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #001f3f33}.personnalisable-icon{font-size:2.5rem;margin-bottom:.5rem}.activite-personnalisable-card h3{color:var(--bleu-marine);font-size:1.25rem;margin-bottom:.5rem;font-weight:700}.personnalisable-description{color:var(--bleu-marine);font-size:.9rem;line-height:1.5;margin-bottom:1rem;opacity:.9}.personnalisable-stats{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:1.5rem}.personnalisable-stats span{color:var(--bleu-marine);font-size:.9rem;font-weight:600}.repas-eligibles{text-align:left;width:100%}.repas-eligibles strong{color:var(--bleu-marine);font-size:.95rem;display:block;margin-bottom:.5rem}.repas-eligibles ul{list-style:none;padding:0;margin:0}.repas-eligibles li{color:var(--bleu-marine);font-size:.85rem;padding:.25rem 0;opacity:.9}.badge-count{background:var(--beige);color:var(--bleu-marine);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.btn-personnalisable{background:var(--bleu-marine);color:var(--blanc);border:none;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #001f3f33}.btn-personnalisable:hover{background:#00274d;transform:scale(1.05);box-shadow:0 4px 12px #001f3f4d}.seances-programmees-preview{width:100%;margin-bottom:1.25rem}.seances-programmees-label{color:var(--bleu-marine);font-size:.9rem;font-weight:700;margin-bottom:.75rem;text-align:left}.seances-programmees-list{display:flex;flex-direction:column;gap:.5rem}.seance-mini-card{display:flex;align-items:center;gap:.75rem;background:#001f3f0f;border-radius:8px;padding:.5rem .75rem}.seance-mini-poster{width:32px;height:44px;object-fit:cover;border-radius:4px;flex-shrink:0;box-shadow:0 1px 4px #00000026}.seance-mini-title{color:var(--bleu-marine);font-size:.85rem;font-weight:600;line-height:1.3}.mes-propositions-section{margin-top:2rem;padding:2rem;background:#001f3f0d;border-radius:8px;border:2px solid var(--beige-fonce)}.mes-propositions-section h3{color:var(--bleu-marine);margin-bottom:1.5rem;font-size:1.3rem}.propositions-list{display:grid;gap:1rem}.mes-propositions-section .proposition-card{background:var(--blanc);padding:1.5rem;border-radius:8px;border:2px solid var(--beige-fonce);box-shadow:0 2px 8px #0000001a}.mes-propositions-section .proposition-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.mes-propositions-section .badge-en_attente{background:#fef3c7;color:#92400e;padding:.4rem .875rem;border-radius:12px;font-size:.8rem;font-weight:600}.mes-propositions-section .badge-validee{background:#d1fae5;color:#065f46;padding:.4rem .875rem;border-radius:12px;font-size:.8rem;font-weight:600}.mes-propositions-section .badge-refusee{background:#fee2e2;color:#991b1b;padding:.4rem .875rem;border-radius:12px;font-size:.8rem;font-weight:600}.mes-propositions-section .date{color:var(--bleu-marine);font-size:.875rem;font-weight:500}.mes-propositions-section .proposition-body h4{color:var(--bleu-marine);margin:.5rem 0;font-size:1.15rem;font-weight:600}.mes-propositions-section .proposition-body p{color:#666;font-size:.9rem}.mes-propositions-section .badge-manual{background:#ede9fe;color:#6b21a8;padding:.3rem .6rem;border-radius:8px;font-size:.75rem;margin-left:.5rem;font-weight:600}.mes-propositions-section .proposition-actions{margin-top:1rem}.btn-danger-small{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-danger-small:hover{background:#dc2626}.mes-propositions-section .validation-message{background:#d1fae5;color:#065f46;padding:1rem;border-radius:8px;margin-top:1rem;font-size:.9rem;font-weight:500;border-left:4px solid #10b981}.mes-propositions-section .refus-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:8px;margin-top:1rem;font-size:.9rem;font-weight:500;border-left:4px solid #ef4444}.propose-recipe-modal .stepper{display:flex;justify-content:space-between;margin-bottom:2rem;padding:0 1rem}.propose-recipe-modal .stepper>div{flex:1;text-align:center;padding:.75rem;background:#ffffff1a;border-radius:4px;color:#ffffff80;font-size:.875rem;position:relative}.propose-recipe-modal .stepper>div.active{background:#3b82f64d;color:#fff;font-weight:600}.propose-recipe-modal .stepper>div.completed{background:#10b98133;color:#34d399}.select-meal-step .meals-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:1.5rem}.select-meal-step .meal-card{background:#ffffff1a;padding:1.5rem;border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.select-meal-step .meal-card:hover{background:#3b82f633;transform:translateY(-2px)}.select-meal-step .meal-date{color:#fff;font-weight:600;margin-bottom:.5rem}.select-meal-step .meal-type{font-size:1.5rem;margin:.5rem 0}.select-meal-step .meal-servings{color:#ffffffb3;font-size:.875rem}.select-component-step .components-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1.5rem;margin-bottom:2rem}.select-component-step .component-card{background:#ffffff1a;padding:2rem;border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.select-component-step .component-card:hover{background:#3b82f633;transform:translateY(-2px)}.select-component-step .component-card .icon{font-size:3rem;margin-bottom:1rem}.select-component-step .component-card .label{color:#fff;font-weight:600;font-size:1.1rem}.manual-recipe-step .ingredient-row{display:grid;grid-template-columns:100px 120px 1fr 40px;gap:.5rem;margin-bottom:.5rem}.manual-recipe-step .ingredient-row input,.manual-recipe-step .ingredient-row select{padding:.5rem;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#ffffff1a;color:#fff}.manual-recipe-step .ingredient-row button{background:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer}.manual-recipe-step .btn-add{background:#3b82f633;color:#fff;border:1px solid #3b82f6;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-top:.5rem}.confirmation-step .summary-card{background:#0000004d;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.confirmation-step .summary-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.confirmation-step .summary-row strong{color:#ffffffb3}.confirmation-step .summary-row span{color:#fff}.confirmation-step .ingredients-preview{background:#0000004d;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.confirmation-step .ingredients-preview h4{color:#fff;margin-bottom:.75rem}.confirmation-step .ingredients-preview ul{color:#fffc;padding-left:1.5rem}.confirmation-step .info-box{background:#3b82f61a;border-left:3px solid #3b82f6;padding:1rem;border-radius:4px;margin-bottom:1.5rem}.confirmation-step .info-box p{color:#ffffffe6;margin:0;font-size:.875rem}.or-divider{text-align:center;margin:2rem 0;position:relative}.or-divider:before,.or-divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background:#fff3}.or-divider:before{left:0}.or-divider:after{right:0}.or-divider span{background:var(--bleu-marine);padding:0 1rem;color:#fff9;font-weight:600}.activite-image{position:relative}.activite-review-badge{position:absolute;top:.75rem;right:.75rem;background:#000000bf;color:#f59e0b;padding:.375rem .75rem;border-radius:20px;display:flex;align-items:center;gap:.375rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.9rem;font-weight:700;z-index:2}.activite-review-badge .activite-review-count{color:#fffc;font-weight:400;font-size:.8rem}.activite-review-badge-no-photo{background:linear-gradient(135deg,beige,#e8e3d3);padding:.5rem 1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.9rem}.activite-review-badge-no-photo .activite-review-stars{color:#f59e0b;font-weight:700}.activite-review-badge-no-photo .activite-review-count{color:#666;font-size:.85rem}.btn-voir-commentaires{display:inline-block;margin-top:.75rem;background:none;border:1px solid var(--beige-fonce);color:var(--bleu-marine);padding:.5rem 1rem;border-radius:var(--border-radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition);width:100%;text-align:center}.btn-voir-commentaires:hover{background:var(--bleu-marine);color:var(--blanc);border-color:var(--bleu-marine)}.activite-content .capacity-badge{font-size:.8rem;padding:.4rem .875rem}.info-item .capacity-badge{display:inline-flex}.activite-tournoi-banners{display:flex;flex-direction:column;gap:0}.activite-tournoi-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.625rem 1rem;border:none;cursor:pointer;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease}.activite-tournoi-banner.en_cours{background:linear-gradient(135deg,#059669,#047857);color:#fff}.activite-tournoi-banner.en_cours:hover{background:linear-gradient(135deg,#047857,#065f46)}.activite-tournoi-banner.publie{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.activite-tournoi-banner.publie:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.activite-tournoi-banner.brouillon{background:linear-gradient(135deg,#d97706,#b45309);color:#fff}.activite-tournoi-banner.brouillon:hover{background:linear-gradient(135deg,#b45309,#92400e)}.activite-tournoi-banner-name{font-weight:500;font-size:.8rem;text-transform:none;letter-spacing:0;opacity:.9}.activite-detail-tournois{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--beige-fonce)}.activite-detail-tournois h3{margin-bottom:1rem;color:var(--bleu-marine)}.activite-detail-tournois-list{display:flex;flex-direction:column;gap:.75rem}.activite-detail-tournoi-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.activite-detail-tournoi-btn.en_cours{background:linear-gradient(135deg,#059669,#047857);color:#fff;box-shadow:0 2px 8px #0596694d}.activite-detail-tournoi-btn.en_cours:hover{transform:translateY(-2px);box-shadow:0 4px 12px #05966966}.activite-detail-tournoi-btn.publie{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 2px 8px #2563eb4d}.activite-detail-tournoi-btn.publie:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2563eb66}.activite-detail-tournoi-btn.brouillon{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;box-shadow:0 2px 8px #d977064d}.activite-detail-tournoi-btn.brouillon:hover{transform:translateY(-2px);box-shadow:0 4px 12px #d9770666}.activite-detail-tournoi-status{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .625rem;background:#fff3;border-radius:4px;white-space:nowrap}.activite-detail-tournoi-name{flex:1;font-weight:600;font-size:1rem}.activite-detail-tournoi-arrow{font-size:.85rem;font-weight:500;opacity:.9;white-space:nowrap}.multi-room-selection,.participant-assignment{padding:2rem}.nombre-chambres-section{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.nombre-chambres-section h3{margin-bottom:1rem;font-size:1.1rem;color:#2c3e50}.nombre-chambres-selector{display:flex;gap:1rem;flex-wrap:wrap}.nombre-chambres-btn{padding:.75rem 1.5rem;border:2px solid #ddd;background:#fff;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s}.nombre-chambres-btn:hover{border-color:#3498db;background:#f0f8ff}.nombre-chambres-btn.selected{border-color:#3498db;background:#3498db;color:#fff;font-weight:600}.chambres-filters{margin-bottom:1.5rem;padding:1.25rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.filters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.filters-header h3{margin:0;font-size:.95rem;color:#2c3e50;font-weight:600}.filters-reset{padding:.35rem .75rem;border:1px solid #95a5a6;background:transparent;color:#95a5a6;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s}.filters-reset:hover{background:#95a5a6;color:#fff}.filters-row{display:flex;gap:1rem;flex-wrap:wrap}.filter-group{flex:1;min-width:160px}.filter-group label{display:block;font-size:.8rem;font-weight:600;color:#555;margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.3px}.filter-group select{width:100%;padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;transition:border-color .2s;color:#2c3e50}.filter-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db26}.no-results{padding:2rem;text-align:center;color:#7f8c8d;font-size:1rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.selection-info{margin:1.5rem 0;padding:1rem;background:#e8f4f8;border-left:4px solid #3498db;border-radius:4px}.selection-info p{margin:.5rem 0;font-size:1rem}.selection-count{color:#3498db;font-weight:600}.error-message{padding:1rem;margin:1rem 0;background:#fee;border-left:4px solid #e74c3c;border-radius:4px;color:#c0392b}.chambres-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:2rem 0}.chambre-card-wide{border:2px solid #e0e0e0;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s ease;background:#fff;display:flex;flex-direction:column}.chambre-card-wide:hover:not(.disabled):not(.unavailable){border-color:#3498db;box-shadow:0 6px 20px #3498db26;transform:translateY(-3px)}.chambre-card-wide.selected{border-color:#3498db;box-shadow:0 6px 20px #3498db40}.chambre-card-wide.disabled{opacity:.45;cursor:not-allowed}.chambre-card-wide.unavailable{cursor:not-allowed}.chambre-card-wide.unavailable .chambre-photo-wide img{filter:grayscale(50%) brightness(.85)}.chambre-photo-wide{position:relative;width:100%;height:240px;overflow:hidden;background:#e9ecef}.chambre-photo-wide img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.chambre-card-wide:hover:not(.disabled):not(.unavailable) .chambre-photo-wide img{transform:scale(1.04)}.chambre-photo-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e9ecef,#dee2e6)}.availability-badge{position:absolute;top:12px;left:12px;padding:5px 14px;border-radius:20px;font-size:.78rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase;z-index:2}.badge-available{background:#27ae60;color:#fff}.badge-unavailable{background:#e74c3c;color:#fff}.selected-overlay{position:absolute;inset:0;background:#3498db40;display:flex;align-items:center;justify-content:center;z-index:1}.selected-check{width:48px;height:48px;border-radius:50%;background:#3498db;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;box-shadow:0 4px 12px #3498db66}.chambre-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}.chambre-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.chambre-header-row h4{margin:0;font-size:1.1rem;color:#2c3e50;display:flex;align-items:center;gap:.5rem}.chambre-capacite-badge{padding:4px 10px;background:#e8f4f8;color:#2980b9;border-radius:20px;font-size:.8rem;font-weight:600;white-space:nowrap}.chambre-meta-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.chambre-meta-tag{padding:3px 10px;background:#f1f3f5;color:#555;border-radius:4px;font-size:.8rem}.chambre-description{margin:.5rem 0 0;font-size:.85rem;color:#666;line-height:1.5}.badge-partageable{background:#e8e0f0;color:#6c5ce7;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:600;cursor:help}.unavailability-reason{margin-top:.75rem;padding:.6rem .75rem;background:#fff3cd;border-left:3px solid #ffc107;border-radius:4px}.unavailability-text{font-size:.82rem;color:#856404;line-height:1.4}.dates-info{margin-bottom:1.5rem;padding:1rem;background:#e8f4f8;border-left:4px solid #3498db;border-radius:4px}.dates-info p{margin:0;font-size:.95rem;color:#2c3e50}.assignment-instruction{margin-bottom:2rem;padding:1rem;background:#f8f9fa;border-radius:8px;color:#555}.participants-list{margin:2rem 0}.participant-assignment-row{display:flex;align-items:center;justify-content:space-between;padding:1rem;margin-bottom:1rem;background:#fff;border:1px solid #ddd;border-radius:8px;gap:1rem}.participant-info{flex:1;display:flex;align-items:center;gap:.5rem}.badge-principal{background:#f39c12;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.chambre-selector{flex:1;display:flex;align-items:center;gap:1rem}.chambre-select{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;cursor:pointer}.chambre-select:focus{outline:none;border-color:#3498db}.chambre-name-display{flex:1;color:#27ae60;font-weight:600}.extra-bedding-notice{margin:1.5rem 0;padding:1rem 1.25rem;background:#fff8e1;border-left:4px solid #f9a825;border-radius:6px}.extra-bedding-notice p{margin:0 0 .5rem;font-weight:600;color:#e65100;font-size:.95rem}.extra-bedding-notice ul{margin:0;padding-left:1.25rem}.extra-bedding-notice li{font-size:.9rem;color:#5d4037;line-height:1.6}.extra-bedding-tag{display:inline-block;margin:.25rem 0 .5rem;padding:2px 10px;background:#fff3e0;color:#e65100;border-radius:12px;font-size:.78rem;font-weight:600;border:1px solid #ffcc80}.chambres-summary{margin:2rem 0;padding:1.5rem;background:#f8f9fa;border-radius:8px}.chambres-summary h3{margin-bottom:1.5rem;color:#2c3e50}.chambre-summary-card{margin-bottom:1.5rem;padding:1rem;background:#fff;border-left:4px solid #3498db;border-radius:8px}.chambre-summary-card:last-child{margin-bottom:0}.chambre-summary-card h4{margin:0 0 .5rem;color:#2c3e50}.capacite-info{margin:.5rem 0;color:#3498db;font-weight:600}.participants-in-chambre{list-style:none;padding:0;margin:1rem 0 0}.participants-in-chambre li{padding:.5rem;margin-bottom:.5rem;background:#f8f9fa;border-radius:4px}.participants-in-chambre li:last-child{margin-bottom:0}.no-participant{color:#95a5a6;font-style:italic}.form-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;padding-top:2rem;border-top:1px solid #ddd}.btn-secondary{padding:.75rem 1.5rem;border:2px solid #95a5a6;background:#fff;color:#95a5a6;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-secondary:hover{background:#95a5a6;color:#fff}.btn-primary{padding:.75rem 1.5rem;border:none;background:#3498db;color:#fff;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.btn-primary:hover:not(:disabled){background:#2980b9}.btn-primary:disabled{background:#bdc3c7;cursor:not-allowed}@media(max-width:900px){.chambres-list{grid-template-columns:1fr}}@media(max-width:768px){.filters-row{flex-direction:column}.filter-group{min-width:100%}.chambres-list{grid-template-columns:1fr}.chambre-photo-wide{height:200px}.participant-assignment-row,.chambre-selector{flex-direction:column;align-items:stretch}.form-actions{flex-direction:column}.form-actions button{width:100%}}.agenda-inscription{width:100%}.agenda-loading{text-align:center;padding:2rem;color:#666}.agenda-filters-section{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;background:#f8f6f2;border-radius:var(--border-radius)}.agenda-filter-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.agenda-filter-label{font-weight:600;font-size:.85rem;color:var(--bleu-marine);min-width:90px;flex-shrink:0}.agenda-filter-chips{display:flex;gap:6px;flex-wrap:wrap}.agenda-inscription-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:1.5rem;padding:1rem;background:#f8f6f2;border-radius:var(--border-radius)}.agenda-filter-chip{display:flex;align-items:center;gap:6px;padding:6px 14px;background:var(--blanc);border:2px solid var(--beige);border-radius:20px;cursor:pointer;transition:var(--transition);-webkit-user-select:none;user-select:none;font-size:.9rem;color:var(--bleu-marine)}.agenda-filter-chip:hover{border-color:var(--beige-fonce);background:var(--beige);color:var(--blanc)}.agenda-filter-chip.active{background:var(--bleu-marine);border-color:var(--bleu-marine);color:var(--blanc)}.agenda-filter-chip input[type=checkbox]{display:none}.agenda-inscription-legend{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.5rem;font-size:.85rem}.legend-item{display:flex;align-items:center;gap:6px;background:var(--bleu-marine);color:#fff;padding:5px 12px;border-radius:4px;font-weight:600}.legend-dot{width:12px;height:12px;border-radius:3px}.legend-dot.incontournable{background:#e67e22}.legend-dot.inscrit{background:#27ae60}.legend-dot.optionnel{background:var(--beige)}.agenda-two-panel{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;align-items:start}.agenda-panel-left{min-width:0}.agenda-panel-right{min-width:0;align-self:stretch}.agenda-sidebar-sticky{position:sticky;top:5.5rem;max-height:calc(100vh - 6.5rem);overflow-y:auto;background:#f8f6f2;border:2px solid var(--beige);border-radius:var(--border-radius);padding:1rem}.sidebar-title{font-family:var(--font-titres);font-size:1.1rem;font-weight:600;color:var(--bleu-marine);margin:0 0 .25rem}.sidebar-subtitle{font-size:.8rem;color:#888;margin:0 0 1rem}.sidebar-activities-list{display:flex;flex-direction:column;gap:.5rem}.sidebar-activity-card{background:var(--blanc);border:2px solid var(--beige);border-radius:var(--border-radius);padding:.75rem;cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none}.sidebar-activity-card:hover{border-color:var(--bleu-marine);box-shadow:0 2px 8px #0000001a}.sidebar-activity-card:active{cursor:grabbing}.sidebar-activity-card.dragging{opacity:.5;border-color:var(--bleu-marine);background:#e8f4f8}.sidebar-activity-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sidebar-activity-header h4{margin:0;font-size:.9rem;color:var(--bleu-marine);font-family:var(--font-titres)}.sidebar-drag-handle{color:var(--beige-fonce);font-size:1rem;flex-shrink:0}.sidebar-activity-detail{font-size:.78rem;color:#777;margin-top:3px}.sidebar-drag-instruction{margin-top:1rem;padding:.75rem;background:#e8f4f8;border:1px solid var(--bleu-marine);border-radius:var(--border-radius);font-size:.85rem;color:var(--bleu-marine);line-height:1.4}.sidebar-cancel-drag{display:block;margin-top:.5rem;padding:4px 12px;background:transparent;border:1px solid var(--bleu-marine)!important;border-radius:4px;font-size:.8rem;color:var(--bleu-marine);cursor:pointer}.sidebar-cancel-drag:hover{background:var(--bleu-marine);color:var(--blanc)}.agenda-day-card{margin-bottom:1.5rem;border:2px solid var(--beige);border-radius:var(--border-radius);overflow:hidden}.agenda-day-header{display:flex;align-items:center;gap:12px;padding:1rem 1.25rem;background:var(--bleu-marine);color:var(--blanc)}.agenda-day-number{font-family:var(--font-titres);font-size:1.8rem;font-weight:700;line-height:1;min-width:45px;text-align:center}.agenda-day-label{flex:1}.agenda-day-label h3{font-family:var(--font-titres);font-size:1.1rem;font-weight:600;margin:0;text-transform:capitalize;color:var(--blanc)}.agenda-day-label p{font-size:.85rem;margin:2px 0 0;opacity:.8}.agenda-day-count{font-size:.8rem;padding:4px 10px;background:#ffffff26;border-radius:12px}.agenda-day-creneaux{padding:.75rem;display:flex;flex-direction:column;gap:.5rem;background:var(--blanc)}.agenda-creneau-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:var(--border-radius);transition:var(--transition);cursor:pointer}.agenda-creneau-item.incontournable{background:#fef5e7;border-left:4px solid #e67e22;cursor:default}.agenda-creneau-item.optionnel{background:#f8f6f2;border-left:4px solid var(--beige)}.agenda-creneau-item.optionnel:hover{background:#efeae0}.agenda-creneau-item.inscrit{background:#eafaf1;border-left:4px solid #27ae60}.agenda-creneau-item.inscrit:hover{background:#d5f5e3}.agenda-creneau-item.custom-slot{border-left:4px solid #2980b9;background:#eaf2f8}.agenda-creneau-time{min-width:90px;font-weight:600;font-size:.9rem;color:var(--bleu-marine)}.agenda-creneau-info{flex:1}.agenda-creneau-info h4{margin:0;font-size:1rem;color:var(--bleu-marine)}.agenda-creneau-info p{margin:2px 0 0;font-size:.85rem;color:#666}.cinema-film-details{font-size:.8rem!important;color:#555!important;line-height:1.4;font-style:italic}.agenda-creneau-lieu{font-size:.8rem;color:#888;margin-top:2px}.agenda-creneau-badge{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.agenda-creneau-badge.incontournable{background:#e67e22;color:#fff}.agenda-creneau-badge.inscrit{background:#27ae60;color:#fff}.agenda-creneau-action{flex-shrink:0}.agenda-creneau-action button{padding:6px 14px;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-inscrire{background:var(--bleu-marine);color:var(--blanc)}.btn-inscrire:hover{background:var(--bleu-marine-clair)}.btn-desinscrire{background:#e74c3c;color:#fff}.btn-desinscrire:hover{background:#c0392b}.agenda-creneau-choices{margin-top:8px}.agenda-choices-label{font-size:.85rem;color:#666;margin-bottom:6px}.agenda-choices-list{display:flex;flex-direction:column;gap:4px}.agenda-choice-btn{padding:6px 12px;border:2px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;text-align:left;font-size:.85rem;font-weight:400;color:#333;transition:all .15s}.agenda-choice-btn:hover{border-color:var(--beige-fonce);background:#f8f6f2}.agenda-choice-btn.chosen{border-color:#27ae60;background:#eafaf1;font-weight:600}.agenda-choice-btn.skip{border-style:dashed;color:#888;font-style:italic}.agenda-choice-btn.skip.chosen{border-color:var(--beige-fonce);background:#f8f6f2;color:#666}.agenda-choice-lieu{color:#888;margin-left:8px}.agenda-free-slot{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border:2px dashed #ccc;border-radius:var(--border-radius);transition:all .2s ease;min-height:52px}.agenda-free-slot.droppable{border-color:var(--bleu-marine);background:#0a192908;cursor:pointer}.agenda-free-slot.drag-over{border-color:#27ae60;background:#27ae6014;border-style:solid;transform:scale(1.01)}.free-slot-time{min-width:90px;font-weight:500;font-size:.85rem;color:#aaa}.free-slot-label{flex:1;font-size:.85rem;color:#aaa;font-style:italic}.free-slot-drop-hint{color:var(--bleu-marine);font-weight:600;font-style:normal}.agenda-empty-state{text-align:center;padding:2rem;color:#999}.agenda-empty-day{padding:1.5rem;text-align:center;color:#999;font-style:italic;font-size:.9rem}.agenda-inscription-summary{margin-top:1.5rem;padding:1rem 1.25rem;background:#eafaf1;border:2px solid #27ae60;border-radius:var(--border-radius)}.agenda-inscription-summary h4{margin:0 0 .5rem;color:#27ae60;font-size:1rem}.agenda-inscription-summary ul{list-style:none;padding:0;margin:0}.agenda-inscription-summary li{padding:4px 0;font-size:.9rem;color:var(--bleu-marine)}.agenda-inscription-summary li:before{content:"* ";color:#27ae60;font-weight:700;margin-right:6px}.drag-ghost{display:none;position:fixed;top:-1000px;left:-1000px;padding:8px 16px;background:var(--bleu-marine);color:var(--blanc);border-radius:6px;font-size:.85rem;font-weight:600;white-space:nowrap;pointer-events:none;z-index:10000}.activity-detail-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeInOverlay .2s ease}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes slideInModal{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.activity-detail-modal{background:var(--blanc);border-radius:12px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideInModal .25s ease}.activity-detail-close{position:absolute;top:1rem;right:1rem;background:none;border:none!important;font-size:1.5rem;color:#999;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.activity-detail-close:hover{background:#f0f0f0;color:#333}.activity-detail-title{font-family:var(--font-titres);font-size:1.4rem;color:var(--bleu-marine);margin:0 0 .25rem;padding-right:2rem}.activity-detail-date{font-size:.9rem;color:#888;margin:0 0 1rem;text-transform:capitalize}.activity-detail-description{font-size:.9rem;color:#555;line-height:1.5;margin:0 0 1.25rem}.activity-detail-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.activity-detail-info-item{background:#f8f6f2;padding:.75rem;border-radius:var(--border-radius)}.activity-detail-info-label{display:block;font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.activity-detail-info-value{display:block;font-size:.95rem;font-weight:600;color:var(--bleu-marine)}.activity-detail-link{margin-bottom:1.25rem}.activity-detail-link a{display:inline-flex;align-items:center;gap:4px;color:var(--bleu-marine);font-weight:600;font-size:.9rem;text-decoration:none;padding:.5rem 1rem;background:#e8f4f8;border-radius:var(--border-radius);transition:var(--transition)}.activity-detail-link a:hover{background:var(--bleu-marine);color:var(--blanc)}.activity-detail-time-section{border-top:1px solid #eee;padding-top:1.25rem;margin-bottom:1.5rem}.activity-detail-time-section h4{font-family:var(--font-titres);font-size:1.1rem;color:var(--bleu-marine);margin:0 0 1rem}.activity-detail-time-inputs{display:flex;align-items:flex-end;gap:.75rem}.activity-detail-time-field{flex:1}.activity-detail-time-field label{display:block;font-size:.8rem;color:#888;margin-bottom:4px;font-weight:600}.activity-detail-time-field input[type=time]{width:100%;padding:.6rem .75rem;border:2px solid var(--beige);border-radius:var(--border-radius);font-size:1rem;color:var(--bleu-marine);font-family:var(--font-texte)}.activity-detail-time-field input[type=time]:focus{border-color:var(--bleu-marine);outline:none}.activity-detail-time-separator{font-size:1.2rem;font-weight:600;color:#999;padding-bottom:.6rem}.activity-detail-error{color:#e74c3c;font-size:.85rem;margin-top:.5rem}.activity-detail-actions{display:flex;gap:.75rem;justify-content:flex-end}.activity-detail-actions .btn-secondary{padding:.6rem 1.25rem;background:transparent;border:2px solid var(--beige)!important;border-radius:var(--border-radius);color:var(--bleu-marine);font-weight:600;font-size:.9rem;cursor:pointer}.activity-detail-actions .btn-secondary:hover{background:#f8f6f2}.activity-detail-actions .btn-primary{padding:.6rem 1.25rem;background:var(--bleu-marine);border:none;border-radius:var(--border-radius);color:var(--blanc);font-weight:600;font-size:.9rem;cursor:pointer}.activity-detail-actions .btn-primary:hover{background:var(--bleu-marine-clair)}.activity-detail-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.agenda-creneau-participants{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.agenda-participant-tag{display:inline-block;padding:1px 8px;background:#0a192914;border-radius:10px;font-size:.75rem;color:var(--bleu-marine);font-weight:500}.agenda-creneau-inscriptions-detail{margin-top:8px;display:flex;flex-direction:column;gap:4px}.agenda-inscription-group{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.agenda-inscription-activity{font-size:.75rem;font-weight:600;color:var(--bleu-marine)}.agenda-choice-count{margin-left:4px;font-size:.8em;opacity:.7}.participant-modal-subtitle{font-size:.9rem;color:#888;margin:0 0 1.25rem}.participant-modal-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.participant-modal-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f8f6f2;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);border:2px solid transparent}.participant-modal-item:hover{background:#f0ede7}.participant-modal-item.checked{background:#e8f4f8;border-color:var(--bleu-marine)}.participant-modal-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--bleu-marine);cursor:pointer;flex-shrink:0}.participant-modal-name{font-size:.95rem;font-weight:500;color:var(--bleu-marine)}.participant-modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.participant-modal-actions .btn-secondary{padding:.6rem 1.25rem;background:transparent;border:2px solid var(--beige)!important;border-radius:var(--border-radius);color:var(--bleu-marine);font-weight:600;font-size:.9rem;cursor:pointer}.participant-modal-actions .btn-secondary:hover{background:#f8f6f2}.participant-modal-actions .btn-primary{padding:.6rem 1.25rem;background:var(--bleu-marine);border:none;border-radius:var(--border-radius);color:var(--blanc);font-weight:600;font-size:.9rem;cursor:pointer}.participant-modal-actions .btn-primary:hover{background:var(--bleu-marine-clair)}.participant-modal-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.activity-detail-participants-section{border-top:1px solid #eee;padding-top:1.25rem;margin-bottom:1.5rem}.activity-detail-participants-section h4{font-family:var(--font-titres);font-size:1.1rem;color:var(--bleu-marine);margin:0 0 1rem}@media(max-width:900px){.agenda-two-panel{grid-template-columns:1fr}.agenda-panel-right{order:-1}.agenda-sidebar-sticky{position:static;max-height:none}}@media(max-width:768px){.agenda-creneau-item{flex-wrap:wrap;gap:.5rem}.agenda-creneau-time{min-width:auto}.agenda-creneau-action{width:100%}.agenda-creneau-action button{width:100%;text-align:center}.agenda-inscription-legend{flex-direction:column;gap:.5rem}.agenda-filter-group{flex-direction:column;align-items:flex-start;gap:.5rem}.agenda-filter-label{min-width:auto}.activity-detail-info-grid{grid-template-columns:1fr}.activity-detail-time-inputs{flex-direction:column;gap:.5rem}.activity-detail-time-separator{display:none}.activity-detail-actions{flex-direction:column}.activity-detail-actions button{width:100%;text-align:center}}.dietary-intro{color:#555;margin-bottom:1.5rem;line-height:1.6;font-size:.95rem}.dietary-list{margin-bottom:2rem}.dietary-list h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--bleu-marine)}.dietary-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background-color:#f8f5f0;border:1px solid var(--beige);border-radius:var(--border-radius);margin-bottom:.5rem}.dietary-item-content{flex:1}.dietary-item-message{font-weight:600;color:var(--bleu-marine);margin-bottom:.35rem}.dietary-item-persons{display:flex;flex-wrap:wrap;gap:.35rem}.dietary-person-tag{display:inline-block;padding:.15rem .5rem;background-color:var(--bleu-marine);color:#fff;border-radius:12px;font-size:.8rem;font-weight:500}.dietary-remove-btn{background:none;border:none;color:#dc3545;font-size:1.4rem;cursor:pointer;padding:0 .25rem;line-height:1;opacity:.7;transition:opacity .2s}.dietary-remove-btn:hover{opacity:1}.dietary-add-section{background-color:#f0f4f8;padding:1.25rem;border-radius:var(--border-radius);margin-bottom:2rem;border:1px solid #d0d8e0}.dietary-add-section h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--bleu-marine)}.dietary-input-row{margin-bottom:.75rem}.dietary-input{width:100%;padding:.75rem;border:2px solid var(--beige);border-radius:var(--border-radius);font-size:1rem;transition:border-color .2s}.dietary-input:focus{border-color:var(--bleu-marine);outline:none}.dietary-persons-select{padding-top:.5rem}.dietary-persons-label{font-weight:600;font-size:.9rem;color:var(--bleu-marine);margin-bottom:.5rem}.dietary-persons-checkboxes{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.dietary-person-checkbox{display:flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.95rem;color:var(--bleu-marine)}.dietary-person-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--bleu-marine)}.dietary-add-btn{padding:.6rem 1.5rem;font-size:.95rem}.dietary-summary{margin-bottom:1.5rem}.dietary-summary h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--bleu-marine)}.dietary-summary-list{display:flex;flex-direction:column;gap:.5rem}.dietary-summary-person{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;background-color:#fff;border:1px solid var(--beige);border-radius:var(--border-radius)}.dietary-summary-person.no-restriction{opacity:.75}.dietary-summary-name{font-weight:600;color:var(--bleu-marine);min-width:140px}.dietary-summary-prefs{display:flex;flex-wrap:wrap;gap:.35rem}.dietary-summary-tag{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.85rem;font-weight:500}.dietary-summary-tag.restriction{background-color:#e8d5b7;color:var(--bleu-marine)}.dietary-summary-tag.none{background-color:#e8f5e9;color:#2e7d32;font-style:italic}@media(max-width:768px){.dietary-summary-person{flex-direction:column;align-items:flex-start;gap:.35rem}.dietary-summary-name{min-width:auto}.dietary-persons-checkboxes{flex-direction:column;gap:.5rem}}.reservation{min-height:100vh;padding:2rem 0}.reservation h1{text-align:center;margin-bottom:2rem;color:var(--beige-fonce)}.steps-indicator{display:flex;justify-content:center;align-items:center;gap:1rem;margin:2rem 0 3rem}.step-dot{width:40px;height:40px;border-radius:50%;background-color:var(--gris-clair);border:2px solid var(--beige-fonce);display:flex;align-items:center;justify-content:center;font-weight:600;color:#666;transition:var(--transition)}.step-dot.active{background-color:var(--bleu-marine);color:var(--blanc);border-color:var(--bleu-marine);transform:scale(1.2)}.step-dot.completed{background-color:var(--beige);border-color:var(--bleu-marine);color:var(--bleu-marine)}.form-step{max-width:800px;margin:0 auto;padding:2rem}.form-step.form-step-wide{max-width:1200px}.form-step h2,.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:var(--bleu-marine);margin-bottom:.5rem}.form-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem}.chambres-list{display:grid;gap:1rem;margin-bottom:2rem}.chambre-option{padding:1.5rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);background-color:var(--beige);display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.chambre-option:hover{border-color:var(--bleu-marine);transform:translate(4px)}.chambre-option.selected{border:5px solid var(--bleu-marine);background-color:var(--beige);box-shadow:0 0 0 3px #0a192933;transform:scale(1.02)}.chambre-option.locked-by-other{border-color:#ff9800;background-color:#fff3e0}.chambre-option.reserved{border-color:#999;background-color:#f5f5f5}.chambre-option.disabled{cursor:not-allowed!important}.badge-selected{display:inline-block;padding:.25rem .5rem;background-color:#4caf50;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;margin-left:.5rem}.badge-locked{display:inline-block;padding:.25rem .5rem;background-color:#ff9800;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;margin-left:.5rem}.badge-reserved{display:inline-block;padding:.25rem .5rem;background-color:#999;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;margin-left:.5rem}.reservation-timer{margin-bottom:1.5rem;padding:1rem;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;font-size:.95rem;color:#1976d2}.chambre-info{flex:1}.chambre-option h3{margin-bottom:.5rem}.chambre-option p{margin:.25rem 0;color:#666}.chambre-photo{flex-shrink:0;width:120px;height:120px}.chambre-photo img{width:100%;height:100%;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.activites-selection{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0}.activites-category-title{color:var(--bleu-marine);font-size:1.4rem;margin:1rem 0;padding-bottom:.5rem;border-bottom:2px solid var(--beige-fonce)}.activite-group{border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.5rem;background-color:var(--blanc)}.activite-group h4{color:var(--bleu-marine);margin-bottom:.5rem;font-size:1.2rem}.activite-description{color:#666;font-size:.95rem;margin-bottom:1rem;font-style:italic}.creneaux-list{display:flex;flex-direction:column;gap:.5rem;margin-left:1rem}.creneau-option{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;border-radius:var(--border-radius);transition:var(--transition);background-color:var(--gris-clair);margin-bottom:.5rem}.creneau-option:hover{background-color:var(--beige-fonce);color:var(--blanc)}.creneau-option input{width:auto;cursor:pointer}.creneau-option span{flex:1}.creneau-option span strong{text-transform:capitalize;display:block;margin-bottom:.25rem}.activite-desc-inline{font-size:.9rem;color:#666}.activite-option{display:flex;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--beige-fonce);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.activite-option:hover{border-color:var(--bleu-marine)}.activite-option input{width:auto;cursor:pointer}.recapitulatif{display:flex;flex-direction:column;gap:1.5rem}.recap-section{padding:1.5rem;background-color:var(--gris-clair);border-radius:var(--border-radius)}.recap-section h3{margin-bottom:1rem;color:var(--bleu-marine)}.recap-section p{margin:.5rem 0}.recap-section ul{list-style:none;padding:0}.recap-section li{padding:.5rem 0;border-bottom:1px solid var(--beige-fonce)}.recap-section li:last-child{border-bottom:none}.recap-chambres-list{display:flex;flex-direction:column;gap:.75rem}.recap-chambre-card{background:var(--blanc);border:1px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1rem 1.25rem}.recap-chambre-name{font-weight:700;font-size:1.05rem;color:var(--bleu-marine);margin-bottom:.35rem}.recap-chambre-details{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.85rem;color:#666;margin-bottom:.5rem}.recap-chambre-occupants{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.recap-occupant-tag{display:inline-block;padding:3px 10px;background:var(--beige);border-radius:20px;font-size:.8rem;font-weight:500;color:var(--bleu-marine)}.recap-total-personnes{margin-top:.75rem;font-size:.9rem;font-weight:600;color:var(--bleu-marine)}.recap-planning{display:flex;flex-direction:column;gap:1.25rem}.recap-planning-day{border-left:3px solid var(--bleu-marine);padding-left:1rem}.recap-planning-day-header{font-weight:700;font-size:.95rem;color:var(--bleu-marine);text-transform:capitalize;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid var(--beige-fonce)}.recap-planning-slots{display:flex;flex-direction:column;gap:.4rem}.recap-planning-slot{display:flex;align-items:flex-start;gap:1rem;padding:.5rem .75rem;background:var(--blanc);border-radius:6px;transition:background .15s ease}.recap-planning-slot:hover{background:#f0ede8}.recap-slot-time{min-width:90px;font-weight:600;font-size:.9rem;color:var(--bleu-marine);white-space:nowrap}.recap-slot-info{flex:1}.recap-slot-titre{font-weight:500;font-size:.9rem;color:var(--bleu-marine)}.recap-slot-lieu{font-size:.8rem;color:#888;margin-top:2px}.recap-activity-stats{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.recap-stat-badge{padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:600}.recap-stat-badge.incontournable{background:#fef5e7;color:#e67e22;border:1px solid #f0c78a}.recap-stat-badge.optionnel{background:#eafaf1;color:#27ae60;border:1px solid #8fd6b4}.recap-stat-badge.custom{background:#eaf2f8;color:#2980b9;border:1px solid #85c1e9}.recap-slot-incontournable{border-left:3px solid #e67e22;background:#fef5e7!important}.recap-slot-optionnel{border-left:3px solid #27ae60;background:#f0faf5!important}.recap-slot-custom{border-left:3px solid #2980b9;background:#eaf2f8!important}.recap-slot-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:10px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;vertical-align:middle}.recap-slot-badge.incontournable{background:#e67e22;color:#fff}.recap-slot-badge.custom{background:#2980b9;color:#fff}.recap-slot-participants{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.recap-participant-tag{display:inline-block;padding:1px 8px;background:#0a192914;border-radius:10px;font-size:.75rem;color:var(--bleu-marine);font-weight:500}.recap-recette-participant{margin-bottom:1rem;padding-left:1rem;border-left:3px solid #4CAF50}.recap-recette-participant h4{margin-bottom:.5rem;color:#4caf50}.recap-recette-participant ul{margin-top:.5rem}.success-step{text-align:center;padding:3rem}.success-step h2{color:#3c3;font-size:2rem;margin-bottom:1.5rem}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--blanc);padding:2rem;border-radius:var(--border-radius);max-width:500px;width:90%;box-shadow:0 8px 24px #0000004d}.modal-content h2{margin-bottom:1rem;color:var(--bleu-marine)}.modal-content p{margin-bottom:1.5rem;line-height:1.6;color:#333}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}@media(max-width:768px){.form-actions{flex-direction:column}.steps-indicator{gap:.5rem}.step-dot{width:35px;height:35px;font-size:.9rem}.modal-actions{flex-direction:column}.chambre-option{flex-direction:column;align-items:stretch}.chambre-photo{width:100%;height:200px}}.films-vod-section{margin-top:3rem;padding-top:2rem;border-top:3px solid var(--beige-fonce)}.films-vod-section h3{color:var(--bleu-marine);font-size:1.8rem;margin-bottom:.5rem;text-align:center}.films-intro{text-align:center;color:#666;font-size:1.1rem;margin-bottom:2rem;font-style:italic}.films-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:2rem}.film-card{background-color:var(--blanc);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 12px #00000026;transition:var(--transition);border:2px solid var(--beige-fonce)}.film-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0003}.film-poster{position:relative;width:100%;height:400px;overflow:hidden;background-color:var(--gris-clair)}.film-poster img{width:100%;height:100%;object-fit:cover}.film-platform{position:absolute;top:10px;right:10px;background-color:var(--bleu-marine);color:var(--blanc);padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;box-shadow:0 2px 6px #0000004d}.film-info{padding:1.5rem}.film-info h4{color:var(--bleu-marine);font-size:1.3rem;margin-bottom:.25rem;line-height:1.3}.film-original-title{color:#888;font-size:.9rem;font-style:italic;margin-bottom:.75rem}.film-meta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--gris-clair)}.film-meta span{font-size:.9rem;color:#666;font-weight:600}.film-rating{color:#f39c12}.film-director,.film-genre,.film-cast{font-size:.95rem;margin:.5rem 0;color:#555}.film-director{font-weight:600;color:var(--beige-fonce)}.film-genre{font-style:italic;color:var(--bleu-marine)}.film-synopsis{margin:1rem 0;line-height:1.6;color:#333;font-size:.95rem}.film-review{background-color:var(--gris-clair);padding:1rem;border-left:4px solid var(--beige-fonce);margin:1rem 0;font-size:.9rem;line-height:1.6;font-style:italic;color:#444}.film-review strong{color:var(--bleu-marine);font-style:normal}.film-release{text-align:center;padding:.75rem;background-color:var(--beige);border-radius:var(--border-radius);margin-top:1rem;font-weight:600;color:var(--bleu-marine);font-size:.9rem}.nombre-personnes-selector{display:flex;align-items:center;justify-content:center;gap:2rem;margin:1.5rem 0}.nombre-personnes-btn{width:50px;height:50px;border-radius:50%;border:2px solid var(--bleu-marine);background-color:var(--blanc);color:var(--bleu-marine);font-size:1.5rem;font-weight:700;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.nombre-personnes-btn:hover:not(:disabled){background-color:var(--beige-fonce);color:var(--blanc);transform:scale(1.1)}.nombre-personnes-btn:active:not(:disabled){transform:scale(.95)}.nombre-personnes-btn:disabled{opacity:.4;cursor:not-allowed;border-color:var(--beige-fonce);color:var(--beige-fonce)}.nombre-personnes-display{font-size:2rem;font-weight:700;color:var(--blanc);background-color:var(--bleu-marine);min-width:60px;text-align:center;padding:.5rem 1rem;border-radius:8px}.secondary-guest-block{padding:1rem;margin-bottom:1rem;border:1px solid var(--beige-fonce);border-radius:var(--border-radius);background-color:var(--beige)}.secondary-guest-block .form-group{margin-bottom:.5rem}.email-checkbox-label{display:flex!important;align-items:center;gap:.5rem;font-weight:400!important;font-size:.9rem;color:var(--bleu-marine);cursor:pointer;margin-top:.25rem}.email-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--bleu-marine);cursor:pointer}@keyframes welcomeSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes welcomeGlow{0%,to{box-shadow:0 2px 12px #0a19291a}50%{box-shadow:0 4px 20px #0a192933}}.welcome-back-banner{animation:welcomeSlideIn .6s ease-out,welcomeGlow 2s ease-in-out .6s;background:linear-gradient(135deg,#f8f4ef,#ede6db);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.25rem 1.5rem;margin-bottom:1.5rem}.welcome-back-content{display:flex;align-items:center;gap:1rem}.welcome-back-icon{font-size:1.8rem;color:var(--beige-fonce);flex-shrink:0}.welcome-back-content p{margin:0;font-size:1.1rem;font-weight:600;color:var(--bleu-marine);line-height:1.5}.favorite-room-proposal{animation:welcomeSlideIn .5s ease-out}.favorite-room-card{display:flex;gap:1.5rem;align-items:center;background:linear-gradient(135deg,#f8f4ef,#ede6db);border:2px solid var(--beige-fonce);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.favorite-room-photo{flex-shrink:0;width:160px;height:120px;border-radius:var(--border-radius);overflow:hidden}.favorite-room-photo img{width:100%;height:100%;object-fit:cover}.favorite-room-info{flex:1}.favorite-room-message{font-size:1.15rem;color:var(--bleu-marine);margin:0 0 .5rem;line-height:1.5}.favorite-room-message strong{color:var(--beige-fonce)}.favorite-room-details{font-size:.9rem;color:#666;margin:0}.favorite-room-actions{display:flex;gap:1rem;margin-bottom:1rem}.favorite-room-accepted-info{background:linear-gradient(135deg,#f0faf5,#e8f5e9);border:2px solid #4caf50;border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.favorite-room-accepted-info p{margin:0 0 .5rem;color:var(--bleu-marine);font-size:1.05rem;line-height:1.5}.favorite-room-accepted-info p:last-child{margin-bottom:0}.favorite-room-accepted-info strong{color:#2e7d32}.recap-action-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.recap-action-btn{display:block;width:100%;padding:1rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-family:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;text-align:center}.recap-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.recap-action-btn:active:not(:disabled){transform:translateY(0)}.recap-action-navy{background-color:var(--bleu-marine, #0A1929);color:#fff;font-weight:500}.recap-action-validate{background-color:#16a34a;color:#fff;font-weight:700;font-size:1.05rem;padding:1.1rem 1.5rem}.recap-action-validate:disabled{opacity:.6;cursor:not-allowed}.contact-organizer-modal{max-width:520px}.contact-success-message{padding:1.25rem;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;font-weight:500;text-align:center;margin-bottom:1rem}@media(max-width:768px){.favorite-room-card{flex-direction:column}.favorite-room-photo{width:100%;height:200px}.favorite-room-actions{flex-direction:column}}.mon-agenda{max-width:1400px;margin:0 auto;padding:20px}.agenda-header{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px}.agenda-header h1{margin:0 0 10px;font-size:2rem;color:#333}.agenda-header p{margin:0;color:#666;font-size:1.1rem}.agenda-filters{display:flex;gap:15px;flex-wrap:wrap;margin-top:20px}.filter-humeur{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f5f5f5;border:2px solid transparent;border-radius:20px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.filter-humeur:hover{background:#e8e8e8}.filter-humeur.active{background:#e3f2fd;border-color:#2196f3;color:#1976d2}.filter-humeur input[type=checkbox]{margin:0}.agenda-main{display:grid;grid-template-columns:300px 1fr;gap:20px}.agenda-sidebar{display:flex;flex-direction:column;gap:20px}.agenda-actions-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.agenda-actions-card h3{margin:0 0 15px;font-size:1.1rem;color:#333}.agenda-actions-card button{width:100%;margin-bottom:10px}.agenda-activites-disponibles{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-y:auto;max-height:calc(100vh - 400px)}.agenda-activites-disponibles h3{margin:0 0 15px;font-size:1.1rem;color:#333;position:sticky;top:0;background:#fff;padding-bottom:10px;border-bottom:1px solid #e0e0e0}.activite-optionnelle-card{padding:15px;margin-bottom:12px;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;cursor:grab;transition:all .2s}.activite-optionnelle-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.activite-optionnelle-card:active{cursor:grabbing;opacity:.8}.activite-optionnelle-card h4{margin:0 0 8px;font-size:1rem;color:#333}.activite-optionnelle-card p{margin:0 0 8px;font-size:.9rem;color:#666}.activite-optionnelle-humeurs{display:flex;gap:6px;flex-wrap:wrap}.agenda-timeline{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.timeline-day{border-bottom:1px solid #e0e0e0;padding-bottom:30px;margin-bottom:30px}.timeline-day:last-child{border-bottom:none;margin-bottom:0}.timeline-day-header{display:flex;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #2196f3}.timeline-day-date{font-size:2rem;font-weight:700;color:#2196f3;min-width:60px}.timeline-day-info{flex:1}.timeline-day-name{font-size:1.3rem;font-weight:600;color:#333;margin:0}.timeline-day-subtitle{font-size:.9rem;color:#666;margin:4px 0 0}.timeline-creneaux{display:flex;flex-direction:column;gap:15px}.timeline-creneau{display:flex;gap:20px;align-items:flex-start;padding:15px;border-radius:8px;transition:all .2s}.timeline-creneau.incontournable{background:#fff3e0;border-left:4px solid #ff9800}.timeline-creneau.optionnel{background:#e3f2fd;border-left:4px solid #2196f3}.timeline-creneau.inscrit{background:#e8f5e9;border-left:4px solid #4caf50}.timeline-creneau.drop-zone{background:#f5f5f5;border:2px dashed #bdbdbd;min-height:80px;display:flex;align-items:center;justify-content:center;color:#999;cursor:pointer}.timeline-creneau.drag-over{background:#e3f2fd;border-color:#2196f3}.timeline-time{min-width:100px;font-weight:600;color:#555;padding-top:2px}.timeline-content{flex:1}.timeline-content h4{margin:0 0 8px;font-size:1.1rem;color:#333}.timeline-content p{margin:0 0 8px;font-size:.9rem;color:#666}.timeline-badge{display:inline-block;padding:4px 12px;background:#ff9800;color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.timeline-badge.inscrit{background:#4caf50}.timeline-actions{display:flex;gap:10px}.btn-small{padding:6px 12px;font-size:.85rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-small.btn-danger{background:#f44336;color:#fff}.btn-small.btn-danger:hover{background:#d32f2f}.agenda-footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.agenda-footer button{flex:1;padding:15px 30px;font-size:1.1rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s;font-weight:600}.btn-primary{background:#2196f3;color:#fff}.btn-primary:hover{background:#1976d2}.btn-success{background:#4caf50;color:#fff}.btn-success:hover{background:#45a049}.empty-state{padding:60px 20px;text-align:center;color:#999}@media(max-width:992px){.agenda-main{grid-template-columns:1fr}.agenda-sidebar{order:2}.agenda-timeline{order:1}}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--beige) 0%,var(--beige-fonce) 100%)}.login-container{width:100%;max-width:500px;padding:2rem}.login-card{padding:3rem;text-align:center}.login-card h1{margin-bottom:1rem}.login-card p{color:#666;margin-bottom:2rem}.login-card form{text-align:left}.login-card .form-group{margin-bottom:1.5rem}.login-card .form-group label{display:block;font-weight:600;color:var(--bleu-marine);margin-bottom:.5rem}.login-card button{width:100%;margin-top:1rem}.menu-render-controls{display:flex;gap:2rem;flex-wrap:wrap;align-items:flex-end;margin-bottom:2rem;padding:1.5rem;background-color:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.menu-render-control-group{display:flex;flex-direction:column}.menu-render-preview{display:flex;justify-content:center;padding:2rem;background-color:#0000004d;border-radius:8px;min-height:400px}.menu-render-image{max-width:100%;max-height:800px;border-radius:4px;box-shadow:0 8px 32px #00000080}.menu-render-placeholder{display:flex;align-items:center;justify-content:center;color:#fff6;font-size:1.1rem;font-style:italic}.menu-display-mode-section{margin-bottom:1.5rem;padding:1rem 1.5rem;background-color:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}@media(max-width:768px){.menu-render-controls{flex-direction:column;gap:1rem}.menu-render-preview{padding:1rem}.menu-render-image{max-height:500px}}.social-preview-modal{background:#fff;border-radius:12px;width:95%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0006}.social-preview-header{background:var(--bleu-marine);color:#fff;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start}.social-preview-header h3{margin:0;font-size:1.15rem;font-family:var(--font-titres);color:var(--beige)}.social-preview-subtitle{margin:.25rem 0 0;font-size:.82rem;opacity:.7}.social-preview-close{background:none;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:.9rem;font-weight:700;width:32px;height:32px;border-radius:50%;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.social-preview-close:hover{background:#ffffff26;border-color:#fff}.social-preview-disclaimer{padding:.85rem 1.5rem;background:#fef3c7;border-bottom:1px solid #f59e0b;font-size:.82rem;color:#92400e;line-height:1.5}.social-preview-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.social-preview-empty{padding:3rem 1rem;text-align:center;color:#6b7280;font-size:.95rem}.social-preview-group{margin-bottom:1.5rem}.social-preview-group-title{margin:0 0 .75rem;font-size:.9rem;color:#10b981;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.social-preview-group-title-existing{color:#f59e0b}.social-preview-field{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .85rem;border:1.5px solid #e5e7eb;border-radius:8px;margin-bottom:.5rem;cursor:pointer;transition:all .15s;background:#fff}.social-preview-field:hover{border-color:var(--bleu-marine);background:#f8f9fa}.social-preview-field input[type=checkbox]{margin-top:.2rem;width:18px;height:18px;flex-shrink:0;accent-color:var(--bleu-marine);cursor:pointer}.social-preview-field-content{flex:1;display:flex;flex-direction:column;gap:.2rem;min-width:0}.social-preview-field-label{font-size:.82rem;font-weight:600;color:var(--bleu-marine)}.social-preview-field-value{font-size:.88rem;color:#1f2937;line-height:1.4}.social-preview-field-value-current{font-size:.82rem;color:#6b7280;font-style:italic}.social-preview-field-value-new{font-size:.88rem;color:#059669;font-weight:500}.social-preview-badge{font-size:.68rem;font-weight:700;padding:.2rem .5rem;border-radius:10px;white-space:nowrap;flex-shrink:0;margin-top:.15rem;text-transform:uppercase;letter-spacing:.03em}.social-preview-badge-new{background:#d1fae5;color:#065f46}.social-preview-badge-existing{background:#fef3c7;color:#92400e}.social-preview-sources{padding:.85rem 1.5rem;background:#f3f4f6;border-top:1px solid #e5e7eb}.social-preview-sources h4{margin:0 0 .5rem;font-size:.82rem;color:#4b5563;text-transform:uppercase;letter-spacing:.04em}.social-preview-sources ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}.social-preview-sources li a{font-size:.78rem;color:var(--bleu-marine);text-decoration:none;background:#fff;padding:.25rem .6rem;border-radius:4px;border:1px solid #d1d5db;display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all .15s}.social-preview-sources li a:hover{border-color:var(--bleu-marine);background:var(--beige)}.social-preview-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:2px solid #e5e7eb;background:#f9fafb}.btn-apply-social{padding:.65rem 1.5rem;background:#10b981;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.btn-apply-social:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-apply-social:disabled{opacity:.5;cursor:not-allowed}.btn-social-search{padding:.4rem .85rem;background:#ffffff1f;border:1.5px solid rgba(255,255,255,.35);border-radius:6px;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:.4rem}.btn-social-search:hover:not(:disabled){background:#ffffff38;border-color:#fff}.btn-social-search:disabled{opacity:.5;cursor:not-allowed}.social-search-icon{font-size:.9rem;line-height:1}.social-ai-indicator{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--beige);opacity:.7;margin-left:.25rem}.social-ai-dot{width:6px;height:6px;border-radius:50%;background:#10b981;animation:socialPulse 1.5s infinite}@keyframes socialPulse{0%,to{opacity:.4}50%{opacity:1}}@media(max-width:768px){.social-preview-modal{width:100%;max-width:100%;max-height:100vh;border-radius:0}.social-preview-header,.social-preview-body{padding:1rem}.social-preview-footer{padding:.85rem 1rem}.social-preview-sources{padding:.75rem 1rem}}.cardex-modal{background:#fff;border-radius:12px;width:95%;max-width:1100px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0006;transition:max-width .3s ease}.cardex-modal-wide{max-width:1400px}.cardex-header{background:var(--bleu-marine);color:#fff;padding:1.5rem 2rem;border-bottom:3px solid var(--beige)}.cardex-header-top{display:flex;justify-content:space-between;align-items:flex-start}.cardex-header h2{margin:0;font-size:1.5rem;color:var(--beige);letter-spacing:.15em;font-family:var(--font-titres)}.cardex-subtitle{margin:.25rem 0 0;font-size:.85rem;opacity:.7;font-style:italic}.cardex-close-btn{background:none;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:1rem;font-weight:700;width:36px;height:36px;border-radius:50%;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.cardex-close-btn:hover{background:#ffffff26;border-color:#fff}.cardex-guest-info{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.15)}.cardex-guest-name{font-size:1.2rem;font-weight:700;color:#fff}.cardex-header-actions{display:flex;align-items:center;gap:.75rem}.btn-prefill{padding:.4rem 1rem;background:#ffffff1f;border:1.5px solid rgba(255,255,255,.35);border-radius:6px;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-prefill:hover:not(:disabled){background:#ffffff38;border-color:#fff}.btn-prefill:disabled{opacity:.5;cursor:not-allowed}.cardex-progress{font-size:.8rem;background:#ffffff1a;padding:.35rem .75rem;border-radius:12px;color:var(--beige);white-space:nowrap}.cardex-loading{padding:4rem;text-align:center;color:#6b7280;font-size:1.1rem}.cardex-body{display:flex;flex:1;overflow:hidden;min-height:0}.cardex-nav{width:260px;min-width:260px;background:#f8f9fa;border-right:1px solid #e5e7eb;overflow-y:auto;padding:.5rem 0}.cardex-nav-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.65rem 1rem;border:none;background:none;cursor:pointer;text-align:left;transition:all .15s;font-size:.8rem;color:#4b5563;border-left:3px solid transparent}.cardex-nav-item:hover{background:#e5e7eb}.cardex-nav-item.active{background:#fff;border-left-color:var(--bleu-marine);color:var(--bleu-marine);font-weight:600}.cardex-nav-item.has-data .nav-number{background:#10b981;color:#fff}.nav-number{width:24px;height:24px;border-radius:50%;background:#d1d5db;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}.nav-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-badge{background:var(--beige);color:var(--bleu-marine);padding:.15rem .4rem;border-radius:8px;font-size:.65rem;font-weight:700;flex-shrink:0}.cardex-content{flex:1;overflow-y:auto;padding:2rem}.cardex-section-title{margin:0 0 1.5rem;font-size:1.3rem;color:var(--bleu-marine);border-bottom:2px solid var(--beige);padding-bottom:.75rem;font-family:var(--font-titres)}.cardex-fields{display:flex;flex-direction:column;gap:1.25rem}.cardex-field label{display:block;font-weight:600;color:var(--bleu-marine);margin-bottom:.4rem;font-size:.9rem}.cardex-field input[type=text],.cardex-field input[type=date],.cardex-field textarea{width:100%;padding:.7rem .85rem;border:1.5px solid #d1d5db;border-radius:6px;font-size:.9rem;color:#1f2937;background:#fff;transition:border-color .2s,box-shadow .2s;font-family:var(--font-texte)}.cardex-field input[type=text]:focus,.cardex-field input[type=date]:focus,.cardex-field textarea:focus{outline:none;border-color:var(--bleu-marine);box-shadow:0 0 0 3px #0a19291a}.cardex-field textarea{resize:vertical;min-height:70px}.cardex-nav-buttons{display:flex;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.cardex-spacer{flex:1}.btn-nav-prev,.btn-nav-next{padding:.6rem 1.25rem;border:2px solid var(--beige-fonce);border-radius:6px;background:#fff;color:var(--bleu-marine);font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-nav-prev:hover,.btn-nav-next:hover{background:var(--beige);border-color:var(--bleu-marine)}.cardex-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.25rem 2rem;border-top:2px solid #e5e7eb;background:#f9fafb}.btn-save-cardex{padding:.75rem 2rem;background:var(--bleu-marine);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.btn-save-cardex:hover:not(:disabled){background:var(--bleu-marine-clair);transform:translateY(-1px);box-shadow:0 4px 12px #0a19294d}.btn-save-cardex:disabled{opacity:.6;cursor:not-allowed}.btn-save-cardex.success{background:#10b981}.historique-table-wrapper{overflow-x:auto;margin-bottom:1.5rem;border:2px solid var(--beige-fonce);border-radius:10px;background:var(--beige)}.historique-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:1000px}.historique-table thead{background:var(--bleu-marine);color:var(--beige);position:sticky;top:0;z-index:1}.historique-table th{padding:.75rem .65rem;text-align:left;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-right:1px solid rgba(255,255,255,.12)}.historique-table th:last-child{border-right:none}.historique-th-sejour{min-width:140px;width:140px}.historique-th-dates{min-width:145px;width:145px}.historique-table tbody tr{border-bottom:1px solid var(--beige-fonce);transition:background .15s}.historique-table tbody tr:last-child{border-bottom:none}.historique-table tbody tr:nth-child(odd){background:var(--beige)}.historique-table tbody tr:nth-child(2n){background:#e8dcc8}.historique-table tbody tr:hover{background:#ded0b4}.historique-td-sejour{padding:.65rem;vertical-align:top}.historique-code{display:block;font-weight:800;color:var(--bleu-marine);font-size:.85rem;margin-bottom:3px;letter-spacing:.02em}.historique-nom{display:block;font-size:.78rem;color:var(--bleu-marine);opacity:.65;line-height:1.3}.historique-td-dates{padding:.65rem;vertical-align:top;font-size:.82rem;color:var(--bleu-marine);white-space:nowrap;font-weight:500}.historique-td-editable{padding:.35rem;vertical-align:top}.historique-cell-input{width:100%;padding:.5rem .55rem;border:1.5px solid transparent;border-radius:5px;font-size:.84rem;font-family:var(--font-texte);color:var(--bleu-marine);background:transparent;resize:vertical;min-height:56px;transition:border-color .15s,background .15s,box-shadow .15s;line-height:1.45}.historique-cell-input:hover{background:#fff9;border-color:var(--beige-fonce)}.historique-cell-input:focus{outline:none;background:#ffffffd9;border-color:var(--bleu-marine);box-shadow:0 0 0 2px #0a19291a}.historique-extra-fields{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.25rem}.historique-loading{padding:2.5rem;text-align:center;color:var(--bleu-marine);opacity:.6;font-size:1rem}.historique-empty{padding:2.5rem;text-align:center;color:var(--bleu-marine);opacity:.55;background:var(--beige);border-radius:10px;border:2px dashed var(--beige-fonce);margin-bottom:1.5rem}.historique-empty p{margin:.3rem 0;font-size:.92rem}.social-search-error{padding:.75rem 2rem;background:#fef2f2;border-top:1px solid #fecaca;color:#991b1b;font-size:.85rem;font-weight:500}@media(max-width:768px){.cardex-modal{width:100%;max-width:100%;max-height:100vh;border-radius:0}.cardex-body{flex-direction:column}.cardex-nav{width:100%;min-width:100%;max-height:140px;border-right:none;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:.5rem;gap:.25rem}.cardex-nav-item{flex-direction:column;padding:.5rem;min-width:70px;text-align:center;border-left:none;border-bottom:3px solid transparent;font-size:.7rem;gap:.25rem}.cardex-nav-item.active{border-bottom-color:var(--bleu-marine);border-left-color:transparent}.nav-label{white-space:normal;font-size:.65rem;line-height:1.2}.cardex-content{padding:1.25rem}.cardex-header,.cardex-footer{padding:1rem 1.25rem}.cardex-guest-info{flex-direction:column;gap:.5rem;align-items:flex-start}.cardex-modal-wide{max-width:100%}.historique-table{min-width:800px;font-size:.82rem}.historique-table th{padding:.6rem .45rem;font-size:.72rem}.historique-cell-input{min-height:48px;font-size:.8rem;padding:.4rem}.historique-td-sejour{padding:.5rem}.historique-td-dates{padding:.5rem;font-size:.78rem}}.tournament-setup-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.tournament-setup-modal{background:var(--blanc, #fff);border-radius:12px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.tournament-setup-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--beige-fonce, #e8e0d4)}.tournament-setup-header h2{margin:0;color:var(--bleu-marine, #1a2a4a);font-size:1.3rem}.tournament-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#999;padding:.25rem;line-height:1;transition:color .2s}.tournament-close-btn:hover{color:#333}.tournament-setup-body{padding:2rem}.tournament-form-section{margin-bottom:2rem}.tournament-form-section h3{color:var(--bleu-marine, #1a2a4a);font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--beige-fonce, #e8e0d4)}.tournament-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.tournament-form-group{display:flex;flex-direction:column;gap:.4rem}.tournament-form-group label{font-weight:600;font-size:.9rem;color:var(--bleu-marine, #1a2a4a)}.tournament-form-group input,.tournament-form-group select{padding:.6rem .8rem;border:1.5px solid #d0d0d0;border-radius:8px;font-size:.95rem;transition:border-color .2s}.tournament-form-group input:focus,.tournament-form-group select:focus{outline:none;border-color:var(--bleu-marine, #1a2a4a)}.tournament-form-group small{color:#888;font-size:.8rem}.tournament-format-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.tournament-format-card{border:2px solid #e0e0e0;border-radius:10px;padding:1rem;cursor:pointer;text-align:center;transition:all .2s;background:#fff}.tournament-format-card:hover{border-color:var(--bleu-marine, #1a2a4a);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.tournament-format-card.selected{border-color:var(--bleu-marine, #1a2a4a);background:#1a2a4a0d}.tournament-format-icon{font-size:1.8rem;margin-bottom:.5rem}.tournament-format-card h4{margin:0 0 .25rem;font-size:.9rem;color:var(--bleu-marine, #1a2a4a)}.tournament-format-card p{margin:0;font-size:.75rem;color:#888}.tournament-alert{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;color:#664d03}.tournament-alert-icon{font-size:1.2rem;flex-shrink:0}.tournament-equipes-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.tournament-equipe-card{background:var(--gris-clair, #f5f5f5);border:1px solid #e0e0e0;border-radius:8px;padding:.75rem 1rem}.tournament-equipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.tournament-equipe-header strong{color:var(--bleu-marine, #1a2a4a);font-size:.95rem}.tournament-equipe-name-input{padding:.3rem .5rem;border:1px solid #d0d0d0;border-radius:4px;font-size:.85rem;width:180px}.tournament-equipe-joueurs{display:flex;flex-wrap:wrap;gap:.4rem}.tournament-joueur-tag{background:#fff;border:1px solid #d0d0d0;border-radius:20px;padding:.25rem .75rem;font-size:.85rem;display:flex;align-items:center;gap:.4rem}.tournament-joueur-tag .remove-btn{background:none;border:none;cursor:pointer;color:#dc3545;font-size:1rem;padding:0;line-height:1}.tournament-joueur-select{padding:.3rem .5rem;border:1px solid #d0d0d0;border-radius:4px;font-size:.85rem;margin-top:.4rem}.tournament-setup-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;border-top:2px solid var(--beige-fonce, #e8e0d4)}.tournament-btn{padding:.6rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.tournament-btn-secondary{background:#e0e0e0;color:#333}.tournament-btn-secondary:hover{background:#d0d0d0}.tournament-btn-primary{background:var(--bleu-marine, #1a2a4a);color:#fff}.tournament-btn-primary:hover{background:var(--bleu-canard, #1a5f7a);transform:translateY(-1px)}.tournament-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.tournament-btn-danger{background:#dc3545;color:#fff}.tournament-btn-danger:hover{background:#c82333}.tournament-btn-success{background:#28a745;color:#fff}.tournament-btn-success:hover{background:#218838}.tournament-mode-toggle{display:flex;gap:0;border:2px solid var(--bleu-marine, #1a2a4a);border-radius:8px;overflow:hidden;margin-bottom:1rem}.tournament-mode-toggle button{flex:1;padding:.6rem 1rem;border:none;background:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;color:var(--bleu-marine, #1a2a4a)}.tournament-mode-toggle button.active{background:var(--bleu-marine, #1a2a4a);color:#fff}@media(max-width:768px){.tournament-setup-modal{max-width:100%;margin:.5rem}.tournament-form-row,.tournament-format-cards{grid-template-columns:1fr}.tournament-setup-header,.tournament-setup-body,.tournament-setup-footer{padding:1rem}}.synthese-inscriptions{width:100%}.synthese-loading{padding:2rem;text-align:center;color:var(--bleu-marine);font-size:1.1rem}.synthese-error{padding:2rem;text-align:center;background:var(--blanc);border-radius:var(--border-radius);box-shadow:var(--box-shadow);border-left:4px solid #dc3545}.synthese-error p{color:#dc3545;margin-bottom:1.5rem;font-size:1.1rem;font-weight:500}.btn-retry{background-color:var(--bleu-marine);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:all .2s}.btn-retry:hover{background-color:var(--bleu-canard);transform:translateY(-2px)}.synthese-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.synthese-header h2{margin:0;color:#fff}.btn-export{background-color:var(--bleu-marine);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{background-color:var(--bleu-canard);transform:translateY(-2px)}.synthese-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.synthese-stat-card{background:var(--blanc);text-align:center;padding:2rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.synthese-stat-card h3{font-size:1rem;color:var(--bleu-marine);margin-bottom:1rem}.synthese-stat-number{font-size:3rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres);margin:0}.synthese-no-data{background:var(--blanc);padding:2rem;text-align:center;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.synthese-no-data p{color:var(--bleu-marine);margin:0}.synthese-section{margin-bottom:3rem}.synthese-section h3{color:#fff;margin-bottom:1.5rem;font-size:1.5rem;border-bottom:2px solid var(--beige-fonce);padding-bottom:.5rem}.synthese-creneaux{display:flex;flex-direction:column;gap:1.5rem}.synthese-creneau-card{background:var(--blanc);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.synthese-creneau-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--beige-fonce)}.synthese-creneau-header h4{margin:0;color:var(--bleu-marine);font-size:1.2rem;text-transform:capitalize}.synthese-creneau-activites{display:flex;flex-direction:column;gap:1rem}.synthese-activite-item{margin-bottom:0;padding:1rem;background-color:var(--gris-clair);border-radius:var(--border-radius);border:1px solid var(--beige-fonce)}.synthese-activite-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.synthese-activite-header strong{font-size:1.1rem;color:var(--bleu-marine)}.synthese-participant-count{background-color:var(--bleu-marine);color:var(--blanc);padding:.25rem .75rem;border-radius:15px;font-size:.9rem;font-weight:600}.synthese-participants-section{margin:.75rem 0}.synthese-section-title{display:block;font-size:.9rem;color:var(--gris-clair);margin-bottom:.5rem}.synthese-waitlist-section{border-top:1px solid var(--gris-fonce);padding-top:.75rem;margin-top:.75rem}.synthese-capacity-info{background-color:#3498db33;padding:.25rem .5rem;border-radius:4px;font-size:.9rem;font-weight:600;color:#3498db;margin-right:.5rem}.synthese-participants-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.synthese-participants-list.synthese-waitlist{grid-template-columns:1fr}.synthese-participants-list li{padding:.5rem .75rem;background-color:var(--blanc);border-radius:var(--border-radius);font-size:.95rem;color:var(--bleu-marine);border-left:3px solid var(--beige-fonce)}.synthese-participant-confirme{background-color:#2ecc7126;border-left:3px solid #2ecc71}.synthese-participant-attente{background-color:#f1c40f26;border-left:3px solid #f1c40f;display:flex;align-items:center;gap:.5rem}.waitlist-order{font-weight:700;color:#f39c12;min-width:1.5rem}.synthese-activites-sans-creneaux{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.synthese-activite-card{background:var(--blanc);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.synthese-tournoi-section{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed #ccc;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.synthese-tournoi-existing{display:flex;flex-wrap:wrap;gap:.4rem}.synthese-tournoi-badge{display:inline-block;padding:.3rem .7rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:all .2s}.synthese-tournoi-badge:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.synthese-tournoi-badge.brouillon{background:#e0e0e0;color:#555}.synthese-tournoi-badge.publie{background:#d4edda;color:#155724}.synthese-tournoi-badge.en_cours{background:#cce5ff;color:#004085}.synthese-tournoi-badge.termine{background:#e2e3e5;color:#383d41}.synthese-tournoi-btn{background:var(--bleu-marine, #1a2a4a);color:#fff;border:none;padding:.35rem .9rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.synthese-tournoi-btn:hover{background:var(--bleu-canard, #1a5f7a);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}@media(max-width:768px){.synthese-header{flex-direction:column;align-items:flex-start;gap:1rem}.synthese-stats-grid,.synthese-participants-list,.synthese-activites-sans-creneaux{grid-template-columns:1fr}.synthese-activite-header{flex-direction:column;align-items:flex-start}}.gouvernante-section{padding:2rem 0}.extra-bedding-badge{display:inline-block;margin-top:4px;padding:2px 8px;background:#fff3e0;color:#e65100;border-radius:10px;font-size:.72rem;font-weight:600;border:1px solid #ffcc80}.gouvernante-header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.gouvernante-buttons{display:flex;gap:.5rem;align-items:center}.gouvernante-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.85rem;color:#fffc;padding:6px 12px;border-radius:6px;background-color:#ffffff14;border:1px solid rgba(255,255,255,.15);transition:background-color .2s;white-space:nowrap}.gouvernante-toggle:hover{background-color:#ffffff1f}.gouvernante-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#10b981}.gouvernante-table-wrapper{overflow-x:auto;border-radius:8px;background-color:var(--bleu-marine)}.gouvernante-table{width:100%;border-collapse:collapse;color:#fff;font-size:.9rem}.gouvernante-table th,.gouvernante-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:top}.gouvernante-table th{background-color:#0000004d;font-weight:600;white-space:nowrap;position:sticky;top:0}.gouvernante-table tbody tr:hover{background-color:#ffffff0d}.gouvernante-td-chambre{min-width:120px}.gouvernante-td-center{text-align:center}.gouvernante-td-checklist{min-width:200px}.checklist-progress{margin-bottom:6px}.progress-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600;background-color:#ffffff26;color:#fffc}.progress-badge.complete{background-color:#10b981;color:#fff}.checklist-items{display:flex;flex-direction:column;gap:4px}.checklist-item{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.85rem;line-height:1.3}.checklist-item input[type=checkbox]{width:16px;height:16px;cursor:pointer;flex-shrink:0;accent-color:#10b981}.checklist-label{white-space:nowrap}.checklist-item-group{width:100%}.checklist-room-detail{margin:0 0 4px 22px;font-size:.7rem;line-height:1.3;color:#ffffff73;word-break:break-word;font-style:italic}.checklist-detail{font-size:.75rem;color:#fff9;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gouvernante-td-invite{min-width:130px;white-space:nowrap}.gouvernante-td-personnalisation{min-width:280px}.personnalisation-cardex-fields{margin-top:8px;padding-top:6px;border-top:1px dashed rgba(255,255,255,.12);display:flex;flex-direction:column;gap:3px}.personnalisation-cardex-item{display:flex;gap:6px;font-size:.78rem;line-height:1.35}.personnalisation-cardex-label{font-weight:600;color:#ffffff80;white-space:nowrap;flex-shrink:0}.personnalisation-cardex-label:after{content:":"}.personnalisation-cardex-value{color:#ffffffd9;word-break:break-word}.guest-cardex-section{margin-top:2.5rem;width:100%}.guest-cardex-title{font-size:1.1rem;font-weight:600;color:#fff;margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.15)}.guest-cardex-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem;width:100%}.guest-cardex-header{display:flex;align-items:center;gap:8px;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.guest-cardex-name{font-weight:700;font-size:1rem;color:#fff}.guest-cardex-separator{color:#fff6}.guest-cardex-room{font-size:.9rem;color:#ffffffb3}.guest-cardex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px 24px}.guest-cardex-field{display:flex;gap:6px;font-size:.82rem;line-height:1.4;padding:2px 0}.guest-cardex-field-label{font-weight:600;color:#ffffff8c;white-space:nowrap;flex-shrink:0}.guest-cardex-field-label:after{content:":"}.guest-cardex-field-value{color:#ffffffe6;word-break:break-word}.guest-cardex-empty{font-size:.82rem;color:#ffffff59;font-style:italic;margin:0}@media print{body *{visibility:hidden}.gouvernante-section,.gouvernante-section *{visibility:visible}.gouvernante-section{position:absolute;left:0;top:0;width:100%;padding:1rem}.gouvernante-buttons{display:none!important}.gouvernante-table{color:#000;font-size:.75rem}.gouvernante-table th,.gouvernante-table td{border:1px solid #333;color:#000;padding:4px 6px}.gouvernante-table th{background-color:#e5e7eb}.progress-badge{background-color:#e5e7eb;color:#333}.progress-badge.complete{background-color:#10b981;color:#fff}.checklist-room-detail{color:#444;font-size:.65rem}.checklist-detail{color:#555;max-width:none;white-space:normal}.personnalisation-cardex-fields{border-top-color:#ccc}.personnalisation-cardex-label{color:#555}.personnalisation-cardex-value{color:#000}.personnalisation-cardex-item{font-size:.68rem}.gouvernante-table-wrapper{background-color:#fff}.section-header h2{color:#000}.guest-cardex-section{margin-top:1.5rem;page-break-before:auto}.guest-cardex-title{color:#000;font-size:1rem;border-bottom-color:#333}.guest-cardex-card{background-color:#f9fafb;border:1px solid #ccc;padding:8px 12px;margin-bottom:8px;page-break-inside:avoid}.guest-cardex-header{border-bottom-color:#ddd;margin-bottom:6px;padding-bottom:4px}.guest-cardex-name{color:#000;font-size:.85rem}.guest-cardex-separator{color:#666}.guest-cardex-room{color:#333;font-size:.8rem}.guest-cardex-grid{grid-template-columns:repeat(3,1fr);gap:3px 16px}.guest-cardex-field{font-size:.72rem}.guest-cardex-field-label{color:#555}.guest-cardex-field-value{color:#000}.guest-cardex-empty{color:#999;font-size:.72rem}}.alertes-menage-section{padding:2rem 0}.alertes-menage-section .section-header{margin-bottom:2rem}.alertes-menage-section .section-header h2{color:#fff;margin:0;font-size:1.5rem}.alert{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;animation:fadeIn .3s ease}.alert p{margin:0;font-size:.95rem}.alert button{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:0 .5rem;opacity:.7}.alert-error{background-color:#fee2e2;border-left:4px solid #dc2626;color:#991b1b}.alert-error button{color:#991b1b}.alert-success{background-color:#dcfce7;border-left:4px solid #16a34a;color:#166534}.alert-success button{color:#166534}.gouvernante-email-field{margin-bottom:1.5rem}.gouvernante-email-field label{display:block;font-weight:700;color:var(--bleu-marine);margin-bottom:.5rem;font-size:.95rem}.email-input-row{display:flex;gap:.75rem;align-items:center}.email-input-row input{flex:1;padding:.7rem 1rem;border:2px solid #d1d5db;border-radius:6px;font-size:.95rem;color:var(--bleu-marine)}.email-input-row input:focus{outline:none;border-color:var(--bleu-marine)}.gouvernante-config-section{margin-bottom:1.5rem}.gouvernante-config-section h3{margin:0 0 .5rem;color:var(--bleu-marine);font-size:1.15rem}.perimetre-checkboxes{display:flex;flex-direction:column;gap:.75rem}.perimetre-item{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.perimetre-item:hover{border-color:var(--bleu-marine);background:#f8fafc}.perimetre-item input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer;accent-color:var(--bleu-marine);flex-shrink:0}.perimetre-item div{display:flex;flex-direction:column;gap:2px}.perimetre-item strong{color:var(--bleu-marine);font-size:.95rem}.perimetre-item span{color:#6b7280;font-size:.82rem;line-height:1.4}.jours-actions{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem}.jours-count{font-size:.9rem;color:var(--bleu-marine);font-weight:600;margin-left:auto}.jours-passage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.jour-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s;background:#fff;font-size:.88rem}.jour-item:hover{border-color:var(--bleu-marine)}.jour-item.checked{border-color:#16a34a;background:#f0fdf4}.jour-item input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#16a34a}.jour-label{color:var(--bleu-marine);text-transform:capitalize;font-weight:500}.gouvernante-generate-section{margin-bottom:2rem}.gouvernante-generate-section h3{margin:0 0 .5rem;color:var(--bleu-marine);font-size:1.15rem}.daily-emails-stats{margin-bottom:1.5rem}.stat-item{text-align:center;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.stat-value{font-size:2rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres)}.stat-label{font-size:.8rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.actions-row{display:flex;gap:.75rem;margin-bottom:1rem}.btn-primary{background-color:var(--bleu-marine);color:#fff;padding:.65rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:#e5e7eb;color:var(--bleu-marine);padding:.65rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-secondary:hover:not(:disabled){background-color:#d1d5db}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.generation-progress{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f0f9ff;border-radius:6px;border-left:3px solid #0ea5e9;color:#0c4a6e;font-size:.9rem}.spinner{width:20px;height:20px;border:3px solid #e5e7eb;border-top-color:var(--bleu-marine);border-radius:50%;animation:spin .7s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.todolists-list-section{margin-bottom:2.5rem}.todolists-list-section h3{color:#fff;font-size:1.25rem;margin-bottom:1.25rem}.daily-emails-list{display:flex;flex-direction:column;gap:.75rem}.daily-email-card{background:#fff;border-radius:8px;overflow:hidden;border:2px solid #e5e7eb;transition:all .2s}.daily-email-card.today{border-color:#0ea5e9;box-shadow:0 0 0 1px #0ea5e9}.daily-email-card.past{opacity:.75}.daily-email-card.envoye{border-left:4px solid #16a34a}.daily-email-card.erreur{border-left:4px solid #dc2626}.daily-email-header:hover{background-color:#f8fafc}.date-text{font-weight:600;color:var(--bleu-marine);text-transform:capitalize;font-size:.95rem}.badge-today{padding:2px 8px;background:#0ea5e9;color:#fff;border-radius:10px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge-modified{padding:2px 8px;background:#f59e0b;color:#fff;border-radius:10px;font-size:.72rem;font-weight:600}.badge-preparation{padding:2px 8px;background:#16a34a;color:#fff;border-radius:10px;font-size:.72rem;font-weight:600}.daily-email-card.preparation-j1{border-left:4px solid #16a34a}.daily-email-card.preparation-j1 .daily-email-header{background:#16a34a14}.badge-danger{background-color:#dc2626;color:#fff}.email-count{font-size:.82rem;color:#6b7280}.expand-icon{font-size:.75rem;color:#9ca3af}.daily-email-body{padding:0 1.25rem 1.25rem;border-top:1px solid #e5e7eb}.daily-email-preview{white-space:pre-wrap;font-family:Courier New,monospace;font-size:.82rem;line-height:1.6;color:var(--bleu-marine);background:#f8fafc;padding:1.25rem;border-radius:6px;margin:1rem 0;max-height:500px;overflow-y:auto;border:1px solid #e5e7eb}.todolist-checkbox-view{font-family:Courier New,monospace;white-space:normal}.todolist-task-line{display:flex;align-items:baseline;gap:8px;padding:3px 0;cursor:pointer}.todolist-task-line input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--bleu-marine);cursor:pointer}.todolist-task-line span{flex:1;line-height:1.5}.todolist-task-line:has(input:checked) span{text-decoration:line-through;opacity:.5}.todolist-section-header{font-weight:700;margin-top:12px;font-size:.88rem;letter-spacing:.5px}.todolist-sub-header{font-weight:600;margin-top:6px}.todolist-spacer{height:4px}.todolist-line{line-height:1.5}.todolist-reminder-line{padding:4px 12px 4px 28px;font-style:italic;color:#0a1929;background:#ffffffd9;font-size:.85rem;line-height:1.6;border-radius:4px;margin:2px 0}.daily-email-textarea{width:100%;font-family:Courier New,monospace;font-size:.85rem;line-height:1.6;padding:1rem;border:2px solid var(--bleu-marine);border-radius:6px;resize:vertical;color:var(--bleu-marine);box-sizing:border-box}.daily-email-textarea:focus{outline:none}.daily-email-footer{margin-bottom:.5rem}.send-date{font-size:.82rem;color:#6b7280;font-style:italic}.daily-email-actions{display:flex;gap:.5rem;flex-wrap:wrap}.alertes-transition-section{margin-top:2.5rem}.alertes-transition-section h3{color:#fff;font-size:1.25rem;margin-bottom:.5rem}@media(max-width:768px){.email-input-row{flex-direction:column}.email-input-row input{width:100%}.jours-passage-grid{grid-template-columns:1fr}.daily-emails-stats .stats-grid{grid-template-columns:repeat(2,1fr)}.actions-row{flex-direction:column}.daily-email-header{flex-direction:column;align-items:flex-start;gap:.5rem}.daily-email-actions{flex-direction:column}.daily-email-actions button{width:100%;text-align:center}}.gestion-emails-quotidiens{padding:2rem 0}.gestion-emails-quotidiens h2{color:#fff;margin-bottom:.5rem}.gestion-emails-quotidiens .section-description{color:#ffffffa6;font-size:.95rem;margin-bottom:2rem;line-height:1.6}.daily-emails-stats{margin-bottom:2rem}.daily-emails-stats .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.daily-emails-stats .stat-item{text-align:center;padding:1rem}.daily-emails-stats .stat-value{font-size:2rem;font-weight:700;color:var(--bleu-marine);font-family:var(--font-titres)}.daily-emails-stats .stat-label{font-size:.85rem;color:#6b7280;margin-top:.25rem}.daily-emails-actions{margin-bottom:2rem;padding:1.5rem}.daily-emails-actions h3{margin:0 0 .5rem;color:var(--bleu-marine);font-size:1.1rem}.daily-emails-actions .form-help{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.actions-row{display:flex;gap:1rem;flex-wrap:wrap}.generation-progress{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding:1rem;background:#eff6ff;border-radius:6px;border-left:4px solid #3b82f6;color:#1e40af;font-size:.9rem}.spinner{width:20px;height:20px;border:3px solid #93c5fd;border-top-color:#1d4ed8;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.daily-emails-list{display:flex;flex-direction:column;gap:.5rem}.daily-email-card{background:#fff;border-radius:8px;overflow:hidden;transition:box-shadow .2s;border-left:4px solid #d1d5db}.daily-email-card:hover{box-shadow:0 2px 8px #00000014}.daily-email-card.brouillon{border-left-color:#6b7280}.daily-email-card.envoye{border-left-color:#10b981}.daily-email-card.erreur{border-left-color:#ef4444}.daily-email-card.today{border-left-color:#3b82f6;box-shadow:0 0 0 1px #93c5fd}.daily-email-card.past:not(.envoye){opacity:.7}.daily-email-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background-color .15s}.daily-email-header:hover{background-color:#f9fafb}.daily-email-date{display:flex;align-items:center;gap:.75rem}.date-text{font-weight:600;color:#1f2937;font-size:.95rem;text-transform:capitalize}.badge-today{display:inline-block;padding:.2rem .6rem;background:#dbeafe;color:#1e40af;border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.5px}.badge-modified{display:inline-block;padding:.2rem .6rem;background:#fef3c7;color:#92400e;border-radius:4px;font-size:.75rem;font-weight:600}.daily-email-meta{display:flex;align-items:center;gap:.75rem}.email-count{font-size:.85rem;color:#6b7280}.expand-icon{color:#9ca3af;font-size:.75rem}.daily-email-body{padding:0 1.25rem 1.25rem;border-top:1px solid #f3f4f6}.daily-email-preview{white-space:pre-wrap;word-wrap:break-word;font-family:Georgia,Times New Roman,Times,serif;font-size:.9rem;line-height:1.7;color:#374151;background:#f9fafb;padding:1.25rem;border-radius:6px;border:1px solid #e5e7eb;margin:1rem 0;max-height:400px;overflow-y:auto}.daily-email-footer{display:flex;gap:1.5rem;margin-bottom:.75rem}.generation-date,.send-date{font-size:.8rem;color:#9ca3af}.daily-email-actions{display:flex;gap:.75rem;padding-top:.5rem}.daily-email-editor{margin-top:1rem}.daily-email-textarea{width:100%;padding:1rem;font-family:Georgia,Times New Roman,Times,serif;font-size:.9rem;line-height:1.7;color:#374151;border:2px solid #d1d5db;border-radius:6px;resize:vertical;transition:border-color .2s;background:#fff}.daily-email-textarea:focus{outline:none;border-color:#3b82f6}.editor-actions{display:flex;gap:.75rem;margin-top:.75rem}.badge-danger{background-color:#ef4444;color:#fff}.alert{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-radius:6px;margin-bottom:1.5rem}.alert p{margin:0;font-size:.9rem}.alert button{background:none;border:none;cursor:pointer;font-size:1.1rem;padding:.25rem .5rem;opacity:.7}.alert button:hover{opacity:1}.alert-error{background:#fef2f2;border-left:4px solid #ef4444;color:#991b1b}.alert-success{background:#f0fdf4;border-left:4px solid #10b981;color:#065f46}@media(max-width:768px){.daily-emails-stats .stats-grid{grid-template-columns:repeat(2,1fr)}.daily-email-header{flex-direction:column;align-items:flex-start;gap:.5rem}.daily-email-meta{width:100%;justify-content:flex-start}.actions-row{flex-direction:column}.actions-row button{width:100%}.daily-email-actions{flex-direction:column}.daily-email-actions button{width:100%}.daily-email-footer{flex-direction:column;gap:.25rem}}.calendrier-admin{display:flex;flex-direction:column;height:calc(100vh - 200px);min-height:600px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.calendrier-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background:#fafafa}.calendrier-header h2{margin:0;font-size:1.5rem;color:#333}.calendrier-actions{display:flex;gap:10px}.calendrier-main{display:flex;flex:1;overflow:hidden}.calendrier-sidebar{width:280px;border-right:1px solid #e0e0e0;background:#fafafa;overflow-y:auto;padding:20px}.calendrier-sidebar h3{margin:0 0 15px;font-size:1.1rem;color:#333}.activites-toujours-ouvertes{margin-bottom:30px;padding:15px;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.activites-toujours-ouvertes h4{margin:0 0 10px;font-size:.9rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.activite-toujours-ouverte-item{padding:10px;margin-bottom:8px;background:#e8f5e9;border-radius:4px;font-size:.9rem;color:#2e7d32;border-left:3px solid #4caf50}.activite-toujours-ouverte-item strong{display:block;margin-bottom:4px}.activite-toujours-ouverte-item small{color:#558b2f}.activites-disponibles{display:flex;flex-direction:column;gap:10px}.activite-draggable{padding:12px;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:grab;transition:all .2s}.activite-draggable:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-2px)}.activite-draggable:active{cursor:grabbing;opacity:.8}.activite-draggable-title{font-weight:600;color:#333;margin-bottom:4px}.activite-draggable-meta{font-size:.85rem;color:#666}.activite-humeurs{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.humeur-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#f0f0f0;border-radius:12px;font-size:.75rem;color:#666}.calendrier-grid-container{flex:1;overflow:auto;position:relative}.calendrier-grid{display:grid;min-width:800px}.calendrier-day-header{padding:15px 10px;text-align:center;border-bottom:2px solid #e0e0e0;background:#fafafa;position:sticky;top:0;z-index:10}.calendrier-day-header.time-col{border-right:1px solid #e0e0e0}.calendrier-day-name{font-weight:600;color:#333;font-size:.9rem}.calendrier-day-date{font-size:.75rem;color:#666;margin-top:4px}.calendrier-time-slot{border-right:1px solid #e0e0e0;border-bottom:1px solid #f0f0f0;min-height:60px;position:relative}.calendrier-time-slot.time-col{padding:8px 5px;text-align:right;font-size:.75rem;color:#666;background:#fafafa}.calendrier-time-slot.droppable{cursor:pointer;transition:background .2s}.calendrier-time-slot.droppable:hover{background:#f5f5f5}.calendrier-time-slot.drag-over{background:#e3f2fd;border:2px dashed #2196f3}.creneau-card{position:absolute;left:2px;right:2px;padding:8px;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s;overflow:hidden;box-shadow:0 1px 3px #0000001a}.creneau-card:hover{box-shadow:0 2px 8px #0003;z-index:5}.creneau-card.incontournable{background:#e8f5e9;border-left:3px solid #4caf50}.creneau-card.optionnel{background:#e1f5fe;border-left:3px solid #0288d1}.creneau-card.preparation{background:#f3e5f5;border-left:3px solid #8e24aa}.creneau-title{font-weight:600;margin-bottom:4px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.creneau-time{font-size:.75rem;color:#666;margin-bottom:2px}.creneau-lieu{font-size:.75rem;color:#666;font-style:italic}.creneau-participants{font-size:.75rem;color:#666;margin-top:4px}.creneau-multi-activites{font-size:.7rem;color:#1565c0;font-weight:600;margin-top:2px}.btn-create-activite{padding:8px 16px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-create-activite:hover{background:#45a049}.empty-state{padding:40px;text-align:center;color:#999}.invites-stats{display:flex;gap:.75rem}.stat-pill{background:#ffffff26;color:#fff;padding:.5rem 1.25rem;border-radius:20px;font-size:.9rem;font-weight:600;border:1px solid rgba(255,255,255,.25)}.invites-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.invites-search-input{flex:1;padding:.7rem 1rem;border:2px solid rgba(255,255,255,.2);border-radius:var(--border-radius);background:#ffffff14;color:#fff;font-size:.9rem;transition:var(--transition)}.invites-search-input::placeholder{color:#ffffff73}.invites-search-input:focus{outline:none;border-color:var(--beige);background:#ffffff1f}.search-results-count{color:#fff9;font-size:.8rem;white-space:nowrap}.btn-init-historique{padding:.6rem 1.25rem;background:#ffffff1a;color:#fff;border:1.5px solid rgba(255,255,255,.3);border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-init-historique:hover:not(:disabled){background:#fff3;border-color:#fff}.btn-init-historique:disabled{opacity:.5;cursor:not-allowed}.btn-merge{padding:.6rem 1.25rem;background:#dc2626;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-merge:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 2px 8px #dc262666}.btn-merge:disabled{opacity:.6;cursor:not-allowed}.invites-table-container{background:var(--beige);border-radius:var(--border-radius);padding:1rem;box-shadow:var(--box-shadow);overflow-x:auto;border:2px solid var(--blanc)}.invites-table{width:100%;border-collapse:collapse}.invites-table th,.invites-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--blanc);font-size:.82rem;vertical-align:middle}.invites-table th{background-color:var(--beige-fonce);color:var(--blanc);font-weight:600;white-space:nowrap;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.invites-table tbody tr{transition:background-color .15s}.invites-table tbody tr:hover{background-color:var(--beige-fonce)}.invites-table tbody tr.row-selected{background-color:#3b82f614}.col-check{width:32px;text-align:center!important}.col-check input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:var(--bleu-marine)}.invite-name-cell{display:flex;align-items:center;gap:.4rem;font-weight:600;color:var(--bleu-marine);white-space:nowrap}.cardex-dot{width:7px;height:7px;border-radius:50%;background-color:#10b981;flex-shrink:0}.invite-phone-cell{white-space:nowrap;color:var(--bleu-marine);font-size:.8rem}.invite-email-cell{color:var(--bleu-marine);font-size:.78rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-cardex{width:70px;text-align:center!important}.invite-cardex-cell{text-align:center;white-space:nowrap}.invite-sejours-cell{min-width:120px}.sejours-chips{display:flex;flex-wrap:nowrap;gap:.3rem;align-items:center}.sejour-chip{display:inline-flex;padding:.2rem .5rem;border-radius:4px;font-size:.7rem;line-height:1.3;cursor:help;transition:transform .15s;white-space:nowrap;flex-shrink:0}.sejour-chip:hover{transform:scale(1.05)}.sejour-chip.future{background-color:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.sejour-chip.past{background-color:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.chip-code{font-weight:700;font-family:Courier New,monospace;letter-spacing:.03em;font-size:.68rem}.no-sejour{color:#9ca3af;font-size:.8rem}.btn-cardex{padding:.35rem .85rem;border:1.5px solid var(--bleu-marine);border-radius:4px;background:var(--blanc);color:var(--bleu-marine);font-weight:600;font-size:.78rem;cursor:pointer;transition:all .2s}.btn-cardex:hover{background:var(--bleu-marine);color:var(--blanc);transform:translateY(-1px);box-shadow:0 2px 6px #0a19294d}.btn-cardex.has-data{background:var(--bleu-marine);color:var(--beige);border-color:var(--bleu-marine)}.btn-cardex.has-data:hover{background:var(--bleu-marine-clair);color:var(--blanc)}@media(max-width:1024px){.invites-table-container{overflow-x:scroll}.invites-table th,.invites-table td{padding:.5rem;font-size:.8rem}}.btn-detect-duplicates{padding:.6rem 1.25rem;background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-detect-duplicates:hover:not(:disabled){background:linear-gradient(135deg,#b45309,#92400e);transform:translateY(-1px);box-shadow:0 2px 8px #d9770666}.btn-detect-duplicates:disabled{opacity:.5;cursor:not-allowed}.duplicates-panel{background:#fffbeb;border:2px solid #f59e0b;border-radius:var(--border-radius);padding:1rem 1.25rem;margin-bottom:1rem;animation:slideDown .25s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.duplicates-panel.duplicates-empty{display:flex;align-items:center;justify-content:space-between}.duplicates-panel.duplicates-empty p{margin:0;color:#92400e;font-weight:600;font-size:.9rem}.duplicates-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.duplicates-header h3{margin:0;font-size:.95rem;color:#92400e}.btn-close-duplicates{padding:.35rem .85rem;background:transparent;border:1.5px solid #92400e;border-radius:4px;color:#92400e;font-weight:600;font-size:.78rem;cursor:pointer;transition:all .2s}.btn-close-duplicates:hover{background:#92400e;color:#fff}.duplicates-list{display:flex;flex-direction:column;gap:.6rem;max-height:320px;overflow-y:auto}.duplicate-group{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;background:#fff;border:1px solid #fcd34d;border-radius:6px;transition:border-color .2s}.duplicate-group:hover{border-color:#f59e0b}.duplicate-reason{font-size:.75rem;color:#92400e;font-weight:600;background:#fef3c7;padding:.2rem .55rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.duplicate-names{display:flex;gap:.35rem;flex-wrap:wrap}.duplicate-name-tag{font-size:.82rem;font-weight:600;color:var(--bleu-marine);background:#e0f2fe;padding:.15rem .5rem;border-radius:3px}.duplicate-details{display:flex;gap:.5rem;flex-wrap:wrap;flex:1}.duplicate-detail{font-size:.75rem;color:#6b7280}.btn-select-for-merge{padding:.3rem .7rem;background:var(--bleu-marine);color:#fff;border:none;border-radius:4px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.btn-select-for-merge:hover{background:var(--bleu-marine-clair);transform:translateY(-1px)}@media(max-width:768px){.invites-toolbar{flex-wrap:wrap}.invites-search-input{min-width:200px}.search-results-count{text-align:right}}.admin{min-height:100vh;background-color:var(--bleu-marine)}.admin-header{background-color:var(--bleu-marine);color:var(--blanc);padding:2rem;text-align:center;border-bottom:3px solid var(--blanc)}.admin-header h1{color:var(--beige);margin-bottom:.5rem}.admin-header p{margin:0;opacity:.9;color:var(--blanc)}.admin-sejour-selector{background:linear-gradient(135deg,#667eea,#764ba2);padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--blanc)}.sejour-info{display:flex;align-items:center;gap:1rem}.sejour-info label{color:#fff;font-weight:600;font-size:1.1rem}.sejour-info select{padding:.75rem 1.5rem;font-size:1rem;border:2px solid white;border-radius:6px;background:#fff;color:#0a1929;cursor:pointer;min-width:400px;font-weight:500}.sejour-info select:disabled{opacity:.6;cursor:not-allowed}.sejour-info select optgroup{font-weight:700;font-style:normal;color:#495057;background-color:#f8f9fa;padding:.5rem 0;font-size:.95rem}.sejour-info select option{padding:.5rem 1rem;color:#212529;font-weight:500}.sejour-info select option:hover{background-color:#e9ecef}.sejour-badge{background:#fff3;padding:.75rem 1.5rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3)}.sejour-badge strong{color:#fff;font-size:1.2rem;font-family:Courier New,monospace;letter-spacing:.1em;margin-right:.5rem}.sejour-badge{color:#ffffffe6;font-size:1rem}.admin-tabs{background-color:var(--bleu-marine-clair);display:flex;align-items:stretch;gap:0;border-bottom:3px solid var(--blanc);padding:0 1rem}.admin-tabs .tab{padding:1rem 1.15rem;background:none;border:none;font-size:.88rem;font-weight:600;color:var(--beige-fonce);cursor:pointer;border-bottom:3px solid transparent;transition:var(--transition);margin-bottom:-3px;white-space:nowrap}.admin-tabs .tab:hover{color:var(--blanc);background-color:var(--bleu-marine)}.admin-tabs .tab.active{border-bottom-color:var(--blanc);background-color:var(--beige-fonce);color:#fff}.tab-separator{width:1px;background:#fff3;margin:.6rem .25rem;flex-shrink:0}.admin-content{padding:2rem;min-height:60vh}.communication-separator{height:2px;background:#ffffff26;margin:3rem 0}@media(max-width:768px){.admin-tabs{flex-direction:column;padding:0}.admin-tabs .tab{border-bottom:1px solid var(--beige-fonce);border-left:3px solid transparent;padding:.85rem 1.25rem;font-size:.9rem}.admin-tabs .tab.active{border-bottom-color:var(--beige);border-left-color:var(--blanc);color:#fff}.tab-separator{width:auto;height:1px;margin:0;background:#ffffff26}}.modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.code-validation-modal{background:#fff;padding:2.5rem;border-radius:12px;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d}.code-validation-modal h2{margin:0 0 1rem;color:#0a1929;font-size:1.75rem;font-weight:700;text-align:center}.modal-message{margin-bottom:2rem;color:#5a6c7d;text-align:center;line-height:1.6;font-size:1rem}.code-validation-form{display:flex;flex-direction:column;gap:1.5rem}.code-input-wrapper{position:relative}.code-input{width:100%;padding:1rem;font-size:1.25rem;font-weight:600;letter-spacing:.1em;text-align:center;border:2px solid #cbd5e0;border-radius:8px;text-transform:uppercase;font-family:Courier New,monospace;transition:all .2s ease;box-sizing:border-box}.code-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.code-input.error{border-color:#e53e3e}.code-counter{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#a0aec0;font-size:.875rem;font-weight:500;pointer-events:none}.error-message{background-color:#fff5f5;color:#c53030;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;border-left:4px solid #e53e3e;margin:0}.modal-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease}.modal-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-actions .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.modal-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-actions .btn-secondary{background:transparent;color:#667eea;border:2px solid #667eea}.modal-actions .btn-secondary:hover:not(:disabled){background:#f7fafc}.modal-actions .btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.code-validation-modal{padding:2rem 1.5rem}.code-validation-modal h2{font-size:1.5rem}.modal-message{font-size:.9375rem}.code-input{font-size:1.125rem;padding:.875rem}}.prog-agenda{margin-top:1.5rem}.prog-agenda-loading,.prog-agenda-empty{text-align:center;padding:3rem 1rem;color:var(--gris-clair);font-size:1rem}.prog-agenda-legend{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap;justify-content:center}.prog-legend-item{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:4px}.prog-legend-incontournable{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.prog-legend-optionnel{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.prog-legend-libre{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.prog-legend-toujours-ouvert{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.prog-agenda-days{display:flex;flex-direction:column;gap:2rem}.prog-day{background:var(--beige);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;border:1px solid rgba(255,255,255,.15)}.prog-day-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--beige-fonce)}.prog-day-number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--bleu-marine);color:var(--blanc);border-radius:50%;font-family:var(--font-titres);font-size:1.25rem;font-weight:700;flex-shrink:0}.prog-day-info{display:flex;flex-direction:column}.prog-day-name{font-family:var(--font-titres);font-size:1.1rem;font-weight:600;color:var(--bleu-marine);text-transform:capitalize}.prog-day-month{font-size:.8rem;color:#888;text-transform:capitalize}.prog-toujours-ouverts{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;background:#ffffff40;border-radius:6px;border-left:3px solid #d1d5db}.prog-toujours-ouvert-tag{display:inline-flex;align-items:center;gap:.375rem;font-size:.8rem;color:#4b5563;padding:.2rem .5rem;background:#ffffff80;border-radius:4px;border:1px solid #e5e7eb}.prog-toujours-ouvert-horaires{font-size:.7rem;color:#9ca3af;font-weight:600}.prog-creneaux-list{display:flex;flex-direction:column;gap:.375rem}.prog-creneau{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:8px;transition:transform .15s ease,box-shadow .15s ease;cursor:default}.prog-creneau:hover{transform:translate(2px)}.prog-creneau.prog-incontournable{background:#fef3c7;border-left:3px solid #f59e0b}.prog-creneau.prog-optionnel{background:#dbeafe;border-left:3px solid #3b82f6}.prog-creneau.prog-libre{background:#f0fdf4;border-left:3px solid #86efac}.prog-creneau.prog-meal-clickable{cursor:pointer}.prog-creneau.prog-meal-clickable:hover{box-shadow:0 2px 8px #0000001a;transform:translate(2px) translateY(-1px)}.prog-creneau-time{min-width:100px;font-size:.8rem;font-weight:600;color:#555;flex-shrink:0;padding-top:.125rem}.prog-creneau-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.prog-creneau-name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.prog-creneau-name{font-size:.875rem;font-weight:600;color:var(--bleu-marine)}.prog-libre .prog-creneau-name{color:#166534;font-weight:500;font-style:italic}.prog-meal-hint{font-size:.7rem;color:#b45309;font-weight:600;background:#b453091a;padding:.125rem .5rem;border-radius:10px;white-space:nowrap}.prog-creneau-lieu{font-size:.75rem;color:#888}.prog-creneau-multi{font-size:.7rem;color:var(--beige-fonce);font-weight:600}.prog-type-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.2rem .5rem;border-radius:4px;flex-shrink:0;align-self:flex-start;margin-top:.125rem}.prog-type-badge.prog-incontournable{background:#fbbf24;color:#78350f}.prog-type-badge.prog-optionnel{background:#60a5fa;color:#1e3a5f}.prog-type-badge.prog-libre{background:#86efac;color:#14532d}.prog-inscriptions-summary{margin-top:.375rem}.prog-inscriptions-toggle{display:inline-flex;align-items:center;gap:.375rem;background:#fff9;border:1px solid rgba(0,0,0,.1);border-radius:6px;padding:.25rem .625rem;cursor:pointer;font-size:.75rem;color:#555;transition:background .15s ease}.prog-inscriptions-toggle:hover{background:#ffffffd9}.prog-inscriptions-count{font-weight:600}.prog-inscriptions-arrow{font-size:.65rem;transition:transform .2s ease;display:inline-block}.prog-inscriptions-arrow.expanded{transform:rotate(180deg)}.prog-inscriptions-details{margin-top:.5rem;padding:.5rem;background:#ffffff80;border-radius:6px;animation:progSlideDown .2s ease-out}@keyframes progSlideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.prog-inscription-group{display:flex;flex-direction:column;gap:.25rem}.prog-participants-list{display:flex;flex-wrap:wrap;gap:.25rem}.prog-participant-tag{display:inline-flex;align-items:center;padding:.15rem .5rem;background:var(--bleu-marine);color:var(--blanc);border-radius:12px;font-size:.7rem;font-weight:500}.prog-waitlist{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.prog-waitlist-label{font-size:.7rem;color:#92400e;font-weight:600;margin-right:.25rem}.prog-participant-tag.prog-waitlist-tag{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.prog-cinema{align-items:flex-start}.prog-cinema-details{display:flex;gap:.75rem;align-items:flex-start}.prog-cinema-poster{width:42px;height:62px;object-fit:cover;border-radius:4px;flex-shrink:0;box-shadow:0 1px 4px #0003}.prog-cinema-info{display:flex;flex-direction:column;gap:.15rem}.prog-cinema-meta{display:flex;flex-wrap:wrap;gap:.125rem;font-size:.75rem;color:#666}.prog-cinema-meta span{display:inline-flex;align-items:center}.prog-cinema-meta span:not(:last-child):after{content:"·";margin:0 .35rem;color:#bbb;font-weight:700}.prog-cinema-director{font-size:.75rem;color:#777;font-style:italic}.prog-cinema-organizer{font-size:.7rem;color:#999}.menu-preview-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:menuOverlayIn .2s ease-out}@keyframes menuOverlayIn{0%{opacity:0}to{opacity:1}}.menu-preview-modal{position:relative;max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column;align-items:center;animation:menuSlideIn .25s ease-out}@keyframes menuSlideIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.menu-preview-close{position:absolute;top:-12px;right:-12px;width:36px;height:36px;background:var(--blanc);border:none;border-radius:50%;font-size:1.5rem;color:#555;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0003;z-index:1;transition:background .15s ease,color .15s ease;line-height:1}.menu-preview-close:hover{background:#f3f4f6;color:#111}.menu-preview-loading{color:var(--blanc);padding:3rem;text-align:center;font-size:1rem}.menu-preview-image{width:100%;max-height:85vh;object-fit:contain;border-radius:12px;box-shadow:0 8px 32px #0000004d}.menu-preview-fallback{background:linear-gradient(135deg,#1a1a2e,#16213e);color:var(--blanc);padding:2.5rem;border-radius:12px;text-align:center;width:100%;box-shadow:0 8px 32px #0000004d}.menu-preview-fallback h3{font-family:var(--font-titres);font-size:2rem;margin:0 0 .5rem;color:var(--blanc)}.menu-preview-date{color:#d4c5a9;font-style:italic;font-size:.9rem;margin-bottom:2rem;text-transform:capitalize}.menu-preview-course{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1.5rem}.menu-preview-course-label{color:#d4c5a9;font-size:.8rem;font-style:italic;text-transform:capitalize}.menu-preview-course span:last-child{font-size:1.1rem;font-weight:500}@media(max-width:640px){.prog-day{padding:1rem}.prog-creneau{flex-wrap:wrap;gap:.375rem}.prog-creneau-time{min-width:80px;font-size:.75rem}.prog-day-number{width:38px;height:38px;font-size:1.1rem}.prog-agenda-legend{gap:.5rem}.prog-legend-item{font-size:.7rem;padding:.2rem .5rem}.menu-preview-modal{max-width:95vw}.menu-preview-close{top:-8px;right:-8px;width:32px;height:32px;font-size:1.25rem}}.infos-sejour{min-height:100vh}.infos-sejour-hero{background:linear-gradient(#0a192980,#0a192980),url(https://images.pexels.com/photos/258154/pexels-photo-258154.jpeg?auto=compress&cs=tinysrgb&w=1920) center/cover;height:300px;display:flex;align-items:center;justify-content:center;color:var(--blanc);text-align:center}.infos-sejour-hero h1{color:var(--blanc);font-size:2.5rem}.infos-sejour-hero p{color:var(--blanc);font-size:1.2rem;margin-top:.5rem}.infos-sejour .container{max-width:1200px;margin:0 auto;padding:2rem}.infos-sejour section{margin:3rem 0;padding:2rem 0}.infos-sejour section:not(:last-child){border-bottom:3px solid var(--beige-fonce);padding-bottom:3rem}.section-title{font-size:2.2rem;color:var(--blanc);margin-bottom:2rem;text-align:center;font-weight:700}.error-container{max-width:600px;margin:4rem auto;padding:3rem;text-align:center}.error-container h2{color:var(--blanc);margin-bottom:1rem;font-size:1.75rem}.error-container p{color:var(--gris-clair);margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.error-container .btn-primary{padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transition:all .2s ease}.error-container .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.infos-sejour section h3{font-size:1.5rem;color:var(--bleu-marine);margin-bottom:1.5rem;margin-top:2rem;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{text-align:center}.stat-card h3{font-size:1rem;color:var(--bleu-marine);margin:0 0 .75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;border:none;padding:0}.stat-number{font-size:2.5rem;font-weight:700;color:var(--bleu-marine);margin:0}.reservations-table{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--box-shadow);overflow-x:auto;border:2px solid var(--blanc);transition:var(--transition)}.reservations-table table{width:100%;border-collapse:collapse;min-width:800px}.reservations-table thead{background-color:#ffffff4d}.reservations-table th{padding:.75rem .5rem;text-align:left;font-weight:600;color:var(--bleu-marine);border-bottom:2px solid var(--beige-fonce);font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.reservations-table td{padding:.75rem .5rem;border-bottom:1px solid var(--beige-fonce);color:var(--noir);vertical-align:top}.reservations-table th:nth-child(2),.reservations-table td:nth-child(2){max-width:50px;padding-left:.3rem;padding-right:.3rem}.reservations-table th:nth-child(3),.reservations-table td:nth-child(3){max-width:80px;white-space:normal;word-wrap:break-word}.reservations-table th:nth-child(4),.reservations-table td:nth-child(4){max-width:20px;text-align:center;padding-left:.2rem;padding-right:.2rem}.reservations-table th:nth-child(5),.reservations-table td:nth-child(5){max-width:140px;white-space:normal;word-wrap:break-word;line-height:1.3}.reservations-table th:nth-child(6),.reservations-table td:nth-child(6),.reservations-table th:nth-child(7),.reservations-table td:nth-child(7){max-width:70px;white-space:normal;word-wrap:break-word;line-height:1.3}.reservations-table tbody tr:hover{background-color:#fff3}.chambre-photo-thumbnail{width:50px;height:38px;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.no-photo{width:50px;height:38px;display:flex;align-items:center;justify-content:center;background:#ffffff4d;border-radius:var(--border-radius);color:var(--bleu-marine);font-size:.7rem;text-align:center}.participants-names-list{list-style:none;padding:0;margin:0}.participants-names-list li{padding:.25rem 0;color:var(--noir)}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500;text-transform:capitalize}.status-badge.confirmée{background-color:#dcfce7;color:#166534}.status-badge.en-attente{background-color:#fef3c7;color:#92400e}.status-badge.annulée{background-color:#fee2e2;color:#991b1b}.transport-badge{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border-radius:50%;background-color:#ffffff4d}.transport-icon{font-size:1.5rem;line-height:1}.no-data{text-align:center;color:var(--blanc);padding:2rem;font-size:1rem}.synthese-section{margin-top:2rem}.creneaux-synthese{display:grid;gap:1.5rem}.creneau-synthese-card{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--box-shadow);border:2px solid var(--blanc);transition:var(--transition)}.creneau-synthese-card:hover{box-shadow:0 4px 16px #fff3;transform:translateY(-2px);border-color:var(--beige-fonce)}.creneau-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--beige-fonce)}.creneau-header h4{font-size:1.25rem;color:var(--bleu-marine);margin:0;font-weight:600;text-transform:capitalize}.creneau-activites-container{display:grid;gap:1.5rem}.activite-synthese-item{border-left:4px solid var(--beige-fonce);padding-left:1rem}.activite-synthese-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.activite-synthese-header strong{color:var(--bleu-marine);font-size:1.1rem}.participant-count{background-color:var(--beige-fonce);color:var(--blanc);padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.participants-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.participants-list li{padding:.5rem .75rem;background-color:#ffffff4d;border-radius:6px;color:var(--bleu-marine);font-size:.9rem}.activites-sans-creneaux{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.activite-synthese-card{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--box-shadow);border:2px solid var(--blanc);transition:var(--transition)}.activite-synthese-card:hover{box-shadow:0 4px 16px #fff3;transform:translateY(-2px);border-color:var(--beige-fonce)}@media(max-width:768px){.infos-sejour-hero h1{font-size:2rem}.infos-sejour-hero{height:250px}.section-title{font-size:1.75rem}.infos-sejour section h3{font-size:1.3rem}.stats-grid{grid-template-columns:1fr}.reservations-table{padding:.5rem}.reservations-table table{font-size:.75rem;min-width:100%}.reservations-table th,.reservations-table td{padding:.5rem .25rem;white-space:normal;word-wrap:break-word;line-height:1.3}.reservations-table th{font-size:.7rem}.reservations-table th:nth-child(2),.reservations-table td:nth-child(2){max-width:42px;padding-left:.25rem;padding-right:.25rem}.reservations-table th:nth-child(3),.reservations-table td:nth-child(3){max-width:60px}.reservations-table th:nth-child(4),.reservations-table td:nth-child(4){max-width:20px;padding-left:.15rem;padding-right:.15rem}.reservations-table th:nth-child(5),.reservations-table td:nth-child(5){max-width:120px}.reservations-table th:nth-child(6),.reservations-table td:nth-child(6),.reservations-table th:nth-child(7),.reservations-table td:nth-child(7){max-width:60px}.chambre-photo-thumbnail{width:42px;height:32px}.no-photo{width:42px;height:32px;font-size:.6rem}.participants-names-list li{padding:.15rem 0;font-size:.75rem}.transport-icon{font-size:1.2rem}.participants-list,.activites-sans-creneaux{grid-template-columns:1fr}.activite-synthese-header{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.infos-sejour .container{padding:1rem}.reservations-table{padding:.25rem}.reservations-table table{font-size:.7rem}.reservations-table th,.reservations-table td{padding:.4rem .2rem}.reservations-table th{font-size:.65rem}.reservations-table th:nth-child(2),.reservations-table td:nth-child(2){max-width:38px;padding-left:.2rem;padding-right:.2rem}.reservations-table th:nth-child(3),.reservations-table td:nth-child(3){max-width:50px}.reservations-table th:nth-child(4),.reservations-table td:nth-child(4){max-width:18px;padding-left:.12rem;padding-right:.12rem}.reservations-table th:nth-child(5),.reservations-table td:nth-child(5){max-width:100px}.reservations-table th:nth-child(6),.reservations-table td:nth-child(6),.reservations-table th:nth-child(7),.reservations-table td:nth-child(7){max-width:55px}.chambre-photo-thumbnail{width:38px;height:29px}.no-photo{width:38px;height:29px;font-size:.55rem}.participants-names-list li{padding:.1rem 0;font-size:.7rem}.transport-icon{font-size:1rem}}.review-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:review-fade-in .2s ease}@keyframes review-fade-in{0%{opacity:0}to{opacity:1}}.review-modal{background:var(--blanc);border-radius:16px;padding:2.5rem;max-width:500px;width:100%;position:relative;box-shadow:0 20px 60px #0006;max-height:90vh;overflow-y:auto}.review-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.75rem;color:#999;cursor:pointer;line-height:1;padding:.25rem}.review-modal-close:hover{color:#333}.review-modal h2{text-align:center;color:var(--bleu-marine);margin-bottom:.5rem}.review-modal-activite{text-align:center;color:var(--beige-fonce);font-weight:600;font-size:1.1rem;margin-bottom:1.5rem}.review-modal-expired{background:#fff3e0;color:#e65100;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-size:.9rem;border:1px solid #ffcc80;text-align:center}.review-modal-error{background:#ffebee;color:#c62828;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-size:.9rem;border:1px solid #ef9a9a}.review-modal-existing{background:#e3f2fd;color:#1565c0;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-size:.9rem;border:1px solid #90caf9}.review-modal-field{margin-bottom:1.25rem}.review-modal-field label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--bleu-marine);font-size:.95rem}.review-modal-field select{width:100%;padding:.75rem 1rem;border:2px solid var(--beige);border-radius:var(--border-radius);font-size:1rem;color:var(--bleu-marine);background:var(--blanc);cursor:pointer}.review-modal-field select:focus{outline:none;border-color:var(--beige-fonce)}.review-modal-field textarea{width:100%;padding:.75rem 1rem;border:2px solid var(--beige);border-radius:var(--border-radius);font-size:1rem;font-family:var(--font-texte);color:var(--bleu-marine);resize:vertical;min-height:100px}.review-modal-field textarea:focus{outline:none;border-color:var(--beige-fonce)}.review-stars-input{display:flex;align-items:center;gap:.25rem}.review-star-btn{background:none;border:none;font-size:2rem;color:#ddd;cursor:pointer;padding:.125rem;transition:color .15s ease,transform .15s ease;line-height:1}.review-star-btn:hover{transform:scale(1.15)}.review-star-btn.active{color:#f59e0b}.review-star-btn:disabled{cursor:not-allowed;opacity:.5}.review-note-label{margin-left:.75rem;font-weight:700;color:var(--bleu-marine);font-size:1.1rem}.review-modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.review-modal-actions .btn-secondary{flex:1}.review-modal-actions .btn-primary{flex:2}@media(max-width:480px){.review-modal{padding:1.5rem}.review-modal-actions{flex-direction:column}.review-star-btn{font-size:2.25rem}}.mesinfos-page{max-width:1200px;margin:0 auto;padding:2rem;min-height:calc(100vh - 80px)}.mesinfos-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding:1.5rem 2rem;background:var(--beige);border-radius:var(--border-radius);border:2px solid var(--blanc)}.mesinfos-header h1{font-size:2rem;margin-bottom:.25rem}.mesinfos-welcome{color:var(--bleu-marine);margin-bottom:.25rem;font-size:1.1rem}.mesinfos-dates{color:var(--bleu-marine-clair);font-size:.95rem;opacity:.8;margin-bottom:0}.btn-logout{background:none;border:1px solid var(--bleu-marine-clair);color:var(--bleu-marine-clair);padding:.5rem 1rem;border-radius:var(--border-radius);font-size:.85rem;white-space:nowrap;cursor:pointer}.btn-logout:hover{background:var(--bleu-marine-clair);color:var(--blanc)}.mesinfos-success{background:#e8f5e9;color:#2e7d32;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-weight:600;border:1px solid #a5d6a7;animation:mesinfos-fade-in .3s ease}.mesinfos-error{background:#ffebee;color:#c62828;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-weight:600;border:1px solid #ef9a9a}@keyframes mesinfos-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mesinfos-tabs{display:flex;gap:0;margin-bottom:1.5rem;border-radius:var(--border-radius);overflow:hidden;border:2px solid var(--beige)}.mesinfos-tab{flex:1;padding:.875rem 1.25rem;background:var(--bleu-marine-clair);color:var(--beige);font-weight:600;font-size:.95rem;border:none;cursor:pointer;transition:var(--transition);position:relative}.mesinfos-tab:not(:last-child){border-right:1px solid rgba(212,197,169,.3)}.mesinfos-tab:hover{background:var(--bleu-marine);color:var(--blanc)}.mesinfos-tab.active{background:var(--beige);color:var(--bleu-marine)}.mesinfos-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--beige-fonce)}.mesinfos-content{animation:mesinfos-fade-in .25s ease}.mesinfos-section-header{margin-bottom:1.5rem}.mesinfos-section-header h2{color:var(--beige);font-size:1.5rem;margin-bottom:.5rem}.mesinfos-section-desc{color:var(--beige-fonce);font-size:.95rem;margin-bottom:0}.mesinfos-empty{text-align:center;padding:4rem 2rem}.mesinfos-empty h2{color:var(--beige);margin-bottom:1rem}.mesinfos-empty p{color:var(--beige-fonce);margin-bottom:2rem}.mesinfos-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:mesinfos-fade-in .2s ease}.mesinfos-modal{background:var(--blanc);border-radius:16px;padding:2.5rem;max-width:440px;width:100%;position:relative;box-shadow:0 20px 60px #0006}.mesinfos-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;line-height:1;padding:.25rem}.mesinfos-modal-close:hover{color:#333}.mesinfos-modal-icon{text-align:center;margin-bottom:1rem;color:var(--beige-fonce)}.mesinfos-modal h2{text-align:center;margin-bottom:.5rem;color:var(--bleu-marine)}.mesinfos-modal-subtitle{text-align:center;color:#666;font-size:.95rem;margin-bottom:1.5rem}.mesinfos-modal-error{background:#ffebee;color:#c62828;padding:.75rem 1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-size:.9rem;border:1px solid #ef9a9a}.mesinfos-modal-field{margin-bottom:1rem}.mesinfos-modal-field label{display:block;font-weight:600;margin-bottom:.375rem;color:var(--bleu-marine);font-size:.9rem}.mesinfos-modal-field input{width:100%}.mesinfos-modal-submit{width:100%;margin-top:.5rem}.mesinfos-guest-list{display:flex;flex-direction:column;gap:1rem}.mesinfos-guest-card{background:var(--beige);border-radius:var(--border-radius);padding:1.25rem 1.5rem;border:2px solid var(--blanc);transition:var(--transition);position:relative}.mesinfos-guest-card.primary{background:linear-gradient(135deg,var(--beige) 0%,var(--beige-fonce) 100%);border-color:var(--beige-fonce)}.mesinfos-guest-card.editing{border-color:var(--beige-fonce);box-shadow:0 4px 16px #00000026}.mesinfos-guest-badge{display:inline-block;background:var(--bleu-marine);color:var(--beige);padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;margin-bottom:.75rem}.mesinfos-guest-badge.secondary{background:var(--bleu-marine-clair)}.mesinfos-guest-info{display:flex;flex-direction:column;gap:.5rem}.mesinfos-guest-row{display:flex;align-items:center;gap:1rem}.mesinfos-guest-label{font-weight:600;font-size:.85rem;color:var(--bleu-marine);min-width:80px;opacity:.7}.mesinfos-guest-value{color:var(--bleu-marine);font-size:.95rem}.mesinfos-guest-locked{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;color:var(--bleu-marine);opacity:.5;font-size:.8rem}.mesinfos-guest-edit-btn{display:flex;align-items:center;gap:.375rem;margin-top:.75rem;background:var(--bleu-marine);color:var(--beige);padding:.5rem 1rem;border-radius:var(--border-radius);font-size:.85rem;font-weight:600;border:none;cursor:pointer;transition:var(--transition)}.mesinfos-guest-edit-btn:hover{background:var(--bleu-marine-clair);color:var(--blanc)}.mesinfos-guest-edit-form{display:flex;flex-direction:column;gap:.75rem}.mesinfos-guest-edit-field label{display:block;font-weight:600;font-size:.85rem;color:var(--bleu-marine);margin-bottom:.25rem}.mesinfos-guest-edit-field input{width:100%}.mesinfos-guest-edit-actions{display:flex;gap:.75rem;margin-top:.5rem}.mesinfos-guest-edit-actions .btn-primary,.mesinfos-guest-edit-actions .btn-secondary{padding:.625rem 1.25rem;font-size:.9rem}.mesinfos-dietary{max-width:800px}.mesinfos-dietary-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.mesinfos-dietary-item{display:flex;align-items:center;gap:.75rem;background:var(--beige);padding:.75rem 1rem;border-radius:var(--border-radius);border:2px solid var(--blanc)}.mesinfos-dietary-item-content{flex:1}.mesinfos-dietary-msg{font-weight:600;color:var(--bleu-marine);margin-bottom:.25rem}.mesinfos-dietary-persons{display:flex;flex-wrap:wrap;gap:.375rem}.mesinfos-dietary-tag{display:inline-block;background:var(--bleu-marine);color:var(--beige);padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.mesinfos-dietary-remove{background:none;border:none;font-size:1.5rem;color:#c62828;cursor:pointer;padding:.25rem;line-height:1;opacity:.6;transition:var(--transition)}.mesinfos-dietary-remove:hover{opacity:1}.mesinfos-dietary-add{background:var(--beige);padding:1.25rem;border-radius:var(--border-radius);border:2px solid var(--blanc);margin-bottom:1.5rem}.mesinfos-dietary-add h3{font-size:1.1rem;margin-bottom:.75rem}.mesinfos-dietary-input-row input{width:100%}.mesinfos-dietary-persons-select{margin-top:.75rem}.mesinfos-dietary-concerne{font-weight:600;font-size:.9rem;color:var(--bleu-marine);display:block;margin-bottom:.5rem}.mesinfos-dietary-checkboxes{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.mesinfos-dietary-checkbox{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-size:.9rem;color:var(--bleu-marine)}.mesinfos-dietary-add-btn{padding:.625rem 1.25rem;font-size:.9rem}.mesinfos-dietary-summary{background:var(--beige);padding:1.25rem;border-radius:var(--border-radius);border:2px solid var(--blanc);margin-bottom:1.5rem}.mesinfos-dietary-summary h3{font-size:1.1rem;margin-bottom:.75rem}.mesinfos-dietary-summary-list{display:flex;flex-direction:column;gap:.5rem}.mesinfos-dietary-summary-person{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.08)}.mesinfos-dietary-summary-person:last-child{border-bottom:none}.mesinfos-dietary-summary-name{font-weight:600;min-width:120px;color:var(--bleu-marine)}.mesinfos-dietary-summary-tags{display:flex;flex-wrap:wrap;gap:.375rem}.mesinfos-dietary-summary-tag{display:inline-block;padding:.125rem .625rem;border-radius:12px;font-size:.8rem;font-weight:600}.mesinfos-dietary-summary-tag.restriction{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}.mesinfos-dietary-summary-tag.ok{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.mesinfos-save-bar{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--beige);display:flex;justify-content:flex-end}.mesinfos-save-bar .btn-primary{min-width:240px}.mesinfos-agenda .mesinfos-save-bar{position:sticky;bottom:0;background:var(--bleu-marine);margin-left:-2rem;margin-right:-2rem;padding:1rem 2rem;z-index:50;border-top:2px solid var(--beige)}@media(max-width:768px){.mesinfos-page{padding:1rem}.mesinfos-header{flex-direction:column;gap:1rem;padding:1.25rem}.mesinfos-header h1{font-size:1.5rem}.mesinfos-tabs{flex-direction:column}.mesinfos-tab:not(:last-child){border-right:none;border-bottom:1px solid rgba(212,197,169,.3)}.mesinfos-guest-row{flex-direction:column;align-items:flex-start;gap:.125rem}.mesinfos-dietary-summary-person{flex-direction:column;align-items:flex-start}.mesinfos-save-bar{justify-content:stretch}.mesinfos-save-bar .btn-primary{width:100%;min-width:auto}.mesinfos-agenda .mesinfos-save-bar{margin-left:-1rem;margin-right:-1rem;padding:1rem}.mesinfos-reviews-grid{grid-template-columns:1fr}.mesinfos-review-card{flex-direction:column}.mesinfos-review-card-image{width:100%;height:140px}.mesinfos-review-card-actions{flex-direction:column}}.mesinfos-reviews-section{margin-top:2.5rem;padding-top:2rem;border-top:2px solid var(--beige)}.mesinfos-reviews-section h3{color:var(--beige);font-size:1.3rem;margin-bottom:.5rem}.mesinfos-reviews-desc{color:var(--beige-fonce);font-size:.95rem;margin-bottom:1.5rem}.mesinfos-reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.mesinfos-review-card{display:flex;background:var(--beige);border-radius:var(--border-radius);overflow:hidden;border:2px solid var(--blanc);transition:var(--transition)}.mesinfos-review-card:hover{border-color:var(--beige-fonce);box-shadow:0 4px 12px #00000026}.mesinfos-review-card-image{width:120px;min-height:100px;flex-shrink:0}.mesinfos-review-card-image img{width:100%;height:100%;object-fit:cover}.mesinfos-review-card-body{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.5rem}.mesinfos-review-card-body h4{color:var(--bleu-marine);font-size:1rem;margin-bottom:0}.mesinfos-review-card-existing{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.mesinfos-review-card-stars .star{font-size:1rem}.mesinfos-review-card-stars .star.filled{color:#f59e0b}.mesinfos-review-card-stars .star.empty{color:#ccc}.mesinfos-review-card-by{color:#666;font-size:.8rem;font-style:italic}.mesinfos-review-card-actions{display:flex;gap:.5rem;margin-top:auto}.btn-review{background:var(--bleu-marine);color:var(--beige);border:none;padding:.5rem .875rem;border-radius:var(--border-radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-review:hover{background:var(--bleu-marine-clair);color:var(--blanc)}.btn-review-see{background:none;border:1px solid var(--bleu-marine);color:var(--bleu-marine);padding:.5rem .875rem;border-radius:var(--border-radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-review-see:hover{background:var(--bleu-marine);color:var(--blanc)}.livre-or-page{min-height:100vh}.livre-or-hero{background:linear-gradient(135deg,#1a3a2a,#2d5a3d,#1a3a2a);padding:4rem 2rem;text-align:center;position:relative;overflow:hidden}.livre-or-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,rgba(184,134,11,.15) 0%,transparent 60%),radial-gradient(circle at 70% 50%,rgba(184,134,11,.1) 0%,transparent 60%);pointer-events:none}.livre-or-hero-content{position:relative;z-index:1}.livre-or-hero h1{color:#d4c5a9;font-size:2.5rem;margin-bottom:.5rem;font-style:italic;letter-spacing:1px}.livre-or-hero p{color:#d4c5a9b3;font-size:1.1rem;margin:0}.livre-or-container{max-width:800px;margin:0 auto;padding:2rem}.livre-or-back{margin-bottom:2rem}.livre-or-loading{text-align:center;padding:3rem;color:var(--beige-fonce)}.livre-or-empty{text-align:center;padding:4rem 2rem}.livre-or-empty-icon{color:var(--beige-fonce);opacity:.5;margin-bottom:1rem}.livre-or-empty h3{color:var(--beige);margin-bottom:.5rem}.livre-or-empty p{color:var(--beige-fonce)}.livre-or-entries{display:flex;flex-direction:column;gap:1.5rem}.livre-or-entry{background:var(--beige);border-radius:var(--border-radius);padding:1.5rem 2rem;border:2px solid var(--blanc);transition:var(--transition);position:relative}.livre-or-entry:hover{border-color:var(--beige-fonce);box-shadow:0 4px 16px #00000026}.livre-or-entry-quote{position:relative;padding-left:2.5rem}.livre-or-quote-icon{position:absolute;left:0;top:-4px;color:var(--beige-fonce);opacity:.4}.livre-or-entry-message{font-size:1.1rem;line-height:1.7;color:var(--bleu-marine);margin-bottom:1rem;font-style:italic}.livre-or-entry-footer{display:flex;justify-content:space-between;align-items:flex-end;padding-top:.75rem;border-top:1px solid rgba(0,0,0,.08)}.livre-or-entry-author{font-weight:700;color:var(--bleu-marine);font-size:.95rem}.livre-or-entry-sejour{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.livre-or-entry-sejour-name{font-weight:600;color:var(--bleu-marine);font-size:.85rem;opacity:.7}.livre-or-entry-dates{font-size:.8rem;color:var(--bleu-marine);opacity:.5}@media(max-width:768px){.livre-or-hero h1{font-size:1.8rem}.livre-or-container{padding:1rem}.livre-or-entry{padding:1.25rem}.livre-or-entry-footer{flex-direction:column;align-items:flex-start;gap:.5rem}.livre-or-entry-sejour{align-items:flex-start}}.chat-sejour{display:flex;flex-direction:column;height:600px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.chat-header{padding:20px;background:#2196f3;color:#fff;border-bottom:1px solid #1976d2}.chat-header h3{margin:0;font-size:1.2rem}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:15px}.chat-message{display:flex;flex-direction:column;max-width:70%;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.own{align-self:flex-end}.chat-message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:10px}.chat-message-author{font-weight:600;font-size:.9rem;color:#333}.chat-message-time{font-size:.75rem;color:#999}.chat-message-content{padding:12px 16px;border-radius:12px;background:#f5f5f5;color:#333;word-wrap:break-word;position:relative}.chat-message.own .chat-message-content{background:#2196f3;color:#fff}.chat-message-actions{display:flex;gap:8px;margin-top:4px}.btn-delete-message{padding:4px 8px;font-size:.75rem;background:transparent;color:#f44336;border:1px solid #f44336;border-radius:4px;cursor:pointer;transition:all .2s}.btn-delete-message:hover{background:#f44336;color:#fff}.chat-input-container{padding:20px;border-top:1px solid #e0e0e0;background:#fafafa}.chat-input-form{display:flex;gap:10px}.chat-input{flex:1;padding:12px 16px;border:1px solid #ddd;border-radius:24px;font-size:1rem;outline:none;transition:border-color .2s}.chat-input:focus{border-color:#2196f3}.btn-send-message{padding:12px 24px;background:#2196f3;color:#fff;border:none;border-radius:24px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-send-message:hover{background:#1976d2}.btn-send-message:disabled{background:#ccc;cursor:not-allowed}.chat-guestbook-toggle{display:flex;align-items:center;gap:8px;margin-bottom:10px;cursor:pointer;font-size:.85rem;color:#555;-webkit-user-select:none;user-select:none}.chat-guestbook-toggle input[type=checkbox]{width:16px;height:16px;accent-color:#b8860b;cursor:pointer;flex-shrink:0}.chat-guestbook-toggle span{line-height:1.3}.chat-empty-state{flex:1;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic}.chat-page{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#f0f4f8,#e8eef5);padding:2rem 1rem}.chat-page-container{max-width:800px;margin:0 auto}.chat-welcome-banner{background:linear-gradient(135deg,#1a73e8,#1565c0);color:#fff;padding:1.5rem 2rem;border-radius:12px;margin-bottom:1.5rem;box-shadow:0 4px 12px #1a73e84d}.chat-welcome-banner p{margin:0;font-size:1rem;line-height:1.6;font-weight:400;opacity:.95}.chat-name-prompt{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 16px #00000014;text-align:center;max-width:480px;margin:2rem auto}.chat-name-prompt h2{margin:0 0 .5rem;color:#0a1929;font-size:1.4rem;font-weight:700}.chat-name-prompt p{margin:0 0 1.5rem;color:#5a6c7d;font-size:.95rem}.chat-name-form{display:flex;gap:.75rem}.chat-name-input{flex:1;padding:.75rem 1rem;border:2px solid #e0e4ea;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s}.chat-name-input:focus{border-color:#1a73e8}.chat-name-submit{padding:.75rem 1.5rem;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.chat-name-submit:hover{background:#1565c0}.chat-name-submit:disabled{background:#b0bec5;cursor:not-allowed}@media(max-width:600px){.chat-page{padding:1rem .5rem}.chat-welcome-banner{padding:1.25rem 1.5rem;border-radius:8px}.chat-welcome-banner p{font-size:.9rem}.chat-name-prompt{padding:1.5rem}.chat-name-form{flex-direction:column}}
