:root{--first_color: #F1F1F1;--second_color: #DFC4BB;--third_color: #B08074;--fourth_color:#91998C;--fifth_color:#6D726B;--background_color:#E4F2E8}body{margin:0;min-height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:var(--background_color);scroll-behavior:smooth}.menu-header-container{background:#ffffff8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);top:20px;left:50%;transform:translate(-50%);width:60%;display:flex;justify-content:center;align-items:center;gap:13px;padding:12px 24px;box-sizing:border-box;border-radius:7px;position:fixed;z-index:1000}.menu-header-option{background-color:transparent;color:var(--third_color);border:none;border-radius:8px;padding:8px 18px;font-size:.9rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}.menu-header-option:hover{background-color:#ebbfb48c;box-shadow:0 2px 8px #90645526}.menu-header-option.active{position:relative}.menu-header-option.active:after{content:"";position:absolute;top:35px;left:50%;transform:translate(-50%);width:50px;height:2px;border-radius:2px;background-color:var(--third_color);opacity:.7}.menu-header-separator{color:var(--third_color);opacity:.5;font-size:1.5rem;-webkit-user-select:none;user-select:none}.menu-header-mobile{display:none}.hamburger-btn{background:#ffffffbf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:none;border-radius:10px;padding:11px 13px;cursor:pointer;display:flex;flex-direction:column;gap:5px;box-shadow:0 2px 12px #90645826;position:fixed;top:20px;left:20px;z-index:1002}.hamburger-line{display:block;width:22px;height:2px;background-color:var(--third_color);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.hamburger-btn.open .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn.open .hamburger-line:nth-child(2){opacity:0}.hamburger-btn.open .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;background:#f4eeebf7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:1001;animation:mobileFadeIn .22s ease}@keyframes mobileFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.mobile-menu-option{background:transparent;border:none;font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:700;font-style:italic;letter-spacing:.08em;color:var(--third_color);cursor:pointer;padding:10px 32px;border-radius:10px;transition:background-color .2s ease;width:70%;text-align:center}.mobile-menu-option:hover,.mobile-menu-option.active{background-color:#ebbfb459}@media(max-width:768px){.menu-header-container{display:none}.menu-header-mobile{display:block}}.lang-picker{position:fixed;top:18px;right:28px;font-family:inherit;z-index:1003}.lang-picker-toggle{display:flex;align-items:center;gap:7px;background:#ffffff9e;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.9);border-radius:8px;padding:6px 12px 6px 8px;cursor:pointer;box-shadow:0 2px 12px #90645821;transition:box-shadow .2s,background .2s,transform .15s}.lang-picker-toggle:hover{background:#ffffffd1;box-shadow:0 4px 18px #90645833;transform:translateY(-1px)}.lang-picker-flag{width:24px;height:24px;flex-shrink:0}.lang-picker-chevron{font-size:.5rem;color:var(--third_color);opacity:.75;transition:transform .2s ease}.lang-picker-toggle[aria-expanded=true] .lang-picker-chevron{transform:rotate(180deg)}.lang-picker-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#ffffffd1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.95);border-radius:8px;overflow:hidden;min-width:145px;box-shadow:0 8px 28px #90645829,0 2px 8px #00000012;animation:dropdownFadeIn .18s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.lang-picker-item{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;padding:9px 14px;cursor:pointer;transition:background-color .15s}.lang-picker-item:not(:last-child){border-bottom:1px solid rgba(176,128,116,.1)}.lang-picker-item:hover{background-color:#b080741a}.lang-picker-item.active{background-color:#b0807429}.lang-picker-item.active{border-left:3px solid var(--third_color);padding-left:11px}.lang-picker-label{font-size:.82rem;font-weight:600;color:var(--third_color);letter-spacing:.04em}.compteur{display:flex;align-items:center;justify-content:center;gap:3px}.compteur-unit{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffffe0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:1.2rem 2rem 1rem;min-width:60px;box-shadow:0 4px 18px #9064551a}.compteur-value{font-family:Great Vibes,cursive;font-size:3rem;font-weight:400;color:var(--third_color);line-height:1;text-shadow:1px 2px 12px rgba(176,128,116,.2)}.compteur-label{font-family:Cormorant Garamond,serif;font-size:.7rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--fourth_color);margin-top:.4rem}.compteur-sep{font-family:Great Vibes,cursive;font-size:2.5rem;color:var(--second_color);margin:0 .8rem 1.4rem;line-height:1;opacity:.8}@media(max-width:768px){.compteur-unit--minutes{display:none}.compteur{gap:6px;flex-wrap:wrap}.compteur-unit{padding:.9rem 1.2rem .8rem;min-width:64px;border-radius:10px}.compteur-value{font-size:2.4rem}.compteur-label{font-size:.6rem;letter-spacing:.16em}}#welcome-section{height:700px;min-height:unset;display:flex;align-items:center;justify-content:center;width:60%;margin:7rem auto 0;background-image:url(/background_photo.jpeg);background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:10px}.welcome-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2rem;margin-top:60%}.welcome-title{font-family:Great Vibes,cursive;font-size:7rem;font-weight:400;color:var(--third_color);margin:0;letter-spacing:.02em;text-shadow:1px 2px 8px rgba(176,128,116,.18)}.welcome-subtitle{font-family:Cormorant Garamond,serif;font-size:1.7rem;font-weight:700;font-style:italic;color:var(--third_color);max-width:1360px;margin:0;line-height:2;letter-spacing:.04em}.welcome-divider{width:80px;height:1px;background-color:var(--second_color);border:none;margin:0}@media(max-width:768px){#welcome-section{width:92%;height:auto;margin:5rem auto 2rem;background-image:none;background-color:#ffffff8c;padding:40px 20px;border-radius:14px;box-shadow:0 4px 24px #9064551a}.welcome-content{margin-top:0;gap:1.5rem}.welcome-subtitle{font-size:1.15rem;line-height:1.8}}#planning-section{font-family:Cormorant Garamond,serif;background-color:var(--background_color);min-height:unset!important;height:auto!important;padding:60px 40px 80px!important;box-sizing:border-box;margin-top:120px}.planning-timeline{display:flex;flex-direction:column;align-items:center;width:100%;max-width:480px}.planning-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.planning-time{font-family:Cormorant Garamond,serif;font-size:1.7rem;font-weight:600;font-style:italic;color:var(--third_color);letter-spacing:.08em;line-height:1.2}.planning-time-row{display:flex;align-items:center;gap:8px}.planning-map-link{opacity:.85;display:flex;align-items:center}.planning-map-icon{width:20px;height:20px;object-fit:contain}.planning-desc{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0}.planning-desc-row{display:flex;flex-direction:row;align-items:center;gap:8px}.planning-desc p{margin:0;font-family:Cormorant Garamond,serif;font-size:1.05rem;font-style:italic;color:var(--fifth_color);line-height:1.5;letter-spacing:.02em}.planning-arrow{stroke:var(--third_color);opacity:.6;margin:4px 0;flex-shrink:0}.tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.tooltip-box{position:fixed;background-color:var(--fifth_color);color:var(--first_color);font-size:.9rem;letter-spacing:.03em;padding:6px 12px;border-radius:6px;pointer-events:none;box-shadow:0 4px 12px #00000026;animation:tooltip-fade-in .15s ease forwards}.tooltip-box:after{content:"";position:absolute;border:5px solid transparent}.tooltip-top:after{top:100%;left:50%;transform:translate(-50%);border-top-color:var(--fifth_color)}.tooltip-bottom:after{bottom:100%;left:50%;transform:translate(-50%);border-bottom-color:var(--fifth_color)}.tooltip-left:after{left:100%;top:50%;transform:translateY(-50%);border-left-color:var(--fifth_color)}.tooltip-right:after{right:100%;top:50%;transform:translateY(-50%);border-right-color:var(--fifth_color)}@keyframes tooltip-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}#faq-section{font-family:Cormorant Garamond,serif;background-color:var(--background_color);min-height:unset!important;height:auto!important;padding:60px 40px 80px!important;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}.faq-accordion{width:100%;max-width:700px;display:flex;flex-direction:column;gap:0}.faq-group{display:flex;flex-direction:column;margin-bottom:8px}.faq-category{font-family:Cormorant Garamond,serif;font-size:1.3rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--third_color);margin:28px 0 6px;padding-left:2px;opacity:.75}.faq-item{width:100%;border-bottom:1px solid rgba(176,128,116,.2)}.faq-item:first-of-type{border-top:1px solid rgba(176,128,116,.2)}.faq-question{width:100%;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;min-height:48px;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:Cormorant Garamond,serif;font-size:1.1rem;font-style:italic;font-weight:600;color:var(--third_color);letter-spacing:.02em;line-height:1.4}.faq-question span{pointer-events:none}.faq-item.open .faq-question{color:var(--third_color)}.faq-chevron{font-size:1.2rem;font-weight:300;color:var(--third_color);flex-shrink:0;line-height:1;width:20px;text-align:center}.faq-answer{font-size:1.05rem;font-weight:700;font-style:italic;color:var(--fifth_color);line-height:1.7;letter-spacing:.01em;white-space:pre-line;margin:0 0 18px;padding:0 8px 0 16px;border-left:2px solid rgba(176,128,116,.3)}@media(max-width:600px){#faq-section{padding:40px 20px 60px!important}.faq-question{font-size:1rem;padding:16px}.faq-answer{font-size:.98rem}}#cagnotte-section{font-family:Cormorant Garamond,serif;background-color:var(--background_color);min-height:unset!important;height:auto!important;padding:60px 40px 80px!important;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:24px;margin-top:30px}.cagnotte-subtitle{font-family:Cormorant Garamond,serif;font-size:1.25rem;font-style:italic;color:var(--fifth_color);text-align:center;max-width:920px;line-height:1.7;margin:0}.cagnotte-row{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap;margin-top:12px}.cagnotte-qr-wrapper{display:flex;flex-direction:column;align-items:center}.cagnotte-qr{width:300px;height:300px;object-fit:contain;border-radius:12px;box-shadow:0 4px 16px #0000001a}.cagnotte-or{font-family:Great Vibes,cursive;font-size:2rem;color:var(--second_color);opacity:.8}.cagnotte-button{display:flex;flex-direction:row;align-items:center;gap:10px;background-color:var(--third_color);color:var(--first_color);text-decoration:none;padding:12px 24px;border-radius:30px;font-family:Cormorant Garamond,serif;font-size:1rem;font-style:italic;letter-spacing:.04em;box-shadow:0 4px 14px #0000001f;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.cagnotte-button:hover{background-color:var(--fourth_color);transform:translateY(-2px);box-shadow:0 6px 20px #0000002e}#pictures-section{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:80px 20px;box-sizing:border-box}.pictures-content{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;max-width:560px}.pictures-title{font-family:Great Vibes,cursive;font-size:4rem;font-weight:400;color:var(--second_color);text-shadow:1px 2px 8px rgba(0,0,0,.2);letter-spacing:.02em;text-transform:uppercase;margin:0}.pictures-subtitle{font-size:1rem;color:var(--fifth_color);line-height:1.7;margin:0}.pictures-button{display:flex;flex-direction:row;align-items:center;gap:10px;border:none;cursor:pointer;appearance:none;background-color:var(--third_color);color:var(--first_color);text-decoration:none;padding:12px 24px;border-radius:30px;font-family:Cormorant Garamond,serif;font-size:1rem;font-style:italic;letter-spacing:.04em;box-shadow:0 4px 14px #0000001f;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.pictures-button:hover{background-color:var(--fourth_color);transform:translateY(-2px);box-shadow:0 6px 20px #0000002e}#contact-section{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 50px 50px;min-height:unset!important;height:auto!important;box-sizing:border-box;font-family:Cormorant Garamond,serif;background-color:var(--fifth_color)}.contact-title{font-family:Great Vibes,cursive;font-size:4rem;font-weight:400;color:var(--second_color);text-shadow:1px 2px 8px rgba(0,0,0,.2);margin-top:30px;margin-bottom:10px;text-align:center;letter-spacing:.02em}.contact-columns{display:flex;flex-direction:row;gap:60px;justify-content:center;align-items:flex-start;width:100%;max-width:800px;padding-bottom:0}.contact-card{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.contact-name{font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:700;font-style:italic;color:var(--first_color);letter-spacing:.04em;line-height:1.4;margin-bottom:4px}.contact-field{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;text-align:center}.contact-label{font-family:Cormorant Garamond,serif;font-size:.9rem;font-weight:700;font-style:italic;color:var(--second_color);text-transform:uppercase;letter-spacing:.04em;opacity:.8}.contact-value{font-family:Cormorant Garamond,serif;font-size:1rem;font-style:italic;color:var(--first_color);letter-spacing:.04em;line-height:1.4}@media(max-width:600px){.contact-columns{flex-direction:column;gap:48px;align-items:center}}.chatbot-overlay{position:fixed;inset:0;z-index:999}.chatbot-wrapper{position:fixed;bottom:28px;right:28px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.chatbot-bubble{width:64px;height:64px;border-radius:50%;border:none;background-color:var(--third_color);box-shadow:0 4px 16px #0003;cursor:pointer;padding:0;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;flex-shrink:0}.chatbot-bubble:hover{transform:scale(1.08);box-shadow:0 6px 20px #00000047}.chatbot-bubble img{width:85%;height:85%;object-fit:cover}.chatbot-window{width:320px;border-radius:16px;overflow:hidden;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;background-color:var(--first_color);transform-origin:bottom right;transform:scale(.3) translateY(10px);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.34,1.4,.64,1),opacity .2s ease}.chatbot-window.is-open{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}.chatbot-header{background-color:var(--third_color);color:var(--first_color);padding:10px 16px;display:flex;align-items:center;font-family:Georgia,serif;font-size:1rem;letter-spacing:.04em;position:relative}.chatbot-header-name{flex:1}.chatbot-header-img{position:absolute;left:50%;transform:translate(-50%);height:40px;width:auto;object-fit:contain;pointer-events:none}.chatbot-messages{height:260px;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:8px}.chatbot-message{max-width:80%;padding:8px 12px;border-radius:12px;font-size:.88rem;line-height:1.4;word-break:break-word}.chatbot-message--bot p{margin:0}.chatbot-message--bot{background-color:var(--second_color);color:var(--fifth_color);align-self:flex-start;border-bottom-left-radius:4px}.chatbot-message--user{background-color:var(--fourth_color);color:var(--first_color);align-self:flex-end;border-bottom-right-radius:4px}.chatbot-typing{display:flex;align-items:center;gap:5px;padding:10px 14px}.chatbot-typing span{width:7px;height:7px;border-radius:50%;background-color:var(--third_color);animation:chatbot-bounce 1.2s infinite ease-in-out}.chatbot-typing span:nth-child(2){animation-delay:.2s}.chatbot-typing span:nth-child(3){animation-delay:.4s}@keyframes chatbot-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}.chatbot-send:disabled{opacity:.4;cursor:default}.chatbot-input-row{display:flex;border-top:1px solid var(--second_color);background-color:#fff}.chatbot-input{flex:1;border:none;padding:10px 14px;font-size:.88rem;outline:none;background:transparent;color:var(--fifth_color)}.chatbot-input::placeholder{color:var(--fourth_color);opacity:.8}.chatbot-send{background:none;border:none;padding:0 14px;font-size:1rem;color:var(--third_color);cursor:pointer;transition:color .2s}.chatbot-send:hover{color:var(--fifth_color)}.homepage-container{display:flex;flex-direction:column;width:100%}.homepage-background{position:fixed;left:4%;top:25%;transform:translateY(-50%);height:auto;width:13%;z-index:0;pointer-events:none}.homepage-container section{min-height:100vh;scroll-snap-align:start;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:100px 40px 40px;box-sizing:border-box}.section-title{font-family:Great Vibes,cursive;font-size:4rem;font-weight:400;color:var(--third_color);text-shadow:1px 2px 8px rgba(0,0,0,.15);margin-top:0;margin-bottom:20px;text-align:center;letter-spacing:.02em}@media(max-width:768px){.homepage-background{display:none}.homepage-container section{min-height:auto;scroll-snap-align:none;padding:80px 20px 40px}.section-title{font-size:2.8rem}}.gallery-page{min-height:100vh;background-color:var(--background_color);display:flex;flex-direction:column;align-items:center;padding-top:32px;padding-bottom:60px;position:relative}.gallery-page .homepage-background{position:fixed;left:4%;top:25%;transform:translateY(-50%);height:auto;width:13%;z-index:0;pointer-events:none}.gallery-top-right-tools{position:fixed;top:18px;right:18px;z-index:140;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.gallery-download-btn{border:1px solid rgba(176,128,116,.35);background:#ffffffdb;border-radius:10px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 24px #18120f24}.gallery-download-btn:disabled{opacity:.55;cursor:not-allowed}.gallery-download-icon{width:22px;height:22px;object-fit:contain;pointer-events:none}.gallery-grid-toolbar{width:100%;max-width:1200px;display:flex;justify-content:flex-end;align-items:center;padding:0 20px 12px;box-sizing:border-box;gap:8px}.gallery-view-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1.5px solid rgba(176,128,116,.25);background:#ffffffd1;box-shadow:0 4px 14px #18120f1a;cursor:pointer}.gallery-view-btn.active{border-color:var(--third_color)}.gallery-view-icon{width:22px;height:22px;object-fit:contain;pointer-events:none}.gallery-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px 40px;box-sizing:border-box;background:#fff9;position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(176,128,116,.2)}.gallery-back-btn{display:flex;align-items:center;gap:8px;background:transparent;border:1.5px solid var(--third_color);color:var(--third_color);border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.gallery-back-btn:hover{background-color:var(--third_color);color:#fff}.gallery-back-arrow{font-size:1.1rem;line-height:1}.gallery-title{font-size:1.4rem;font-weight:700;color:var(--third_color);letter-spacing:.08em;text-transform:uppercase;margin:0;text-align:center}.gallery-header-spacer{width:120px}.gallery-upload-wrapper{width:100%;max-width:620px;padding:24px 20px 0;box-sizing:border-box}.gallery-dropzone{width:100%;border:2.5px dashed var(--second_color);border-radius:16px;background:#ffffff80;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 20px;min-height:170px;box-sizing:border-box;cursor:pointer;position:relative}.gallery-dropzone:hover{border-color:var(--third_color);background:#ffffffb3}.gallery-dropzone.drag-over{border-color:var(--third_color);background:#b080741f}.gallery-dropzone.uploading{cursor:wait;opacity:.75}.gallery-file-input{display:none}.gallery-dropzone-icon{font-size:3rem;line-height:1;-webkit-user-select:none;user-select:none}.gallery-upload-icon{width:46px;height:46px;object-fit:contain;opacity:.92;filter:drop-shadow(0 4px 10px rgba(109,114,107,.22));pointer-events:none}.gallery-spinner{width:52px;height:52px;border-radius:50%;border:4px solid rgba(176,128,116,.18);border-top-color:var(--third_color);border-right-color:var(--fifth_color);box-shadow:0 0 0 3px #ffffff8c;animation:spin .85s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gallery-dropzone-text{font-size:1.1rem;font-weight:200;font-style:italic;color:var(--third_color);margin:0;text-align:center}.gallery-upload-error{text-align:center;color:#c0392b;font-size:.9rem;margin-top:12px}.gallery-pending-wrapper{margin-top:18px;display:flex;flex-direction:column;gap:12px}.gallery-pending-count{margin:0;text-align:center;color:var(--fourth_color);font-size:.9rem}.gallery-pending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.gallery-pending-item{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:1 / 1;background:#ffffffb3;border:1px solid rgba(176,128,116,.25)}.gallery-pending-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-pending-remove{position:absolute;top:8px;right:8px;border:none;border-radius:999px;width:28px;height:28px;background:#000000a6;color:#fff;font-size:.9rem;line-height:1;cursor:pointer}.gallery-pending-remove:disabled{opacity:.6;cursor:not-allowed}.gallery-pending-wrapper>.tooltip-wrapper{align-self:center}.gallery-confirm-upload-btn{background:#ffffffdb;border:1.5px solid rgba(176,128,116,.35);border-radius:10px;padding:10px 16px;height:52px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 4px 14px #18120f1f}.gallery-confirm-upload-btn:hover:not(:disabled){border-color:var(--third_color)}.gallery-confirm-upload-btn:disabled{opacity:.45;cursor:wait}.gallery-confirm-upload-btn .gallery-upload-icon{width:26px;height:26px;opacity:1;filter:none}.gallery-confirm-upload-label{font-size:1.05rem;font-weight:700;font-style:italic;color:var(--third_color);line-height:1}.gallery-grid-section{width:100%;max-width:1200px;padding:40px 20px 0;box-sizing:border-box}.gallery-fetch-error{margin:0 0 16px;text-align:center;color:#c0392b;font-size:.9rem}.gallery-code-modal-overlay{position:fixed;inset:0;background:#1c1a1861;display:flex;align-items:center;justify-content:center;padding:16px}.gallery-code-modal{width:100%;max-width:360px;min-height:200px;background:#fff;border-radius:12px;padding:14px;border:1px solid rgba(176,128,116,.18);box-shadow:0 14px 40px #18120f3d;display:flex;flex-direction:column;justify-content:space-around}.gallery-code-modal-title{margin:0;text-align:center;color:#1f2937;letter-spacing:0;font-size:1.5rem;font-weight:500;text-transform:none;line-height:1.35}.gallery-code-modal-bottom{display:flex;flex-direction:column}.gallery-code-inputs{display:flex;justify-content:center;gap:10px;margin:0}.gallery-code-input{width:42px;height:42px;border:1px solid transparent;border-radius:7px;text-align:center;font-size:1.35rem;font-weight:500;text-transform:uppercase;color:#334155;background:#e5e7eb;line-height:1}.gallery-code-input:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd59;background:#e9eefb}.gallery-code-input::placeholder{color:#374151;opacity:1}.gallery-sentinel{display:flex;justify-content:center;padding:24px 0 8px;min-height:40px}.gallery-empty{text-align:center;color:var(--fourth_color);font-size:1rem;margin-top:20px;font-style:italic}.gallery-count{text-align:center;color:var(--fourth_color);font-size:.88rem;margin:0 0 20px;letter-spacing:.04em}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.gallery-grid.compact{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.gallery-grid-item{position:relative;overflow:hidden;border-radius:10px;aspect-ratio:1 / 1;cursor:pointer;background:var(--second_color)}.gallery-grid-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-grid-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.gallery-grid-expand{color:#fff;font-size:1.8rem;opacity:0;text-shadow:0 1px 4px rgba(0,0,0,.4)}.gallery-grid-item:hover .gallery-grid-expand{opacity:1}.gallery-lightbox{position:fixed;inset:0;background:#1e1e1ceb;display:flex;align-items:center;justify-content:center;z-index:2000}.lightbox-img-wrapper{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:12px}.lightbox-img-wrapper img{max-width:90vw;max-height:82vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 40px #0009}.lightbox-counter{color:#ffffffb3;font-size:.85rem;margin:0;letter-spacing:.06em}.lightbox-close{position:absolute;top:20px;right:24px;background:transparent;border:none;color:#fffc;font-size:1.8rem;cursor:pointer;line-height:1;z-index:10}.lightbox-close:hover{color:#fff}.lightbox-nav{background:#ffffff1f;border:none;color:#fff;font-size:3rem;line-height:1;padding:12px 20px;cursor:pointer;border-radius:6px;z-index:10;-webkit-user-select:none;user-select:none}.lightbox-nav:hover{background:#ffffff40}@media(max-width:600px){.gallery-page .homepage-background{display:none}.gallery-top-right-tools{top:12px;right:12px;gap:8px}.gallery-download-btn{width:42px;height:42px}.gallery-download-icon{width:20px;height:20px}.gallery-compact-toggle{display:none}.gallery-header{padding:16px 20px}.gallery-title{font-size:1rem}.gallery-header-spacer{width:70px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.gallery-grid.compact{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px}.gallery-code-modal{max-width:320px;min-height:180px}.gallery-code-modal-title{font-size:.96rem}.lightbox-nav{font-size:2rem;padding:8px 14px}}
