body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{background-color:#ffe4e1;margin:0;padding:0}.reservation-form,body{font-family:Rama Gothic,sans-serif}.reservation-form{background-color:#fff0f5;border-radius:20px;box-shadow:0 10px 25px #0000001a;color:#333;margin:50px auto;max-width:500px;padding:30px 40px;text-align:center}.reservation-form h2{color:#ff69b4;font-size:26px;margin-bottom:25px}.reservation-form label{color:#2d2d2d;display:block;font-family:Rama Gothic,sans-serif;font-weight:700;margin-bottom:5px;text-align:left}.reservation-form .form-textarea,.reservation-form input,.reservation-form select{border:2px solid #ff69b4;border-radius:10px;font-family:Rama Gothic,sans-serif;font-size:14px;margin-bottom:20px;outline:none;padding:12px 15px;transition:all .3s ease;width:90%}.reservation-form .form-textarea{min-height:110px;resize:vertical}.reservation-form .form-textarea:focus,.reservation-form input:focus,.reservation-form select:focus{border-color:#dd5e89;box-shadow:0 0 10px #dd5e894d}.reservation-form button{background-image:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);background-size:200% auto;border:none;border-radius:12px;box-shadow:0 5px 15px #dd5e8966;color:#fff;cursor:pointer;font-family:Rama Gothic,sans-serif;font-size:16px;font-weight:700;padding:15px;transition:.5s;width:90%}.reservation-form button:hover{background-position:100%;color:#fff}.reservation-form select option{padding:10px}@media (max-width:600px){.reservation-form{margin:30px 10px;padding:20px}.reservation-form h2{font-size:22px}}.reservation-message{border-radius:10px;font-family:Rama Gothic,sans-serif;font-weight:700;margin-top:20px;padding:15px;text-align:center}.reservation-message.success{background-color:#ffe4e1;border:1px solid #ffe4e1;color:#2d2d2d}.reservation-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.btn-return{background-color:#ff69b4;border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-weight:700;margin:15px auto 0;padding:10px 25px;transition:.3s}.btn-return:hover{background-color:#dd5e89}.reservation-message .btn-return{background-image:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);background-size:200% auto;border-radius:12px;box-shadow:0 5px 15px #dd5e8966;color:#fff;padding:15px;transition:.5s;width:90%}.reservation-message .btn-return:hover{background-color:initial;background-position:100%}.reservation-form input[type=file]{background-color:#fff;cursor:pointer;padding:10px}.reservation-form input[type=file]::-webkit-file-upload-button{background-image:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Rama Gothic,sans-serif;font-weight:700;margin-right:10px;padding:10px 20px;-webkit-transition:.3s;transition:.3s}.reservation-form input[type=file]::file-selector-button{background-image:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Rama Gothic,sans-serif;font-weight:700;margin-right:10px;padding:10px 20px;transition:.3s}.reservation-form input[type=file]::-webkit-file-upload-button:hover{opacity:.9}.reservation-form input[type=file]::file-selector-button:hover{opacity:.9}.photos-preview{background-color:#fde8ef;border:2px dashed #ff69b4;border-radius:10px;margin-bottom:20px;padding:15px}.preview-label{color:#dd5e89;font-size:14px;font-weight:700;margin:0 0 15px}.preview-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.photo-item{align-items:center;background-color:#fff;border:1px solid #ff69b4;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;padding:8px}.photo-item img{border-radius:4px;height:80px;object-fit:cover;width:100%}.photo-name{color:#2d2d2d;font-size:11px;line-height:1.2;margin-top:5px;text-align:center;word-break:break-word}@media (max-width:600px){.preview-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.photo-item img{height:70px}}.form-hint{color:#888;font-size:13px;font-style:italic;margin:4px 0 0}.resa-calendar{background:#fafafa;border:1px solid #eee;border-radius:10px;padding:14px}.resa-cal-header{align-items:center;color:#444;display:flex;font-size:14px;font-weight:700;justify-content:space-between;margin-bottom:10px}.resa-cal-nav{background:none;border:none;color:#dd5e89;cursor:pointer;font-size:15px;font-weight:700;padding:4px 10px}.resa-cal-nav:disabled{color:#ccc;cursor:default}.resa-cal-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.resa-cal-weekday{color:#999;font-size:11px;font-weight:700;padding-bottom:4px;text-align:center}.resa-cal-day{-webkit-appearance:none;appearance:none;aspect-ratio:1;background:#0000;border:none;border-radius:6px;color:#ccc;font-family:inherit;font-size:13px;margin:0;min-height:38px}.resa-cal-day.empty{cursor:default}.resa-cal-day.ferme{color:#ddd;cursor:not-allowed}.resa-cal-day.ouvert{background:#fff0f5;color:#dd5e89;cursor:pointer;font-weight:700}.resa-cal-day.ouvert:hover{background:#ffe0eb}.resa-cal-day.selectionne{background:linear-gradient(90deg,#dd5e89 0,#f7bb97);color:#fff}@media (max-width:360px){.resa-cal-grid{gap:3px}.resa-cal-day{font-size:12px;min-height:34px}}.site-header{align-items:center;background:#fff;box-shadow:0 2px 8px #0000000f;display:flex;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.site-logo{color:#dd5e89;font-size:20px;font-weight:700;letter-spacing:.5px;text-decoration:none}.site-nav{align-items:center;display:flex;gap:20px}.site-nav a{color:#444;font-size:14px;font-weight:500;text-decoration:none}.site-nav a:hover{color:#dd5e89}.site-nav .nav-cta{background:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border-radius:20px;color:#fff;font-weight:700;padding:8px 18px}.site-nav .nav-admin-link{color:#bbb;font-size:12px}.site-nav .nav-admin-link:hover{color:#999}@media (max-width:480px){.site-header{padding:12px 16px}.site-nav{gap:12px}.site-nav a{font-size:13px}.site-nav .nav-cta{padding:7px 14px}}.home-page{color:#333;font-family:Arial,sans-serif;font-family:Rama Gothic,sans-serif;overflow-x:hidden}@font-face{font-family:Rama Gothic;src:url(/static/media/Rama-Gothic.cf1005e7f825c4b0a204.ttf) format("truetype")}.hero{align-items:center;background:url(/static/media/Logo_hero.27576a853bc208010a52.png) no-repeat top;background-size:contain;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:300px;justify-content:center;margin:0 auto;padding:10px 20px;text-align:center;width:calc(100% - 40px)}.hero button{background-color:#ff69b4;border-color:#333;border-radius:10px;border-width:2px;font-family:Rama Gothic,sans-serif;margin-top:250px;padding:10px 20px}.btn-grad,.hero button{color:#fff;cursor:pointer;font-size:16px}.btn-grad{background-image:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);background-size:200% auto;border:none;border-radius:10px;box-shadow:0 0 20px #eee;display:inline-block;margin:10px;padding:15px 45px;text-align:center;text-transform:uppercase;transition:.5s}.btn-grad:hover{background-position:100%;color:#fff;text-decoration:none}.prestations h3{color:#2d2d2d;font-weight:light;margin-bottom:20px;padding:0 20px 20px;text-align:center}.socialBtn{border:none;border-radius:7px;cursor:pointer;height:45px;position:relative;width:45px}.socialBtn,.socialBtn .svgContainer{align-items:center;background-color:initial;display:flex;justify-content:center;transition:all .3s}.socialBtn .svgContainer{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);border:none;border-radius:10px;height:100%;padding:0 10px;width:100%}.socialBtn .BG{background:#f09433;background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888);border-radius:18px;content:"";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#f09433",endColorstr="#bc1888",GradientType=1);height:100%;pointer-events:none;position:absolute;transition:all .3s;width:100%;z-index:-1}.socialBtn:hover .BG{transform:rotate(35deg);transform-origin:bottom}.socialBtn:hover .svgContainer{background-color:#9c9c9c33}.socials{display:flex;gap:15px;margin-bottom:20px}.socials,h2{justify-content:center}h2{font-size:24px;font-weight:700;margin-top:40px;text-align:center}.prestations .cards{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:40px 0;padding:0 20px}.card{max-width:90vw;text-align:center;width:200px}.card p{color:#3e3e3e;font-size:14px;margin-top:-30px}.card img{border-radius:10px;padding:auto}.card img,.carousel{height:300px;width:90%}.carousel{margin:0 auto;overflow:hidden;padding-bottom:36px;position:relative}.carousel-img{border-radius:10px;height:300px;left:50%;object-fit:cover;opacity:0;pointer-events:none;position:absolute;top:0;transform:translateX(-50%) scale(1.05);transition:opacity .8s ease,transform .8s ease;width:90%}.carousel-img.active{opacity:1;pointer-events:auto;transform:translateX(-50%) scale(1)}.carousel-dots{bottom:8px;display:flex;gap:6px;left:50%;position:absolute;transform:translateX(-50%);z-index:5}.dot{background:#ccc;border-radius:50%;height:8px;width:8px}.dot.active{background:#ff69b4}.about{background-color:#f7f7f7;padding:40px 20px}.about,.footer{justify-content:center;text-align:center}.footer{background-color:#333;color:#fff;padding:20px}.about li{display:flex;gap:20px;justify-content:center;list-style:none;padding:5px}.about ul{margin:0 auto;padding-left:0}@media (max-width:380px){.hero{height:220px}.hero button{font-size:14px;margin-top:170px;padding:8px 16px}.card{width:85vw}.card img,.carousel,.carousel-img{height:240px}h2{font-size:20px}.prestations h3{font-size:15px}}.admin-page{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh;padding:30px 20px}.admin-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:0 auto 40px;max-width:900px}.admin-page h1{color:#333;font-size:28px;margin:0}.admin-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.gestion-button{background:#fff;border:2px solid #dd5e89;border-radius:8px;color:#dd5e89;cursor:pointer;font-size:14px;font-weight:700;padding:9px 18px;transition:all .3s ease}.gestion-button:hover{background:#dd5e89;color:#fff}.logout-button{background:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 20px;transition:all .3s ease}.logout-button:hover{box-shadow:0 4px 8px #0003;transform:scale(1.05)}.calendar-container{margin:0 auto;max-width:900px}.calendar-header h2{font-size:24px}.nav-button{background:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border-radius:8px;color:#fff;padding:10px 20px;transition:all .3s ease}.nav-button:hover{box-shadow:0 4px 10px #dd5e8966;transform:scale(1.05)}.calendar-grid{grid-gap:10px;gap:10px}.weekday-header{color:#ff69b4;font-size:14px;padding:12px 0}.calendar-day{align-items:center;aspect-ratio:1;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:60px;transition:all .2s ease}.calendar-day.empty{background:#0000;border:none;cursor:default}.calendar-day:not(.empty):hover{background-color:#fff0f5;border-color:#ff69b4}.calendar-day.booked{background-color:#ffe4e1;border-color:#ff69b4;font-weight:700}.calendar-day.booked:hover{background-color:#ffd0db;box-shadow:0 4px 8px #dd5e894d;transform:translateY(-2px)}.calendar-day.today{background-color:#f1f8e9;border-color:#4caf50}.day-number{color:#333;font-size:16px;font-weight:700}.booked-indicator{color:#ff69b4;font-size:20px;margin-top:2px}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000004d;max-height:85vh;max-width:600px;overflow-y:auto;padding:30px;position:relative}.close-btn{align-items:center;background:#f0f0f0;border-radius:50%;display:flex;font-size:18px;height:30px;justify-content:center;position:absolute;right:15px;top:15px;transition:all .2s ease;width:30px}.close-btn:hover{background:#ff69b4;color:#fff}.modal-content h2{color:#ff69b4;font-size:24px;margin-bottom:20px;margin-top:0}.reservation-details{display:flex;flex-direction:column;gap:15px}.detail-row{grid-gap:15px;align-items:flex-start;border-bottom:1px solid #f0f0f0;display:grid;gap:15px;grid-template-columns:120px 1fr;padding-bottom:12px}.detail-label{color:#ff69b4;font-weight:700}.detail-value{color:#333;word-break:break-word}.description-text{white-space:pre-wrap}.photos-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:10px}.photo-thumbnail{border:2px solid #f0f0f0;border-radius:8px;cursor:pointer;height:auto;max-height:400px;object-fit:contain;transition:all .2s ease;width:100%}.photo-thumbnail:hover{border-color:#ff69b4;box-shadow:0 4px 8px #0003;transform:scale(1.05)}.error-message{text-align:center}@media (max-width:768px){.admin-page{padding:15px}.calendar-container{padding:20px}.calendar-header{flex-direction:column;gap:15px}.calendar-day{min-height:50px}.day-number{font-size:14px}.modal-content{margin:20px;max-height:90vh}.detail-row{gap:8px;grid-template-columns:1fr}}.day-reservations-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.day-reservation-item{border:1px solid #eee;border-radius:8px;cursor:pointer;padding:12px 14px;transition:all .15s ease}.day-reservation-item:hover{background:#fff0f5;border-color:#dd5e89}.admin-header h1{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.new-badge{background:#e63963;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:3px 10px;vertical-align:middle}.calendar-day{position:relative}.new-dot{background:#e63963;border-radius:50%;height:8px;position:absolute;right:4px;top:4px;width:8px}.calendar-day.has-new{border:1px solid #e63963}.inline-new-badge{background:#e63963;border-radius:10px;color:#fff;font-size:10px;font-weight:700;margin-left:8px;padding:2px 7px;vertical-align:middle}.cancel-reservation-button{background:#fdecea;border:none;border-radius:8px;color:#c62828;cursor:pointer;font-size:14px;font-weight:700;margin-top:20px;padding:12px;width:100%}.cancel-reservation-button:hover{background:#fbdada}.gestion-page{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh;padding:30px 20px}.gestion-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:0 auto 30px;max-width:900px}.gestion-header h1{color:#333;font-size:28px;margin:0}.error-message{max-width:900px}.gestion-section{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:0 auto 30px;max-width:900px;padding:30px}.section-title-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.gestion-section h2{color:#ff69b4;font-size:22px;margin:0}.add-button:hover,.save-button:hover{transform:scale(1.03)}.edit-card{background:#fafafa;border:1px solid #eee;border-radius:10px;display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:20px}.edit-card input[type=number],.edit-card input[type=text],.edit-card textarea{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.edit-card textarea{min-height:70px;resize:vertical}.field-row{display:flex;gap:12px}.field-row input{flex:1 1}.checkbox-row{align-items:center;color:#444;display:flex;font-size:14px;gap:8px}.items-list{display:flex;flex-direction:column;gap:12px}.item-card{align-items:flex-start;border:1px solid #eee;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.item-info strong{color:#333;font-size:16px}.item-sub{color:#888;display:block;font-size:13px;margin-top:2px}.item-desc{color:#666;font-size:13px;margin:6px 0 0;max-width:550px}.item-actions{display:flex;flex-shrink:0;gap:8px}.item-actions button{background:#eee;border:none;border-radius:8px;color:#444;cursor:pointer;font-size:13px;font-weight:700;padding:8px 14px}.dispo-page{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh;padding:30px 20px}.dispo-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:0 auto 10px;max-width:1100px}.dispo-header h1{color:#333;font-size:28px;margin:0}.dispo-header-links{display:flex;gap:18px}.back-link{color:#dd5e89;font-size:14px;font-weight:700;text-decoration:none}.back-link:hover{text-decoration:underline}.dispo-hint{color:#777;font-size:14px;margin:0 auto 20px}.dispo-hint,.dispo-layout,.error-message{max-width:1100px}.dispo-layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;margin:0 auto}.calendar-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;flex:1 1 500px;padding:30px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.calendar-header h2{color:#ff69b4;font-size:22px;margin:0}.nav-button{background:none;border:none;color:#dd5e89;cursor:pointer;font-size:14px;font-weight:700}.calendar-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,1fr)}.weekday-header{color:#999;font-size:12px;font-weight:700;padding-bottom:8px;text-align:center}.dispo-day{align-items:center;aspect-ratio:1;border:1px solid #eee;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;justify-content:center;transition:all .15s ease}.dispo-day:hover{border-color:#dd5e89}.dispo-day.empty{border:none;cursor:default}.dispo-day.today .day-number{color:#dd5e89;font-weight:700}.dispo-day.selected{background:#fff0f5;border-color:#dd5e89}.day-number{color:#444;font-size:13px}.slot-badge{border-radius:10px;font-size:11px;font-weight:700;padding:1px 6px}.badge-open{background:#e6f7ee;color:#1e7e4f}.badge-full{background:#fdecea;color:#c62828}.badge-none{display:none}.day-editor{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;flex:1 1 280px;max-width:320px;padding:24px}.day-editor-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.day-editor-header h3{color:#333;font-size:16px;margin:0;text-transform:capitalize}.close-btn{background:none;border:none;color:#999;cursor:pointer;font-size:16px}.heures-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.heure-chip{align-items:center;background:#fafafa;border:1px solid #eee;border-radius:8px;display:flex;font-size:14px;justify-content:space-between;padding:8px 12px}.heure-chip.reserved{background:#fff8f0}.heure-chip button{background:none;border:none;color:#c62828;cursor:pointer;font-size:13px}.reserved-label{color:#b8860b;font-size:11px;font-style:italic}.add-heure-row{display:flex;gap:8px;margin-bottom:16px}.add-heure-row input{border:1px solid #ddd;border-radius:8px;flex:1 1;padding:8px}.add-heure-row button{background:#eee;font-size:13px;padding:8px 12px}.add-heure-row button,.save-day-button{border:none;border-radius:8px;cursor:pointer;font-weight:700}.save-day-button{background:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);color:#fff;font-size:14px;padding:12px;width:100%}.save-day-button:disabled{cursor:default;opacity:.6}.empty-hint{font-size:13px}.duplicate-row{align-items:center;color:#555;display:flex;flex-wrap:wrap;font-size:13px;gap:6px;margin-bottom:16px}.weeks-input{border:1px solid #ddd;border-radius:6px;padding:4px 6px;text-align:center;width:45px}.vitrine-page{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh;padding:30px 20px}.vitrine-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:0 auto 10px;max-width:1000px}.vitrine-header h1{color:#333;font-size:28px;margin:0}.vitrine-hint{color:#777;font-size:14px;margin:0 auto 20px;max-width:1000px}.error-message{background:#fdecea;border-radius:8px;color:#b71c1c;margin:0 auto 20px;max-width:1000px;padding:12px 16px}.add-button,.save-button{background:linear-gradient(90deg,#dd5e89 0,#f7bb97 51%,#dd5e89);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:14px;font-weight:700;margin:0 auto 20px;max-width:1000px;padding:10px 18px}.save-button{display:inline-block;margin:0}.save-button:disabled{cursor:default;opacity:.6}.themes-list{gap:20px;margin:0 auto;max-width:1000px}.theme-card,.themes-list{display:flex;flex-direction:column}.theme-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;gap:14px;padding:24px}.theme-card input[type=text],.theme-card textarea,.theme-card.editing input[type=text]{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.theme-card textarea{min-height:60px;resize:vertical}.photos-count{color:#888;font-size:13px;margin:0}.edit-actions{display:flex;gap:10px}.cancel-button{background:#eee;border:none;border-radius:8px;color:#555;cursor:pointer;font-size:14px;font-weight:700;padding:10px 18px}.theme-header-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.theme-header-row strong{color:#333;font-size:18px}.theme-desc{color:#666;font-size:13px;margin:6px 0 0;max-width:500px}.theme-actions{display:flex;flex-shrink:0;gap:8px}.theme-actions button{background:#eee;border:none;border-radius:8px;color:#444;cursor:pointer;font-size:13px;font-weight:700;padding:8px 14px}.delete-button{background:#fdecea!important;color:#c62828!important}.photos-grid{display:flex;flex-wrap:wrap;gap:10px}.photo-thumb-wrap{height:90px;position:relative;width:90px}.photo-thumb{border:1px solid #eee;border-radius:8px;height:90px;object-fit:cover;width:90px}.remove-photo-btn{background:#c62828;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:12px;height:22px;line-height:1;position:absolute;right:-6px;top:-6px;width:22px}.add-photo-tile{align-items:center;border:2px dashed #ddd;border-radius:8px;color:#999;cursor:pointer;display:flex;font-size:12px;height:90px;justify-content:center;text-align:center;width:90px}.add-photo-tile:hover{border-color:#dd5e89;color:#dd5e89}.empty-hint{color:#999;font-style:italic;margin:0 auto;max-width:1000px}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Arial,sans-serif;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:400px;padding:40px;width:100%}.login-box h1{color:#333;font-size:28px;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 5px #667eea4d;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:transform .2s;width:100%}.login-button:hover:not(:disabled){transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.7}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;color:#721c24;margin-bottom:20px;padding:12px}.demo-credentials{border-top:1px solid #eee;color:#666;font-size:12px;margin-top:30px;padding-top:20px}.demo-credentials code{background-color:#f5f5f5;border-radius:3px;font-family:Courier New,monospace;padding:2px 6px}
/*# sourceMappingURL=main.dccbf680.css.map*/