@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap";:root{--teal:#1b6b5a;--teal-light:#2a9d7f;--teal-dark:#134a3d;--gold:#c9956a;--gold-light:#e8b99a;--cream:#f8f5f0;--dark:#0f1c17;--rose:#8b1a3a;--white:#fff;--gray-100:#f4f4f4;--gray-300:#e0e0e0;--gray-500:#9a9a9a;--gray-700:#555;--success:#1b6b5a;--danger:#c0392b;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--shadow-sm:0 2px 8px #0f1c170f;--shadow-md:0 8px 24px #0f1c171f;--shadow-lg:0 16px 40px #0f1c172e;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{overscroll-behavior-y:none}body{background:var(--dark);color:var(--dark);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}#root{background:var(--cream);max-width:480px;min-height:100vh;margin:0 auto;position:relative;box-shadow:0 0 60px #00000040}@media (width>=540px) and (width<=767px){body{justify-content:center;padding:0;display:flex}}@media (width>=768px){body{padding:0;display:block}#root{max-width:1200px;box-shadow:none}}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:0;height:0}.serif{font-family:Playfair Display,serif}.scroll-hide{scrollbar-width:none;-ms-overflow-style:none}.scroll-hide::-webkit-scrollbar{display:none}.app-header{background:var(--dark);padding-top:var(--safe-top);z-index:400;position:sticky;top:0}.header-row{align-items:center;gap:.25rem;padding:.85rem .5rem;display:flex}.header-back,.header-side-btn{width:36px;height:36px;color:var(--white);background:#ffffff14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex}.header-side-btn{font-size:1.05rem}.header-spacer{flex-shrink:0;width:36px;height:36px}.header-titles{text-align:center;flex:1;min-width:0}.header-title{color:var(--white);white-space:nowrap;text-overflow:ellipsis;font-family:Playfair Display,serif;font-size:1.05rem;font-weight:700;overflow:hidden}.header-subtitle{color:var(--gold-light);margin-top:.1rem;font-size:.68rem}.bottom-nav{background:var(--white);width:100%;max-width:480px;padding:.5rem .25rem calc(.5rem + var(--safe-bottom));z-index:500;border-top:1px solid var(--gray-100);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 20px #0f1c1714}@media (width>=768px){.bottom-nav{max-width:1200px}}.bn-item{border-radius:var(--radius-sm);flex-direction:column;flex:1;align-items:center;gap:.15rem;min-width:0;padding:.3rem .5rem;transition:all .2s;display:flex}.bn-icon{opacity:.5;font-size:1.25rem;line-height:1;transition:all .2s}.bn-label{color:var(--gray-500);letter-spacing:.2px;white-space:nowrap;font-size:.62rem;font-weight:600}.bn-item.active .bn-icon{opacity:1;transform:translateY(-2px)scale(1.1)}.bn-item.active .bn-label{color:var(--teal)}.home-screen{padding-bottom:5.5rem}.home-hero{background:linear-gradient(135deg, var(--dark) 0%, #1b3a2d 55%, #0f2820 100%);padding:calc(2.5rem + var(--safe-top)) 1.5rem 2rem;text-align:center;position:relative;overflow:hidden}.home-hero:before{content:"";background:radial-gradient(at 30% 30%,#2a9d7f2e 0%,#0000 60%);position:absolute;inset:0}.home-badge{color:var(--gold-light);letter-spacing:2px;text-transform:uppercase;border:1px solid #c9956a80;border-radius:100px;margin-bottom:.9rem;padding:.3rem .9rem;font-size:.65rem;display:inline-block;position:relative}.home-logo{border-radius:14px;width:min(78%,260px);margin:0 auto 1rem;display:block;position:relative;box-shadow:0 10px 30px #00000059}.home-title{color:var(--white);font-size:2rem;font-weight:700;position:relative}.home-title em{color:var(--teal-light);font-style:italic}.home-tagline{color:var(--gold-light);letter-spacing:1px;margin-top:.2rem;margin-bottom:.6rem;font-size:.85rem;position:relative}.home-motto{color:#ffffff8c;margin-bottom:1.25rem;font-size:.75rem;font-style:italic;position:relative}.home-meta{flex-direction:column;align-items:center;gap:.35rem;display:flex;position:relative}.home-meta span{color:#fff9;font-size:.72rem}.home-section-label{letter-spacing:2px;text-transform:uppercase;color:var(--teal);padding:1.25rem 1.25rem .6rem;font-size:.7rem;font-weight:700}.home-cat-grid{grid-template-columns:1fr 1fr;gap:.75rem;padding:0 1.25rem;display:grid}.home-cat-card{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--gray-100);flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem 1rem;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.home-cat-card:active{transform:scale(.97)}.home-cat-icon{font-size:1.6rem}.home-cat-name{color:var(--dark);font-family:Playfair Display,serif;font-size:.95rem;font-weight:700}.home-cat-arrow{color:var(--gray-500);font-size:.9rem;position:absolute;top:1rem;right:1rem}.cat-women{border-top:3px solid var(--rose)}.cat-men{border-top:3px solid #2a6db5}.cat-bridal{border-top:3px solid var(--gold)}.cat-cosmo{border-top:3px solid #6a4ab5}.home-bookings-link{text-align:center;background:var(--white);border:1.5px dashed var(--teal-light);color:var(--teal);border-radius:var(--radius-md);margin:1.25rem 1.25rem 0;padding:.85rem;font-size:.85rem;font-weight:600;display:block}.home-footer{text-align:center;margin-top:2rem;padding:1.5rem}.home-footer p{color:var(--teal);margin-bottom:.6rem;font-family:Playfair Display,serif;font-size:.85rem;font-style:italic}.home-footer-small{line-height:1.6;color:var(--gray-500)!important;font-family:Inter,sans-serif!important;font-size:.68rem!important;font-style:normal!important}.cat-view{padding-bottom:7rem}.cat-view-banner{background:var(--white);border-bottom:1px solid var(--gray-100);align-items:center;gap:.85rem;padding:1.1rem 1.25rem;display:flex}.cat-view-icon{background:var(--cream);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;display:flex}.cat-view-title{color:var(--dark);font-size:1.15rem;font-weight:700}.cat-view-sub{color:var(--gray-500);margin-top:.1rem;font-size:.72rem}.cat-view-tabs{background:var(--white);border-bottom:1px solid var(--gray-100);gap:.6rem;padding:.9rem 1.25rem 0;display:flex}.cat-view-tab{border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--cream);color:var(--gray-700);cursor:pointer;border:none;flex:1;padding:.6rem .5rem;font-size:.82rem;font-weight:600;transition:background .15s,color .15s}.cat-view-tab.active{background:var(--teal);color:var(--white)}.cat-view-empty{text-align:center;color:var(--gray-500);background:var(--cream);border-radius:var(--radius-md);margin:2.5rem 1.25rem;padding:1.5rem 1rem;font-size:.88rem}.service-group{margin-top:1.1rem}.service-group-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--teal);padding:0 1.25rem .6rem;font-size:.68rem;font-weight:700}.photo-grid{grid-template-columns:1fr;gap:.9rem;padding:0 1.25rem;display:grid}.photo-grid-package{grid-template-columns:1fr}@media (width>=560px){.photo-grid,.photo-grid-package{grid-template-columns:1fr 1fr}}@media (width>=900px){.photo-grid{grid-template-columns:repeat(3,1fr)}.photo-grid-package{grid-template-columns:repeat(2,1fr)}}.photo-card{background:var(--white);border-radius:var(--radius-md);border:1.5px solid var(--gray-100);text-align:left;cursor:pointer;flex-direction:column;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.photo-card:focus-visible{outline:2px solid var(--teal-light);outline-offset:2px}.photo-card:active{transform:scale(.97)}.photo-card.selected{border-color:var(--teal-light);box-shadow:0 0 0 2px #2a9d7f2e}.photo-card-package.selected{border-color:var(--gold);box-shadow:0 0 0 2px #c9956a40}.photo-card-img-wrap{background:var(--cream);width:100%;height:260px;position:relative;overflow:hidden}.photo-card-package .photo-card-img-wrap{aspect-ratio:2/3;height:auto}@media (width>=900px){.photo-card-img-wrap{height:300px}}.photo-card-img-wrap img{object-fit:cover;width:100%;height:100%;display:block}.photo-card-package .photo-card-img-wrap img{object-fit:cover;background:var(--cream)}.photo-nav{width:28px;height:28px;color:var(--white);z-index:3;cursor:pointer;background:#0f1c1773;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.photo-nav-prev{left:.5rem}.photo-nav-next{right:.5rem}.photo-dots{z-index:3;gap:.35rem;display:flex;position:absolute;bottom:.6rem;left:50%;transform:translate(-50%)}.photo-dot{cursor:pointer;background:#ffffff8c;border-radius:50%;width:6px;height:6px;transition:all .15s}.photo-dot.active{background:var(--white);border-radius:4px;width:18px}.photo-card-badge{background:var(--gold);color:#fff;letter-spacing:.5px;box-shadow:var(--shadow-sm);border-radius:100px;padding:.2rem .6rem;font-size:.62rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.photo-card-check{background:var(--teal-light);color:#fff;opacity:0;width:24px;height:24px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex;position:absolute;top:.5rem;right:.5rem;transform:scale(.6)}.photo-card-check.show{opacity:1;transform:scale(1)}.photo-card-body{flex-direction:column;flex:1;padding:.6rem .7rem .75rem;display:flex}.photo-card-name{color:var(--dark);margin-bottom:.2rem;font-size:.8rem;font-weight:600;line-height:1.3}.photo-card-package .photo-card-name{font-family:Playfair Display,serif;font-size:1rem;font-weight:700}.photo-card-duration{color:var(--gray-500);margin-bottom:.3rem;font-size:.65rem}.photo-card-price{color:var(--teal);margin-top:auto;font-size:.82rem;font-weight:700}.photo-card-package .photo-card-price{color:var(--rose);margin-bottom:.4rem;font-size:1.05rem}.photo-card-includes{color:var(--gray-700);grid-template-columns:1fr 1fr;gap:.2rem .5rem;margin-top:.2rem;font-size:.72rem;list-style:none;display:grid}.photo-card-includes li:before{content:"✓ ";color:var(--teal-light)}.cat-view-floatbar{background:var(--dark);border-radius:var(--radius-lg);width:calc(100% - 1.5rem);max-width:450px;box-shadow:var(--shadow-lg);z-index:450;justify-content:space-between;align-items:center;padding:.75rem 1rem;animation:.25s ease-out slideUp;display:flex;position:fixed;bottom:4.5rem;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.floatbar-info{flex-direction:column;gap:.1rem;display:flex}.floatbar-count{color:#fff9;font-size:.68rem}.floatbar-total{color:var(--white);font-size:1.05rem;font-weight:700}.floatbar-btn{background:var(--teal-light);color:var(--white);border-radius:100px;padding:.65rem 1.25rem;font-size:.85rem;font-weight:700}.booking-form-screen{padding:1.1rem 1.25rem 2rem}.bf-summary{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--gray-100);margin-bottom:1.25rem;padding:1rem 1.1rem}.bf-summary-title{letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-500);margin-bottom:.6rem;font-size:.7rem;font-weight:700}.bf-summary-row{color:var(--dark);justify-content:space-between;padding:.25rem 0;font-size:.82rem;display:flex}.bf-summary-total{border-top:1px solid var(--gray-100);color:var(--dark);justify-content:space-between;margin-top:.5rem;padding-top:.5rem;font-size:.95rem;font-weight:700;display:flex}.bf-summary-total span:last-child{color:var(--teal)}.bf-section{margin-bottom:1rem}.bf-row-2{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.bf-label{color:var(--dark);letter-spacing:.5px;text-transform:uppercase;margin-bottom:.4rem;font-size:.7rem;font-weight:700;display:block}.bf-input{border-radius:var(--radius-sm);border:1.5px solid var(--gray-300);width:100%;color:var(--dark);background:var(--white);outline:none;padding:.7rem .9rem;font-size:.88rem;transition:border-color .15s}.bf-input:focus{border-color:var(--teal-light)}.bf-textarea{resize:none;height:70px}.bf-slots{flex-wrap:wrap;gap:.45rem;margin-top:.3rem;display:flex}.bf-slot{border-radius:var(--radius-sm);border:1.5px solid var(--gray-300);background:var(--white);color:var(--dark);padding:.4rem .7rem;font-size:.74rem;transition:all .15s;position:relative}.bf-slot-tag{background:var(--gold);color:var(--white);white-space:nowrap;border-radius:100px;padding:.1rem .35rem;font-size:.55rem;font-weight:700;line-height:1.4;position:absolute;top:-8px;right:-6px}.bf-slot.active{background:var(--dark);color:var(--white);border-color:var(--dark)}.bf-slot.booked{background:var(--gray-100);color:var(--gray-300)}.bf-slot:disabled{cursor:not-allowed}.bf-hint{color:var(--gray-500);margin-top:.4rem;font-size:.72rem}.bf-error{color:var(--danger);border-radius:var(--radius-sm);background:#fdecea;margin-bottom:1rem;padding:.6rem .8rem;font-size:.78rem}.bf-actions{gap:.6rem;margin-top:.5rem;display:flex}.bf-back-btn{background:var(--white);border:1.5px solid var(--gray-300);color:var(--dark);border-radius:var(--radius-md);flex:none;padding:.85rem 1rem;font-size:.82rem;font-weight:600}.bf-confirm-btn{background:var(--teal-light);color:var(--white);border-radius:var(--radius-md);flex:1;padding:.85rem;font-size:.88rem;font-weight:700}.wbf-banner{background:var(--cream);border-radius:var(--radius-md);align-items:flex-start;gap:.7rem;margin-bottom:1.1rem;padding:.9rem 1rem;display:flex}.wbf-banner-icon{flex-shrink:0;font-size:1.4rem}.wbf-banner-title{color:var(--dark);margin-bottom:.2rem;font-size:.95rem;font-weight:700}.wbf-banner-sub{color:var(--gray-700);font-size:.75rem;line-height:1.4}.wbf-full-hint{color:var(--danger)}.payment-screen{padding:1.1rem 1.25rem 2rem}.pay-amount-box{background:var(--dark);border-radius:var(--radius-md);text-align:center;margin-bottom:1rem;padding:1.1rem}.pay-amount-label{color:#ffffff80;letter-spacing:1px;text-transform:uppercase;margin-bottom:.3rem;font-size:.7rem;display:block}.pay-amount-value{color:var(--teal-light);font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700;display:block}.pay-qr-card{background:var(--white);border-radius:var(--radius-md);text-align:center;border:1px solid var(--gray-100);margin-bottom:1rem;padding:.25rem}.qr-wrap{border:1px dashed var(--gray-300);border-radius:var(--radius-sm);margin-bottom:.75rem;padding:0;display:inline-block}.qr-image{object-fit:contain;width:300px;height:600px;display:block}.pay-upi-id{color:var(--dark);margin-bottom:.6rem;font-size:1.5rem;font-weight:500}.pay-upi-id-copy{cursor:pointer;background:0 0;border:none;border-radius:100px;align-items:center;gap:.4rem;padding:.3rem .6rem;font-family:inherit;display:inline-flex}.pay-upi-id-copy:active{background:var(--cream)}.pay-upi-copy-hint{color:var(--teal-light);font-size:.72rem;font-weight:600}.pay-apps-row{justify-content:center;gap:.5rem;display:flex}.pay-app-chip{background:var(--cream);color:var(--gray-700);border-radius:100px;padding:.3rem .8rem;font-size:.7rem;font-weight:600}.pay-instructions{border-radius:var(--radius-sm);background:#fff8e7;margin-bottom:1.1rem;padding:.85rem 1rem}.pay-instructions p{color:var(--gray-700);font-size:.74rem;line-height:1.7}.upload-box{border:1.5px dashed var(--gray-300);border-radius:var(--radius-md);background:var(--white);width:100%;color:var(--gray-500);flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;font-size:.78rem;font-weight:500;display:flex}.upload-icon{font-size:1.6rem}.upload-preview{border:1.5px solid var(--teal-light);border-radius:var(--radius-md);background:var(--white);overflow:hidden}.upload-preview img{object-fit:cover;width:100%;height:140px;display:block}.upload-preview-info{color:var(--teal);justify-content:space-between;align-items:center;padding:.6rem .85rem;font-size:.74rem;font-weight:600;display:flex}.upload-change{color:var(--gray-500);font-weight:500}.success-screen{text-align:center;padding:2rem 1.5rem 3rem}.success-icon{margin-bottom:1rem;font-size:3.5rem}.success-title{color:var(--teal);margin-bottom:.6rem;font-size:1.4rem;font-weight:700}.success-text{color:var(--gray-700);margin-bottom:1.25rem;font-size:.85rem;line-height:1.6}.success-card{background:var(--white);border-radius:var(--radius-md);text-align:left;border:1px solid var(--gray-100);margin-bottom:1.25rem;padding:1rem 1.1rem}.success-row{border-bottom:1px solid var(--gray-100);justify-content:space-between;gap:1rem;padding:.4rem 0;font-size:.78rem;display:flex}.success-row span:first-child{color:var(--gray-500);flex-shrink:0}.success-row span:last-child{color:var(--dark);text-align:right;font-weight:500}.success-row.total{border-bottom:none;padding-top:.6rem;font-size:.9rem;font-weight:700}.success-row.total span:last-child{color:var(--teal)}.wa-confirm-btn{color:#fff;border-radius:var(--radius-md);background:#25d366;border:none;justify-content:center;align-items:center;gap:.6rem;width:100%;margin-bottom:1rem;padding:.85rem;font-size:.88rem;font-weight:700;display:flex}.success-note{color:var(--gray-500);margin-bottom:1.5rem;font-size:.72rem;line-height:1.6}.success-done-btn{background:var(--cream);border:1.5px solid var(--gray-300);width:100%;color:var(--dark);border-radius:var(--radius-md);padding:.8rem;font-size:.85rem;font-weight:600}.star-rating{gap:.15rem;display:flex}.star-btn{color:var(--gray-300);background:0 0;border:none;padding:.1rem;font-size:1.4rem;line-height:1;transition:color .15s,transform .1s}.star-btn.filled{color:var(--gold)}.star-rating:not(.readonly) .star-btn:active{transform:scale(1.2)}.star-small .star-btn{font-size:1rem}.star-rating.readonly .star-btn{cursor:default}.mybookings-empty{text-align:center;color:var(--gray-500);flex-direction:column;justify-content:center;align-items:center;padding:5rem 1.5rem;display:flex}.mybookings-empty-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.mybookings-empty p{color:var(--gray-700);font-size:.9rem;font-weight:600}.mybookings-empty-sub{margin-top:.3rem;color:var(--gray-500)!important;font-size:.75rem!important;font-weight:400!important}.mb-phone-lookup{gap:.5rem;width:100%;max-width:300px;margin-top:1.1rem;display:flex}.mb-phone-current{background:var(--white);border:1.5px solid var(--gray-100);border-radius:var(--radius-sm);color:var(--gray-700);justify-content:space-between;align-items:center;gap:.75rem;margin:.9rem 1.25rem .5rem;padding:.6rem .9rem;font-size:.78rem;display:flex}.mb-change-number{color:var(--teal-light);white-space:nowrap;font-size:.75rem;font-weight:600;text-decoration:underline}.mb-phone-lookup input{border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);outline:none;flex:1;padding:.65rem .85rem;font-size:.85rem}.mb-phone-lookup input:focus{border-color:var(--teal-light)}.mb-phone-lookup button{background:var(--teal-light);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;padding:.65rem 1.1rem;font-size:.8rem;font-weight:600}.mb-phone-lookup button:disabled{background:var(--gray-300);cursor:not-allowed}.mybookings-list{flex-direction:column;gap:.85rem;padding:1.1rem 1.25rem 6rem;display:flex}.mb-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--gray-100);padding:.9rem 1rem}.mb-card-head{justify-content:space-between;margin-bottom:.5rem;display:flex}.mb-status{border-radius:100px;padding:.2rem .6rem;font-size:.68rem;font-weight:700}.mb-status.status-pending{color:#b8730a;background:#fff4e0}.mb-status.status-confirmed{color:var(--teal);background:#e8f7f1}.mb-status.status-rejected{color:var(--danger);background:#fdecea}.mb-date{color:var(--gray-500);font-size:.72rem}.mb-services{color:var(--dark);margin-bottom:.5rem;font-size:.85rem;font-weight:600;line-height:1.4}.mb-row{color:var(--gray-700);justify-content:space-between;padding:.15rem 0;font-size:.74rem;display:flex}.mb-rating-section{border-top:1px solid var(--gray-100);margin-top:.7rem;padding-top:.7rem}.mb-rating-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.35rem;font-size:.7rem;font-weight:600;display:block}.mb-rating-given{flex-direction:column;gap:.3rem;display:flex}.mb-review-text{color:var(--gray-700);margin-top:.2rem;font-size:.78rem;font-style:italic;line-height:1.5}.mb-rating-prompt{flex-direction:column;gap:.3rem;display:flex}.mb-review-box{flex-direction:column;gap:.5rem;margin-top:.6rem;display:flex}.mb-review-box textarea{border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);resize:none;outline:none;width:100%;height:60px;padding:.6rem .75rem;font-family:inherit;font-size:.8rem}.mb-review-box textarea:focus{border-color:var(--teal-light)}.mb-rating-submit{background:var(--teal-light);color:#fff;border-radius:var(--radius-sm);align-self:flex-start;padding:.45rem 1rem;font-size:.76rem;font-weight:600}.admin-login-screen{text-align:center;padding:3.5rem 1.5rem}.admin-login-icon{margin-bottom:1rem;font-size:3rem}.admin-login-title{color:var(--dark);margin-bottom:.5rem;font-size:1.4rem;font-weight:700}.admin-login-sub{color:var(--gray-500);margin-bottom:2rem;font-size:.8rem;line-height:1.5}.admin-login-form{flex-direction:column;gap:.75rem;display:flex}.admin-login-input{border-radius:var(--radius-md);border:1.5px solid var(--gray-300);text-align:center;outline:none;padding:.85rem 1rem;font-size:.9rem}.admin-login-input:focus{border-color:var(--teal-light)}.admin-login-error{color:var(--danger);font-size:.78rem}.admin-login-btn{background:var(--dark);color:#fff;border-radius:var(--radius-md);margin-top:.4rem;padding:.85rem;font-size:.9rem;font-weight:700}.admin-login-cancel{color:var(--gray-500);background:0 0;padding:.5rem;font-size:.8rem}.admin-dash{padding:1.1rem 1.25rem 3rem}.admin-dash-head{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.admin-dash-title{color:var(--dark);font-size:1.25rem;font-weight:700}.admin-dash-sub{color:var(--gray-500);margin-top:.15rem;font-size:.75rem}.admin-logout-btn{background:var(--gray-100);color:var(--gray-700);border-radius:var(--radius-sm);padding:.5rem .9rem;font-size:.75rem;font-weight:600}.admin-filters{scrollbar-width:none;gap:.5rem;margin-bottom:1.1rem;padding-bottom:.2rem;display:flex;overflow-x:auto}.admin-filters::-webkit-scrollbar{display:none}.admin-filter-chip{background:var(--white);border:1.5px solid var(--gray-300);color:var(--gray-700);white-space:nowrap;border-radius:100px;flex-shrink:0;padding:.4rem .8rem;font-size:.74rem;font-weight:600}.admin-filter-chip.active{background:var(--dark);border-color:var(--dark);color:#fff}.admin-filter-chip-wedding{border-color:var(--gold);color:var(--gold)}.admin-filter-chip-wedding.active{background:var(--gold);border-color:var(--gold);color:#fff}.admin-view-toggle{background:var(--gray-100);border-radius:var(--radius-sm);gap:.4rem;margin-bottom:.9rem;padding:.25rem;display:flex}.admin-view-tab{color:var(--gray-700);border-radius:calc(var(--radius-sm) - 2px);background:0 0;flex:1;padding:.5rem;font-size:.8rem;font-weight:600}.admin-view-tab.active{background:var(--white);color:var(--dark);box-shadow:0 1px 3px #00000014}.admin-calendar-list{flex-direction:column;gap:.7rem;display:flex}.admin-date-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--gray-100);overflow:hidden}.admin-date-head{text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:.6rem;width:100%;padding:.85rem 1rem;display:flex}.admin-date-label{color:var(--dark);font-size:.88rem;font-weight:700}.admin-date-badges{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.admin-date-count-badge{background:var(--cream);color:var(--gray-700);white-space:nowrap;border-radius:100px;padding:.25rem .6rem;font-size:.7rem;font-weight:700}.admin-date-chevron{color:var(--gray-500);font-size:.65rem}.admin-date-bookings{padding:0 .85rem .85rem}.admin-loading{color:var(--gray-500);flex-direction:column;align-items:center;gap:1rem;padding:3rem 1rem;font-size:.85rem;display:flex}.admin-spinner{border:3px solid var(--gray-100);border-top-color:var(--teal-light);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-empty{text-align:center;color:var(--gray-500);padding:3rem 1rem}.admin-empty span{opacity:.5;margin-bottom:.5rem;font-size:2.5rem;display:block}.admin-booking-list{flex-direction:column;gap:.85rem;display:flex}.admin-booking-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--gray-100);padding:.9rem 1rem}.admin-booking-top{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.6rem;display:flex}.admin-status-badge{border-radius:100px;padding:.25rem .65rem;font-size:.68rem;font-weight:700}.status-pending{color:#b8730a;background:#fff4e0}.status-confirmed{color:var(--teal);background:#e8f7f1}.status-rejected{color:var(--danger);background:#fdecea}.admin-wedding-badge{color:var(--gold);background:#fdf3ea;border-radius:100px;padding:.25rem .65rem;font-size:.68rem;font-weight:700}.admin-booking-date{color:var(--gray-500);margin-left:auto;font-size:.72rem}.admin-booking-customer{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.admin-booking-customer strong{color:var(--dark);font-size:.92rem}.admin-phone-link{color:var(--teal);font-size:.78rem;font-weight:600}.admin-booking-services{color:var(--dark);background:var(--cream);border-radius:var(--radius-sm);margin-bottom:.5rem;padding:.5rem .7rem;font-size:.82rem;line-height:1.4}.admin-booking-row{color:var(--gray-700);justify-content:space-between;gap:.5rem;padding:.2rem 0;font-size:.76rem;display:flex}.admin-booking-row span:first-child{color:var(--gray-500);flex-shrink:0}.admin-booking-row.total-row{color:var(--dark);border-top:1px solid var(--gray-100);margin-top:.2rem;padding-top:.4rem;font-size:.85rem;font-weight:700}.admin-payment-proof{border-radius:var(--radius-sm);background:#f8f5f0;margin:.6rem 0;padding:.6rem .7rem}.admin-utr{color:var(--dark);font-family:monospace;font-size:.78rem;font-weight:600}.admin-screenshot-wrap{border-radius:var(--radius-sm);cursor:pointer;border:1.5px solid var(--gray-300);margin-top:.6rem;position:relative;overflow:hidden}.admin-screenshot-thumb{object-fit:cover;width:100%;height:130px;display:block}.admin-screenshot-overlay{opacity:0;background:#0f1c1773;justify-content:center;align-items:flex-end;padding-bottom:.6rem;transition:opacity .2s;display:flex;position:absolute;inset:0}.admin-screenshot-wrap:hover .admin-screenshot-overlay,.admin-screenshot-wrap:active .admin-screenshot-overlay{opacity:1}.admin-screenshot-overlay span{color:var(--dark);background:#ffffffe6;border-radius:100px;padding:.3rem .8rem;font-size:.72rem;font-weight:600}.admin-no-screenshot{color:var(--gray-500);margin-top:.5rem;font-size:.72rem}.admin-rating-display{border-radius:var(--radius-sm);color:var(--gray-700);background:#fff8e7;margin-bottom:.5rem;padding:.5rem .7rem;font-size:.76rem}.admin-rating-stars{color:var(--gold);letter-spacing:1px;margin-left:.3rem;font-size:.9rem}.admin-rating-review{color:var(--gray-700);margin-top:.3rem;font-size:.74rem;font-style:italic}.admin-actions{gap:.5rem;margin-top:.5rem;display:flex}.admin-btn-confirm{background:var(--teal-light);color:#fff;border-radius:var(--radius-sm);flex:1;padding:.6rem;font-size:.8rem;font-weight:700}.admin-btn-confirm:disabled,.admin-btn-reject:disabled,.admin-btn-reset:disabled{opacity:.5}.admin-btn-reject{background:var(--white);border:1.5px solid var(--danger);color:var(--danger);border-radius:var(--radius-sm);flex:1;padding:.6rem;font-size:.8rem;font-weight:700}.admin-btn-reset{background:var(--gray-100);width:100%;color:var(--gray-700);border-radius:var(--radius-sm);margin-top:.4rem;padding:.55rem;font-size:.76rem;font-weight:600}.admin-btn-reschedule{background:var(--cream);width:100%;color:var(--dark);border:1.5px dashed var(--gray-300);border-radius:var(--radius-sm);margin-top:.5rem;padding:.55rem;font-size:.76rem;font-weight:600}.admin-btn-reschedule:disabled{opacity:.5}.admin-reschedule-box{background:var(--cream);border-radius:var(--radius-sm);flex-direction:column;gap:.6rem;margin-top:.5rem;padding:.75rem;display:flex}.admin-reschedule-row{flex-direction:column;gap:.25rem;display:flex}.admin-reschedule-row label{color:var(--gray-700);font-size:.72rem;font-weight:700}.admin-reschedule-input{border-radius:var(--radius-sm);border:1.5px solid var(--gray-300);background:var(--white);width:100%;padding:.5rem;font-family:inherit;font-size:.85rem}.admin-reschedule-actions{gap:.5rem;display:flex}.admin-reschedule-actions .admin-btn-confirm,.admin-reschedule-actions .admin-btn-reset{margin-top:0}.admin-image-modal{z-index:5000;background:#000000f2;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.admin-image-modal img{border-radius:var(--radius-md);object-fit:contain;max-width:100%;max-height:78vh;box-shadow:0 0 40px #00000080}.admin-image-close{color:var(--dark);background:#fff;border-radius:100px;margin-top:1rem;padding:.65rem 2rem;font-size:.85rem;font-weight:700}.academy-screen{padding-bottom:3rem}.academy-hero{background:linear-gradient(135deg, var(--dark) 0%, #1b3a2d 55%, #0f2820 100%);text-align:center;padding:2rem 1.5rem}.academy-badge{color:var(--gold-light);letter-spacing:2px;text-transform:uppercase;border:1px solid #c9956a80;border-radius:100px;margin-bottom:.9rem;padding:.3rem .9rem;font-size:.68rem;display:inline-block}.academy-title{color:#fff;margin-bottom:.6rem;font-size:1.5rem;font-weight:700;line-height:1.3}.academy-sub{color:#fff9;max-width:320px;margin:0 auto;font-size:.8rem;line-height:1.6}.academy-highlights{flex-wrap:wrap;justify-content:center;gap:.5rem;padding:1.1rem 1.25rem;display:flex}.academy-highlight-chip{background:var(--white);border:1px solid var(--gray-100);color:var(--gray-700);border-radius:100px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.72rem;font-weight:600;display:flex}.academy-section-label{letter-spacing:2px;text-transform:uppercase;color:var(--teal);padding:.5rem 1.25rem .7rem;font-size:.7rem;font-weight:700}.academy-course-list{flex-direction:column;gap:.75rem;padding:0 1.25rem;display:flex}.academy-course-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--gray-100);gap:.75rem;padding:.9rem 1rem;display:flex}.academy-course-icon{background:var(--cream);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.3rem;display:flex}.academy-course-body{flex:1;min-width:0}.academy-course-top{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.academy-course-top h3{color:var(--dark);font-family:Playfair Display,serif;font-size:.92rem;font-weight:700}.academy-course-duration{color:var(--teal);white-space:nowrap;background:#e8f7f1;border-radius:100px;flex-shrink:0;padding:.15rem .5rem;font-size:.66rem;font-weight:700}.academy-course-body p{color:var(--gray-700);font-size:.76rem;line-height:1.5}.academy-cta{background:var(--cream);border:1.5px dashed var(--gold);border-radius:var(--radius-md);text-align:center;margin:1.5rem 1.25rem 0;padding:1.25rem}.academy-cta h3{color:var(--dark);margin-bottom:.4rem;font-size:1.05rem}.academy-cta p{color:var(--gray-700);margin-bottom:1rem;font-size:.78rem;line-height:1.5}.academy-cta-btn{background:var(--dark);color:#fff;border-radius:100px;padding:.75rem 1.5rem;font-size:.85rem;font-weight:700;display:inline-block}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1}
