@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@300;400;500;600;700&family=Cormorant+Garamond:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap";:root{--deep-charcoal: #1A1A1A;--warm-gold: #D4AF37;--champagne-gold: #C8A96A;--ivory-white: #F8F6F2;--forest-green: #2E4A3D}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background:var(--deep-charcoal);color:var(--ivory-white);overflow-x:hidden}.luxury-app{min-height:100vh}html{scroll-behavior:smooth;scroll-snap-type:y proximity}body{scroll-snap-type:y proximity}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#d4a24c;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#f4d03f}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--deep-charcoal);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeOut .5s ease 2.5s forwards}.loading-content{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center}.loading-logo{width:100px;height:auto;z-index:2;position:relative}.spinner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid transparent}.spinner-outer{border-top-color:var(--warm-gold);animation:spin 1.5s linear infinite}.spinner-inner{top:20px;right:20px;bottom:20px;left:20px;border-bottom-color:var(--champagne-gold);animation:spin 1s linear infinite reverse}@keyframes fadeOut{to{opacity:0;pointer-events:none}}.luxury-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:10px 0;transition:all .5s cubic-bezier(.4,0,.2,1);background:#1a1a1a4d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.05)}.luxury-nav.scrolled{padding:8px 0;background:#1a1a1af2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-bottom:1px solid rgba(212,175,55,.1)}.nav-container{max-width:1400px;margin:0 auto;padding:0 40px;display:flex;justify-content:space-between;align-items:center}.nav-brand{display:flex;align-items:center;gap:15px}.nav-right-section{display:flex;align-items:center;gap:20px}.nav-logo{height:60px;width:auto}.nav-divider{width:1px;height:25px;background:#fff3}.nav-text{font-family:Playfair Display,serif;font-size:18px;font-weight:500;letter-spacing:1px;color:var(--ivory-white)}.nav-menu{display:flex;gap:35px;align-items:center;margin-right:20px}.nav-item{background:none;border:none;font-family:Poppins,sans-serif;font-size:13px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;color:#f8f6f2cc;cursor:pointer;transition:all .3s ease;position:relative;z-index:10;pointer-events:auto}.nav-item:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--warm-gold);transition:width .3s ease}.nav-item:hover,.nav-item.active{color:var(--ivory-white)}.nav-item:hover:after,.nav-item.active:after{width:100%}.nav-login{background:#d4af371a;border:1px solid rgba(212,175,55,.3);color:var(--ivory-white);padding:10px 16px;border-radius:4px;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.nav-login:hover{background:var(--warm-gold);color:var(--deep-charcoal)}.nav-hamburger{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer}.nav-hamburger span{width:25px;height:1px;background:var(--ivory-white);transition:all .3s ease}.premium-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}.hero-video-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/asset/mainphoto.png) center/cover no-repeat;will-change:transform;z-index:0}.hero-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#1a1a1abf,#2e4a3d4d,#1a1a1abf);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1}.hero-content{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 420px;gap:60px;align-items:center}.hero-text{max-width:800px}.hero-subtitle{display:flex;align-items:center;gap:20px;margin-bottom:30px;color:var(--warm-gold);font-family:Poppins,sans-serif;font-size:12px;font-weight:500;letter-spacing:3px;text-transform:uppercase}.hero-subtitle .line{width:60px;height:1px;background:var(--warm-gold)}.hero-stars{display:flex;gap:4px;align-items:center}.hero-text h1{font-family:Playfair Display,serif;font-size:56px;font-weight:300;line-height:1.1;margin-bottom:30px;letter-spacing:-1px;display:block}.script-accent{font-family:Great Vibes,cursive;font-weight:400;color:var(--warm-gold)}.script-accent-image{height:clamp(60px,8vw,100px);width:auto;margin-left:10px;vertical-align:middle}.mobile-hero-logo{display:none;height:280px;width:auto;margin:0 auto 30px}.typing-text{color:var(--ivory-white);display:inline}.cursor{display:inline-block;width:3px;height:48px;background:var(--warm-gold);margin-left:8px;animation:blink 1s step-end infinite;vertical-align:middle}.desktop-typing-text{display:inline}.desktop-cursor{display:inline-block;width:2px;height:18px;background:var(--warm-gold);margin-left:4px;animation:blink 1s step-end infinite;vertical-align:middle}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-text p{font-family:Inter,sans-serif;font-size:18px;line-height:1.8;color:#f8f6f2d9;margin-bottom:40px;max-width:600px}.hero-cta-group{display:flex;gap:20px}.cta-primary{background:var(--warm-gold);border:none;color:var(--deep-charcoal);padding:18px 40px;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s ease;border-radius:2px}.cta-primary:hover{background:var(--champagne-gold);transform:translateY(-2px);box-shadow:0 20px 40px #d4af374d}.cta-secondary{background:transparent;border:1px solid rgba(248,246,242,.3);color:var(--ivory-white);padding:18px 40px;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s ease;border-radius:2px}.cta-secondary:hover{border-color:var(--ivory-white);background:#f8f6f21a}.hero-scroll-indicator{position:absolute;bottom:50px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:15px;color:#f8f6f280;font-size:11px;letter-spacing:2px;text-transform:uppercase}.scroll-mouse{width:20px;height:35px;border:1px solid rgba(248,246,242,.3);border-radius:10px;display:flex;justify-content:center;padding-top:8px}.scroll-wheel{width:2px;height:8px;background:var(--ivory-white);border-radius:2px;animation:scroll 2s ease-in-out infinite}@keyframes scroll{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:.3}}.falling-leaves{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.leaf{position:absolute;width:15px;height:25px;opacity:.3;animation:fall linear infinite}.leaf:before{content:"";position:absolute;width:100%;height:100%;background:var(--forest-green);border-radius:50% 0;transform:rotate(-45deg)}.leaf:after{content:"";position:absolute;width:1px;height:60%;background:#2e4a3d80;top:20%;left:50%;transform:rotate(-45deg)}.leaf-1{top:-50px;left:10%;animation-duration:8s;animation-delay:0s}.leaf-2{top:-50px;left:30%;animation-duration:10s;animation-delay:2s}.leaf-3{top:-50px;left:50%;animation-duration:7s;animation-delay:4s}.leaf-4{top:-50px;left:70%;animation-duration:9s;animation-delay:1s}.leaf-5{top:-50px;left:85%;animation-duration:11s;animation-delay:3s}.leaf-6{top:-50px;left:20%;animation-duration:8.5s;animation-delay:5s}@keyframes fall{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.3}90%{opacity:.3}to{transform:translateY(100vh) rotate(360deg);opacity:0}}.booking-section{position:relative;margin-top:-80px;z-index:10;padding:0 40px}.hero-booking-widget{background:#1a1a1a33;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(212,175,55,.15);border-radius:8px;padding:26px;box-shadow:0 20px 60px #0000004d,0 0 1px #d4af371a}.hero-booking-widget h3{font-family:Playfair Display,serif;font-size:20px;font-weight:400;margin-bottom:16px;color:#d4af37}.hero-booking-widget .form-group label{color:#f8f6f2cc!important}.booking-form-vertical{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-form-vertical .form-group:last-child{grid-column:1 / -1}.booking-form-vertical .booking-submit{grid-column:2;grid-row:3}.form-group label{display:block;font-family:Poppins,sans-serif;font-size:10px;font-weight:500;color:#f8f6f299;margin-bottom:6px;letter-spacing:1px;text-transform:uppercase}.form-group input,.form-group select{width:100%;background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);border-radius:4px;padding:10px 14px;color:var(--ivory-white);font-family:Inter,sans-serif;font-size:14px;outline:none;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:var(--warm-gold);background:#f8f6f214}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23D4AF37' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;color:var(--ivory-white)}.form-group select option{background:var(--deep-charcoal);color:var(--ivory-white);padding:10px}.booking-submit{background:var(--warm-gold);border:none;color:var(--deep-charcoal);padding:12px;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;border-radius:4px}.booking-submit:hover{background:var(--champagne-gold);transform:translateY(-2px);box-shadow:0 10px 30px #d4af374d}.booking-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease}.booking-modal-content{background:#1a1a1af2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(212,175,55,.15);border-radius:8px;padding:35px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease;box-shadow:0 20px 60px #00000080}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close-btn{position:absolute;top:20px;right:20px;background:none;border:none;color:#f8f6f299;cursor:pointer;transition:all .3s ease;padding:5px;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{color:var(--warm-gold);transform:rotate(90deg)}.booking-modal-content h3{font-family:Playfair Display,serif;font-size:24px;font-weight:400;margin-bottom:25px;color:var(--ivory-white);padding-right:40px}.premium-rooms{background:var(--deep-charcoal);padding:120px 0;position:relative;overflow:hidden}.premium-rooms:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/asset/mayon.png);background-size:cover;background-position:center;background-attachment:fixed;opacity:.5;z-index:0;transition:transform .5s ease-out,opacity .5s ease-out}.premium-rooms:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#2e4a3dd9,#1a1a1ae6);z-index:1;transition:opacity .5s ease-out,background .5s ease-out}.premium-rooms>.section-wrapper{position:relative;z-index:2;transition:transform .5s ease-out,opacity .5s ease-out}.premium-rooms-grid{display:flex;overflow-x:auto;gap:30px;padding-bottom:20px}.premium-rooms-grid::-webkit-scrollbar{height:8px}.premium-rooms-grid::-webkit-scrollbar-track{background:#f8f6f20d;border-radius:4px}.premium-rooms-grid::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:4px}.premium-rooms-grid::-webkit-scrollbar-thumb:hover{background:#d4af3780}.premium-room-card{background:#f8f6f205;border:1px solid rgba(248,246,242,.05);border-radius:4px;overflow:hidden;transition:all .5s cubic-bezier(.4,0,.2,1);flex:0 0 380px;min-width:380px}.premium-room-card:hover{transform:translateY(-10px);box-shadow:0 30px 60px #0006;border-color:#d4af3733}.card-image-wrapper{position:relative;height:350px;overflow:hidden}.card-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}.premium-room-card:hover .card-image-wrapper img{transform:scale(1.08)}.card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(26,26,26,.9) 0%,transparent 50%);opacity:0;transition:opacity .5s ease}.card-overlay.active{opacity:1}.card-price-tag{position:absolute;top:25px;right:25px;background:#1a1a1ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;border:1px solid rgba(212,175,55,.2)}.card-price-tag .price{display:block;font-family:Playfair Display,serif;font-size:24px;font-weight:500;color:var(--warm-gold)}.card-price-tag .period{font-size:10px;color:#f8f6f280;text-transform:uppercase;letter-spacing:1px}.card-view-badge{position:absolute;bottom:25px;left:25px;display:flex;align-items:center;gap:8px;background:#d4af37f2;padding:10px 18px;color:var(--deep-charcoal);font-family:Poppins,sans-serif;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;opacity:0;transform:translateY(15px);transition:all .4s ease;border-radius:2px}.card-view-badge.visible{opacity:1;transform:translateY(0)}.card-content{padding:35px}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.card-header h3{font-family:Playfair Display,serif;font-size:24px;font-weight:400;margin-bottom:8px;color:var(--ivory-white)}.room-size{display:flex;align-items:center;gap:8px;color:#f8f6f280;font-family:Inter,sans-serif;font-size:13px}.card-content>p{font-family:Inter,sans-serif;line-height:1.7;margin-bottom:25px;font-size:15px}.premium-room-card .card-content>p{color:#f8f6f2d9}.card-features{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}.feature-item{display:flex;align-items:center;gap:8px;color:#f8f6f299;font-family:Inter,sans-serif;font-size:12px}.feature-item i{color:var(--warm-gold)}.card-reserve-btn{width:100%;background:transparent;border:1px solid rgba(212,175,55,.3);color:var(--warm-gold);padding:16px;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s ease;border-radius:2px}.card-reserve-btn:hover{background:var(--warm-gold);color:var(--deep-charcoal);border-color:var(--warm-gold)}.premium-room-card.skeleton{pointer-events:none}.skeleton-image{background:linear-gradient(90deg,#f8f6f20d 25%,#f8f6f21a,#f8f6f20d 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}.skeleton-text{background:linear-gradient(90deg,#f8f6f20d 25%,#f8f6f21a,#f8f6f20d 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px}.skeleton-title{height:28px;width:70%;margin-bottom:8px}.skeleton-size{height:16px;width:30%}.skeleton-desc{height:40px;width:100%;margin-bottom:25px}.skeleton-feature{height:16px;width:80px}.skeleton-btn{height:48px;width:100%}.error-message{text-align:center;padding:60px 20px;color:#f8f6f299;font-family:Inter,sans-serif;font-size:16px}.experiences-section{background:#1a1a1a80;padding:120px 0;position:relative;overflow:hidden}.experiences-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/asset/mayon1.png);background-size:cover;background-position:center;background-attachment:fixed;opacity:.5;z-index:0;transition:transform .5s ease-out,opacity .5s ease-out}.experiences-section:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#2e4a3dd9,#1a1a1ae6);z-index:1;transition:opacity .5s ease-out,background .5s ease-out}.experiences-section>.section-wrapper{position:relative;z-index:2}.experiences-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.experience-card{background:#f8f6f205;border:1px solid rgba(248,246,242,.05);overflow:hidden;transition:all .5s ease;border-radius:4px}.experience-card:hover{transform:translateY(-8px);border-color:#d4af3733}.experience-image{position:relative;height:280px;overflow:hidden}.experience-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.experience-card:hover .experience-image img{transform:scale(1.08)}.experience-icon{position:absolute;bottom:-20px;right:25px;width:45px;height:45px;background:var(--warm-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--deep-charcoal)}.experience-content{padding:35px 30px 30px}.experience-content h3{font-family:Playfair Display,serif;font-size:22px;font-weight:400;margin-bottom:15px;color:var(--ivory-white)}.experience-content p{font-family:Inter,sans-serif;color:#f8f6f299;line-height:1.7;margin-bottom:25px;font-size:15px}.experience-link{background:none;border:none;color:var(--warm-gold);font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:10px;transition:gap .3s ease}.experience-link:hover{gap:15px}.section-wrapper{max-width:1400px;margin:0 auto;padding:120px 40px}.section-intro{text-align:center;margin-bottom:80px}.section-label{display:inline-block;color:var(--warm-gold);font-family:Poppins,sans-serif;font-size:12px;font-weight:500;letter-spacing:3px;text-transform:uppercase;margin-bottom:20px}.section-intro h2{font-family:Playfair Display,serif;font-size:48px;font-weight:300;line-height:1.2;margin-bottom:20px;color:var(--ivory-white)}.section-intro h2 .highlight{font-weight:600;color:var(--warm-gold)}.section-intro p{font-family:Inter,sans-serif;font-size:18px;color:#f8f6f2b3;max-width:600px;margin:0 auto;line-height:1.8}.why-choose-section{background:var(--deep-charcoal);padding:120px 0;position:relative;overflow:hidden}.why-choose-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 50%,rgba(212,175,55,.05) 0%,transparent 50%);z-index:0}.why-choose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;position:relative;z-index:1}.why-choose-item{text-align:center;padding:40px 30px;background:#f8f6f205;border:1px solid rgba(248,246,242,.05);border-radius:4px;transition:all .5s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.why-choose-item:hover{border-color:#d4af374d;transform:translateY(-10px) scale(1.02);box-shadow:0 20px 40px #0000004d;background:#f8f6f20d}.why-choose-icon{width:60px;height:60px;background:#d4af371a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;color:var(--warm-gold);transition:all .5s ease}.why-choose-item:hover .why-choose-icon{background:var(--warm-gold);color:var(--deep-charcoal);transform:rotate(360deg) scale(1.1)}.why-choose-item h4{font-family:Playfair Display,serif;font-size:20px;font-weight:400;margin-bottom:15px;color:var(--ivory-white)}.why-choose-item p{font-family:Inter,sans-serif;color:#f8f6f299;line-height:1.7;font-size:14px}.premium-testimonials{background:#1a1a1a80;padding:120px 0;position:relative;overflow:hidden}.premium-testimonials:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 80% 20%,rgba(212,175,55,.05) 0%,transparent 50%);z-index:0}.testimonials-carousel{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;position:relative;z-index:1}.premium-testimonial{background:#f8f6f205;border:1px solid rgba(248,246,242,.05);padding:45px;border-radius:4px;position:relative;transition:all .5s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.premium-testimonial:hover{border-color:#d4af374d;transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000004d;background:#f8f6f20d}.testimonial-quote{color:#d4af3733;margin-bottom:25px;transition:all .5s ease}.premium-testimonial:hover .testimonial-quote{color:#d4af3766;transform:scale(1.1)}.testimonial-text{font-family:Playfair Display,serif;font-size:20px;font-style:italic;line-height:1.7;color:#f8f6f2cc;background:#d4af371a;margin-bottom:35px}.testimonial-author{display:flex;align-items:center;gap:18px}.testimonial-author img{width:55px;height:55px;border-radius:50%;object-fit:cover;border:2px solid rgba(212,175,55,.3)}.author-info h4{font-family:Poppins,sans-serif;font-size:15px;font-weight:500;margin-bottom:5px;color:var(--ivory-white)}.author-info span{color:#f8f6f280;font-family:Inter,sans-serif;font-size:13px}.testimonial-stars{display:flex;gap:4px;margin-top:8px}.testimonial-stars span{color:var(--warm-gold)}.gallery-section{background:var(--deep-charcoal);padding:120px 0;position:relative;overflow:hidden}.gallery-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.03) 0%,transparent 70%);z-index:0}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,300px);gap:20px;position:relative;z-index:1}.gallery-item{position:relative;overflow:hidden;border-radius:4px;transition:all .5s cubic-bezier(.4,0,.2,1);transform:scale(1)}.gallery-item:hover{transform:scale(1.03);box-shadow:0 20px 40px #0006;z-index:10}.gallery-item:nth-child(1){grid-column:span 2;grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(26,26,26,.9) 0%,transparent 60%);opacity:0;transition:opacity .5s ease;display:flex;align-items:center;justify-content:center}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay span{color:var(--ivory-white);font-family:Poppins,sans-serif;font-size:14px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.room-rates-section{background:linear-gradient(135deg,#2e4a3df2,#1a1a1af2);padding:120px 40px;position:relative;overflow:hidden}.room-rates-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/asset/reception.png);background-size:cover;background-position:center;background-attachment:fixed;opacity:.35;z-index:0}.room-rates-section>.section-wrapper{position:relative;z-index:1}.rates-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:60px}.rates-table{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;padding:30px;box-shadow:0 4px 20px #0003;border:1px solid rgba(255,255,255,.1)}.rates-table table{width:100%;border-collapse:collapse}.rates-table thead{background:#d4af3733;color:var(--ivory-white)}.rates-table th{padding:15px;text-align:left;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.rates-table td{padding:15px;border-bottom:1px solid rgba(255,255,255,.1);font-family:Inter,sans-serif;font-size:14px;color:var(--ivory-white)}.rates-table tbody tr:last-child td{border-bottom:none}.rates-table tbody tr:nth-child(2n){background:#d4af370d}.rates-table tbody tr:hover{background:#d4af3726}.mobile-only{display:none}.desktop-only{display:table-cell}.nested-row{display:none!important}.clickable-row{cursor:default}.rates-info{display:flex;flex-direction:column;gap:40px}.info-section h3{font-family:Playfair Display,serif;font-size:24px;font-weight:500;color:var(--ivory-white);margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--warm-gold)}.info-section ul{list-style:none;padding:0}.info-section li{padding:12px 0;font-family:Inter,sans-serif;font-size:14px;color:var(--ivory-white);line-height:1.6;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:flex-start}.info-section li:before{content:"✓";color:var(--warm-gold);font-weight:700;margin-right:12px;margin-top:2px}.info-section li:last-child{border-bottom:none}.info-section strong{color:var(--warm-gold)}.premium-footer{background:var(--deep-charcoal);padding:100px 0 40px;border-top:1px solid rgba(248,246,242,.05)}.footer-wrapper{max-width:1400px;margin:0 auto;padding:0 40px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:60px;margin-bottom:60px}.footer-brand-section{padding-right:40px}.footer-brand-section img{height:60px;width:auto;margin-bottom:25px}.footer-brand-section h3{font-family:Playfair Display,serif;font-size:24px;font-weight:400;margin-bottom:20px;color:var(--ivory-white)}.footer-brand-section p{font-family:Inter,sans-serif;color:#f8f6f299;line-height:1.8;margin-bottom:30px;font-size:15px}.footer-socials{display:flex;gap:15px}.social-link{width:40px;height:40px;background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ffffffbf;transition:color .25s ease}.social-link:hover{color:#d4af37}.footer-section h4{font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:30px;color:var(--ivory-white)}.footer-section a{display:block;color:#f8f6f299;font-family:Inter,sans-serif;font-size:14px;text-decoration:none;margin-bottom:15px;transition:color .3s ease}.footer-section a:hover{color:var(--warm-gold);padding-left:5px}.footer-section p{color:#f8f6f299;font-family:Inter,sans-serif;font-size:14px;margin-bottom:15px;display:flex;align-items:center;gap:12px}.newsletter-form{display:flex;gap:10px}.newsletter-form input{flex:1;background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);padding:15px 20px;color:var(--ivory-white);font-family:Inter,sans-serif;font-size:14px;outline:none;transition:border-color .3s ease;border-radius:4px}.newsletter-form input:focus{border-color:var(--warm-gold)}.newsletter-form button{background:var(--warm-gold);border:none;width:50px;color:var(--deep-charcoal);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s ease;border-radius:4px}.newsletter-form button:hover{background:var(--champagne-gold)}.footer-bottom{text-align:center;padding-top:40px;border-top:1px solid rgba(248,246,242,.05);color:#f8f6f266;font-family:Inter,sans-serif;font-size:13px}@keyframes animateReveal{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes animateFadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes animateCardReveal{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes animateExperienceReveal{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes animateTestimonialReveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes sectionTransition{0%{opacity:0;transform:translateY(100px) scale(.95);filter:blur(10px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes slideTransition{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}@keyframes zoomTransition{0%{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes rotateTransition{0%{opacity:0;transform:rotate(-5deg) translateY(50px)}to{opacity:1;transform:rotate(0) translateY(0)}}.animate-reveal{animation:animateReveal 1s ease forwards}.animate-fade-up{animation:animateFadeUp .8s ease forwards;opacity:0}.animate-card-reveal{animation:animateCardReveal .8s ease forwards;opacity:0}.animate-experience-reveal{animation:animateExperienceReveal .6s ease forwards;opacity:0}.animate-testimonial-reveal{animation:animateTestimonialReveal .8s ease forwards;opacity:0}.section-transition{animation:sectionTransition 1.2s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.slide-transition{animation:slideTransition 1s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.zoom-transition{animation:zoomTransition 1s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.rotate-transition{animation:rotateTransition 1s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.ai-chat-toggle{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#d4af371a;border:1px solid rgba(212,175,55,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ivory-white);box-shadow:0 4px 20px #d4af3766;transition:all .3s ease;z-index:9999}.ai-chat-toggle:hover{background:var(--warm-gold);transform:scale(1.1);box-shadow:0 6px 30px #d4af3780;border:1px solid rgba(212,175,55,.3)}.ai-chat-toggle.open{background:var(--deep-charcoal);color:var(--ivory-white);border:2px solid var(--warm-gold)}.ai-chat-widget{position:fixed;bottom:100px;right:30px;width:380px;height:500px;background:var(--deep-charcoal);border:1px solid rgba(212,175,55,.3);border-radius:12px;box-shadow:0 10px 40px #00000080;display:flex;flex-direction:column;z-index:9998;overflow:hidden;animation:slideUp .3s ease}.ai-chat-header{background:linear-gradient(135deg,#d4af3733,#2e4a3d4d);padding:16px 20px;border-bottom:1px solid rgba(212,175,55,.2);display:flex;justify-content:space-between;align-items:center}.ai-chat-title{display:flex;align-items:center;gap:10px;color:var(--ivory-white);font-family:Poppins,sans-serif;font-size:14px;font-weight:600}.ai-chat-close{background:none;border:none;color:#f8f6f299;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.ai-chat-close:hover{background:#ffffff1a;color:var(--ivory-white)}.ai-chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.ai-chat-messages::-webkit-scrollbar{width:6px}.ai-chat-messages::-webkit-scrollbar-track{background:#ffffff0d}.ai-chat-messages::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:3px}.ai-chat-message{max-width:85%;padding:12px 16px;border-radius:12px;font-family:Inter,sans-serif;font-size:14px;line-height:1.5;word-wrap:break-word}.ai-chat-message.bot{background:#f8f6f21a;color:var(--ivory-white);align-self:flex-start;border-bottom-left-radius:4px}.ai-chat-message.user{background:var(--warm-gold);color:var(--deep-charcoal);align-self:flex-end;border-bottom-right-radius:4px}.ai-chat-message.bot p{margin:0;padding:2px 0}.ai-chat-message.user p{margin:0}.ai-chat-message.typing{padding:16px 20px}.typing-dots{display:flex;gap:4px}.typing-dots span{width:8px;height:8px;background:var(--warm-gold);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-8px);opacity:1}}.ai-chat-input{padding:16px;border-top:1px solid rgba(212,175,55,.2);display:flex;gap:12px;background:#1a1a1a80}.ai-chat-input textarea{flex:1;background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);border-radius:8px;padding:12px 16px;color:var(--ivory-white);font-family:Inter,sans-serif;font-size:14px;resize:none;outline:none;transition:all .3s ease;min-height:44px;max-height:120px}.ai-chat-input textarea:focus{border-color:var(--warm-gold);background:#f8f6f214}.ai-chat-input textarea::placeholder{color:#f8f6f266}.ai-chat-send{background:var(--warm-gold);border:none;width:44px;height:44px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--deep-charcoal);transition:all .3s ease;flex-shrink:0}.ai-chat-send:hover:not(:disabled){background:var(--champagne-gold);transform:scale(1.05)}.ai-chat-send:disabled{opacity:.5;cursor:not-allowed}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.stat-item{text-align:center;padding:24px 16px;background:#d4af370d;border:1px solid rgba(212,175,55,.15);border-radius:20px}.stat-number{font-family:Playfair Display,serif;font-size:36px;font-weight:600;color:var(--warm-gold);margin-bottom:8px}.stat-label{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#f8f6f2b3;text-transform:uppercase;letter-spacing:1px}.mobile-sticky-cta{display:none}@media (max-width: 768px){.mobile-sticky-cta{display:flex}}:root{--ivory-white: rgba(248, 246, 242, .95);--warm-gold: #d4af37;--champagne-gold: #f4d03f}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;animation:fadeIn .3s ease}.auth-drawer{position:fixed;top:0;right:0;height:100vh;width:345px;max-width:100%;background:#1a1a1af2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-left:1px solid rgba(212,175,55,.2);box-shadow:-10px 0 40px #00000080;z-index:10001;transform:translate(100%);transition:transform .3s ease;overflow-y:auto}.auth-drawer.open{transform:translate(0)}.auth-drawer-header{position:relative;display:flex;flex-direction:column;align-items:center;padding:40px 30px 30px;min-height:280px;background:linear-gradient(180deg,#d4af371f,#000000d9),url(/asset/reception.png);background-size:cover;background-position:center}.auth-drawer-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#d4af3714,#000000b3);z-index:1}.auth-close-btn{position:absolute;top:20px;right:20px;background:#0000004d;border:1px solid rgba(212,175,55,.2);color:#f8f6f2cc;font-size:24px;cursor:pointer;transition:all .3s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;z-index:10}.auth-close-btn:hover{color:var(--warm-gold);background:#d4af3726;border-color:var(--warm-gold)}.auth-header-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;animation:fadeInDown .4s ease}.auth-logo{height:115px;width:auto;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 0 20px rgba(212,175,55,.3));animation:fadeIn .5s ease}.auth-tagline{font-family:Playfair Display,serif;font-size:13px;color:var(--warm-gold);letter-spacing:4px;text-transform:uppercase;font-weight:500;animation:fadeInUp .5s ease .1s both}.auth-header-tabs{position:relative;z-index:2;display:flex;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.15);border-radius:30px;padding:6px;width:70%;animation:slideUp .4s ease .2s both}.auth-header-tab{flex:1;background:none;border:none;padding:12px 16px;font-family:Poppins,sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#f8f6f2b3;cursor:pointer;transition:all .3s ease;border-radius:24px}.auth-header-tab:hover{color:#f8f6f2e6}.auth-header-tab.active{background:var(--warm-gold);color:var(--deep-charcoal);box-shadow:0 4px 15px #d4af374d}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-content{padding:40px 30px}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-family:Poppins,sans-serif;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:#f8f6f2b3}.form-group input{background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);border-radius:8px;padding:14px 18px;color:var(--ivory-white);font-family:Inter,sans-serif;font-size:14px;outline:none;transition:all .3s ease}.form-group input:focus{border-color:var(--warm-gold);background:#f8f6f214;color:var(--ivory-white)}.form-group input::placeholder{color:#f8f6f266}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ivory-white)!important;-webkit-box-shadow:0 0 0 30px rgba(248,246,242,.05) inset!important;transition:background-color 5000s ease-in-out 0s}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:50px}.password-toggle{position:absolute;right:15px;background:none;border:none;cursor:pointer;font-size:18px;color:#f8f6f280;transition:color .3s ease}.password-toggle:hover{color:var(--warm-gold)}.form-options{display:flex;justify-content:space-between;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-family:Inter,sans-serif;font-size:13px;color:#f8f6f2b3}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--warm-gold)}.forgot-password-link{background:none;border:none;color:var(--warm-gold);font-family:Inter,sans-serif;font-size:13px;cursor:pointer;transition:color .3s ease}.forgot-password-link:hover{color:var(--champagne-gold)}.auth-primary-btn{background:var(--warm-gold);border:none;color:var(--deep-charcoal);padding:16px;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s ease}.auth-primary-btn:hover{background:var(--champagne-gold);transform:translateY(-2px);box-shadow:0 10px 30px #d4af374d}.auth-secondary-btn{background:transparent;border:1px solid rgba(212,175,55,.3);color:var(--warm-gold);padding:16px;font-family:Poppins,sans-serif;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s ease}.auth-secondary-btn:hover{background:#d4af371a;border-color:var(--warm-gold)}@media (max-width: 768px){.auth-drawer{width:100%;max-width:100%}.auth-drawer-header{padding:30px 20px 20px;min-height:240px}.auth-drawer-header:before{display:none}.auth-close-btn{top:15px;right:15px;width:32px;height:32px;font-size:20px}.auth-header-content{gap:8px}.auth-logo{height:80px}.auth-tagline{font-size:11px;letter-spacing:3px}.auth-header-tabs{width:85%;padding:5px}.auth-header-tab{padding:10px 12px;font-size:10px}.auth-content{padding:30px 20px}.form-row{grid-template-columns:1fr;gap:15px}.form-group input{padding:12px 16px;font-size:14px}.auth-primary-btn,.auth-secondary-btn{padding:14px;font-size:12px}}.auth-drawer .form-group label{color:#f8f6f2cc!important}.auth-drawer .auth-header-tab{color:#f8f6f2b3!important}.auth-drawer .auth-header-tab:hover{color:#f8f6f2e6!important}.auth-drawer .auth-tagline{color:var(--warm-gold)!important}.auth-error{background:#c75b5b33;border:1px solid rgba(199,91,91,.5);color:#fcc;padding:12px;border-radius:4px;margin-bottom:16px;font-size:14px}:root{--bg: #F7F4EE;--card: #FFFFFF;--sidebar: #2E3B2E;--sidebar-hover: #384A38;--gold: #D4AF37;--gold-dark: #8C6A2B;--success: #5B8C5A;--warning: #C79A3B;--danger: #C16B5B;--text: #2A2A2A;--muted: #707070;--border: #E8E0D2;--radius: 20px}.pms-dashboard{display:flex;min-height:100vh;background:var(--bg)}.pms-sidebar{width:280px;background:var(--sidebar);display:flex;flex-direction:column;transition:width .3s ease;position:fixed;left:0;top:0;height:100vh;z-index:100}.pms-sidebar.collapsed{width:80px}.sidebar-header{padding:24px 20px;border-bottom:1px solid rgba(212,175,55,.2);display:flex;justify-content:space-between;align-items:center}.sidebar-logo{display:flex;align-items:center;gap:12px;min-width:0;overflow:hidden}.sidebar-logo-img{height:40px;width:40px;min-width:40px;object-fit:contain;flex-shrink:0}.sidebar-logo-text{font-family:Playfair Display,serif;font-size:16px;font-weight:600;color:var(--gold);letter-spacing:1px}.sidebar-toggle{background:#d4af371a;border:1px solid rgba(212,175,55,.3);color:var(--gold);width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.sidebar-toggle:hover{background:#d4af3733}.sidebar-nav{flex:1;padding:20px;overflow-y:auto}.sidebar-section-header{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:8px}.sidebar-section-label{font-family:Inter,sans-serif;font-size:11px;font-weight:600;color:var(--gold);letter-spacing:1.5px;text-transform:uppercase}.sidebar-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;color:#fff;font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sidebar-item:hover{background:var(--sidebar-hover)}.sidebar-item.active{background:var(--gold);color:#222}.sidebar-item-label{font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sidebar-footer{padding:20px;border-top:1px solid rgba(212,175,55,.2)}.sidebar-user{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:8px;margin-bottom:12px}.user-avatar{width:36px;height:36px;background:#d4af3733;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px}.user-role{font-family:Inter,sans-serif;font-size:11px;color:#fff9}.sidebar-logout{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#d4af371a;border:1px solid rgba(212,175,55,.2);border-radius:8px;cursor:pointer;transition:all .3s ease;color:#fff;font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sidebar-logout:hover{background:#d4af3733}.sidebar-login{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#d4af371a;border:1px solid rgba(212,175,55,.2);border-radius:8px;cursor:pointer;transition:all .3s ease;color:#fff;font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sidebar-login:hover{background:#d4af3733}.pms-main{flex:1;margin-left:280px;transition:margin-left .3s ease;background:var(--bg)}.pms-sidebar.collapsed+.pms-main{margin-left:80px}.pms-header{background:var(--card);padding:24px 32px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #0000000a}.header-greeting{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:var(--text);margin:0}.header-subtitle{font-family:Inter,sans-serif;font-size:14px;color:var(--muted);margin:0}.header-date{font-family:Inter,sans-serif;font-size:13px;color:var(--muted)}.header-notifications{position:relative;background:var(--bg);border:1px solid var(--border);width:40px;height:40px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;color:var(--text)}.header-notifications:hover{background:var(--border)}.notification-badge{position:absolute;top:-2px;right:-2px;background:var(--danger);color:#fff;font-size:10px;font-weight:600;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.header-profile{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .3s ease}.header-profile:hover{background:var(--border)}.profile-avatar{width:32px;height:32px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px}.pms-content{padding:32px}.dashboard-card{background:var(--card);border-radius:var(--radius);padding:24px;border:1px solid var(--border);box-shadow:0 8px 30px #0000000d;transition:.25s ease}.dashboard-card:hover{transform:translateY(-2px)}.card-title{font-family:Playfair Display,serif;font-size:18px;font-weight:600;color:var(--text);margin:0 0 20px}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.kpi-card{display:flex;align-items:center;gap:16px;padding:20px}.kpi-icon{font-size:24px;color:#5a5a5a}.kpi-content{flex:1}.kpi-title{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:var(--muted);margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px}.kpi-value{font-family:Inter,sans-serif;font-size:28px;font-weight:700;color:var(--text);margin:0 0 8px}.kpi-footer{display:flex;align-items:center;gap:8px}.kpi-trend{font-family:Inter,sans-serif;font-size:12px;font-weight:600}.kpi-trend.positive{color:var(--success)}.kpi-trend.negative{color:var(--danger)}.kpi-status{font-family:Inter,sans-serif;font-size:11px;color:var(--muted)}.analytics-row{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px}.room-availability{display:flex;flex-direction:column;gap:16px}.room-availability-item{display:flex;flex-direction:column;gap:8px}.room-availability-info{display:flex;justify-content:space-between;align-items:center}.room-availability-status{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:var(--text)}.room-availability-count{font-family:Inter,sans-serif;font-size:18px;font-weight:700;color:var(--text)}.room-availability-bar{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.room-availability-fill{height:100%;border-radius:4px;transition:width .3s ease}.chart-container{position:relative;height:200px}.rating-grid{display:flex;flex-direction:column;gap:16px}.rating-item{display:flex;flex-direction:column;gap:8px}.rating-info{display:flex;justify-content:space-between;align-items:center}.rating-label{font-family:Inter,sans-serif;font-size:13px;font-weight:500;color:var(--text)}.rating-value{font-family:Inter,sans-serif;font-size:14px;font-weight:700;color:var(--gold)}.rating-bar{width:100%;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.rating-fill{height:100%;border-radius:3px;transition:width .3s ease}.secondary-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}.tasks-grid{display:flex;flex-direction:column;gap:12px}.task-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg);border-radius:12px}.task-icon{font-size:24px}.task-info{flex:1;display:flex;justify-content:space-between;align-items:center}.task-type{font-family:Inter,sans-serif;font-size:13px;font-weight:500;color:var(--text)}.task-count{font-family:Inter,sans-serif;font-size:18px;font-weight:700;color:var(--gold)}.tables-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.data-table{width:100%;border-collapse:collapse}.data-table th{font-family:Inter,sans-serif;font-size:12px;font-weight:600;color:var(--muted);text-align:left;padding:12px 8px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.5px}.data-table td{font-family:Inter,sans-serif;font-size:13px;color:var(--text);padding:12px 8px;border-bottom:1px solid var(--border)}.data-table tr:last-child td{border-bottom:none}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.confirmed{background:#5b8c5a26;color:var(--success)}.status-badge.pending{background:#c79a3b26;color:var(--warning)}.event-item{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg);border-radius:12px}.event-info{display:flex;justify-content:space-between;align-items:center}.event-name{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:var(--text)}.event-time{font-family:Inter,sans-serif;font-size:12px;color:var(--muted)}.event-details{display:flex;justify-content:space-between;align-items:center}.event-hall{font-family:Inter,sans-serif;font-size:12px;color:var(--gold)}.event-status{font-family:Inter,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase}.event-status.in-progress{color:var(--success)}.event-status.upcoming{color:var(--warning)}.sidebar-nav{flex:1;overflow-y:auto;padding:16px}.sidebar-section{margin-bottom:24px}.sidebar-section-header{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:8px;color:#ffffff80;font-family:Poppins,sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.sidebar-section-icon{font-size:16px}.sidebar-section-items{display:flex;flex-direction:column;gap:4px}.sidebar-item{display:flex;align-items:center;gap:12px;padding:12px;background:none;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left}.sidebar-item-icon{font-size:20px;color:#5a5a5a}.sidebar-item-label{font-family:Inter,sans-serif;font-size:13px;color:#ffffffb3;transition:color .3s ease}.sidebar-item:hover{background:#d4af370d}.sidebar-item:hover .sidebar-item-label{color:#ffffffe6}.sidebar-item.active{background:#d4af3726;border:1px solid rgba(212,175,55,.3)}.sidebar-item.active .sidebar-item-label{color:#d4af37}.sidebar-footer{padding:16px;border-top:1px solid rgba(212,175,55,.1)}.sidebar-user{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:12px;background:#ffffff08;border-radius:8px}.user-avatar{width:36px;height:36px;border-radius:50%;background:#d4af3733;display:flex;align-items:center;justify-content:center;font-size:18px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-family:Inter,sans-serif;font-size:13px;font-weight:500;color:#fff}.user-role{font-family:Inter,sans-serif;font-size:11px;color:#ffffff80}.sidebar-logout{display:flex;align-items:center;gap:12px;width:100%;padding:12px;background:#ffffff08;border:1px solid rgba(212,175,55,.1);border-radius:8px;color:#ffffffb3;font-family:Inter,sans-serif;font-size:13px;cursor:pointer;transition:all .3s ease}.sidebar-logout:hover{background:#d4af371a;border-color:#d4af374d;color:#d4af37}.pms-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f7f4ee}.pms-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:#fff;border-bottom:1px solid #E8E0D2;box-shadow:0 2px 8px #0000000a}.header-left{display:flex;flex-direction:column;gap:4px}.header-greeting{font-family:Cormorant Garamond,serif;font-size:24px;font-weight:600;color:#2c2c2c;margin:0}.header-subtitle{font-family:Inter,sans-serif;font-size:13px;color:#6b6b6b;margin:0}.header-right{display:flex;align-items:center;gap:20px}.header-date{font-family:Inter,sans-serif;font-size:13px;color:#6b6b6b}.header-notifications{position:relative;background:#f7f4ee;border:1px solid #E8E0D2;width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.header-notifications:hover{background:#e8e0d2}.notification-badge{position:absolute;top:-2px;right:-2px;background:#b25a4a;color:#fff;font-size:10px;font-weight:600;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.header-profile{cursor:pointer}.profile-avatar{width:40px;height:40px;border-radius:50%;background:#d4af3733;display:flex;align-items:center;justify-content:center;font-size:20px;border:2px solid rgba(212,175,55,.3);transition:all .3s ease}.profile-avatar:hover{border-color:#d4af37}.pms-content{flex:1;overflow-y:auto;padding:32px}.dashboard-grid{display:flex;flex-direction:column;gap:24px}.kpi-row{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.room-board-main{width:100%}.secondary-panels-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.bottom-section{display:grid;grid-template-columns:1fr 1fr;gap:20px}.kpi-compact{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.revenue-compact{background:#fff;border:1px solid #E8E0D2;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.stat-card{background:#fff;border:1px solid #E8E0D2;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 8px #0000000a;transition:all .3s ease}.stat-card:hover{border-color:#d4af37;box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.stat-icon{font-size:24px;margin-bottom:4px;color:#5a5a5a}.stat-title{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#6b6b6b;margin:0;text-transform:uppercase;letter-spacing:.5px}.stat-amount{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:600;color:#2c2c2c;margin:0}.stat-subtitle{font-family:Inter,sans-serif;font-size:11px;color:#6b6b6b;margin:0}.charts-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}.main-operations-row{display:grid;grid-template-columns:2fr 1fr;gap:20px}.bottom-operations-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.chart-card{background:#121821e6;border:1px solid rgba(212,175,55,.1);border-radius:16px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.chart-card:hover{border-color:#d4af3733}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-title{font-family:Playfair Display,serif;font-size:18px;font-weight:600;color:#fff;margin:0}.chart-options{background:none;border:none;color:#ffffff80;font-size:20px;cursor:pointer;transition:color .3s ease}.chart-options:hover{color:#d4af37}.chart-content{min-height:200px}.chart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:16px}.chart-bars{display:flex;align-items:flex-end;gap:12px;height:150px}.chart-bar{width:40px;background:linear-gradient(180deg,#d4af37,#b9962c);border-radius:8px 8px 0 0;transition:all .3s ease}.chart-bar:hover{filter:brightness(1.2)}.chart-labels{display:flex;gap:12px}.chart-labels span{font-family:Inter,sans-serif;font-size:11px;color:#ffffff80;width:40px;text-align:center}.occupancy-circle{width:150px;height:150px;border-radius:50%;background:conic-gradient(#d4af37,#d4af37 281deg,#d4af371a 281deg,#d4af371a 360deg);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.occupancy-circle:before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:#121821e6}.occupancy-value{position:relative;font-family:Playfair Display,serif;font-size:32px;font-weight:600;color:#d4af37}.occupancy-label{position:relative;font-family:Inter,sans-serif;font-size:12px;color:#ffffffb3}.reservation-list,.transaction-table,.function-hall-events,.quick-actions{background:#121821e6;border:1px solid rgba(212,175,55,.1);border-radius:16px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-title{font-family:Playfair Display,serif;font-size:16px;font-weight:600;color:#fff;margin:0 0 16px}.reservation-items{display:flex;flex-direction:column;gap:12px}.reservation-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff08;border-radius:8px;transition:all .3s ease}.reservation-item:hover{background:#d4af370d}.reservation-info{display:flex;flex-direction:column;gap:4px}.reservation-guest{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#fff}.reservation-room{font-family:Inter,sans-serif;font-size:12px;color:#ffffff80}.reservation-details{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.reservation-checkin{font-family:Inter,sans-serif;font-size:12px;color:#ffffffb3}.reservation-status{font-family:Inter,sans-serif;font-size:11px;font-weight:500;padding:4px 8px;border-radius:12px;text-transform:uppercase}.reservation-status.checked-in{background:#22c55e33;color:#22c55e}.reservation-status.pending{background:#f59e0b33;color:#f59e0b}.reservation-status.confirmed{background:#3b82f633;color:#3b82f6}.transactions{width:100%;border-collapse:collapse}.transactions th{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#ffffff80;text-align:left;padding:12px 8px;border-bottom:1px solid rgba(212,175,55,.1)}.transactions td{font-family:Inter,sans-serif;font-size:13px;color:#fffc;padding:12px 8px;border-bottom:1px solid rgba(255,255,255,.05)}.transactions tr:hover td{background:#d4af370d}.event-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff08;border-radius:8px;margin-bottom:8px}.event-name{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#fff}.event-time{font-family:Inter,sans-serif;font-size:12px;color:#ffffff80}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.quick-action-card{background:#ffffff08;border:1px solid rgba(212,175,55,.1);border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .3s ease}.quick-action-card:hover{background:#d4af371a;border-color:#d4af374d;transform:translateY(-2px)}.quick-action-icon{font-size:24px;color:#5a5a5a}.quick-action-label{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#fffc;text-align:center}.bottom-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}.room-status-board,.today-arrivals,.today-departures,.room-status-panel,.front-desk-actions,.housekeeping-panel,.function-hall-panel,.revenue-section{background:#fff;border:1px solid #E8E0D2;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.room-board-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.occupancy-overview{display:flex;flex-direction:column;gap:24px}.occupancy-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.occupancy-total,.occupancy-percentage{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px}.occupancy-number{font-family:Cormorant Garamond,serif;font-size:36px;font-weight:600;color:#2c2c2c}.occupancy-label{font-family:Inter,sans-serif;font-size:12px;color:#6b6b6b;text-transform:uppercase;letter-spacing:1px}.occupancy-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.occupancy-item{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px}.occupancy-count{font-family:Cormorant Garamond,serif;font-size:32px;font-weight:600}.occupancy-status{font-family:Inter,sans-serif;font-size:12px;color:#6b6b6b;text-transform:uppercase;letter-spacing:1px}.occupancy-bar{width:100%;height:8px;background:#e8e0d2;border-radius:4px;overflow:hidden}.occupancy-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.today-operations,.arrivals-list,.departures-list{display:flex;flex-direction:column;gap:12px}.arrival-item,.departure-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:8px;transition:all .3s ease}.arrival-item:hover,.departure-item:hover{background:#e8e0d2}.arrival-guest,.departure-guest{font-family:Inter,sans-serif;font-size:13px;font-weight:500;color:#2c2c2c}.arrival-room,.departure-room{font-family:Inter,sans-serif;font-size:12px;color:#6b6b6b}.arrival-time,.departure-time{font-family:Inter,sans-serif;font-size:11px;color:#6b6b6b}.arrival-status,.departure-status{font-family:Inter,sans-serif;font-size:11px;font-weight:500;padding:4px 8px;border-radius:12px;text-transform:uppercase}.arrival-status.confirmed,.departure-status.checked-out{background:#4f7a5826;color:#4f7a58}.arrival-status.pending,.departure-status.pending{background:#c59b4a26;color:#c59b4a}.operations-timeline{display:flex;flex-direction:column;gap:12px}.operation-item{display:flex;align-items:center;gap:16px;padding:16px;background:#ffffff08;border-radius:12px;transition:all .3s ease}.operation-item:hover{background:#d4af370d}.operation-time{font-family:Inter,sans-serif;font-size:13px;font-weight:600;color:#d4af37;min-width:100px}.operation-details{flex:1;display:flex;flex-direction:column;gap:4px}.operation-guest{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#fff}.operation-action{font-family:Inter,sans-serif;font-size:12px;color:#ffffffb3}.operation-room{font-family:Inter,sans-serif;font-size:11px;color:#ffffff80}.operation-type{width:12px;height:12px;border-radius:50%}.operation-type.checkin{background:#22c55e}.operation-type.checkout{background:#f59e0b}.operation-type.arrival{background:#3b82f6}.operation-type.event{background:#8b5cf6}.room-status-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:20px}.room-status-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px}.room-status-count{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:600}.room-status-label{font-family:Inter,sans-serif;font-size:11px;color:#6b6b6b;text-transform:uppercase}.room-status-chart{display:flex;flex-direction:column;gap:8px}.status-bar{height:8px;border-radius:4px;transition:all .3s ease}.status-bar:hover{filter:brightness(1.1)}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.action-button{background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .3s ease}.action-button:hover{background:#e8e0d2;border-color:#d4af37;transform:translateY(-2px)}.action-icon{font-size:18px;color:#5a5a5a}.action-label{font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#2c2c2c;text-align:center}.housekeeping-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.housekeeping-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px}.housekeeping-count{font-family:Cormorant Garamond,serif;font-size:32px;font-weight:600}.housekeeping-label{font-family:Inter,sans-serif;font-size:12px;color:#6b6b6b;text-transform:uppercase}.events-list{display:flex;flex-direction:column;gap:12px}.event-card{display:flex;flex-direction:column;gap:6px;padding:16px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:12px}.event-name{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#2c2c2c}.event-time{font-family:Inter,sans-serif;font-size:12px;color:#6b6b6b}.event-hall{font-family:Inter,sans-serif;font-size:11px;color:#d4af37}.revenue-list{display:flex;flex-direction:column;gap:12px}.revenue-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f7f4ee;border:1px solid #E8E0D2;border-radius:8px}.revenue-type{font-family:Inter,sans-serif;font-size:13px;color:#2c2c2c}.revenue-amount{font-family:Cormorant Garamond,serif;font-size:16px;font-weight:600;color:#2c2c2c}.revenue-change{font-family:Inter,sans-serif;font-size:12px;font-weight:500}.revenue-change.positive{color:#4f7a58}.revenue-change.negative{color:#c59b4a}.list-title{font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600;color:#2c2c2c;margin:0 0 16px}@media (max-width: 1400px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.analytics-row,.secondary-row,.tables-row{grid-template-columns:1fr}}@media (max-width: 768px){.pms-sidebar{position:fixed;left:-280px}.pms-sidebar.active{left:0}.pms-main{margin-left:0}.kpi-grid{grid-template-columns:repeat(2,1fr)}.header-greeting{font-size:24px}.pms-content{padding:20px}}@media (max-width: 1200px){.secondary-panels-row{grid-template-columns:repeat(2,1fr)}.bottom-section{grid-template-columns:1fr}.kpi-compact{grid-template-columns:repeat(2,1fr)}.kpi-row{grid-template-columns:repeat(3,1fr)}.main-operations-row,.bottom-operations-row,.charts-row,.bottom-row{grid-template-columns:1fr}}@media (max-width: 768px){.pms-sidebar{position:fixed;left:-280px;z-index:1000;height:100vh}.pms-sidebar.active{left:0}.room-grid{grid-template-columns:repeat(2,1fr)}.secondary-panels-row,.bottom-section{grid-template-columns:1fr}.kpi-compact,.kpi-row{grid-template-columns:repeat(2,1fr)}.main-operations-row,.bottom-operations-row{grid-template-columns:1fr}.pms-header{padding:16px 20px}.header-greeting{font-size:18px}.pms-content{padding:20px}.room-status-grid{grid-template-columns:repeat(3,1fr)}.actions-grid{grid-template-columns:repeat(2,1fr)}}.fab-container{position:fixed!important;bottom:24px!important;right:24px!important;z-index:9999;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:12px}.fab-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .3s ease}.fab-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none;position:relative;z-index:10000}.fab-actions.expanded{pointer-events:auto}.fab-action-item{display:flex;align-items:center;gap:12px;transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:auto;position:relative;z-index:10001}.fab-action-label{background:#fff;color:#2d3e34;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px #0000001a;opacity:1;transform:translate(0);transition:all .3s ease}.fab-action-button{width:48px;height:48px;border-radius:50%;border:none;background:#2d3e34;color:#f8f6f1;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 12px #2d3e344d;transition:all .3s ease;position:relative}.fab-action-button:hover{transform:scale(1.05);box-shadow:0 6px 20px #c9a22766;background:#c9a227}.fab-action-button:active{transform:scale(.95)}.fab-action-button:focus{outline:2px solid #C9A227;outline-offset:2px}.fab-action-icon{line-height:1}.fab-action-badge{position:absolute;top:-4px;right:-4px;background:#c9a227;color:#fff;font-size:10px;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 2px 4px #0003}.fab-main{width:56px;height:56px;border-radius:50%;border:none;background:#c9a227;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;box-shadow:0 4px 12px #c9a22766;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:9999}.fab-main:hover{transform:scale(1.05);box-shadow:0 6px 20px #c9a22780;background:#d4b337}.fab-main:active{transform:scale(.95)}.fab-main:focus{outline:2px solid #2D3E34;outline-offset:2px}.fab-main.expanded{transform:rotate(45deg);background:#2d3e34;box-shadow:0 4px 12px #2d3e3466}.fab-main.expanded:hover{background:#3d4e44;box-shadow:0 6px 20px #2d3e3480}.fab-main-icon{line-height:1}@media (max-width: 768px){.fab-container{bottom:20px;right:20px}.fab-main{width:52px;height:52px;font-size:22px}.fab-action-button{width:44px;height:44px;font-size:18px}.fab-action-label{font-size:12px;padding:6px 12px}.fab-action-item{gap:10px}}.guidelines-section{padding:24px 32px;background:var(--bg);border-top:1px solid var(--border)}.guidelines-header{margin-bottom:20px}.guidelines-header h3{font-family:Inter,sans-serif;font-size:18px;font-weight:600;color:var(--text);margin:0 0 8px}.guidelines-header p{font-family:Inter,sans-serif;font-size:13px;color:var(--muted);margin:0}.guidelines-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.guideline-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;text-decoration:none;transition:all .2s ease}.guideline-card:hover{border-color:var(--gold);box-shadow:0 4px 12px #d4a24c26;transform:translateY(-2px)}.guideline-icon{width:48px;height:48px;background:#d4a24c1a;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0}.guideline-info{flex:1}.guideline-info h4{font-family:Inter,sans-serif;font-size:14px;font-weight:600;color:var(--text);margin:0 0 4px}.guideline-info span{font-family:Inter,sans-serif;font-size:12px;color:var(--muted)}@media (max-width: 768px){.guidelines-section{padding:16px 20px}.guidelines-cards{grid-template-columns:1fr}.guideline-card{padding:16px}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2;--reservation-gold: #C8A348;--checkin-green: #4A7C59;--checkout-blue: #5B8FB9;--functionhall-purple: #8B7355;--housekeeping-orange: #D4A574;--maintenance-red: #C75B5B;--vip-black: #2C2C2C}.calendar-container{display:flex;min-height:100vh;background:var(--cream);font-family:Inter,sans-serif}.calendar-sidebar{width:280px;background:var(--white);border-right:1px solid var(--light-border);padding:24px;display:flex;flex-direction:column;gap:24px;flex-shrink:0}.mini-calendar-card,.event-categories-card,.quick-stats-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a}.card-title{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.mini-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mini-calendar-title{font-size:14px;font-weight:600;color:var(--primary-dark-green)}.mini-calendar-nav{background:none;border:none;font-size:18px;color:var(--olive-green);cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.mini-calendar-nav:hover{background:var(--cream)}.mini-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.mini-calendar-weekday{font-size:10px;font-weight:500;color:var(--olive-green);text-align:center;padding:4px 0}.mini-calendar-day{font-size:12px;font-weight:500;color:var(--primary-dark-green);text-align:center;padding:6px 0;border-radius:6px;cursor:pointer;transition:all .2s ease}.mini-calendar-day:hover{background:var(--cream)}.mini-calendar-day.today{background:var(--luxury-gold);color:var(--white);font-weight:600}.mini-calendar-day.empty{cursor:default}.categories-list{display:flex;flex-direction:column;gap:12px}.category-item{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s ease}.category-item:hover{background:var(--cream)}.category-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--luxury-gold);cursor:pointer}.category-icon{font-size:18px;color:var(--olive-green)}.category-label{font-size:13px;font-weight:500;color:var(--primary-dark-green)}.stats-list{display:flex;flex-direction:column;gap:12px}.stat-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--cream);border-radius:8px}.stat-label{font-size:12px;font-weight:500;color:var(--olive-green)}.calendar-main{flex:1;padding:32px;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.calendar-nav{display:flex;align-items:center;gap:16px}.calendar-nav-btn{background:none;border:none;font-size:24px;color:var(--olive-green);cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s ease}.calendar-nav-btn:hover{background:var(--cream)}.calendar-title{font-size:20px;font-weight:600;color:var(--primary-dark-green)}.calendar-controls{display:flex;align-items:center;gap:16px}.view-switcher{display:flex;background:var(--cream);border-radius:8px;padding:4px}.view-btn{background:none;border:none;padding:8px 16px;font-size:13px;font-weight:500;color:var(--olive-green);cursor:pointer;border-radius:6px;transition:all .2s ease}.view-btn.active{background:var(--luxury-gold);color:var(--white)}.calendar-actions{display:flex;gap:12px}.search-btn{background:var(--white);border:1px solid var(--light-border);padding:10px 16px;font-size:13px;font-weight:500;color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease}.search-btn:hover{border-color:var(--luxury-gold)}.new-event-btn{background:var(--luxury-gold);border:none;padding:10px 16px;font-size:13px;font-weight:600;color:var(--white);border-radius:8px;cursor:pointer;transition:all .2s ease}.new-event-btn:hover{background:#d4b358}.occupancy-summary{display:flex;gap:16px}.occupancy-card{flex:1;padding:16px 20px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;gap:4px}.occupancy-value{font-size:28px;font-weight:700;color:var(--luxury-gold)}.occupancy-label{font-size:12px;font-weight:500;color:var(--olive-green)}.upcoming-events{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a}.section-title{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.upcoming-events-list{display:flex;flex-direction:column;gap:12px}.upcoming-event-item{display:flex;align-items:center;gap:16px;padding:12px;background:var(--cream);border-radius:8px}.event-type{font-size:12px;font-weight:600;color:var(--luxury-gold);min-width:100px}.event-description{flex:1;font-size:13px;font-weight:500;color:var(--primary-dark-green)}.event-time{font-size:12px;font-weight:500;color:var(--olive-green)}.calendar-grid{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--light-border)}.calendar-weekday{font-size:12px;font-weight:600;color:var(--olive-green);text-align:center;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;grid-auto-rows:140px}.calendar-day{height:140px;padding:12px;background:var(--cream);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:8px;overflow:hidden}.calendar-day:hover{border-color:var(--luxury-gold);box-shadow:0 4px 12px #c8a3481a}.calendar-day.today{background:#c8a3481a;border-color:var(--luxury-gold)}.calendar-day.empty{background:transparent;border:none;cursor:default}.day-number{font-size:16px;font-weight:600;color:var(--primary-dark-green)}.calendar-day.today .day-number{color:var(--luxury-gold)}.day-events{display:flex;flex-direction:column;gap:6px;flex:1;overflow-y:auto;overflow-x:hidden}.event-card{padding:8px 12px;border-radius:6px;font-size:11px;font-weight:500;color:var(--white);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.event-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.event-title{display:block;font-weight:600;margin-bottom:2px}.event-room{display:block;font-weight:400;opacity:.9}.calendar-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.calendar-drawer{width:500px;max-height:80vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.drawer-section-title{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:20px;text-transform:uppercase;letter-spacing:.5px}.drawer-events{display:flex;flex-direction:column;gap:16px}.drawer-event-group{padding:16px;background:var(--cream);border-radius:8px;display:flex;flex-direction:column;gap:12px}.drawer-event-count{font-size:14px;font-weight:600;color:var(--primary-dark-green)}.drawer-event-actions{display:flex;gap:8px}.drawer-action-btn{background:var(--white);border:1px solid var(--light-border);padding:8px 16px;font-size:12px;font-weight:500;color:var(--primary-dark-green);border-radius:6px;cursor:pointer;transition:all .2s ease}@media (max-width: 1024px){.calendar-sidebar{width:240px}.calendar-main{padding:20px}.calendar-header{flex-direction:column;gap:16px;align-items:stretch}.calendar-controls{flex-direction:column}.calendar-actions{width:100%}.search-btn,.new-event-btn{flex:1}.occupancy-summary{flex-wrap:wrap}.occupancy-card{min-width:calc(50% - 8px)}}@media (max-width: 768px){.calendar-container{flex-direction:column}.calendar-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--light-border)}.calendar-days{grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:80px;padding:8px}.day-number{font-size:14px}.event-card{font-size:10px;padding:6px 8px}.calendar-drawer{width:90%;max-height:90vh}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream-background: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2;--ready-green: #4A7C59;--dirty-gold: #C8A348;--cleaning-blue: #5B8FB9;--inspection-purple: #8B7355;--maintenance-red: #C75B5B}.housekeeping-container{min-height:100vh;background:var(--cream-background);font-family:Inter,sans-serif;padding:32px;display:flex;flex-direction:column;gap:24px}.housekeeping-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.summary-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.summary-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:10px;box-shadow:0 2px 8px #0000000a;display:flex;align-items:center;gap:12px}.card-icon{font-size:24px}.card-content{flex:1;color:#000}.card-value{font-size:20px;font-weight:700;color:var(--luxury-gold);margin-bottom:2px}.card-label{font-size:12px;font-weight:600;color:var(--primary-dark-green);margin-bottom:1px}.card-sublabel{font-size:10px;font-weight:400;color:var(--olive-green)}.card-icon{font-size:24px;color:var(--luxury-gold)}.filter-bar{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.search-section{flex:1}.search-input{width:100%;padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream-background);border:1px solid var(--light-border);border-radius:8px;outline:none;transition:border-color .2s ease}.filter-select{padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream-background);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;outline:none;transition:border-color .2s ease}.export-btn{padding:10px 20px;font-size:13px;font-weight:500;color:var(--primary-dark-green);background:var(--white);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.export-btn:hover{border-color:var(--luxury-gold)}.table-header{margin-bottom:20px}.room-table{width:100%;border-collapse:collapse}.room-table thead{background:var(--cream-background)}.room-table th{padding:12px 16px;font-size:12px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;text-align:left}.room-table td{padding:16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);border-bottom:1px solid var(--light-border)}.room-table tbody tr:hover{background:var(--cream-background)}.room-number{font-weight:600;color:var(--luxury-gold)}.room-type{font-weight:500}.action-icon:hover{background:var(--cream-background)}.kanban-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.kanban-header{margin-bottom:20px}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kanban-column{background:var(--cream-background);border-radius:8px;padding:16px;min-height:300px}.column-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--light-border)}.column-title{font-size:14px;font-weight:600;color:var(--primary-dark-green)}.column-count{background:var(--luxury-gold);color:var(--white);font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px}.column-cards{display:flex;flex-direction:column;gap:12px}.kanban-card{background:var(--white);border:1px solid var(--light-border);border-radius:8px;padding:16px;cursor:grab;transition:all .2s ease}.kanban-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-room-number{font-size:16px;font-weight:600;color:var(--luxury-gold)}.card-room-type{font-size:12px;font-weight:500;color:var(--olive-green)}.card-details{display:flex;flex-direction:column;gap:6px}.card-assigned{font-size:12px;font-weight:400;color:var(--primary-dark-green)}.card-priority{font-size:12px;font-weight:600}.performance-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a;overflow-y:auto;max-height:400px}.performance-header{margin-bottom:20px}.performance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.performance-card{background:var(--cream-background);border:1px solid var(--light-border);border-radius:12px;padding:20px}.staff-info{display:flex;align-items:center;gap:12px;margin-bottom:16px}.staff-avatar{width:48px;height:48px;background:var(--luxury-gold);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.staff-details{flex:1}.staff-name{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:2px}.staff-role{font-size:12px;font-weight:400;color:var(--olive-green)}.staff-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat-item{text-align:center;padding:8px;background:var(--white);border-radius:6px}.stat-value{display:block;font-size:18px;font-weight:700;color:var(--primary-dark-green);margin-bottom:2px}.stat-label{display:block;font-size:11px;font-weight:500;color:var(--olive-green);text-transform:uppercase}.stat-item.performance .stat-value{color:var(--primary-dark-green)}.floor-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.floor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.floor-grid{display:flex;flex-direction:column;gap:16px}.floor-row{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cream-background);border-radius:8px}.floor-title{font-size:14px;font-weight:600;color:var(--primary-dark-green);min-width:100px}.floor-rooms{display:flex;gap:12px;flex:1}.room-dot{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--white);cursor:pointer;transition:transform .2s ease}.room-dot:hover{transform:scale(1.1)}.timeline-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.timeline-header{margin-bottom:20px}.timeline{display:flex;flex-direction:column;gap:12px}.timeline-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--cream-background);border-radius:8px}.timeline-time{font-size:13px;font-weight:600;color:var(--luxury-gold);min-width:100px}.timeline-content{flex:1;font-size:13px;font-weight:400;color:var(--primary-dark-green)}@media (max-width: 1200px){.summary-cards{grid-template-columns:repeat(3,1fr)}.performance-grid,.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.housekeeping-container{padding:16px}.housekeeping-header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{flex-direction:column}.summary-cards{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-direction:column;align-items:stretch}.filter-section{flex-direction:column}.performance-grid,.kanban-board{grid-template-columns:1fr}.floor-legend{flex-wrap:wrap}.floor-row{flex-direction:column;align-items:flex-start}.floor-rooms{flex-wrap:wrap}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2;--available-green: #4A7C59;--occupied-blue: #5B8FB9;--reserved-gold: #C8A348;--dirty-orange: #D4A574;--maintenance-red: #C75B5B;--blocked-black: #2C2C2C}.empty-state{text-align:center;padding:60px 20px;color:var(--olive-green);font-size:16px;background:var(--white);border-radius:12px;border:1px solid var(--light-border)}.skeleton{background:linear-gradient(90deg,#f8f6f20d 25%,#f8f6f21a,#f8f6f20d 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.kpi-card.skeleton{height:120px}.kpi-card .skeleton-value{height:40px;width:60%;margin:0 auto 12px;border-radius:4px}.kpi-card .skeleton-label{height:16px;width:80%;margin:0 auto 8px;border-radius:4px}.kpi-card .skeleton-sublabel{height:14px;width:60%;margin:0 auto;border-radius:4px}.room-card.skeleton{height:180px}.room-card .skeleton-header{height:24px;width:70%;margin-bottom:12px;border-radius:4px}.room-card .skeleton-body{height:60px;width:100%;border-radius:4px}.floor-row.skeleton{height:60px;margin-bottom:12px}.floor-row .skeleton-text{height:20px;width:120px;margin-bottom:0;border-radius:4px}.floor-room.skeleton-box{height:50px;width:60px;border-radius:4px}.room-type-card.skeleton{height:150px}.room-type-card .skeleton-title{height:24px;width:70%;margin-bottom:16px;border-radius:4px}.room-type-card .skeleton-stat{height:40px;width:50px;border-radius:4px}.maintenance-item.skeleton{height:80px}.maintenance-item .skeleton-room{height:20px;width:100px;margin-bottom:8px;border-radius:4px}.maintenance-item .skeleton-issue{height:16px;width:60%;border-radius:4px}.occupancy-row.skeleton{height:40px;margin-bottom:12px}.occupancy-row .skeleton-floor{height:16px;width:80px;border-radius:4px}.occupancy-row .skeleton-bar{height:16px;width:100%;border-radius:4px}.occupancy-row .skeleton-percentage{height:16px;width:40px;border-radius:4px}.rs-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.rs-header-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.rs-search-box{position:relative;display:flex;align-items:center;background:var(--cream);border:1px solid var(--light-border);border-radius:8px;padding:0 10px;gap:6px;transition:border-color .2s}.rs-search-box:focus-within{border-color:var(--luxury-gold)}.rs-search-box svg{color:var(--olive-green);opacity:.6;flex-shrink:0}.rs-search-box input{border:none;background:transparent;outline:none;font-size:13px;color:var(--primary-dark-green);padding:8px 0;width:200px}.rs-search-box input::placeholder{color:var(--olive-green);opacity:.5}.rs-search-clear{background:none;border:none;cursor:pointer;color:var(--olive-green);opacity:.5;padding:2px;display:flex;align-items:center;border-radius:4px;transition:opacity .2s}.rs-search-clear:hover{opacity:1}.rs-floor-select{font-size:13px;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;padding:8px 10px;outline:none;cursor:pointer;transition:border-color .2s}.rs-floor-select:focus{border-color:var(--luxury-gold)}.rs-reset-btn{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:var(--olive-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;padding:8px 12px;cursor:pointer;transition:all .2s;white-space:nowrap}.rs-reset-btn:hover{border-color:var(--luxury-gold);color:var(--luxury-gold)}.rs-status-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.rs-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;border:1px solid;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;background:transparent;white-space:nowrap}.rs-chip:hover{opacity:.85}.rs-chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.rs-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:10px;font-weight:700}.room-card{border:2px solid var(--light-border);border-left:4px solid var(--light-border);transition:all .2s;position:relative}.room-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.room-number{font-size:28px;font-weight:700;color:var(--primary-dark-green)}.room-type{font-size:14px;font-weight:500;color:var(--olive-green);margin-top:4px}.room-floor{font-size:13px;color:var(--olive-green);margin-bottom:8px}.room-occupancy{font-size:13px;color:var(--olive-green);margin-bottom:6px}.room-rate{font-size:13px;color:var(--luxury-gold);font-weight:600;margin-bottom:8px}.housekeeping-status{font-size:12px;color:var(--olive-green);opacity:.8}.kpi-icon{font-size:32px;margin-bottom:8px}.floor-room-number{font-size:10px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.floor-room-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--primary-dark-green);color:#fff;padding:12px;border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s;z-index:100;box-shadow:0 4px 12px #0003;min-width:180px}.floor-room-box:hover .floor-room-tooltip{opacity:1;visibility:visible;bottom:calc(100% + 8px)}.tooltip-room{font-weight:600;margin-bottom:4px;font-size:14px}.tooltip-type{margin-bottom:4px;opacity:.9}.tooltip-status,.tooltip-hk,.tooltip-rate,.tooltip-occupancy{margin-bottom:2px;opacity:.8;font-size:11px}.floor-empty{padding:12px;color:var(--olive-green);opacity:.6;font-style:italic;font-size:13px}@media (min-width: 1024px){.floor-rooms{flex-wrap:nowrap}}@media (max-width: 767px){.floor-row{grid-template-columns:1fr;gap:12px;padding:12px}.floor-label{min-width:auto}.floor-rooms{flex-wrap:wrap}}.room-info-display{background:var(--cream);border-radius:8px;padding:16px;border:1px solid var(--light-border)}.info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--light-border)}.info-row:last-child{border-bottom:none}.info-label{font-weight:600;color:var(--olive-green)}.info-value{font-weight:700;color:var(--primary-dark-green)}.room-status-badges{display:flex;flex-direction:column;gap:6px;margin-top:8px}.housekeeping-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.refresh-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#23352bcc;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;color:var(--white)}.refresh-spinner{width:40px;height:40px;border:3px solid rgba(200,163,72,.3);border-top-color:var(--luxury-gold);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.refresh-overlay span{font-size:16px;font-weight:500}.room-type-progress{margin-top:16px;padding-top:16px;border-top:1px solid var(--light-border)}.progress-label{display:flex;justify-content:space-between;font-size:13px;color:var(--olive-green);margin-bottom:8px}.progress-bar{height:8px;background:var(--cream);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--luxury-gold),var(--available-green));border-radius:4px;transition:width .3s ease}.maintenance-table-container{background:var(--white);border-radius:12px;border:1px solid var(--light-border);overflow-x:auto}.maintenance-table{width:100%;border-collapse:collapse}.maintenance-table thead{background:var(--cream)}.maintenance-table th{padding:16px;text-align:left;font-size:13px;font-weight:600;color:var(--olive-green);border-bottom:2px solid var(--light-border)}.maintenance-table td{padding:16px;font-size:13px;color:var(--olive-green);border-bottom:1px solid var(--light-border)}.maintenance-table tbody tr:hover{background:var(--cream)}.table-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.maintenance-item{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--white);border:1px solid var(--light-border);border-radius:8px;margin-bottom:12px}.maintenance-details{display:flex;flex-direction:column;gap:4px}.maintenance-type{font-size:14px;color:var(--olive-green);font-weight:500}.maintenance-floor{font-size:12px;color:var(--olive-green);opacity:.8}.maintenance-notes{font-size:13px;color:var(--olive-green);opacity:.7;font-style:italic}.maintenance-updated{font-size:11px;color:var(--olive-green);opacity:.5}.drawer-floor,.drawer-housekeeping,.drawer-notes{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--light-border)}.floor-label,.hk-label,.notes-label{font-size:14px;color:var(--olive-green);font-weight:500}.floor-value,.hk-value,.notes-value{font-size:14px;color:var(--primary-dark-green)}.notes-value{font-style:italic;opacity:.8}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:var(--white);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out}.add-room-modal{padding:32px}.add-room-modal .modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--light-border);background:transparent;position:static}.add-room-modal .modal-header-content{display:flex;align-items:center;gap:16px}.add-room-modal .modal-icon{font-size:32px}.add-room-modal .modal-title-section h2{font-size:20px;font-weight:600;color:var(--primary-dark-green);margin:0}.add-room-modal .modal-subtitle{font-size:14px;color:var(--olive-green);margin:4px 0 0;opacity:.8}.add-room-modal .modal-close-btn{background:none;border:none;font-size:28px;color:var(--olive-green);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.add-room-modal .modal-close-btn:hover{background:var(--light-border)}.add-room-modal .modal-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.form-group label{font-size:14px;font-weight:500;color:var(--olive-green)}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--white);transition:border-color .2s,box-shadow .2s;min-height:44px}.form-group input.error,.form-group select.error{border-color:var(--maintenance-red)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--luxury-gold);box-shadow:0 0 0 3px #c8a3481a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--cream);cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.form-group textarea.near-limit{border-color:var(--maintenance-red)}.form-group.has-error .status-cards-grid{border:2px solid var(--maintenance-red);border-radius:8px;padding:4px}.field-error{font-size:12px;color:var(--maintenance-red);margin-top:4px}.char-count{font-size:12px;color:var(--olive-green);text-align:right;opacity:.7;display:flex;justify-content:flex-end;gap:8px}.char-count-label{font-weight:500}.char-count .near-limit{color:var(--maintenance-red);font-weight:600}.select-with-icon{position:relative;display:flex;align-items:center}.select-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:18px;pointer-events:none;z-index:1;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.select-with-icon select{padding-left:44px;padding-right:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A7C59' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.empty-dropdown{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;color:var(--olive-green);opacity:.6;background:var(--cream)}.status-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.status-card{position:relative;padding:16px 12px;border:2px solid var(--light-border);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.status-card:hover{border-color:var(--luxury-gold);transform:translateY(-2px)}.status-card.selected{border-width:2px}.status-card input[type=radio]{position:absolute;opacity:0;width:0;height:0}.status-icon{font-size:24px}.status-label{font-size:13px;font-weight:500;display:block}.segmented-buttons{display:flex;gap:8px}.segmented-button{position:relative;flex:1;padding:12px 16px;border:2px solid var(--light-border);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500}.segmented-button:hover{border-color:var(--luxury-gold)}.segmented-button.active{border-width:2px}.segmented-button input[type=radio]{position:absolute;opacity:0;width:0;height:0}.form-actions{display:flex;gap:12px;margin-top:8px}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:var(--luxury-gold);color:var(--white)}.btn-primary:hover:not(:disabled){background:#b8933d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--light-border);color:var(--olive-green)}.btn-secondary:hover:not(:disabled){background:#d8d0c2}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.form-error{padding:12px 16px;background:#c75b5b1a;border:1px solid var(--maintenance-red);border-radius:8px;color:var(--maintenance-red);font-size:14px}.form-error-small{color:var(--maintenance-red);font-size:13px}.loading-spinner-small{width:20px;height:20px;border:2px solid var(--light-border);border-top-color:var(--luxury-gold);border-radius:50%;animation:spin .8s linear infinite}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--white);border-radius:50%;animation:spin .8s linear infinite}.toast-notification{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:var(--available-green);color:var(--white);border-radius:8px;box-shadow:0 4px 12px #00000026;font-size:14px;font-weight:500;z-index:1001;animation:slideInRight .3s ease-out}.toast-notification.error{background:var(--maintenance-red)}.status-legend{display:flex;flex-wrap:wrap;gap:16px;padding:16px;background:var(--cream);border-radius:8px;margin-top:8px}.legend-title{font-size:13px;font-weight:600;color:var(--olive-green);margin-right:8px}.legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--olive-green)}.legend-icon{font-size:16px}.rooms-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif;padding:32px;display:flex;flex-direction:column;gap:24px}.rooms-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.kpi-cards{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px;width:100%}.kpi-card{background:var(--white);border:1px solid var(--light-border);border-radius:8px;padding:16px 12px;box-shadow:0 2px 4px #0000000a;text-align:center}.kpi-icon{font-size:24px;margin-bottom:4px}.kpi-value{font-size:28px;font-weight:700;color:var(--luxury-gold);margin-bottom:2px;line-height:1}.kpi-label{font-size:11px;font-weight:600;color:var(--primary-dark-green);margin-bottom:2px;text-transform:uppercase;letter-spacing:.3px}.kpi-sublabel{font-size:10px;font-weight:400;color:var(--olive-green);opacity:.8}.room-grid-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.room-filters{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.filter-group{display:flex;flex-wrap:wrap;gap:6px}.status-filters{gap:6px}.filter-chip{padding:5px 12px;border:1.5px solid var(--light-border);border-radius:20px;background:transparent;font-size:12px;font-weight:500;cursor:pointer;transition:all .18s ease;white-space:nowrap;display:flex;align-items:center;gap:6px}.filter-chip:hover{box-shadow:0 1px 4px #00000014}.filter-chip.active{font-weight:600}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:700;line-height:1}.filter-actions{display:flex;gap:0;flex-wrap:nowrap;align-items:stretch;width:fit-content;border:1.5px solid var(--light-border);border-radius:10px;background:var(--white);overflow:hidden;height:36px}.filter-dropdown{padding:0 12px;border:none;border-right:1.5px solid var(--light-border);border-radius:0;background:var(--white);font-size:13px;font-weight:500;color:var(--olive-green);cursor:pointer;transition:background .15s ease;min-width:120px;height:100%;box-sizing:border-box}.filter-dropdown:hover{background:#faf8f5}.filter-dropdown:focus{outline:none;background:#faf8f5}.search-box{display:flex;align-items:center;gap:8px;padding:0 12px;border:none;border-radius:0;background:transparent;flex:1;min-width:200px;transition:all .18s ease;height:100%;box-sizing:border-box}.search-box:focus-within{background:#fdfcf8}.search-box svg{color:var(--olive-green);flex-shrink:0;opacity:.6}.search-box input{border:none;background:transparent;font-size:13px;font-weight:400;color:var(--olive-green);width:100%;outline:none}.search-box input::placeholder{color:var(--olive-green);opacity:.5}.search-clear-btn{background:none;border:none;cursor:pointer;color:var(--olive-green);opacity:.5;padding:2px;display:flex;align-items:center;border-radius:3px;flex-shrink:0;transition:opacity .15s}.search-clear-btn:hover{opacity:1}.filter-reset-btn{display:flex;align-items:center;gap:5px;padding:0 12px;height:100%;border:none;border-left:1.5px solid var(--light-border);border-radius:0;background:transparent;color:var(--luxury-gold);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease;white-space:nowrap}.filter-reset-btn:hover{background:var(--luxury-gold);color:var(--white)}@media (min-width: 768px){.room-filters{flex-direction:row;align-items:center;justify-content:space-between}.filter-actions{flex-wrap:nowrap}}@media (max-width: 767px){.filter-actions{flex-direction:column}.filter-dropdown,.search-box{width:100%}.search-box{min-width:auto}}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}@media (min-width: 1200px){.room-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (min-width: 768px) and (max-width: 1199px){.room-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.room-grid{grid-template-columns:1fr}}.room-card{background:var(--white);border:1px solid var(--light-border);border-left-width:6px;border-radius:12px;padding:20px;cursor:default;transition:box-shadow .18s ease;position:relative}.room-card:hover{box-shadow:0 4px 16px #00000017}.room-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.room-number{font-size:20px;font-weight:700;color:var(--luxury-gold)}.room-type{font-size:12px;font-weight:500;color:var(--olive-green)}.room-card-body{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.status-badge{display:inline-block;padding:6px 14px;font-size:12px;font-weight:600;color:#fff;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;line-height:1}.room-guest{display:flex;flex-direction:column;gap:4px}.guest-name{font-size:13px;font-weight:600;color:var(--primary-dark-green)}.checkout-date{font-size:11px;font-weight:400;color:var(--olive-green)}.guest-count{font-size:12px;font-weight:500;color:var(--olive-green)}.room-card-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--light-border)}.room-action{display:flex;align-items:center;gap:5px;background:var(--cream);border:1px solid var(--light-border);color:var(--olive-green);cursor:pointer;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;font-family:Inter,sans-serif;transition:all .18s ease}.room-action-edit:hover{background:var(--primary-dark-green);border-color:var(--primary-dark-green);color:var(--white)}.room-action-status:hover{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--white)}.floor-map-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.floor-legend{display:flex;gap:16px}.floor-map{display:flex;flex-direction:column;gap:12px}.floor-row{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:16px;padding:12px 16px;background:var(--cream);border-radius:8px;border-bottom:2px solid var(--luxury-gold);min-height:60px}.floor-label{display:flex;align-items:center;gap:8px;min-width:160px}.floor-icon{font-size:18px}.floor-name{font-size:14px;font-weight:700;color:var(--primary-dark-green)}.floor-rooms{display:flex;gap:12px;flex-wrap:wrap}.floor-room-box{min-width:46px;min-height:46px;width:46px;height:46px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:default;position:relative;box-shadow:0 2px 4px #0000001a;border:2px solid transparent}.room-type-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.room-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room-type-card{background:var(--cream);border:1px solid var(--light-border);border-radius:12px;padding:20px}.room-type-name{font-size:16px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px}.room-type-stats{display:flex;justify-content:space-around}.stat{text-align:center}.stat-value{display:block;font-size:24px;font-weight:700;color:var(--luxury-gold);margin-bottom:4px}.stat-label{display:block;font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase}.maintenance-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.maintenance-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cream);border-radius:8px}.maintenance-room{font-size:14px;font-weight:600;color:var(--luxury-gold);min-width:80px}.maintenance-issue{flex:1;font-size:13px;font-weight:400;color:var(--primary-dark-green)}.priority-badge{font-size:12px;font-weight:600;text-transform:capitalize}.occupancy-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.occupancy-heatmap{display:flex;flex-direction:column;gap:16px}.occupancy-row{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--cream);border-radius:8px}.occupancy-floor{font-size:14px;font-weight:600;color:var(--primary-dark-green);min-width:100px}.occupancy-bar-container{flex:1;height:24px;background:var(--white);border-radius:12px;overflow:hidden}.occupancy-bar{height:100%;background:linear-gradient(90deg,var(--luxury-gold),#D4B358);border-radius:12px;transition:width .3s ease}.occupancy-percentage{font-size:14px;font-weight:600;color:var(--luxury-gold);min-width:50px;text-align:right}.room-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.room-drawer{width:500px;max-height:80vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.drawer-room-type{font-size:16px;font-weight:500;color:var(--olive-green);margin-bottom:16px}.drawer-status,.drawer-guest,.drawer-guests,.drawer-balance{display:flex;align-items:center;gap:12px;padding:12px;background:var(--cream);border-radius:8px;margin-bottom:12px}.status-label,.guest-label,.guests-label,.balance-label{font-size:13px;font-weight:500;color:var(--olive-green);min-width:80px}.status-value,.guest-value,.guests-value,.balance-value{font-size:14px;font-weight:600;color:var(--primary-dark-green)}.drawer-dates{display:flex;gap:12px;margin-bottom:12px}.date-item{flex:1;display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--cream);border-radius:8px}.date-label{font-size:12px;font-weight:500;color:var(--olive-green)}.date-value{font-size:13px;font-weight:600;color:var(--primary-dark-green)}.drawer-actions{display:flex;flex-direction:column;gap:8px;margin-top:16px}@media (max-width: 1200px){.room-type-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1600px){.kpi-cards{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.rooms-container{padding:16px}.rooms-header{flex-direction:column;gap:16px;align-items:stretch}.kpi-cards{grid-template-columns:repeat(2,1fr)!important}.room-drawer{width:90%;max-height:90vh}.header-actions{flex-direction:column}.room-grid{grid-template-columns:repeat(2,1fr)}.room-type-grid{grid-template-columns:1fr}.floor-legend{flex-wrap:wrap}.floor-row{flex-direction:column;align-items:flex-start}.floor-rooms{flex-wrap:wrap}}.arm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:arm-fade .2s ease}@keyframes arm-fade{0%{opacity:0}to{opacity:1}}.arm-modal{background:#fff;border-radius:16px;width:600px;max-width:96vw;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #00000047;animation:arm-up .25s ease;overflow:hidden}@keyframes arm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.arm-header{background:#1b3a2d;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.arm-header-left{display:flex;align-items:center;gap:14px}.arm-header-icon{font-size:28px;line-height:1}.arm-header-title{font-size:18px;font-weight:600;color:#fff;margin:0}.arm-header-subtitle{font-size:12px;color:#fff9;margin:3px 0 0}.arm-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.arm-close:hover{background:#ffffff3d}.arm-body{flex:1;overflow-y:auto;padding:24px;min-height:0}.arm-body::-webkit-scrollbar{width:6px}.arm-body::-webkit-scrollbar-track{background:transparent}.arm-body::-webkit-scrollbar-thumb{background:#d4cfc6;border-radius:3px}.arm-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #ece7df;background:#faf8f5;flex-shrink:0}.arm-section{margin-bottom:22px}.arm-section:last-child{margin-bottom:0}.arm-section-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin-bottom:10px}.arm-error{padding:12px 14px;background:#fdf2f2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:20px}.arm-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.arm-field{display:flex;flex-direction:column;gap:5px}.arm-field label{font-size:13px;font-weight:500;color:#4a7c59}.arm-req{color:#dc2626;margin-left:2px}.arm-optional{color:#9ca3af;font-weight:400;font-size:12px;margin-left:4px}.arm-field-err{font-size:12px;color:#dc2626}.arm-input,.arm-select{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;background:#fff;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;font-family:inherit}.arm-input:focus,.arm-select:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.arm-input-error{border-color:#dc2626!important}.arm-input:disabled,.arm-select:disabled{background:#f5f2ed;cursor:not-allowed}.arm-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A7C59' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:38px;cursor:pointer}.arm-placeholder{background:#f5f2ed!important;color:#9ca3af!important;cursor:default!important}.arm-floor-pills{display:flex;gap:8px}.arm-floor-pill{flex:1;padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;text-align:center;cursor:pointer;font-size:13px;font-weight:500;color:#4a7c59;transition:all .15s;-webkit-user-select:none;user-select:none}.arm-floor-pill input{display:none}.arm-floor-pill.active{border-color:#1b3a2d;background:#1b3a2d;color:#fff;font-weight:600}.arm-floor-pill:hover:not(.active){border-color:#c8a348;color:#c8a348}.arm-hk-pills{display:flex;gap:8px}.arm-hk-pill{flex:1;padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;text-align:center;cursor:pointer;font-size:13px;font-weight:500;color:#4a7c59;transition:all .15s;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center}.arm-hk-pill input{display:none}.arm-hk-pill:hover:not(.active){border-color:#c8a348}.arm-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.arm-status-card{padding:10px 6px;border:1.5px solid #e0dbd2;border-radius:10px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;transition:all .15s;-webkit-user-select:none;user-select:none;background:#fff;min-height:38px}.arm-status-card input{display:none}.arm-status-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#4a7c59}.arm-status-card:hover:not(.selected){border-color:#c8a348;background:#fdfbf5}.arm-textarea{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;resize:vertical;min-height:80px;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s}.arm-textarea:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.arm-char-count{font-size:12px;color:#9ca3af;text-align:right}.arm-char-warn{color:#dc2626!important}.arm-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:arm-spin .7s linear infinite;display:inline-block;flex-shrink:0}@keyframes arm-spin{to{transform:rotate(360deg)}}.arm-btn-cancel{padding:10px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.arm-btn-cancel:hover:not(:disabled){border-color:#c8a348;color:#c8a348}.arm-btn-submit{padding:10px 24px;border:none;border-radius:8px;background:#c8a348;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px;font-family:inherit}.arm-btn-submit:hover:not(:disabled){background:#b8933d}.arm-btn-cancel:disabled,.arm-btn-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 600px){.arm-modal{max-width:100vw;max-height:100dvh;border-radius:16px 16px 0 0;align-self:flex-end}.arm-overlay{align-items:flex-end}.arm-grid-2{grid-template-columns:1fr}.arm-status-grid{grid-template-columns:repeat(3,1fr)}.arm-floor-pills{flex-wrap:wrap}}.rsm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:rsm-fade .2s ease}@keyframes rsm-fade{0%{opacity:0}to{opacity:1}}.rsm-modal{background:#fff;border-radius:16px;width:520px;max-width:96vw;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #00000047;animation:rsm-up .25s ease;overflow:hidden}@keyframes rsm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.rsm-header{background:#1b3a2d;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.rsm-header-left{display:flex;align-items:center;gap:14px}.rsm-header-icon{font-size:28px;line-height:1}.rsm-header-title{font-size:18px;font-weight:600;color:#fff;margin:0}.rsm-header-subtitle{font-size:12px;color:#fff9;margin:3px 0 0}.rsm-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.rsm-close:hover{background:#ffffff3d}.rsm-body{flex:1;overflow-y:auto;padding:24px;min-height:0}.rsm-body::-webkit-scrollbar{width:6px}.rsm-body::-webkit-scrollbar-track{background:transparent}.rsm-body::-webkit-scrollbar-thumb{background:#d4cfc6;border-radius:3px}.rsm-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #ece7df;background:#faf8f5;flex-shrink:0}.rsm-error{padding:12px 14px;background:#fdf2f2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:20px}.rsm-room-card{background:#f5f2ed;border-radius:10px;padding:14px 16px;margin-bottom:22px;display:flex;align-items:center;gap:0}.rsm-room-card-row{flex:1;display:flex;flex-direction:column;gap:3px}.rsm-room-card-divider{width:1px;height:36px;background:#ddd;margin:0 16px;flex-shrink:0}.rsm-room-card-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#9ca3af}.rsm-room-card-value{font-size:15px;font-weight:700;color:#1b3a2d}.rsm-section{margin-bottom:22px}.rsm-section:last-child{margin-bottom:0}.rsm-section-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin-bottom:10px}.rsm-optional{color:#9ca3af;font-weight:400;font-size:12px}.rsm-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rsm-status-card{padding:10px 6px;border:1.5px solid #e0dbd2;border-radius:10px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;transition:all .15s;-webkit-user-select:none;user-select:none;background:#fff;min-height:38px}.rsm-status-card input{display:none}.rsm-status-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#4a7c59}.rsm-status-card:hover:not(.selected){border-color:#c8a348;background:#fdfbf5}.rsm-hk-pills{display:flex;gap:8px}.rsm-hk-pill{flex:1;padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;text-align:center;cursor:pointer;font-size:13px;font-weight:500;color:#4a7c59;transition:all .15s;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;gap:6px}.rsm-hk-pill input{display:none}.rsm-hk-pill:hover:not(.active){border-color:#c8a348}.rsm-textarea{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;resize:vertical;min-height:80px;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s;display:block}.rsm-textarea:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.rsm-textarea:disabled{background:#f5f2ed;cursor:not-allowed}.rsm-char-count{display:block;font-size:12px;color:#9ca3af;text-align:right;margin-top:4px}.rsm-char-warn{color:#dc2626!important}.rsm-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:rsm-spin .7s linear infinite;display:inline-block;flex-shrink:0}@keyframes rsm-spin{to{transform:rotate(360deg)}}.rsm-btn-cancel{padding:10px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.rsm-btn-cancel:hover:not(:disabled){border-color:#c8a348;color:#c8a348}.rsm-btn-submit{padding:10px 24px;border:none;border-radius:8px;background:#c8a348;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px;font-family:inherit}.rsm-btn-submit:hover:not(:disabled){background:#b8933d}.rsm-btn-cancel:disabled,.rsm-btn-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 540px){.rsm-modal{max-width:100vw;max-height:100dvh;border-radius:16px 16px 0 0;align-self:flex-end}.rsm-overlay{align-items:flex-end}.rsm-status-grid{grid-template-columns:repeat(3,1fr)}.rsm-hk-pills{flex-direction:column}.rsm-room-card{flex-direction:column;gap:10px;align-items:flex-start}.rsm-room-card-divider{width:100%;height:1px;margin:0}}.roomtypes-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif;padding:32px;display:flex;flex-direction:column;gap:16px}.roomtypes-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.rt-btn-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:currentColor;border-radius:50%;animation:rt-spin .7s linear infinite;display:inline-block;flex-shrink:0}@keyframes rt-spin{to{transform:rotate(360deg)}}.page-subtitle{font-size:14px;font-weight:400;color:var(--olive-green)!important}.action-btn.primary{background:var(--luxury-gold)!important;color:var(--primary-dark-green)!important}.action-btn.secondary{background:linear-gradient(135deg,#d4af37,#c9a227)!important;color:var(--primary-dark-green)!important;border:1px solid var(--light-border)!important}.roomtypes-grid-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.roomtypes-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:20px}.roomtypes-loading .spinner{width:50px;height:50px;border:4px solid var(--light-border);border-top-color:var(--luxury-gold);border-radius:50%;animation:spin 1s linear infinite}.roomtypes-loading p{font-size:14px;font-weight:500;color:var(--olive-green)}.section-title{font-size:16px;font-weight:600;color:var(--primary-dark-green)!important;text-transform:uppercase;letter-spacing:.5px}.roomtypes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.roomtype-card{background:var(--cream);border:1px solid var(--light-border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease}.roomtype-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.roomtype-image{width:100%;height:120px;overflow:hidden;cursor:pointer}.roomtype-image img{width:100%;height:100%;object-fit:cover}.roomtype-image-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f5f5f5;color:#999;gap:8px}.roomtype-image-placeholder svg{width:48px;height:48px}.roomtype-image-placeholder span{font-size:13px;font-weight:500}.main-photo .roomtype-image-placeholder{height:300px}.preview-card .roomtype-image-placeholder{width:150px;height:100px}.rtd-hero-placeholder{min-height:400px}.rtd-gallery .roomtype-image-placeholder{aspect-ratio:16/9}.roomtype-content{padding:12px}.roomtype-name{font-size:13px;font-weight:600;color:var(--primary-dark-green);margin-bottom:8px}.roomtype-details{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.detail-item{display:flex;align-items:center;justify-content:space-between}.detail-label{font-size:11px;font-weight:500;color:var(--olive-green)}.detail-value{font-size:12px;font-weight:600;color:var(--luxury-gold)}.roomtype-actions{display:flex;gap:6px;padding-top:8px;border-top:1px solid var(--light-border)}.rt-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 8px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;border:1px solid var(--light-border);background:var(--white);color:var(--olive-green);transition:all .2s ease}.rt-edit-btn:hover{background:var(--primary-dark-green);border-color:var(--primary-dark-green);color:var(--white)}.rt-archive-btn:hover{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--primary-dark-green)}.roomtype-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.roomtype-drawer{width:800px;max-height:90vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.drawer-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--light-border);background:var(--primary-dark-green)}.drawer-content{padding:24px;overflow-y:auto;max-height:calc(90vh - 80px)}.drawer-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--light-border)}.drawer-section:last-child{border-bottom:none}.gallery-section{display:flex;flex-direction:column;gap:16px}.info-item.full-width{grid-column:span 2}.info-label{font-size:13px;font-weight:500;color:var(--olive-green)}.info-input{padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;outline:none}.info-input:focus{border-color:var(--luxury-gold)}.info-textarea{padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;outline:none;resize:vertical}.info-textarea:focus{border-color:var(--luxury-gold)}.amenities-grid{display:flex;flex-wrap:wrap;gap:8px}.amenity-tag{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--cream);border:1px solid var(--light-border);border-radius:20px;font-size:13px;font-weight:500;color:var(--primary-dark-green)}.amenity-check{color:var(--luxury-gold);font-weight:700}.inclusions-grid{display:flex;flex-wrap:wrap;gap:8px}.inclusion-tag{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--primary-dark-green);border:1px solid var(--primary-dark-green);border-radius:20px;font-size:13px;font-weight:500;color:var(--white)}.inclusion-check{color:var(--luxury-gold);font-weight:700}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pricing-card{padding:16px;background:var(--cream);border:1px solid var(--light-border);border-radius:8px;display:flex;flex-direction:column;gap:8px}.pricing-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase}.pricing-value{font-size:20px;font-weight:700;color:var(--luxury-gold)}.booking-rules{display:flex;flex-direction:column;gap:12px}.rule-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--cream);border-radius:8px}.rule-item.toggle{cursor:pointer}.rule-label{font-size:13px;font-weight:500;color:var(--primary-dark-green)}.rule-value{font-size:14px;font-weight:600;color:var(--luxury-gold)}.rule-toggle{padding:6px 16px;background:var(--light-border);border-radius:12px;font-size:12px;font-weight:600;color:var(--olive-green)}.rule-toggle.active{background:var(--luxury-gold);color:var(--white)}.inventory-grid{display:flex;flex-wrap:wrap;gap:12px}.inventory-room{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--luxury-gold);color:var(--white);border-radius:8px;font-size:14px;font-weight:600}.preview-section{display:flex;flex-direction:column;gap:16px}.preview-label{font-size:13px;font-weight:500;color:var(--olive-green)}.preview-card{display:flex;gap:16px;padding:16px;background:var(--cream);border:1px solid var(--light-border);border-radius:12px}.preview-card img{width:150px;height:100px;object-fit:cover;border-radius:8px}.preview-content{flex:1;display:flex;flex-direction:column;gap:8px}.preview-name{font-size:16px;font-weight:600;color:var(--primary-dark-green)}.preview-price{font-size:18px;font-weight:700;color:var(--luxury-gold)}.preview-amenities{display:flex;flex-wrap:wrap;gap:8px}.preview-amenity{font-size:12px;font-weight:500;color:var(--olive-green)}@media (max-width: 1200px){.roomtype-drawer{width:90%}.pricing-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.roomtypes-container{padding:16px}.roomtypes-header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{flex-direction:column}.roomtypes-grid,.info-grid{grid-template-columns:1fr}.info-item.full-width{grid-column:span 1}.pricing-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.preview-card{flex-direction:column}.preview-card img{width:100%;height:200px}}.functionhall-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif;padding:32px;display:flex;flex-direction:column;gap:24px}.functionhall-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.hall-cards-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.hall-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.hall-card{background:var(--cream);border:1px solid var(--light-border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease}.hall-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.hall-image{width:100%;height:200px;overflow:hidden}.hall-image img{width:100%;height:100%;object-fit:cover}.hall-content{padding:20px}.hall-name{font-size:20px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px}.hall-details{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.hall-detail{display:flex;align-items:center;justify-content:space-between}.detail-label{font-size:13px;font-weight:500;color:var(--olive-green)}.detail-value{font-size:14px;font-weight:600;color:var(--luxury-gold)}.hall-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid var(--light-border)}.hall-action{background:none;border:none;font-size:18px;color:var(--olive-green);cursor:pointer;padding:4px;border-radius:4px;transition:background .2s ease}.hall-action:hover{background:var(--white)}.event-calendar-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.calendar-legend{display:flex;gap:16px}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--olive-green)}.legend-dot{width:12px;height:12px;border-radius:50%}.event-calendar{display:flex;flex-direction:column;gap:12px}.calendar-event{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cream);border-radius:8px;cursor:pointer;transition:all .2s ease}.calendar-event:hover{background:var(--white);box-shadow:0 2px 8px #0000000a}.event-date{font-size:14px;font-weight:600;color:var(--luxury-gold);min-width:80px}.event-details{flex:1}.event-name{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:4px}.event-venue{font-size:12px;font-weight:400;color:var(--olive-green);margin-bottom:2px}.event-guests{font-size:12px;font-weight:400;color:var(--olive-green)}.event-type-badge{padding:6px 12px;font-size:11px;font-weight:600;color:var(--white);border-radius:12px;text-transform:uppercase}.events-table-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.events-table{width:100%;border-collapse:collapse}.events-table thead{background:var(--cream)}.events-table th{padding:12px 16px;font-size:12px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;text-align:left}.events-table td{padding:16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);border-bottom:1px solid var(--light-border)}.events-table tbody tr:hover{background:var(--cream)}.event-name-cell{font-weight:600;color:var(--luxury-gold)}.availability-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.availability-board{display:flex;flex-direction:column;gap:16px}.availability-row{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cream);border-radius:8px}.availability-hall{font-size:14px;font-weight:600;color:var(--primary-dark-green);min-width:150px}.availability-timeline{display:flex;gap:12px;flex:1}.availability-day{flex:1;padding:12px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--white)}.day-date{font-size:12px;font-weight:600}.day-status{font-size:11px;font-weight:500}.packages-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.package-card{background:var(--cream);border:1px solid var(--light-border);border-radius:12px;padding:20px}.package-name{font-size:16px;font-weight:600;color:var(--primary-dark-green);margin-bottom:12px}.package-price{font-size:24px;font-weight:700;color:var(--luxury-gold);margin-bottom:8px}.package-guests{font-size:13px;font-weight:500;color:var(--olive-green);margin-bottom:16px}.package-inclusions{display:flex;flex-wrap:wrap;gap:8px}.inclusion-tag{padding:6px 12px;background:var(--primary-dark-green);border-radius:12px;font-size:11px;font-weight:500;color:var(--white)}.revenue-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.revenue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.revenue-card{background:var(--cream);border:1px solid var(--light-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px}.revenue-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase}.revenue-value{font-size:20px;font-weight:700;color:var(--luxury-gold)}.event-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.event-drawer{width:500px;max-height:80vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.event-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.hall-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.hall-drawer{width:600px;max-height:90vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.hall-gallery{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.main-photo{position:relative;width:100%;height:300px;border-radius:8px;overflow:hidden}.main-photo img{width:100%;height:100%;object-fit:cover}.upload-btn{position:absolute;bottom:16px;right:16px;background:var(--luxury-gold);color:var(--white);border:none;padding:10px 20px;font-size:13px;font-weight:500;border-radius:8px;cursor:pointer}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-item{aspect-ratio:16/9;background:var(--cream);border:2px dashed var(--light-border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:var(--olive-green);cursor:pointer}.gallery-item:hover{border-color:var(--luxury-gold)}.hall-info{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.hall-features{margin-bottom:24px}.section-subtitle{font-size:14px;font-weight:600;color:var(--primary-dark-green);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.features-grid{display:flex;flex-wrap:wrap;gap:8px}.feature-tag{padding:8px 16px;background:var(--primary-dark-green);border-radius:8px;font-size:13px;font-weight:500;color:var(--white)}@media (max-width: 1200px){.kpi-cards{grid-template-columns:repeat(3,1fr)}.packages-grid,.revenue-grid{grid-template-columns:repeat(2,1fr)}}.fh-toast{position:fixed;bottom:32px;right:32px;display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 8px 24px #00000026;z-index:99999;animation:fh-toast-in .3s ease;max-width:400px}@keyframes fh-toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fh-toast-success{background:#23352b;color:#fff;border-left:4px solid #22C55E}.fh-toast-error{background:#3b1818;color:#fff;border-left:4px solid #EF4444}.fh-toast-icon{font-size:16px;font-weight:700;flex-shrink:0}.fh-toast-message{flex:1;line-height:1.4}.hall-image-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--cream);color:var(--olive-green);font-size:13px}.hall-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.hall-card-actions{display:flex;gap:6px;padding-top:16px;border-top:1px solid var(--light-border);margin-top:12px}.hall-action{background:none;border:1px solid var(--light-border);color:var(--olive-green);cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.hall-action:hover{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--white)}.existing-images-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.existing-image-item{border-radius:8px;overflow:hidden;aspect-ratio:16/9}.existing-image-item img{width:100%;height:100%;object-fit:cover}.form-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--light-border)}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section-title{font-size:12px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.hall-drawer-header{height:220px;position:relative;overflow:hidden;background:#1a1a1a}.hall-drawer-header img{width:100%;height:100%;object-fit:cover;opacity:.85}.hall-drawer-content{padding:24px;overflow-y:auto;max-height:calc(90vh - 220px)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px;color:var(--olive-green);font-size:14px}.loading-spinner{width:40px;height:40px;border:3px solid var(--light-border);border-top-color:var(--luxury-gold);border-radius:50%;animation:fh-spin .8s linear infinite}@keyframes fh-spin{to{transform:rotate(360deg)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;text-align:center;gap:16px}.empty-state-icon{font-size:48px}.empty-state h3{font-size:18px;font-weight:600;color:var(--primary-dark-green)}.empty-state p{font-size:14px;color:var(--olive-green)}.filters-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}.search-wrapper{flex:1;min-width:200px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--olive-green);pointer-events:none}.search-input{width:100%;padding:10px 12px 10px 40px;font-size:14px;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;outline:none;transition:border-color .2s}.filter-wrapper{position:relative;display:flex;align-items:center}.filter-icon{position:absolute;left:12px;color:var(--olive-green);pointer-events:none}.filter-select{padding:10px 12px 10px 36px;font-size:14px;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;outline:none;transition:border-color .2s;min-width:150px}.clear-filters-btn{padding:10px 16px;font-size:13px;font-weight:500;color:var(--olive-green);background:var(--white);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;transition:all .2s;white-space:nowrap}.clear-filters-btn:hover{border-color:var(--luxury-gold);color:var(--luxury-gold)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20000;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--white);border-radius:16px;width:440px;max-width:90vw;overflow:hidden;box-shadow:0 8px 32px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--light-border)}.modal-header h2{font-size:18px;font-weight:600;color:var(--primary-dark-green)}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--olive-green);line-height:1;padding:4px}.modal-body{padding:24px;font-size:14px;color:var(--olive-green);display:flex;flex-direction:column;gap:8px}.modal-body strong{color:var(--primary-dark-green)}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--light-border);background:var(--cream)}.responsive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}@media (max-width: 768px){.fh-toast{bottom:16px;right:16px;left:16px;max-width:none}}@media (max-width: 768px){.functionhall-container{padding:16px}.functionhall-header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{flex-direction:column}.kpi-cards{grid-template-columns:repeat(2,1fr)}.hall-cards-grid,.packages-grid,.revenue-grid{grid-template-columns:1fr}.availability-row{flex-direction:column;align-items:flex-start}.availability-timeline{width:100%;flex-wrap:wrap}.availability-day{min-width:80px}.calendar-legend{flex-wrap:wrap}.event-drawer,.hall-drawer{width:90%;max-height:90vh}.event-info-grid{grid-template-columns:1fr}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2}.reservations-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif;padding:32px;display:flex;flex-direction:column;gap:24px}.reservations-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.header-content{flex:1}.page-title{font-size:24px;font-weight:600;color:var(--primary-dark-green);margin-bottom:8px}.page-subtitle{font-size:14px;font-weight:400;color:var(--olive-green)}.action-btn{padding:10px 20px;font-size:13px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.action-btn.primary{background:var(--luxury-gold);color:var(--white)}.action-btn.primary:hover{background:#d4b358}.action-btn.secondary{background:var(--white);color:var(--primary-dark-green);border:1px solid var(--light-border)}.action-btn.secondary:hover{border-color:var(--luxury-gold)}.kpi-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.kpi-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a;text-align:center}.kpi-value{font-size:32px;font-weight:700;color:var(--luxury-gold);margin-bottom:8px}.kpi-label{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:4px}.kpi-sublabel{font-size:12px;font-weight:400;color:var(--olive-green)}.command-bar{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.search-section{display:flex;gap:12px;flex:1}.search-input{flex:1;padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;outline:none;transition:border-color .2s ease}.search-input:focus{border-color:var(--luxury-gold)}.filter-section{display:flex;gap:12px}.filter-select{padding:10px 16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);background:var(--cream);border:1px solid var(--light-border);border-radius:8px;cursor:pointer;outline:none;transition:border-color .2s ease}.filter-select:focus{border-color:var(--luxury-gold)}.filter-btn,.clear-btn{padding:10px 20px;font-size:13px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.filter-btn{background:var(--luxury-gold);color:var(--white)}.filter-btn:hover{background:#d4b358}.clear-btn{background:var(--white);color:var(--primary-dark-green);border:1px solid var(--light-border)}.clear-btn:hover{border-color:var(--luxury-gold)}.view-toggle{display:flex;gap:8px;padding:8px;background:var(--white);border:1px solid var(--light-border);border-radius:8px;width:fit-content}.toggle-btn{padding:8px 16px;font-size:13px;font-weight:500;color:var(--olive-green);background:none;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.toggle-btn.active{background:var(--luxury-gold);color:var(--white)}.toggle-btn:hover:not(.active){background:var(--cream)}.table-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.table-container{overflow-x:auto}.reservations-table{width:100%;border-collapse:collapse}.reservations-table th{padding:12px 16px;font-size:12px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;text-align:left}.reservations-table td{padding:16px;font-size:13px;font-weight:400;color:var(--primary-dark-green);border-bottom:1px solid var(--light-border)}.reservations-table tbody tr:hover{background:var(--cream);cursor:pointer}.reservation-no{font-weight:600;color:var(--luxury-gold)}.status-badge{display:inline-block;padding:6px 12px;font-size:11px;font-weight:600;color:var(--white);border-radius:12px;text-transform:uppercase}.action-menu{display:flex;gap:8px}.action-icon{background:none;border:none;font-size:18px;color:var(--olive-green);cursor:pointer;padding:4px;border-radius:4px;transition:background .2s ease}.action-icon:hover{background:var(--cream)}.calendar-view-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.calendar-view{display:flex;flex-direction:column;gap:16px}.calendar-title{font-size:18px;font-weight:600;color:var(--primary-dark-green)}.reservations-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.reservations-calendar-day{padding:16px;background:var(--cream);border:1px solid var(--light-border);border-radius:8px;display:flex;flex-direction:column;gap:8px}.day-date{font-size:14px;font-weight:600;color:var(--luxury-gold)}.day-status{font-size:12px;font-weight:400;color:var(--olive-green)}.arrivals-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.section-header{margin-bottom:20px}.section-title{font-size:16px;font-weight:600;color:var(--primary-dark-green);text-transform:uppercase;letter-spacing:.5px}.arrivals-list{display:flex;flex-direction:column;gap:12px}.arrival-card{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--cream);border-radius:8px}.arrival-info{flex:1}.arrival-name{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:4px}.arrival-eta,.arrival-room{font-size:12px;font-weight:400;color:var(--olive-green);margin-bottom:2px}.arrival-status{font-size:12px;font-weight:600}.arrival-action{padding:8px 16px;font-size:12px;font-weight:500;color:var(--white);background:var(--luxury-gold);border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.arrival-action:hover{background:#d4b358}.departures-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.departures-list{display:flex;flex-direction:column;gap:12px}.departure-card{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--cream);border-radius:8px}.departure-info{flex:1}.departure-name{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:4px}.departure-room,.departure-balance{font-size:12px;font-weight:400;color:var(--olive-green);margin-bottom:2px}.departure-actions{display:flex;gap:8px}.departure-action{padding:8px 16px;font-size:12px;font-weight:500;color:var(--white);background:var(--luxury-gold);border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.departure-action:hover{background:#d4b358}.analytics-section{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.analytics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.analytics-card{padding:16px;background:var(--cream);border:1px solid var(--light-border);border-radius:8px;display:flex;flex-direction:column;gap:8px}.analytics-label{font-size:12px;font-weight:500;color:var(--olive-green)}.analytics-value{font-size:24px;font-weight:700;color:var(--luxury-gold)}.reservation-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.reservation-drawer{width:500px;max-height:80vh;background:var(--white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:slideIn .3s ease}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid var(--light-border);background:var(--primary-dark-green)}.drawer-title{font-size:18px;font-weight:600;color:var(--white)}.drawer-close{background:none;border:none;font-size:28px;color:var(--white);cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.drawer-close:hover{background:#ffffff1a}.drawer-content{padding:24px;overflow-y:auto;max-height:calc(80vh - 80px)}.guest-info-section,.room-info-section,.special-requests-section,.payment-section,.source-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--light-border)}.section-subtitle{font-size:14px;font-weight:600;color:var(--primary-dark-green);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.info-item{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--cream);border-radius:8px}.info-label{font-size:12px;font-weight:500;color:var(--olive-green)}.info-value{font-size:14px;font-weight:600;color:var(--primary-dark-green)}.special-requests{font-size:13px;font-weight:400;color:var(--primary-dark-green);padding:12px;background:var(--cream);border-radius:8px}.payment-status{font-size:16px;font-weight:600;padding:12px;background:var(--cream);border-radius:8px;display:inline-block}.reservation-source{font-size:14px;font-weight:600;color:var(--primary-dark-green);padding:12px;background:var(--cream);border-radius:8px;display:inline-block}.drawer-actions{display:flex;flex-direction:column;gap:8px}.drawer-action-btn{background:var(--white);border:1px solid var(--light-border);padding:12px 16px;font-size:13px;font-weight:500;color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease}.drawer-action-btn:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.drawer-action-btn.danger:hover{border-color:#c75b5b;background:#c75b5b;color:var(--white)}@media (max-width: 1200px){.kpi-cards,.analytics-grid,.reservations-calendar-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.reservations-container{padding:16px}.reservations-header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{flex-direction:column}.kpi-cards{grid-template-columns:repeat(2,1fr)}.command-bar{flex-direction:column;align-items:stretch}.search-section,.filter-section{flex-direction:column}.analytics-grid{grid-template-columns:repeat(2,1fr)}.reservations-calendar-grid{grid-template-columns:1fr}.arrival-card,.departure-card{flex-direction:column;align-items:stretch;gap:12px}.departure-actions{flex-direction:column}.reservation-drawer{width:90%;max-height:90vh}.info-grid{grid-template-columns:1fr}}.guest-management-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif}.guest-management-header{background:var(--white);border-bottom:1px solid var(--light-border);padding:32px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.guest-header-content{flex:1}.guest-management-title{font-size:32px;font-weight:700;color:var(--primary-dark-green);margin-bottom:8px}.guest-management-subtitle{font-size:14px;color:var(--olive-green);font-weight:400}.guest-header-actions{display:flex;gap:12px}.header-action-btn{background:var(--white);border:1px solid var(--light-border);padding:10px 16px;font-size:13px;font-weight:500;color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.header-action-btn:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.header-action-btn.primary{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--white)}.header-action-btn.primary:hover{background:#d4b358}.summary-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding:24px 32px}.summary-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;gap:8px;transition:all .2s ease}.summary-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.summary-card-value{font-size:28px;font-weight:700;color:var(--luxury-gold)}.summary-card-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.search-filter-bar{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px 24px;margin:0 32px 24px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000a}.search-input{flex:1;padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.search-input::placeholder{color:var(--olive-green);opacity:.6}.filter-group{display:flex;gap:8px}.filter-select{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);cursor:pointer;transition:all .2s ease}.filter-select:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.search-btn{background:var(--luxury-gold);border:none;padding:12px 24px;font-size:14px;font-weight:600;color:var(--white);border-radius:8px;cursor:pointer;transition:all .2s ease}.search-btn:hover{background:#d4b358}.guest-directory{margin:0 32px 24px}.guest-directory-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.guest-directory-title{font-size:18px;font-weight:600;color:var(--primary-dark-green)}.guest-count{font-size:14px;color:var(--olive-green)}.guest-table-container{background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.guest-table{width:100%;border-collapse:collapse}.guest-table thead{background:var(--primary-dark-green)}.guest-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--white);text-transform:uppercase;letter-spacing:.5px}.guest-table tbody tr{border-bottom:1px solid var(--light-border);transition:background .2s ease}.guest-table tbody tr:hover{background:var(--cream)}.guest-table td{padding:16px;font-size:14px;color:var(--primary-dark-green)}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-current{background:#4a7c591a;color:var(--success-green);border:1px solid var(--success-green)}.status-vip{background:#c8a3481a;color:var(--luxury-gold);border:1px solid var(--luxury-gold)}.status-returning{background:#5b8fb91a;color:#5b8fb9;border:1px solid #5B8FB9}.status-corporate{background:#3144381a;color:var(--olive-green);border:1px solid var(--olive-green)}.status-blacklisted{background:#c75b5b1a;color:var(--danger-red);border:1px solid var(--danger-red)}.status-inactive{background:#c8c8c81a;color:#888;border:1px solid #888}.status-walkin{background:#d4a5741a;color:var(--warning-orange);border:1px solid var(--warning-orange)}.status-online{background:#5b8fb91a;color:#5b8fb9;border:1px solid #5B8FB9}.status-functionhall{background:#8b73551a;color:#8b7355;border:1px solid #8B7355}.guest-tags{display:flex;flex-wrap:wrap;gap:6px}.guest-tag{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tag-vip{background:#c8a34826;color:var(--luxury-gold);border:1px solid var(--luxury-gold)}.tag-corporate{background:#31443826;color:var(--olive-green);border:1px solid var(--olive-green)}.tag-returning{background:#5b8fb926;color:#5b8fb9;border:1px solid #5B8FB9}.tag-walkin{background:#d4a57426;color:var(--warning-orange);border:1px solid var(--warning-orange)}.tag-online{background:#5b8fb926;color:#5b8fb9;border:1px solid #5B8FB9}.tag-functionhall{background:#8b735526;color:#8b7355;border:1px solid #8B7355}.tag-blacklisted{background:#c75b5b26;color:var(--danger-red);border:1px solid var(--danger-red)}.tag-inactive{background:#c8c8c826;color:#888;border:1px solid #888}.action-btn{background:none;border:1px solid var(--light-border);padding:8px 12px;font-size:12px;font-weight:500;color:var(--primary-dark-green);border-radius:6px;cursor:pointer;transition:all .2s ease;margin-right:4px}.guest-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:flex-end;animation:fadeIn .3s ease}.guest-drawer{width:600px;max-height:100vh;background:var(--white);overflow-y:auto;animation:slideIn .3s ease}.guest-drawer-header{background:var(--primary-dark-green);padding:24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.guest-drawer-title{font-size:20px;font-weight:600;color:var(--white)}.drawer-close-btn{background:none;border:none;font-size:28px;color:var(--white);cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.guest-drawer-content{padding:0}.drawer-tabs{display:flex;background:var(--cream);border-bottom:1px solid var(--light-border);position:sticky;top:0;z-index:5}.drawer-tab{padding:16px 24px;background:none;border:none;font-size:13px;font-weight:500;color:var(--olive-green);cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;white-space:nowrap}.drawer-tab:hover{color:var(--primary-dark-green);background:#ffffff80}.drawer-tab.active{color:var(--luxury-gold);border-bottom-color:var(--luxury-gold);background:var(--white)}.drawer-tab-content{padding:24px;display:none}.drawer-tab-content.active{display:block}.profile-section{display:flex;gap:24px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--light-border)}.profile-photo{width:120px;height:120px;border-radius:12px;background:var(--cream);border:2px solid var(--luxury-gold);display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--olive-green)}.profile-info{flex:1;display:flex;flex-direction:column;gap:8px}.profile-name{font-size:24px;font-weight:700;color:var(--primary-dark-green)}.profile-guest-id{font-size:14px;color:var(--olive-green);font-weight:500}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.info-label{font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:14px;color:var(--primary-dark-green);font-weight:500}.documents-upload-area{border:2px dashed var(--light-border);border-radius:12px;padding:40px;text-align:center;background:var(--cream);cursor:pointer;transition:all .2s ease}.documents-upload-area:hover{border-color:var(--luxury-gold);background:#c8a3480d}.upload-icon{font-size:48px;color:var(--olive-green);margin-bottom:16px}.upload-text{font-size:14px;color:var(--primary-dark-green);font-weight:500}.upload-subtext{font-size:12px;color:var(--olive-green);margin-top:8px}.documents-list{display:flex;flex-direction:column;gap:12px;margin-top:24px}.document-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--cream);border-radius:8px}.document-icon{font-size:24px}.document-info{flex:1}.document-name{font-size:13px;font-weight:500;color:var(--primary-dark-green)}.document-size{font-size:11px;color:var(--olive-green)}.document-actions{display:flex;gap:8px}.document-action-btn{background:none;border:none;padding:6px;cursor:pointer;color:var(--olive-green);transition:color .2s ease}.document-action-btn:hover{color:var(--luxury-gold)}.duplicate-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:10001;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.duplicate-modal{background:var(--white);border-radius:12px;padding:24px;max-width:500px;width:90%;box-shadow:0 8px 32px #00000026}.duplicate-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.duplicate-modal-icon{font-size:32px}.duplicate-modal-title{font-size:18px;font-weight:600;color:var(--primary-dark-green)}.duplicate-modal-text{font-size:14px;color:var(--olive-green);margin-bottom:20px;line-height:1.5}.duplicate-guest-card{background:var(--cream);border:1px solid var(--light-border);border-radius:8px;padding:16px;margin-bottom:16px}.duplicate-guest-name{font-size:14px;font-weight:600;color:var(--primary-dark-green);margin-bottom:4px}.duplicate-guest-details{font-size:12px;color:var(--olive-green)}.duplicate-modal-actions{display:flex;gap:12px}.duplicate-modal-btn{flex:1;padding:12px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.duplicate-modal-btn.primary{background:var(--luxury-gold);border:none;color:var(--white)}.duplicate-modal-btn.primary:hover{background:#d4b358}.duplicate-modal-btn.secondary{background:var(--white);border:1px solid var(--light-border);color:var(--primary-dark-green)}.duplicate-modal-btn.secondary:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.section-header{font-size:16px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px;padding-bottom:8px;border-bottom:2px solid var(--luxury-gold)}.stay-history-table{width:100%;border-collapse:collapse;margin-bottom:24px}.stay-history-table thead{background:var(--cream)}.stay-history-table th{padding:12px;text-align:left;font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.stay-history-table tbody tr{border-bottom:1px solid var(--light-border)}.stay-history-table td{padding:12px;font-size:13px;color:var(--primary-dark-green)}.preferences-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.preference-item{background:var(--cream);padding:16px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.preference-label{font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.preference-value{font-size:14px;color:var(--primary-dark-green);font-weight:500}.loyalty-card{background:linear-gradient(135deg,var(--primary-dark-green) 0%,var(--olive-green) 100%);border-radius:12px;padding:24px;margin-bottom:24px;color:var(--white)}.loyalty-tier{font-size:28px;font-weight:700;color:var(--luxury-gold);margin-bottom:16px}.loyalty-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.loyalty-stat{display:flex;flex-direction:column;gap:4px}.loyalty-stat-value{font-size:20px;font-weight:700;color:var(--white)}.loyalty-stat-label{font-size:11px;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.current-stay-panel{background:#4a7c591a;border:1px solid var(--success-green);border-radius:12px;padding:20px;margin-bottom:24px}.current-stay-header{font-size:14px;font-weight:600;color:var(--success-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.current-stay-info{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.current-stay-item{display:flex;flex-direction:column;gap:4px}.current-stay-label{font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.current-stay-value{font-size:14px;color:var(--primary-dark-green);font-weight:500}.quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.quick-action-btn{background:var(--white);border:1px solid var(--light-border);padding:10px 16px;font-size:13px;font-weight:500;color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.quick-action-btn:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.guest-notes{background:var(--cream);border-radius:12px;padding:20px;margin-bottom:24px}.notes-list{display:flex;flex-direction:column;gap:12px}.note-item{background:var(--white);padding:12px 16px;border-radius:8px;border-left:3px solid var(--luxury-gold)}.note-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.note-author{font-size:12px;font-weight:600;color:var(--primary-dark-green)}.note-date{font-size:11px;color:var(--olive-green)}.note-text{font-size:13px;color:var(--primary-dark-green);line-height:1.5}.add-note-form{margin-top:16px}.add-note-textarea{width:100%;padding:12px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);resize:vertical;min-height:80px;transition:all .2s ease}.add-note-textarea:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.add-note-actions{display:flex;justify-content:flex-end;margin-top:8px}.add-note-btn{background:var(--luxury-gold);border:none;padding:8px 16px;font-size:13px;font-weight:600;color:var(--white);border-radius:6px;cursor:pointer;transition:all .2s ease}.add-note-btn:hover{background:#d4b358}.billing-table{width:100%;border-collapse:collapse;margin-bottom:24px}.billing-table thead{background:var(--cream)}.billing-table th{padding:12px;text-align:left;font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.billing-table tbody tr{border-bottom:1px solid var(--light-border)}.billing-table tbody tr:hover{background:var(--cream)}.billing-table td{padding:12px;font-size:13px;color:var(--primary-dark-green)}.billing-summary{background:var(--cream);border-radius:8px;padding:20px;margin-bottom:24px}.billing-summary-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--light-border)}.billing-summary-row:last-child{border-bottom:none}.billing-summary-label{font-size:13px;color:var(--olive-green)}.billing-summary-value{font-size:13px;font-weight:600;color:var(--primary-dark-green)}.billing-summary-total{margin-top:16px;padding-top:16px;border-top:2px solid var(--luxury-gold)}.billing-summary-total .billing-summary-label{font-size:14px;font-weight:600}.billing-summary-total .billing-summary-value{font-size:18px;font-weight:700;color:var(--luxury-gold)}.reservations-table{width:100%;border-collapse:collapse;margin-bottom:24px}.reservations-table thead{background:var(--cream)}.reservations-table th{padding:12px;text-align:left;font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.reservations-table tbody tr{border-bottom:1px solid var(--light-border)}.reservations-table tbody tr:hover{background:var(--cream)}.reservations-table td{padding:12px;font-size:13px;color:var(--primary-dark-green)}.stay-history-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:var(--cream);border-radius:8px;padding:16px;text-align:center}.stat-value{font-size:24px;font-weight:700;color:var(--luxury-gold)}.stat-label{font-size:11px;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.vip-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#c8a34826;color:var(--luxury-gold);border:1px solid var(--luxury-gold)}.regular-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#c8c8c81a;color:#888;border:1px solid #888}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-container{background:var(--white);border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026;animation:slideUp .3s ease}.modal-container.small{max-width:400px}.modal-container .modal-header{background:var(--primary-dark-green);padding:24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.modal-container .modal-title{font-size:20px;font-weight:600;color:var(--white)}.modal-container .modal-close{background:none;border:none;font-size:28px;color:var(--white);cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.modal-container .modal-close:hover{background:#ffffff1a}.modal-container .modal-content{padding:24px}.modal-container .modal-footer{background:var(--cream);padding:16px 24px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--light-border);position:sticky;bottom:0}.modal-btn{padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.modal-btn.primary{background:var(--luxury-gold);color:var(--white)}.modal-btn.primary:hover{background:#d4b358}.modal-btn.primary:disabled{opacity:.6;cursor:not-allowed}.modal-btn.secondary{background:var(--white);border:1px solid var(--light-border);color:var(--primary-dark-green)}.modal-btn.secondary:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.modal-btn.danger{background:var(--danger-red);color:var(--white)}.modal-btn.danger:hover{background:#b04a4a}.modal-btn.danger:disabled{opacity:.6;cursor:not-allowed}.guest-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-card{background:var(--cream);padding:16px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.detail-label{font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:14px;color:var(--primary-dark-green);font-weight:500}.form-textarea{padding:10px 14px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);resize:vertical;transition:all .2s ease}.form-textarea:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.form-textarea::placeholder{color:var(--olive-green);opacity:.6}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-spinner{width:40px;height:40px;border:3px solid var(--light-border);border-top-color:var(--luxury-gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container span{font-size:14px;color:var(--olive-green)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;text-align:center}.empty-state-icon{font-size:48px;opacity:.5}.empty-state h3{font-size:18px;font-weight:600;color:var(--primary-dark-green);margin:0}.empty-state p{font-size:14px;color:var(--olive-green);margin:0}.empty-state .action-btn{margin-top:8px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;margin-top:16px}.pagination-btn{padding:8px 16px;font-size:14px;font-weight:500;border:1px solid var(--light-border);background:var(--white);color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:14px;color:var(--olive-green);font-weight:500}.toast{position:fixed;bottom:32px;right:32px;padding:16px 24px;border-radius:8px;font-size:14px;font-weight:500;color:var(--white);box-shadow:0 4px 12px #00000026;z-index:10002;animation:slideInRight .3s ease}.toast-success{background:var(--success-green)}.toast-error{background:var(--danger-red)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.warning-card{background:#c75b5b1a;border:1px solid var(--danger-red);border-radius:8px;padding:16px}.warning-card p{margin:0 0 8px;font-size:14px;color:var(--primary-dark-green)}.warning-text{font-size:13px!important;color:var(--danger-red)!important;font-weight:600!important;margin:0!important}.error-message{font-size:12px;color:var(--danger-red);margin-top:4px}@media (max-width: 1200px){.summary-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.guest-management-header{padding:20px}.summary-cards{grid-template-columns:repeat(2,1fr);padding:16px 20px}.search-filter-bar{flex-direction:column;padding:16px 20px;margin:0 20px 16px}.filter-group{flex-wrap:wrap}.guest-directory{margin:0 20px 16px}.guest-table{font-size:12px}.guest-table th,.guest-table td{padding:12px 8px}.guest-drawer{width:100%}.profile-section{flex-direction:column}.info-grid,.preferences-grid,.loyalty-stats,.current-stay-info{grid-template-columns:1fr}}.user-management-container{padding:24px;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.header-content h1{color:#d4af37;font-size:28px;font-weight:600;margin:0 0 8px}.page-subtitle{color:#f8f6f299;font-size:14px;margin:0}.header-actions{display:flex;gap:12px}.action-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.action-btn.primary{background:linear-gradient(135deg,#d4af37,#c9a227);color:#1a1a2e}.action-btn.primary:hover{box-shadow:0 4px 12px #d4af374d;transform:translateY(-1px)}.action-btn.secondary{background:#ffffff1a;color:#f8f6f2e6;border:1px solid rgba(255,255,255,.2)}.action-btn.secondary:hover{background:#ffffff26;border-color:#ffffff4d}.users-grid-section{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px}.section-header{margin-bottom:24px}.section-title{color:#f8f6f2e6;font-size:18px;font-weight:600;margin:0}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.user-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s ease;display:flex;gap:16px}.user-card:hover{background:#ffffff0d;border-color:#d4af374d;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.user-avatar{flex-shrink:0}.avatar-placeholder{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#d4af37,#c9a227);display:flex;align-items:center;justify-content:center;color:#1a1a2e;font-size:24px;font-weight:700}.avatar-placeholder.large{width:120px;height:120px;font-size:48px}.user-content{flex:1;min-width:0}.user-name{color:#f8f6f2f2;font-size:16px;font-weight:600;margin:0 0 4px}.user-email{color:#f8f6f299;font-size:13px;margin:0 0 12px;word-break:break-all}.user-badges{display:flex;gap:8px;flex-wrap:wrap}.user-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.user-actions{display:flex;flex-direction:column;gap:8px}.user-action{background:none;border:none;color:#f8f6f280;cursor:pointer;padding:6px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.user-action:hover{background:#ffffff1a;color:#f8f6f2e6}.user-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.user-drawer{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(212,175,55,.3);border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(255,255,255,.1)}.drawer-title{color:#d4af37;font-size:20px;font-weight:600;margin:0}.drawer-close{background:none;border:none;color:#f8f6f299;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.drawer-close:hover{background:#ffffff1a;color:#f8f6f2e6}.drawer-content{padding:24px;display:flex;flex-direction:column;gap:24px}.drawer-section{display:flex;flex-direction:column;gap:16px}.section-subtitle{color:#f8f6f2cc;font-size:14px;font-weight:600;margin:0}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-item{display:flex;flex-direction:column;gap:8px}.info-item.full-width{grid-column:1 / -1}.info-label{color:#f8f6f299;font-size:12px;font-weight:500}.info-input,.info-select,.info-textarea{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:10px 12px;color:#f8f6f2e6;font-size:14px;transition:all .2s ease}.info-input:focus,.info-select:focus,.info-textarea:focus{outline:none;border-color:#d4af3780;background:#ffffff14}.info-textarea{resize:vertical;min-height:80px}.profile-photo-section{display:flex;align-items:center;gap:20px}.profile-photo-placeholder{width:120px;height:120px;border-radius:50%;overflow:hidden;background:#ffffff0d;border:2px solid rgba(212,175,55,.3);display:flex;align-items:center;justify-content:center}.profile-photo-placeholder img{width:100%;height:100%;object-fit:cover}.loading-container{display:flex;align-items:center;justify-content:center;padding:48px;color:#f8f6f299;font-size:16px}@media (max-width: 768px){.user-management-container{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.users-grid{grid-template-columns:1fr}.user-drawer{width:95%;max-height:95vh}.info-grid{grid-template-columns:1fr}.drawer-header,.drawer-content{padding:16px}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2;--success-green: #4A7C59;--danger-red: #C75B5B;--warning-orange: #D4A574}.front-desk-container{min-height:100vh;background:var(--cream);font-family:Inter,sans-serif}.front-desk-header{background:var(--white);border-bottom:1px solid var(--light-border);padding:32px}.front-desk-title{font-size:32px;font-weight:700;color:var(--primary-dark-green);margin-bottom:8px}.front-desk-subtitle{font-size:14px;color:var(--olive-green);font-weight:400}.quick-action-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding:24px 32px}.quick-action-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.quick-action-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px);border-color:var(--luxury-gold)}.quick-action-icon{font-size:32px}.quick-action-label{font-size:13px;font-weight:600;color:var(--primary-dark-green)}.today-operations{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding:0 32px 24px}.operation-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;gap:8px}.operation-value{font-size:28px;font-weight:700;color:var(--luxury-gold)}.operation-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.panels-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:0 32px 24px}.panel{background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.panel-header{background:var(--primary-dark-green);padding:20px 24px;display:flex;align-items:center;justify-content:space-between}.panel-title{font-size:16px;font-weight:600;color:var(--white);text-transform:uppercase;letter-spacing:.5px}.panel-count{font-size:14px;color:var(--luxury-gold);font-weight:600}.panel-content{padding:20px}.operations-table{width:100%;border-collapse:collapse}.operations-table thead{background:var(--cream)}.operations-table th{padding:12px;text-align:left;font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.operations-table tbody tr{border-bottom:1px solid var(--light-border);transition:background .2s ease}.operations-table tbody tr:hover{background:var(--cream)}.operations-table td{padding:12px;font-size:13px;color:var(--primary-dark-green)}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-confirmed{background:#4a7c591a;color:var(--success-green);border:1px solid var(--success-green)}.status-pending{background:#c8a3481a;color:var(--luxury-gold);border:1px solid var(--luxury-gold)}.status-checked-out{background:#5b8fb91a;color:#5b8fb9;border:1px solid #5B8FB9}.status-overdue{background:#c75b5b1a;color:var(--danger-red);border:1px solid var(--danger-red)}.action-btn{background:none;border:1px solid var(--light-border);padding:6px 12px;font-size:11px;font-weight:500;color:var(--primary-dark-green);border-radius:6px;cursor:pointer;transition:all .2s ease;margin-right:4px}.action-btn:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.action-btn-primary{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--white)}.action-btn-primary:hover{background:#d4b358}.room-status-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.room-status-card{background:var(--cream);border-radius:8px;padding:20px;text-align:center;display:flex;flex-direction:column;gap:8px}.room-status-count{font-size:36px;font-weight:700;color:var(--primary-dark-green)}.room-status-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.room-status-available .room-status-count{color:var(--success-green)}.room-status-occupied .room-status-count{color:var(--luxury-gold)}.room-status-reserved .room-status-count{color:#5b8fb9}.room-status-dirty .room-status-count{color:var(--warning-orange)}.room-status-maintenance .room-status-count{color:var(--danger-red)}.active-guests-table{width:100%;border-collapse:collapse}.active-guests-table thead{background:var(--cream)}.active-guests-table th{padding:12px;text-align:left;font-size:11px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.active-guests-table tbody tr{border-bottom:1px solid var(--light-border);transition:background .2s ease}.active-guests-table tbody tr:hover{background:var(--cream)}.active-guests-table td{padding:12px;font-size:13px;color:var(--primary-dark-green)}.quick-form-panel{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a}.form-title{font-size:16px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:500;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.form-input{padding:10px 14px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.form-input::placeholder{color:var(--olive-green);opacity:.6}.form-select{padding:10px 14px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);cursor:pointer;transition:all .2s ease}.form-select:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.form-actions{display:flex;gap:12px;margin-top:16px}.form-btn{flex:1;padding:12px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.form-btn-primary{background:var(--luxury-gold);border:none;color:var(--white)}.form-btn-primary:hover{background:#d4b358}.form-btn-secondary{background:var(--white);border:1px solid var(--light-border);color:var(--primary-dark-green)}.form-btn-secondary:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.activity-panel{background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:24px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--cream);border-radius:8px}.activity-icon{width:36px;height:36px;border-radius:50%;background:var(--primary-dark-green);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--white)}.activity-content{flex:1}.activity-text{font-size:13px;color:var(--primary-dark-green);font-weight:500}.activity-time{font-size:11px;color:var(--olive-green)}.fab-container{position:fixed;bottom:32px;right:32px;z-index:9999}.fab-main{width:56px;height:56px;border-radius:50%;background:var(--luxury-gold);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #c8a34866;transition:all .3s ease;font-size:24px;color:var(--white)}.fab-main:hover{transform:scale(1.1);background:#d4b358}.fab-menu{position:absolute;bottom:72px;right:0;display:flex;flex-direction:column;gap:8px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease}.fab-container.open .fab-menu{opacity:1;visibility:visible;transform:translateY(0)}.fab-item{display:flex;align-items:center;gap:12px;justify-content:flex-end}.fab-btn{background:var(--white);border:1px solid var(--light-border);padding:10px 16px;font-size:13px;font-weight:500;color:var(--primary-dark-green);border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 8px #0000001a}.fab-btn:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.fab-icon{width:40px;height:40px;border-radius:50%;background:var(--primary-dark-green);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:16px;transition:all .2s ease}.fab-icon:hover{background:var(--luxury-gold)}.forms-section{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:0 32px 24px}.quick-form-panel{background:var(--white);border:1px solid var(--light-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:24px}.quick-form-panel .form-title{font-size:18px;font-weight:600;color:var(--primary-dark-green);margin-bottom:16px}.quick-form-panel .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.quick-form-panel .form-group{display:flex;flex-direction:column;gap:8px}.quick-form-panel .form-label{font-size:13px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.quick-form-panel .form-input{padding:10px 14px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);transition:all .2s ease}.quick-form-panel .form-input:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.quick-form-panel .form-input::placeholder{color:var(--olive-green);opacity:.6}.quick-form-panel .form-select{padding:10px 14px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);cursor:pointer;transition:all .2s ease}.quick-form-panel .form-select:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.quick-form-panel .form-select option{color:var(--primary-dark-green)}.quick-form-panel .form-actions{display:flex;gap:12px;margin-top:16px}.quick-form-panel .form-btn{flex:1;padding:12px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.quick-form-panel .form-btn-primary{background:var(--luxury-gold);border:none;color:var(--white)}.quick-form-panel .form-btn-primary:hover{background:#d4b358}.quick-form-panel .form-btn-secondary{background:var(--white);border:1px solid var(--light-border);color:var(--primary-dark-green)}.quick-form-panel .form-btn-secondary:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}@media (max-width: 1200px){.quick-action-cards,.today-operations{grid-template-columns:repeat(3,1fr)}.panels-grid,.forms-section{grid-template-columns:1fr}}@media (max-width: 768px){.front-desk-header{padding:20px}.quick-action-cards{grid-template-columns:repeat(2,1fr);padding:16px 20px}.today-operations{grid-template-columns:repeat(2,1fr);padding:0 20px 16px}.panels-grid,.forms-section{padding:0 20px 16px}.room-status-grid{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.operations-table,.active-guests-table{font-size:12px}.operations-table th,.operations-table td,.active-guests-table th,.active-guests-table td{padding:8px}}:root{--wizard-primary: #C8A348;--wizard-primary-dark: #B8923A;--wizard-secondary: #4A7C59;--wizard-bg: #FFFFFF;--wizard-bg-alt: #F8F5EF;--wizard-border: #E8E0D2;--wizard-text: #23352B;--wizard-text-light: #6B7B73;--wizard-success: #4A7C59;--wizard-warning: #C8A348;--wizard-danger: #C75B5B}.checkin-wizard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.checkin-wizard-container{width:900px;max-width:95vw;max-height:90vh;background:var(--wizard-bg);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .4s ease}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.checkin-wizard-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:linear-gradient(135deg,#23352b,#314438);color:#fff;border-bottom:2px solid var(--wizard-primary)}.checkin-wizard-header h2{font-family:Playfair Display,serif;font-size:24px;font-weight:600;margin:0}.close-btn{background:none;border:none;color:#fff;font-size:32px;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.close-btn:hover{background:#ffffff1a}.checkin-entry-screen{padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.entry-card{background:var(--wizard-bg-alt);border:2px solid var(--wizard-border);border-radius:12px;padding:40px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center}.entry-card:hover{border-color:var(--wizard-primary);box-shadow:0 8px 24px #c8a34833;transform:translateY(-4px)}.entry-card-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--wizard-primary) 0%,var(--wizard-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:24px}.entry-card h3{font-family:Playfair Display,serif;font-size:24px;font-weight:600;color:var(--wizard-text);margin:0 0 12px}.entry-card p{font-size:14px;color:var(--wizard-text-light);line-height:1.6;margin:0 0 24px}.entry-card-actions{display:flex;align-items:center;gap:8px;color:var(--wizard-primary);font-weight:600;font-size:14px}.wizard-progress{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:var(--wizard-bg-alt);border-bottom:1px solid var(--wizard-border)}.progress-step-number{width:40px;height:40px;border-radius:50%;background:var(--wizard-border);color:var(--wizard-text-light);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;transition:all .3s ease;position:relative;z-index:1}.progress-step.active .progress-step-number{background:var(--wizard-primary);color:#fff;box-shadow:0 0 0 4px #c8a34833}.progress-step.completed .progress-step-number{background:var(--wizard-success);color:#fff}.progress-step:not(:last-child):after{content:"";position:absolute;top:20px;left:50%;width:calc(100% - 40px);height:2px;background:var(--wizard-border);z-index:0}.progress-step.completed:not(:last-child):after{background:var(--wizard-success)}.progress-step-label{font-size:12px;font-weight:500;color:var(--wizard-text-light);text-align:center}.progress-step.active .progress-step-label{color:var(--wizard-primary);font-weight:600}.progress-step.completed .progress-step-label{color:var(--wizard-success)}.wizard-content{flex:1;overflow-y:auto;padding:32px}.wizard-step{max-width:100%}.wizard-step h3{font-family:Playfair Display,serif;font-size:22px;font-weight:600;color:var(--wizard-text);margin:0 0 24px}.wizard-step h4{font-size:16px;font-weight:600;color:var(--wizard-text);margin:24px 0 16px}.wizard-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:12px;font-weight:600;color:var(--wizard-text);text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1px solid var(--wizard-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--wizard-text);background:#fff;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--wizard-primary);box-shadow:0 0 0 3px #c8a3481a}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23C8A348' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.file-upload{position:relative;border:2px dashed var(--wizard-border);border-radius:8px;padding:24px;text-align:center;cursor:pointer;transition:all .2s ease}.file-upload:hover{border-color:var(--wizard-primary);background:#c8a3480d}.file-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file-upload span{font-size:14px;color:var(--wizard-text-light)}.info-card{background:var(--wizard-bg-alt);border:1px solid var(--wizard-border);border-radius:8px;padding:20px;margin-bottom:20px}.info-card h4{font-size:14px;font-weight:600;color:var(--wizard-text);margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{font-size:11px;font-weight:600;color:var(--wizard-text-light);text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:14px;color:var(--wizard-text)}.checkbox-group{margin-top:20px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-size:14px;color:#f5f5f5}.room-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.room-card{background:#fff;border:2px solid var(--wizard-border);border-radius:8px;padding:20px;cursor:pointer;transition:all .2s ease}.room-card:hover{border-color:var(--wizard-primary)}.room-card.selected{border-color:var(--wizard-primary);background:#c8a3480d}.room-number{font-size:18px;font-weight:700;color:var(--wizard-text);margin-bottom:12px}.room-details{display:flex;flex-direction:column;gap:4px}.room-details span{font-size:13px;color:var(--wizard-text-light)}.status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.status.ready{background:#4a7c591a;color:var(--wizard-success)}.status.cleaning{background:#5b8fb91a;color:#5b8fb9}.status.occupied{background:#c75b5b1a;color:var(--wizard-danger)}.status.out_of_order{background:#8b73551a;color:#8b7355}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.service-card{background:#fff;border:2px solid var(--wizard-border);border-radius:8px;padding:16px;cursor:pointer;transition:all .2s ease;text-align:center}.service-card:hover{border-color:var(--wizard-primary)}.service-card.selected{border-color:var(--wizard-primary);background:#c8a3480d}.service-name{font-size:13px;font-weight:600;color:var(--wizard-text);margin-bottom:8px}.service-price{font-size:14px;font-weight:700;color:var(--wizard-primary)}.total-section{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--wizard-bg-alt);border-radius:8px;border:1px solid var(--wizard-border)}.total-label{font-size:14px;font-weight:600;color:var(--wizard-text)}.total-amount{font-size:20px;font-weight:700;color:var(--wizard-primary)}.payment-summary{background:var(--wizard-bg-alt);border:1px solid var(--wizard-border);border-radius:8px;padding:20px;margin-bottom:24px}.payment-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:14px;color:var(--wizard-text)}.payment-row.total{border-top:1px solid var(--wizard-border);margin-top:8px;padding-top:12px;font-weight:700;font-size:16px}.payment-row.balance{color:var(--wizard-danger);font-weight:600}.payment-status{margin-bottom:24px}.status-badge{display:inline-block;padding:6px 16px;border-radius:16px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.full{background:#4a7c591a;color:var(--wizard-success)}.status-badge.partial{background:#c8a3481a;color:var(--wizard-primary)}.status-badge.unpaid{background:#c75b5b1a;color:var(--wizard-danger)}.payment-methods{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.payment-method-btn{padding:12px 16px;border:2px solid var(--wizard-border);border-radius:8px;background:#fff;font-size:13px;font-weight:600;color:var(--wizard-text);cursor:pointer;transition:all .2s ease}.payment-method-btn:hover{border-color:var(--wizard-primary)}.payment-method-btn.active{border-color:var(--wizard-primary);background:var(--wizard-primary);color:#fff}.payment-type-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.payment-type-btn{padding:12px 16px;border:2px solid var(--wizard-border);border-radius:8px;background:#fff;font-size:13px;font-weight:600;color:var(--wizard-text);cursor:pointer;transition:all .2s ease}.payment-type-btn:hover{border-color:var(--wizard-primary)}.payment-type-btn.active{border-color:var(--wizard-primary);background:var(--wizard-primary);color:#fff}.assigned-room-display{background:linear-gradient(135deg,var(--wizard-primary) 0%,var(--wizard-primary-dark) 100%);border-radius:12px;padding:40px;text-align:center;margin-bottom:24px}.room-number-large{font-size:48px;font-weight:700;color:#fff;font-family:Playfair Display,serif}.key-card-options{display:flex;flex-direction:column;gap:12px;margin-top:24px}.success-screen{text-align:center;padding:40px 20px}.success-icon{width:80px;height:80px;background:var(--wizard-success);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin:0 auto 24px}.success-screen h3{font-family:Playfair Display,serif;font-size:28px;font-weight:600;color:var(--wizard-text);margin:0 0 32px}.summary-card{background:var(--wizard-bg-alt);border:1px solid var(--wizard-border);border-radius:8px;padding:24px;margin-bottom:24px}.summary-card h4{font-size:14px;font-weight:600;color:var(--wizard-text);margin:0 0 20px;text-transform:uppercase;letter-spacing:.5px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item label{font-size:11px;font-weight:600;color:var(--wizard-text-light);text-transform:uppercase;letter-spacing:.5px}.summary-item span{font-size:14px;color:var(--wizard-text);font-weight:600}.success-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.wizard-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:24px 32px;background:var(--wizard-bg-alt);border-top:1px solid var(--wizard-border)}.btn-primary{padding:12px 32px;background:var(--wizard-primary);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{background:var(--wizard-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #c8a3484d}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary.full-width{width:100%}.btn-secondary{padding:12px 32px;background:#fff;border:2px solid var(--wizard-border);border-radius:8px;color:var(--wizard-text);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{border-color:var(--wizard-primary);color:var(--wizard-primary)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary.full-width{width:100%}.filter-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.guest-count-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.calculation-summary{background:var(--wizard-bg-alt);border:1px solid var(--wizard-border);border-radius:8px;padding:20px;margin-top:24px}.calc-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:14px;color:var(--wizard-text)}.calc-row.subtotal{border-top:1px solid var(--wizard-border);margin-top:8px;padding-top:12px;font-weight:700;font-size:16px}@media (max-width: 768px){.checkin-wizard-container{width:100%;max-width:100%;max-height:100vh;border-radius:0}.checkin-entry-screen{grid-template-columns:1fr;padding:24px}.entry-card{padding:24px}.wizard-progress{padding:16px 20px}.progress-step-number{width:32px;height:32px;font-size:14px}.progress-step:not(:last-child):after{top:16px;width:calc(100% - 32px)}.progress-step-label{font-size:10px}.wizard-content{padding:20px}.wizard-form-grid,.room-cards-grid{grid-template-columns:1fr}.services-grid,.payment-methods{grid-template-columns:repeat(2,1fr)}.payment-type-options,.info-grid,.summary-grid,.success-actions{grid-template-columns:1fr}.wizard-actions{flex-direction:column}.wizard-actions button{width:100%}.filter-bar{grid-template-columns:1fr}.room-number-large{font-size:36px}}.section-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.action-btn.small{padding:6px 12px;font-size:12px}.maintenance-list{display:flex;flex-direction:column;gap:12px}.maintenance-empty{padding:24px;text-align:center;color:#f8f6f280;font-style:italic}.maintenance-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:16px}.maintenance-header{display:flex;gap:12px;margin-bottom:8px}.maintenance-status{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.maintenance-status.status-pending{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.3)}.maintenance-status.status-in_progress{background:#2196f333;color:#2196f3;border:1px solid rgba(33,150,243,.3)}.maintenance-status.status-completed{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.maintenance-status.status-cancelled{background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.3)}.maintenance-priority{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.maintenance-priority.priority-low{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.maintenance-priority.priority-medium{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.3)}.maintenance-priority.priority-high{background:#ff980033;color:#ff9800;border:1px solid rgba(255,152,0,.3)}.maintenance-priority.priority-urgent{background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.3)}.maintenance-description{color:#f8f6f2e6;font-size:14px;margin-bottom:8px;line-height:1.5}.maintenance-details{display:flex;gap:16px;color:#f8f6f299;font-size:12px;margin-bottom:12px}.maintenance-actions{display:flex;gap:8px}.maintenance-btn{padding:6px 16px;border:1px solid rgba(212,175,55,.5);background:#d4af371a;color:#d4af37;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.maintenance-btn:hover{background:#d4af3733;border-color:#d4af37cc}.maintenance-btn.cancel{border-color:#f4433680;background:#f443361a;color:#f44336}.maintenance-btn.cancel:hover{background:#f4433633;border-color:#f44336cc}.maintenance-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.maintenance-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(212,175,55,.3);border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.maintenance-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.modal-title{color:#d4af37;font-size:18px;font-weight:600;margin:0}.modal-close{background:none;border:none;color:#f8f6f299;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-close:hover{background:#ffffff1a;color:#f8f6f2e6}.modal-form{padding:24px;display:flex;flex-direction:column;gap:16px}.form-label{color:#f8f6f2cc;font-size:13px;font-weight:500}.form-input,.form-select,.form-textarea{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:10px 12px;color:#f8f6f2e6;font-size:14px;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#d4af3780;background:#ffffff14}.form-textarea{resize:vertical;min-height:80px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}@media (max-width: 768px){.maintenance-modal{width:95%;max-height:95vh}.modal-header,.modal-form{padding:16px}}:root{--primary-dark-green: #23352B;--olive-green: #314438;--luxury-gold: #C8A348;--cream: #F8F5EF;--white: #FFFFFF;--light-border: #E8E0D2;--success-green: #4A7C59}.booking-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:flex-end;animation:fadeIn .3s ease}.booking-drawer{width:600px;max-height:100vh;background:var(--white);overflow-y:auto;animation:slideIn .4s ease;box-shadow:-4px 0 24px #00000026}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.booking-drawer-header{position:relative;padding:32px 32px 24px;background:linear-gradient(135deg,var(--primary-dark-green) 0%,var(--olive-green) 100%);color:var(--white);position:sticky;top:0;z-index:10}.booking-drawer-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(/asset/reception.png);background-size:cover;background-position:center;opacity:.15;z-index:0}.booking-drawer-header>*{position:relative;z-index:1}.booking-drawer-title{font-size:24px;font-weight:700;color:var(--white);margin-bottom:8px}.booking-drawer-subtitle{font-size:14px;color:#fffc}.drawer-close-btn{position:absolute;top:24px;right:24px;background:none;border:none;font-size:28px;color:var(--white);cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.drawer-close-btn:hover{background:#ffffff1a}.progress-indicator{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:var(--cream);border-bottom:1px solid var(--light-border)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.progress-step-number{width:40px;height:40px;border-radius:50%;background:var(--white);border:2px solid var(--light-border);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--olive-green);transition:all .3s ease;z-index:2}.progress-step.active .progress-step-number{background:var(--luxury-gold);border-color:var(--luxury-gold);color:var(--white);box-shadow:0 0 0 4px #c8a34833}.progress-step.completed .progress-step-number{background:var(--success-green);border-color:var(--success-green);color:var(--white)}.progress-step-label{font-size:13px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-align:center}.progress-step.active .progress-step-label{color:var(--luxury-gold)}.progress-step:not(:last-child):after{content:"";position:absolute;top:20px;left:50%;width:calc(100% - 40px);height:2px;background:var(--light-border);z-index:1}.progress-step.completed:not(:last-child):after{background:var(--success-green)}.progress-step.active:not(:last-child):after{background:linear-gradient(to right,var(--success-green) 50%,var(--light-border) 50%)}.booking-drawer-content{padding:24px}.step-content{display:none}.step-content.active{display:block}.step-section-header{font-size:18px;font-weight:600;color:var(--primary-dark-green);margin-bottom:24px;text-transform:uppercase;letter-spacing:.5px}.booking-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.booking-form-group{display:flex;flex-direction:column;gap:8px}.booking-form-label{font-size:13px;font-weight:600;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.booking-form-input{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);transition:all .2s ease}.booking-form-input:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.booking-form-input::placeholder{color:var(--olive-green);opacity:.6}.booking-form-select{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);cursor:pointer;transition:all .2s ease}.booking-form-select:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.booking-form-textarea{padding:12px 16px;border:1px solid var(--light-border);border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:var(--primary-dark-green);background:var(--cream);resize:vertical;min-height:100px;transition:all .2s ease}.booking-form-textarea:focus{outline:none;border-color:var(--luxury-gold);background:var(--white)}.full-width{grid-column:span 2}.room-cards-grid{display:grid;gap:16px}.room-card{background:var(--white);border:1px solid var(--light-border);border-radius:12px;overflow:hidden;transition:all .2s ease;cursor:pointer}.room-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.room-card.selected{border-color:var(--luxury-gold);box-shadow:0 4px 12px #c8a3484d}.room-card-image{width:100%;height:180px;background:var(--cream);display:flex;align-items:center;justify-content:center;overflow:hidden}.room-card-image img{width:100%;height:100%;object-fit:cover}.room-card-content{padding:16px}.room-card-name{font-size:18px;font-weight:600;color:var(--primary-dark-green);margin-bottom:8px}.room-card-description{font-size:13px;color:var(--olive-green);line-height:1.5;margin-bottom:12px}.room-card-details{display:flex;gap:16px;margin-bottom:12px}.room-card-detail{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--olive-green)}.room-card-amenities{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.room-card-amenity{background:var(--cream);padding:4px 10px;border-radius:12px;font-size:11px;color:var(--olive-green);font-weight:500}.room-card-rate{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--light-border)}.room-card-price{font-size:20px;font-weight:700;color:var(--luxury-gold)}.room-card-price span{font-size:12px;font-weight:400;color:var(--olive-green)}.select-room-btn{background:var(--luxury-gold);border:none;padding:10px 20px;font-size:13px;font-weight:600;color:var(--white);border-radius:8px;cursor:pointer;transition:all .2s ease}.select-room-btn:hover{background:#d4b358}.room-card.selected .select-room-btn{background:var(--success-green)}.booking-summary{background:var(--cream);border-radius:12px;padding:20px;margin-bottom:24px}.summary-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--light-border)}.summary-row:last-child{border-bottom:none}.summary-label{font-size:14px;color:var(--olive-green);font-weight:500}.summary-value{font-size:14px;color:var(--primary-dark-green);font-weight:600}.summary-total{margin-top:16px;padding-top:16px;border-top:2px solid var(--luxury-gold)}.summary-total .summary-label{font-size:16px;font-weight:600}.summary-total .summary-value{font-size:24px;font-weight:700;color:var(--luxury-gold)}.booking-actions{display:flex;gap:12px;margin-top:24px}.booking-btn{flex:1;padding:14px 24px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.booking-btn-primary{background:var(--luxury-gold);border:none;color:var(--white)}.booking-btn-primary:hover{background:#d4b358}.booking-btn-secondary{background:var(--white);border:1px solid var(--light-border);color:var(--primary-dark-green)}.booking-btn-secondary:hover{border-color:var(--luxury-gold);background:var(--luxury-gold);color:var(--white)}.success-screen{text-align:center;padding:40px 24px}.success-icon{width:80px;height:80px;margin:0 auto 24px;background:var(--success-green);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:40px}.success-title{font-size:28px;font-weight:700;color:var(--primary-dark-green);margin-bottom:16px}.success-message{font-size:14px;color:var(--olive-green);line-height:1.6;margin-bottom:32px}.success-reference{background:var(--cream);border-radius:8px;padding:16px;margin-bottom:24px}.reference-number{font-size:18px;font-weight:700;color:var(--luxury-gold);margin-bottom:8px}.reference-label{font-size:12px;color:var(--olive-green);text-transform:uppercase;letter-spacing:.5px}.success-actions{display:flex;gap:12px}@media (max-width: 768px){.booking-drawer-overlay{align-items:flex-end;justify-content:center}.booking-drawer{width:100%;max-width:100%;max-height:92vh;border-radius:20px 20px 0 0;animation:slideUp .35s ease;display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.booking-drawer:before{content:"";display:block;width:40px;height:4px;background:#00000026;border-radius:2px;margin:12px auto 0;flex-shrink:0}.booking-drawer-header{padding:12px 20px 16px;border-radius:20px 20px 0 0;flex-shrink:0}.booking-drawer-title{font-size:18px;margin-bottom:2px}.booking-drawer-subtitle{font-size:11px}.drawer-close-btn{top:14px;right:16px;font-size:26px}.progress-indicator{padding:14px 16px;background:var(--cream);border-bottom:1px solid var(--light-border);flex-shrink:0;overflow-x:auto}.progress-step{gap:4px;min-width:0}.progress-step-number{width:30px;height:30px;font-size:13px;flex-shrink:0}.progress-step-label{font-size:9px;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52px}.progress-step:not(:last-child):after{top:15px;width:calc(100% - 30px);height:2px}.progress-step.completed:not(:last-child):after{background:var(--success-green)}.booking-drawer-content{padding:16px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.step-section-header{font-size:15px;margin-bottom:14px}.booking-form-grid{grid-template-columns:1fr;gap:12px}.full-width{grid-column:span 1}.booking-form-label{font-size:11px}.booking-form-input,.booking-form-select,.booking-form-textarea{padding:11px 14px;font-size:15px}.booking-form-textarea{min-height:80px}.room-cards-grid{grid-template-columns:1fr;gap:12px}.room-card-image{height:150px}.room-card-content{padding:12px}.room-card-name{font-size:15px;margin-bottom:4px}.room-card-description{font-size:12px;margin-bottom:8px}.room-card-amenities{gap:5px;margin-bottom:10px}.room-card-amenity{font-size:10px;padding:3px 7px}.room-card-price{font-size:17px}.select-room-btn{padding:8px 14px;font-size:12px}.booking-summary{padding:14px;margin-bottom:16px}.summary-row{padding:9px 0;flex-wrap:wrap;gap:4px}.summary-label{font-size:12px}.summary-value{font-size:12px;text-align:right;word-break:break-word}.booking-actions{flex-direction:column;gap:10px;margin-top:16px}.booking-btn{width:100%;padding:14px;font-size:14px}.success-screen{padding:24px 16px}.success-icon{width:60px;height:60px}.success-icon svg{width:28px;height:28px}.success-title{font-size:20px;margin-bottom:10px}.success-message{font-size:13px;margin-bottom:20px}.reference-number{font-size:16px}.success-actions{flex-direction:column;gap:10px}.success-actions .booking-btn{width:100%}}@media (max-width: 390px){.booking-drawer-header{padding:10px 16px 12px}.booking-drawer-title{font-size:16px;padding-right:32px}.progress-indicator{padding:10px 12px}.progress-step-number{width:26px;height:26px;font-size:12px}.progress-step-label{font-size:8px;max-width:44px}.progress-step:not(:last-child):after{top:13px;width:calc(100% - 26px)}.booking-drawer-content{padding:12px}.booking-form-input,.booking-form-select{padding:10px 12px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99999;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:90vh;display:flex!important;flex-direction:column!important;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease;overflow:hidden;height:auto;min-height:500px}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.room-type-modal{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-title{font-size:20px;font-weight:600;color:#1f2937;margin:0}.modal-close{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;transition:color .2s}.modal-close:hover{color:#1f2937}.stepper{display:flex;justify-content:space-between;padding:24px;border-bottom:1px solid #e5e7eb}.stepper-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.stepper-step:not(:last-child):after{content:"";position:absolute;top:16px;left:50%;width:100%;height:2px;background:#e5e7eb;z-index:0}.stepper-step.active:not(:last-child):after{background:#d4af37}.step-number{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;z-index:1;transition:all .3s ease}.stepper-step.active .step-number{background:#d4af37;color:#fff}.stepper-step.completed .step-number{background:#10b981;color:#fff}.step-label{font-size:12px;font-weight:500;color:#6b7280}.stepper-step.active .step-label{color:#d4af37}.stepper-step.completed .step-label{color:#10b981}.modal-body{flex:1;overflow-y:auto;padding:24px;min-height:300px;background:red!important;display:block!important;visibility:visible!important;opacity:1!important;border:2px solid #000!important;position:relative!important}.step-content{animation:fadeIn .3s ease;min-height:200px;background:#f9fafb;padding:16px;border-radius:8px}.step-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group.full-width{grid-column:span 2}.form-label{font-size:14px;font-weight:500;color:#374151}.form-input{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;transition:border-color .2s}.form-input:focus{outline:none;border-color:#d4af37}textarea.form-input{resize:vertical;min-height:80px}.checkbox-group{display:flex;flex-direction:column;gap:12px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.image-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-top:16px}.image-preview-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.image-preview-item img{width:100%;height:100%;object-fit:cover}.image-remove{position:absolute;top:4px;right:4px;background:#00000080;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.image-remove:hover{background:#dc2626cc}.review-section{padding:16px;background:#f9fafb;border-radius:8px;margin-bottom:12px}.review-section h4{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 8px}.review-section p{font-size:14px;color:#6b7280;margin:4px 0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb}.action-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.action-btn.primary{background:#d4af37;color:#fff}.action-btn.primary:hover{background:#b8952f}.action-btn.secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.action-btn.secondary:hover{background:#f9fafb}.rtm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99999;display:flex;align-items:center;justify-content:center;animation:rtmFadeIn .3s ease}@keyframes rtmFadeIn{0%{opacity:0}to{opacity:1}}.rtm-container{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:rtmSlideUp .3s ease;overflow:hidden;height:auto;min-height:500px}@keyframes rtmSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.rtm-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.rtm-title{font-size:20px;font-weight:600;color:#1f2937;margin:0}.rtm-close{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;transition:color .2s}.rtm-close:hover{color:#1f2937}.rtm-toast{position:fixed;top:20px;right:20px;padding:16px 24px;border-radius:8px;background:#fff;box-shadow:0 4px 12px #00000026;z-index:100000;animation:rtmSlideIn .3s ease;font-size:14px;font-weight:500}@keyframes rtmSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.rtm-toast-error{background:#fee2e2;color:#991b1b;border-left:4px solid #ef4444}.rtm-toast-success{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}.rtm-increment-control{display:flex;align-items:center;gap:8px;border:1px solid #d1d5db;border-radius:8px;padding:8px;background:#fff}.rtm-increment-btn{width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:18px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.rtm-increment-btn:hover{background:#f9fafb;border-color:#d4af37}.rtm-increment-btn:active{background:#f3f4f6}.rtm-increment-value{flex:1;text-align:center;font-size:16px;font-weight:600;color:#1f2937;min-width:40px}.rtm-input-error{border-color:#ef4444!important;background-color:#fef2f2!important}.rtm-input-error:focus{border-color:#ef4444!important;outline:none!important;box-shadow:0 0 0 3px #ef44441a!important}.rtm-form-group.rtm-input-error{border:2px solid #ef4444;border-radius:8px;padding:8px;background-color:#fef2f2}.rtm-tag-input-container{border:1px solid #e5e7eb;border-radius:8px;padding:8px;background:#fff;min-height:50px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rtm-tag-input-container.rtm-input-error{border-color:#ef4444;background-color:#fef2f2}.rtm-tags-container{display:flex;flex-wrap:wrap;gap:6px}.rtm-tag{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#d4af37,#c9a227);color:#1a1a1a;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:500}.rtm-tag-remove{background:none;border:none;color:#1a1a1a;font-size:16px;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity .2s}.rtm-tag-remove:hover{opacity:1}.rtm-tag-input{flex:1;min-width:150px;border:none;outline:none;font-size:14px;padding:6px;background:transparent;color:#1a1a1a}.rtm-tag-input::placeholder{color:#9ca3af}.rtm-tag-input:focus{color:#1a1a1a}.rtm-image-badge{position:absolute;top:8px;left:8px;background:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.rtm-spinner{display:flex;align-items:center;gap:8px}.rtm-spinner-icon{animation:rtmSpin 1s linear infinite}@keyframes rtmSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rtm-spinner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:12px}.rtm-spinner-large{display:flex;flex-direction:column;align-items:center;gap:16px}.rtm-spinner-large svg{animation:rtmSpin 1s linear infinite}.rtm-spinner-large p{font-family:Inter,sans-serif;font-size:16px;font-weight:500;color:#333}.rtm-stepper{display:flex;justify-content:space-between;padding:24px;border-bottom:1px solid #e5e7eb}.rtm-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.rtm-step:not(:last-child):after{content:"";position:absolute;top:16px;left:50%;width:100%;height:2px;background:#e5e7eb;z-index:0}.rtm-step.active:not(:last-child):after{background:#d4af37}.rtm-step-number{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;z-index:1;transition:all .3s ease}.rtm-step.active .rtm-step-number{background:#d4af37;color:#fff}.rtm-step.completed .rtm-step-number{background:#10b981;color:#fff}.rtm-step-label{font-size:12px;font-weight:500;color:#6b7280}.rtm-step.active .rtm-step-label{color:#d4af37}.rtm-step.completed .rtm-step-label{color:#10b981}.rtm-body{flex:1;overflow-y:auto;padding:24px;min-height:300px;background:#fff}.rtm-step-content{animation:rtmFadeIn .3s ease}.rtm-step-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 20px}.rtm-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rtm-form-group{display:flex;flex-direction:column;gap:8px}.rtm-form-group.full-width{grid-column:span 2}.rtm-form-label{font-size:14px;font-weight:500;color:#374151}.rtm-form-input{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;transition:border-color .2s}.rtm-form-input:focus{outline:none;border-color:#d4af37}textarea.rtm-form-input{resize:vertical;min-height:80px}.rtm-checkbox-group{display:flex;flex-direction:column;gap:12px}.rtm-checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.rtm-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.rtm-image-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-top:16px}.rtm-image-preview-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.rtm-image-preview-item img{width:100%;height:100%;object-fit:cover}.rtm-image-remove{position:absolute;top:4px;right:4px;background:#00000080;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.rtm-image-remove:hover{background:#dc2626cc}.rtm-review-section{padding:16px;background:#f9fafb;border-radius:8px;margin-bottom:12px}.rtm-review-section h4{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 8px}.rtm-review-section p{font-size:14px;color:#6b7280;margin:4px 0}.rtm-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb}.rtm-action-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.rtm-action-btn.primary{background:#d4af37;color:#fff}.rtm-action-btn.primary:hover{background:#b8952f}.rtm-action-btn.secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.rtm-action-btn.secondary:hover{background:#f9fafb}.ad-auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;animation:adFadeIn .3s ease}@keyframes adFadeIn{0%{opacity:0}to{opacity:1}}.ad-auth-drawer{position:fixed;top:0;right:0;height:100vh;width:345px;max-width:100%;background:#1a1a1af2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-left:1px solid rgba(212,175,55,.2);box-shadow:-10px 0 40px #00000080;z-index:10001;transform:translate(100%);transition:transform .3s ease;overflow-y:auto}.ad-auth-drawer.open{transform:translate(0)}.ad-auth-drawer-header{position:relative;display:flex;flex-direction:column;align-items:center;padding:40px 30px 30px;min-height:280px;background:linear-gradient(180deg,#d4af371f,#000000d9),url(/asset/reception.png);background-size:cover;background-position:center}.ad-auth-drawer-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#d4af3714,#000000b3);z-index:1}.ad-auth-close-btn{position:absolute;top:20px;right:20px;background:#0000004d;border:1px solid rgba(212,175,55,.2);color:#f8f6f2cc;font-size:24px;cursor:pointer;transition:all .3s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;z-index:10}.ad-auth-close-btn:hover{color:#d4af37;background:#d4af3726;border-color:#d4af37}.ad-auth-header-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;animation:adFadeInDown .4s ease}.ad-auth-logo{height:115px;width:auto;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 0 20px rgba(212,175,55,.3));animation:adFadeIn .5s ease}.ad-auth-tagline{font-family:Playfair Display,serif;font-size:13px;color:#d4af37;letter-spacing:4px;text-transform:uppercase;font-weight:500;animation:adFadeInUp .5s ease .1s both}.ad-auth-header-tabs{position:relative;z-index:2;display:flex;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.15);border-radius:30px;padding:6px;width:70%;animation:adSlideUp .4s ease .2s both}.ad-auth-header-tab{flex:1;background:none;border:none;padding:12px 16px;font-family:Poppins,sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#f8f6f2b3;cursor:pointer;transition:all .3s ease;border-radius:24px}.ad-auth-header-tab:hover{color:#f8f6f2e6}.ad-auth-header-tab.active{background:#d4af37;color:#1a1a1a;box-shadow:0 4px 15px #d4af374d}@keyframes adFadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes adFadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes adSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ad-auth-content{padding:40px 30px;box-sizing:border-box}.ad-auth-form{display:flex;flex-direction:column;gap:20px;box-sizing:border-box}.ad-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;box-sizing:border-box}.ad-form-group{display:flex;flex-direction:column;gap:8px;box-sizing:border-box}.ad-form-group label{font-family:Poppins,sans-serif;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:#f8f6f2e6!important}.ad-form-group input{background:#f8f6f20d;border:1px solid rgba(248,246,242,.1);border-radius:8px;padding:14px 18px;color:#fff!important;font-family:Inter,sans-serif;font-size:14px;outline:none;transition:all .3s ease}.ad-form-group input:focus{border-color:#d4af37;background:#f8f6f214;color:#fff!important}.ad-form-group input::placeholder{color:#f8f6f266}.ad-form-group input:-webkit-autofill,.ad-form-group input:-webkit-autofill:hover,.ad-form-group input:-webkit-autofill:focus{-webkit-text-fill-color:#ffffff!important;-webkit-box-shadow:0 0 0 30px rgba(248,246,242,.05) inset!important;transition:background-color 5000s ease-in-out 0s}.ad-password-input-wrapper{position:relative;display:flex;align-items:center}.ad-password-input-wrapper input{flex:1;padding-right:50px}.ad-password-toggle{position:absolute;right:15px;background:none;border:none;cursor:pointer;font-size:18px;color:#f8f6f280;transition:color .3s ease}.ad-password-toggle:hover{color:#d4af37}.ad-form-options{display:flex;justify-content:space-between;align-items:center}.ad-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-family:Inter,sans-serif;font-size:13px;color:#f8f6f2e6!important}.ad-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#d4af37}.ad-forgot-password-link{background:none;border:none;color:#d4af37;font-family:Inter,sans-serif;font-size:13px;cursor:pointer;transition:color .3s ease}.ad-forgot-password-link:hover{color:#f4d03f}.ad-auth-primary-btn{background:#d4af37;border:none;color:#1a1a1a;padding:16px;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s ease}.ad-auth-primary-btn:hover{background:#f4d03f;transform:translateY(-2px);box-shadow:0 10px 30px #d4af374d}.ad-auth-secondary-btn{background:transparent;border:1px solid rgba(212,175,55,.3);color:#d4af37;padding:16px;font-family:Poppins,sans-serif;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s ease}.ad-auth-secondary-btn:hover{background:#d4af371a;border-color:#d4af37}.ad-auth-error{background:#c75b5b33;border:1px solid rgba(199,91,91,.5);color:#fcc;padding:12px;border-radius:4px;margin-bottom:16px;font-size:14px}@media (max-width: 768px){.ad-auth-drawer{width:100%;max-width:100%}.ad-auth-drawer-header{padding:30px 20px 20px;min-height:240px}.ad-auth-drawer-header:before{display:none}.ad-auth-close-btn{top:15px;right:15px;width:32px;height:32px;font-size:20px}.ad-auth-header-content{gap:8px}.ad-auth-logo{height:80px}.ad-auth-tagline{font-size:11px;letter-spacing:3px}.ad-auth-header-tabs{width:85%;padding:5px}.ad-auth-header-tab{padding:10px 12px;font-size:10px}.ad-auth-content{padding:30px 20px}.ad-form-row{grid-template-columns:1fr;gap:15px}.ad-form-group input{padding:12px 16px;font-size:14px}.ad-auth-primary-btn,.ad-auth-secondary-btn{padding:14px;font-size:12px}}.ad-field-error{font-size:12px;color:#ff8080;margin-top:2px;display:block}.ad-form-group input.ad-input-error{border-color:#c75b5bb3!important;background:#c75b5b0f!important}.ad-auth-success{background:#4a7c5933;border:1px solid rgba(74,124,89,.5);color:#9de8b0;padding:14px 16px;border-radius:8px;font-size:14px;line-height:1.5}.ad-forgot-desc{font-size:13px;color:#f8f6f2a6;line-height:1.6;margin:0}.ad-pw-strength{display:flex;align-items:center;gap:10px;margin-top:4px}.ad-pw-bar{flex:1;height:4px;border-radius:2px;transition:background .3s ease,width .3s ease}.ad-pw-bar.ad-pw-weak{background:#e05252;width:33%}.ad-pw-bar.ad-pw-medium{background:#d4af37;width:66%}.ad-pw-bar.ad-pw-strong{background:#4a7c59;width:100%}.ad-pw-label{font-size:11px;font-weight:600;letter-spacing:.4px;white-space:nowrap}.ad-pw-label.ad-pw-weak{color:#e05252}.ad-pw-label.ad-pw-medium{color:#d4af37}.ad-pw-label.ad-pw-strong{color:#6dc28a}.ad-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(26,26,26,.3);border-top-color:#1a1a1a;border-radius:50%;animation:adSpin .7s linear infinite;vertical-align:middle;margin-right:6px;flex-shrink:0}@keyframes adSpin{to{transform:rotate(360deg)}}.ad-auth-primary-btn{display:flex;align-items:center;justify-content:center;gap:6px}.ad-auth-primary-btn:disabled{opacity:.65;cursor:not-allowed;transform:none!important;box-shadow:none!important}.ad-auth-secondary-btn:disabled{opacity:.5;cursor:not-allowed}.rtd-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10002;display:flex;align-items:center;justify-content:center;animation:rtdFade .2s ease}@keyframes rtdFade{0%{opacity:0}to{opacity:1}}.rtd-container{width:680px;max-width:96vw;max-height:calc(100vh - 32px);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 64px #00000047;display:flex;flex-direction:column;animation:rtdUp .25s ease}@keyframes rtdUp{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.rtd-header{background:#1b3a2d;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.rtd-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;line-height:1}.rtd-close:hover{background:#ffffff3d}.rtd-hero{position:relative;height:180px;overflow:hidden;flex-shrink:0}.rtd-hero-image{width:100%;height:100%;object-fit:cover}.rtd-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:20px 24px}.rtd-title{font-size:20px;font-weight:700;color:#fff;margin:0 0 4px}.rtd-subtitle{font-size:12px;color:#ffffffbf;margin:0}.rtd-content{padding:20px 24px;overflow-y:auto;flex:1;min-height:0}.rtd-content::-webkit-scrollbar{width:5px}.rtd-content::-webkit-scrollbar-track{background:transparent}.rtd-content::-webkit-scrollbar-thumb{background:#d4cfc6;border-radius:3px}.rtd-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #ece7df}.rtd-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.rtd-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin:0 0 12px}.rtd-description{font-size:13px;line-height:1.7;color:#4a4a4a;margin:0}.rtd-details-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rtd-detail-item{background:#f5f2ed;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.rtd-detail-label{font-size:10px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.6px}.rtd-detail-value{font-size:14px;font-weight:700;color:#1b3a2d}.rtd-tags{display:flex;flex-wrap:wrap;gap:6px}.rtd-tag{display:inline-block;padding:4px 12px;background:#f0ebe0;border:1px solid #e0d9cc;color:#1b3a2d;border-radius:20px;font-size:12px;font-weight:500}.rtd-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rtd-pricing-item{background:#f5f2ed;padding:12px;border-radius:8px;text-align:center;border:1px solid #e0dbd2}.rtd-pricing-label{display:block;font-size:10px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.rtd-pricing-value{display:block;font-size:18px;font-weight:700;color:#c8a348}.rtd-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rtd-gallery-image{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}.rtd-header-title{font-size:17px;font-weight:600;color:#fff;margin:0}.rtd-hero-placeholder{min-height:180px;background:#f5f2ed}@media (max-width: 640px){.rtd-container{max-width:100vw;max-height:100dvh;border-radius:16px 16px 0 0}.rtd-details-grid{grid-template-columns:repeat(2,1fr)}.rtd-pricing-grid{grid-template-columns:1fr 1fr}.rtd-gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1400px){.hero-text h1{font-size:48px}.cursor{height:42px}.booking-form-horizontal{grid-template-columns:repeat(3,1fr) auto}}@media (max-width: 1200px){.hero-text h1{font-size:42px}.cursor{height:38px}.premium-rooms-grid,.experiences-grid,.testimonials-carousel,.why-choose-grid,.footer-main{grid-template-columns:repeat(2,1fr)}.booking-form-horizontal{grid-template-columns:repeat(2,1fr);gap:15px}.booking-form-horizontal button{grid-column:span 2}}@media (max-width: 992px){.hero-text h1{font-size:36px}.cursor{height:32px}.hero-content{grid-template-columns:1fr;text-align:center;gap:40px}.hero-text{text-align:center;max-width:100%}.hero-cta-group{justify-content:center}.hero-booking-widget{max-width:400px;margin:0 auto}.rates-content{grid-template-columns:1fr;gap:40px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.gallery-item:nth-child(1){grid-column:span 2;grid-row:span 1}}@media (max-width: 768px){.luxury-nav{display:none}.nav-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--deep-charcoal);flex-direction:column;justify-content:center;gap:30px;transform:translate(100%);transition:transform .5s ease;padding:40px 20px;z-index:999}.nav-menu.open{transform:translate(0)}.nav-item{font-size:18px;text-align:center;padding:15px 0}.nav-reserve{display:none}.nav-hamburger{display:flex;z-index:1000}.nav-login{position:absolute;right:20px;top:50%;transform:translateY(-50%)}.hero-content{grid-template-columns:1fr;gap:40px;padding:100px 20px 60px}.hero-text h1{font-size:32px;text-align:center;line-height:1.2;margin-bottom:20px}.cursor{height:32px;margin-left:5px}.hero-subtitle{flex-direction:column;gap:10px;text-align:center;font-size:11px;margin-bottom:20px}.hero-subtitle .line{width:40px}.mobile-hero-logo{display:block}.hero-stars{gap:6px}.hero-text p{display:block;font-size:16px;line-height:1.6;text-align:center;padding:0 10px}.desktop-typing-text,.desktop-cursor,.hero-cta-group{display:none}.cta-primary,.cta-secondary{width:100%;justify-content:center;padding:16px 24px;font-size:12px;border-radius:6px}.hero-booking-widget{display:none}.hero-booking-widget h3{font-size:20px;margin-bottom:20px;text-align:center}.booking-form-vertical{gap:15px}.form-group label{font-size:11px;margin-bottom:6px}.form-group input,.form-group select{padding:14px 16px;font-size:14px}.form-group select option{font-size:14px;padding:12px}.booking-submit{padding:16px;font-size:13px}.footer-main{grid-template-columns:1fr;gap:40px}.section-wrapper{padding:80px 20px}.nav-container{padding:0 20px}.section-intro h2{font-size:32px;line-height:1.3;margin-bottom:20px}.section-intro p{font-size:15px;padding:0 10px;line-height:1.7}.gallery-grid{grid-template-columns:1fr;gap:15px}.gallery-item:nth-child(1){grid-column:span 1}.premium-rooms-grid,.experiences-grid,.testimonials-carousel,.why-choose-grid{grid-template-columns:1fr;gap:25px}.footer-main,.rates-content{grid-template-columns:1fr;gap:35px}.rates-table{padding:20px;overflow-x:auto;border-radius:8px}.rates-table table{min-width:300px}.rates-table th,.rates-table td{padding:12px 10px;font-size:12px;word-wrap:break-word}.rates-table th:first-child,.rates-table td:first-child{max-width:150px}.info-section h3{font-size:20px;margin-bottom:15px}.info-section li{font-size:13px;padding:10px 0;line-height:1.6}.hero-scroll-indicator,.falling-leaves{display:none}.booking-modal-content{padding:25px 20px;max-width:90%;margin:20px}.booking-modal-content h3{font-size:20px;margin-bottom:20px;padding-right:30px}.modal-close-btn{top:15px;right:15px}.card-image-wrapper{height:280px}.card-content{padding:25px 20px}.card-header h3{font-size:20px}.card-content>p{font-size:14px}.experience-image{height:220px}.experience-content{padding:25px 20px 20px}.experience-content h3{font-size:18px}.experience-content p{font-size:14px}.premium-testimonial{padding:30px 25px}.testimonial-text{font-size:16px}.why-choose-item{padding:30px 20px}.why-choose-item h4{font-size:18px}.why-choose-item p{font-size:13px}}@media (max-width: 768px){.animate-reveal,.animate-fade-up,.animate-card-reveal,.animate-experience-reveal{animation-duration:.01ms!important;animation-iteration-count:1!important}.loading-screen .spinner-outer{animation:spin 1.5s linear infinite!important}.loading-screen .spinner-inner{animation:spin 1s linear infinite reverse!important}.luxury-nav{padding:16px 20px;background:#1a1a1acc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.nav-container{padding:0 20px}.nav-brand{gap:10px}.nav-logo{height:32px}.nav-divider{display:none}.nav-text{font-size:16px}.nav-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--deep-charcoal);flex-direction:column;justify-content:center;gap:30px;transform:translate(100%);transition:transform .5s ease;padding:40px 20px;z-index:999}.nav-menu.open{transform:translate(0)}.nav-hamburger{display:none}.nav-login{padding:8px 12px;font-size:11px}.nav-item{font-size:18px;text-align:center;padding:15px 0}.premium-hero{min-height:100vh;height:100vh}.hero-content{grid-template-columns:1fr;gap:30px;padding:100px 24px 60px;align-items:center;text-align:center}.hero-text{max-width:100%;text-align:center}.hero-subtitle{margin-bottom:20px;font-size:10px;letter-spacing:2px;justify-content:center}.hero-subtitle .line{width:40px}.hero-text h1{font-size:28px;line-height:1.2;margin-bottom:10px;letter-spacing:-.5px;text-align:center}.script-accent{font-size:38px;color:var(--warm-gold);font-style:italic;text-shadow:0 2px 10px rgba(212,175,55,.3);letter-spacing:1px}.script-accent-image{height:clamp(50px,15vw,80px);width:auto;display:block;margin:10px auto 0}.cursor{height:36px;width:2px;margin-left:4px}.hero-text p{display:none}.hero-cta-group{flex-direction:column;gap:12px;width:100%;max-width:300px;margin:0 auto}.cta-primary,.cta-secondary{width:100%;justify-content:center;padding:16px 24px;font-size:12px;border-radius:6px}.hero-booking-widget,.booking-section{display:none}.booking-modal-content{padding:25px 20px;max-width:90%;margin:20px;max-height:85vh;overflow-y:auto}.booking-modal-content h3{font-size:20px;margin-bottom:20px;padding-right:30px}.modal-close-btn{top:15px;right:15px}.section-wrapper{padding:60px 24px}.section-wrapper:first-of-type{padding-top:40px}.section-intro{margin-bottom:32px;text-align:center}.section-label{font-size:10px;letter-spacing:2px;margin-bottom:12px}.section-intro h2{font-size:28px;line-height:1.2;margin-bottom:12px}.section-intro p{font-size:14px;line-height:1.6;margin-bottom:0;padding:0 10px}.experiences-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:20px;-webkit-overflow-scrolling:touch}.experiences-grid::-webkit-scrollbar{display:none}.experience-card{flex:0 0 280px;scroll-snap-align:start;border-radius:24px;overflow:hidden}.experience-image{height:200px}.experience-icon{width:40px;height:40px;bottom:-15px;right:20px}.experience-content{padding:28px 24px 24px}.experience-content h3{font-size:20px;margin-bottom:12px}.experience-content p{font-size:14px;line-height:1.6;margin-bottom:20px}.experience-link{font-size:11px}.why-choose-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.why-choose-item{background:#f8f6f208;border:1px solid rgba(248,246,242,.08);border-radius:20px;padding:24px 20px;text-align:center}.why-choose-icon{width:48px;height:48px;background:#d4af371a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.why-choose-item h4{font-family:Playfair Display,serif;font-size:16px;margin-bottom:8px;color:var(--ivory-white)}.why-choose-item p{font-size:12px;line-height:1.5;color:#f8f6f299}.premium-rooms-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:20px;-webkit-overflow-scrolling:touch}.premium-rooms-grid::-webkit-scrollbar{display:none}.premium-room-card{flex:0 0 300px;min-width:300px;scroll-snap-align:start;border-radius:24px;overflow:hidden}.card-image-wrapper{height:280px}.card-price-tag{top:20px;right:20px;padding:10px 16px;border-radius:12px}.card-price-tag .price{font-size:20px}.card-price-tag .period{font-size:9px}.card-view-badge{bottom:20px;left:20px;padding:8px 14px;border-radius:8px;font-size:10px}.card-content{padding:28px 24px}.card-header h3{font-size:20px;margin-bottom:6px}.room-size{font-size:12px}.card-content>p{font-size:14px;line-height:1.6;margin-bottom:20px}.card-features{gap:10px;margin-bottom:24px}.feature-item{font-size:11px}.card-reserve-btn{padding:14px;font-size:11px;border-radius:12px}.gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:20px;-webkit-overflow-scrolling:touch}.gallery-grid::-webkit-scrollbar{display:none}.gallery-item{flex:0 0 320px;scroll-snap-align:start;border-radius:24px;overflow:hidden;height:400px}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(to top,rgba(26,26,26,.9) 0%,transparent 100%)}.gallery-overlay span{font-family:Playfair Display,serif;font-size:18px;color:var(--ivory-white)}.testimonials-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:20px;-webkit-overflow-scrolling:touch}.testimonials-carousel::-webkit-scrollbar{display:none}.premium-testimonial{flex:0 0 300px;scroll-snap-align:start;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:32px 24px}.testimonial-quote{margin-bottom:20px;opacity:.3}.testimonial-text{font-size:15px;line-height:1.6;margin-bottom:24px;color:var(--ivory-white)}.testimonial-author{display:flex;align-items:center;gap:12px}.testimonial-author img{width:48px;height:48px;border-radius:50%;object-fit:cover}.author-info h4{font-family:Playfair Display,serif;font-size:16px;margin-bottom:4px;color:var(--ivory-white)}.author-info span{font-size:12px;color:#f8f6f280}.testimonial-stars{display:flex;gap:4px;margin-top:8px}.mobile-sticky-cta{display:flex;position:fixed;bottom:0;left:0;right:0;background:#1a1a1af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(212,175,55,.2);padding:16px 24px;z-index:998;gap:12px}.mobile-sticky-cta .cta-primary,.mobile-sticky-cta .cta-secondary{flex:1;padding:16px;font-size:13px;justify-content:center}body{padding-bottom:80px}.rates-table{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.rates-table table{min-width:100%;width:100%}.rates-table th,.rates-table td{padding:16px 12px;font-size:13px}.rates-table th:nth-child(2),.rates-table th:nth-child(3){display:none}.rates-table td:nth-child(2),.rates-table td:nth-child(3){display:none}.desktop-only{display:none}.mobile-only{display:table-cell;text-align:right;width:40px}.clickable-row{cursor:pointer}.clickable-row:hover{background:#d4af3733}.nested-row{background:#d4af371a;display:table-row!important}.nested-content{padding:15px;display:flex;flex-direction:column;gap:10px}.nested-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.nested-item:last-child{border-bottom:none}.nested-label{font-weight:600;color:var(--warm-gold)}.nested-value{color:var(--ivory-white)}.hero-scroll-indicator,.falling-leaves{display:none}.premium-rooms{padding:0;min-height:100vh}.premium-rooms>.section-wrapper{padding:60px 24px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.experiences-section{padding:0;min-height:100vh}.experiences-section>.section-wrapper{padding:60px 24px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.why-choose-section{padding:0;min-height:100vh}.why-choose-section>.section-wrapper{padding:60px 24px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.gallery-section{padding:0;min-height:100vh}.gallery-section>.section-wrapper{padding:60px 24px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.premium-testimonials{padding:0;min-height:100vh}.premium-testimonials>.section-wrapper{padding:60px 24px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.rolling-stats-section{padding:0;min-height:50vh;background:var(--deep-charcoal)}.rolling-stats-section>.section-wrapper{padding:40px 24px;min-height:50vh;display:flex;flex-direction:column;justify-content:center}.ai-chat-widget{width:90vw;max-width:350px;height:60vh;bottom:100px;top:32%;right:20px}.ai-chat-toggle{top:83%;bottom:20px;right:20px;left:auto;width:56px;height:56px}.mobile-top-bar{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#1a1a1a4d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.05)}.mobile-hamburger{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--ivory-white);transition:all .3s ease}.mobile-hamburger:hover{color:var(--warm-gold)}.mobile-hamburger svg{width:24px;height:24px}.mobile-login-btn{background:#d4af3726;border:1px solid rgba(212,175,55,.3);color:var(--warm-gold);padding:10px 20px;border-radius:6px;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.mobile-login-btn:hover{background:var(--warm-gold);color:var(--deep-charcoal)}.mobile-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1002;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-drawer-overlay.open{opacity:1;visibility:visible}.mobile-drawer{position:fixed;top:0;left:0;bottom:0;width:280px;background:#1a1a1afa;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);z-index:1003;transform:translate(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);border-right:1px solid rgba(212,175,55,.1)}.mobile-drawer.open{transform:translate(0)}.mobile-drawer-close{position:absolute;top:16px;right:16px;background:none;border:none;cursor:pointer;padding:8px;color:var(--ivory-white);transition:all .3s ease;display:flex;align-items:center;justify-content:center}.mobile-drawer-close:hover{color:var(--warm-gold)}.mobile-drawer-close svg{width:24px;height:24px}.mobile-drawer-content{padding:60px 24px 24px}.mobile-drawer-nav{display:flex;flex-direction:column;gap:8px}.mobile-drawer-item{background:none;border:none;text-align:left;padding:16px 20px;font-family:Poppins,sans-serif;font-size:16px;font-weight:500;color:var(--ivory-white);cursor:pointer;transition:all .3s ease;border-radius:8px;letter-spacing:.5px}.mobile-drawer-item:hover{background:#d4af371a;color:var(--warm-gold);padding-left:24px}.mobile-drawer-item:active{background:#d4af3733}}:root{--u-green: #2E3B2E;--u-green-light: #3A4F3A;--u-gold: #C9A227;--u-gold-hover: #D4AF37;--u-bg: #F7F4EE;--u-card: #FFFFFF;--u-border: #E4DDCF;--u-text: #1E2A1E;--u-muted: #6B7280;--u-success: #4A7C59;--u-warning: #C79A3B;--u-danger: #C16B5B;--u-info: #4A72A0;--u-shadow-sm: 0 1px 4px rgba(46,59,46,.08);--u-shadow-md: 0 4px 16px rgba(46,59,46,.12);--u-shadow-lg: 0 8px 32px rgba(46,59,46,.18);--u-radius-sm: 8px;--u-radius-md: 12px;--u-radius-lg: 16px}.pms-content *::-webkit-scrollbar{width:6px;height:6px}.pms-content *::-webkit-scrollbar-track{background:transparent}.pms-content *::-webkit-scrollbar-thumb{background:var(--u-border);border-radius:3px}.reservation-header,.guest-management-header,.functionhall-header,.roomtypes-header,.rooms-header,.pms-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;background:var(--u-card);border:1px solid var(--u-border);border-radius:var(--u-radius-md);box-shadow:var(--u-shadow-sm);margin-bottom:0;gap:16px}.reservation-header,.guest-management-header,.functionhall-header,.roomtypes-header{border-left:4px solid var(--u-gold)}.reservation-page-title,.guest-management-title,.page-title,.pms-module-title{font-family:Playfair Display,serif!important;font-size:22px!important;font-weight:700!important;color:var(--u-green)!important;margin:0 0 4px!important;line-height:1.2!important}.reservation-page-subtitle,.guest-management-subtitle,.page-subtitle,.pms-module-subtitle{font-size:13px!important;color:var(--u-muted)!important;font-weight:400!important;margin:0!important}.reservation-header-actions,.guest-header-actions,.header-actions,.functionhall-header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.reservation-action-btn.primary,.header-action-btn.primary,.action-btn.primary,.btn-primary,.duplicate-modal-btn.primary,.reservation-modal-btn.primary,.drawer-action-btn.primary,.document-action-btn{background:var(--u-gold)!important;color:#fff!important;border:none!important;padding:10px 20px!important;font-size:13px!important;font-weight:600!important;font-family:Inter,sans-serif!important;border-radius:var(--u-radius-sm)!important;cursor:pointer!important;transition:background .2s ease,transform .1s ease,box-shadow .2s ease!important;display:inline-flex!important;align-items:center!important;gap:7px!important;box-shadow:0 2px 8px #c9a2274d!important;text-decoration:none!important}.reservation-action-btn.primary:hover,.header-action-btn.primary:hover,.action-btn.primary:hover,.btn-primary:hover:not(:disabled),.duplicate-modal-btn.primary:hover,.reservation-modal-btn.primary:hover:not(:disabled),.drawer-action-btn.primary:hover{background:var(--u-gold-hover)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #c9a22766!important}.reservation-action-btn.secondary,.header-action-btn.secondary,.action-btn.secondary,.btn-secondary,.duplicate-modal-btn.secondary,.reservation-modal-btn.secondary,.reservation-filter-btn,.clear-filters-btn,.reservation-reset-btn{background:var(--u-card)!important;color:var(--u-green)!important;border:1.5px solid var(--u-border)!important;padding:10px 20px!important;font-size:13px!important;font-weight:500!important;font-family:Inter,sans-serif!important;border-radius:var(--u-radius-sm)!important;cursor:pointer!important;transition:all .2s ease!important;display:inline-flex!important;align-items:center!important;gap:7px!important;text-decoration:none!important}.reservation-action-btn.secondary:hover,.header-action-btn.secondary:hover,.action-btn.secondary:hover,.btn-secondary:hover:not(:disabled),.duplicate-modal-btn.secondary:hover,.reservation-modal-btn.secondary:hover,.reservation-filter-btn:hover,.clear-filters-btn:hover,.reservation-reset-btn:hover{border-color:var(--u-gold)!important;color:var(--u-gold)!important;background:#c9a2270d!important}.reservation-modal-btn.danger,.action-btn.danger,.drawer-action-btn.danger,.duplicate-modal-btn.danger{background:var(--u-danger)!important;color:#fff!important;border:none!important;padding:10px 20px!important;font-size:13px!important;font-weight:600!important;border-radius:var(--u-radius-sm)!important;cursor:pointer!important;transition:all .2s ease!important;display:inline-flex!important;align-items:center!important;gap:7px!important}.reservation-modal-btn.danger:hover,.action-btn.danger:hover,.drawer-action-btn.danger:hover{background:#a85040!important;transform:translateY(-1px)!important}button:disabled{opacity:.55!important;cursor:not-allowed!important;transform:none!important}.reservation-icon-btn,.action-btn.icon,.icon-btn{width:34px!important;height:34px!important;border-radius:var(--u-radius-sm)!important;border:1.5px solid var(--u-border)!important;background:var(--u-card)!important;color:var(--u-muted)!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important;flex-shrink:0!important}.reservation-icon-btn:hover,.action-btn.icon:hover{border-color:var(--u-gold)!important;color:var(--u-gold)!important;background:#c9a22714!important}.reservation-table,.guest-table,.events-table,.maintenance-table,.stay-history-table,.rooms-table{width:100%!important;border-collapse:collapse!important;font-family:Inter,sans-serif!important;font-size:13px!important;background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;overflow:hidden!important}.reservation-table thead th,.guest-table thead th,.events-table thead th,.maintenance-table thead th,.stay-history-table thead th,.rooms-table thead th{background:var(--u-green)!important;color:#fff!important;font-size:11px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.6px!important;padding:13px 16px!important;text-align:left!important;border:none!important;white-space:nowrap!important}.reservation-table tbody td,.guest-table tbody td,.events-table tbody td,.maintenance-table tbody td,.stay-history-table tbody td,.rooms-table tbody td{padding:13px 16px!important;color:var(--u-text)!important;font-size:13px!important;border-bottom:1px solid var(--u-border)!important;vertical-align:middle!important;line-height:1.4!important}.reservation-table tbody tr:nth-child(2n) td,.guest-table tbody tr:nth-child(2n) td,.events-table tbody tr:nth-child(2n) td,.maintenance-table tbody tr:nth-child(2n) td,.stay-history-table tbody tr:nth-child(2n) td{background:#f7f4ee80!important}.reservation-table tbody tr:hover td,.guest-table tbody tr:hover td,.events-table tbody tr:hover td,.maintenance-table tbody tr:hover td,.stay-history-table tbody tr:hover td{background:#c9a2270f!important;cursor:pointer!important}.reservation-table tbody tr:last-child td,.guest-table tbody tr:last-child td,.events-table tbody tr:last-child td,.maintenance-table tbody tr:last-child td{border-bottom:none!important}.reservation-table-wrapper,.guest-table-wrapper,.events-table-wrapper,.rooms-table-wrapper{background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;border:1px solid var(--u-border)!important;box-shadow:var(--u-shadow-sm)!important;overflow-x:auto!important}.reservation-status-badge,.status-badge,.hall-status-badge,.housekeeping-badge,.table-badge,.event-type-badge{display:inline-flex!important;align-items:center!important;padding:4px 10px!important;border-radius:20px!important;font-size:11px!important;font-weight:600!important;letter-spacing:.3px!important;text-transform:uppercase!important;gap:4px!important;white-space:nowrap!important}.reservation-status-badge.pending{background:#c79a3b1f!important;color:#8b6210!important;border:1px solid rgba(199,154,59,.3)!important}.reservation-status-badge.approved{background:#4a7c591f!important;color:var(--u-success)!important;border:1px solid rgba(74,124,89,.3)!important}.reservation-status-badge.checked-in{background:#4a72a01f!important;color:var(--u-info)!important;border:1px solid rgba(74,114,160,.3)!important}.reservation-status-badge.checked-out{background:#6e6e6e1a!important;color:#555!important;border:1px solid rgba(110,110,110,.25)!important}.reservation-status-badge.rejected,.reservation-status-badge.cancelled{background:#c16b5b1f!important;color:var(--u-danger)!important;border:1px solid rgba(193,107,91,.3)!important}.reservation-status-badge.confirmed,.status-badge.available,.status-badge.ready{background:#4a7c591f!important;color:var(--u-success)!important;border:1px solid rgba(74,124,89,.3)!important}.status-badge.occupied{background:#4a72a01f!important;color:var(--u-info)!important;border:1px solid rgba(74,114,160,.3)!important}.status-badge.dirty{background:#c79a3b1f!important;color:#8b6210!important;border:1px solid rgba(199,154,59,.3)!important}.status-badge.maintenance{background:#c16b5b1f!important;color:var(--u-danger)!important;border:1px solid rgba(193,107,91,.3)!important}.status-current{background:#4a7c591f!important;color:var(--u-success)!important;border:1px solid rgba(74,124,89,.3)!important}.status-vip{background:#c9a22726!important;color:#8b6210!important;border:1px solid rgba(201,162,39,.4)!important}.status-returning{background:#4a72a01f!important;color:var(--u-info)!important;border:1px solid rgba(74,114,160,.3)!important}.status-blacklisted{background:#c16b5b1f!important;color:var(--u-danger)!important;border:1px solid rgba(193,107,91,.3)!important}.status-inactive{background:#6e6e6e1a!important;color:#555!important;border:1px solid rgba(110,110,110,.25)!important}.pms-content input[type=text],.pms-content input[type=email],.pms-content input[type=tel],.pms-content input[type=number],.pms-content input[type=date],.pms-content input[type=time],.pms-content input[type=datetime-local],.pms-content input[type=password],.pms-content input[type=search],.pms-content select,.pms-content textarea,.reservation-search-input,.guest-search-input,.filter-input,.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px!important;font-size:13px!important;font-family:Inter,sans-serif!important;color:var(--u-text)!important;background:var(--u-card)!important;border:1.5px solid var(--u-border)!important;border-radius:var(--u-radius-sm)!important;outline:none!important;transition:border-color .2s ease,box-shadow .2s ease!important;-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important}.pms-content input:focus,.pms-content select:focus,.pms-content textarea:focus,.reservation-search-input:focus,.guest-search-input:focus,.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--u-gold)!important;box-shadow:0 0 0 3px #c9a22726!important}.pms-content input::placeholder,.pms-content textarea::placeholder,.reservation-search-input::placeholder,.guest-search-input::placeholder{color:var(--u-muted)!important;font-size:13px!important}.pms-content label,.form-label{display:block!important;font-size:12px!important;font-weight:600!important;margin-bottom:6px!important;text-transform:uppercase!important;letter-spacing:.5px!important}.pms-content .form-group,.form-row>div{display:flex!important;flex-direction:column!important;gap:4px!important;margin-bottom:16px!important}.reservation-modal-overlay,.duplicate-modal-overlay,.modal-overlay,.guest-drawer-overlay,.hall-drawer-overlay,.event-drawer-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:#1e2a1e8c!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;padding:16px!important;animation:u-fade-in .2s ease!important}@keyframes u-fade-in{0%{opacity:0}to{opacity:1}}.reservation-modal,.duplicate-modal,.modal-content{background:var(--u-card)!important;border-radius:var(--u-radius-lg)!important;box-shadow:var(--u-shadow-lg)!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important;animation:u-slide-up .25s ease!important;border:1px solid var(--u-border)!important}.reservation-modal.add-modal,.reservation-modal.edit-modal{max-width:640px!important}.reservation-modal.view-modal{max-width:720px!important}.reservation-modal.approve-modal,.reservation-modal.reject-modal,.reservation-modal.checkin-modal,.reservation-modal.checkout-modal,.reservation-modal.delete-modal{max-width:500px!important}.duplicate-modal,.modal-content{max-width:480px!important}@keyframes u-slide-up{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.reservation-modal-header,.duplicate-modal-header,.modal-header,.add-room-modal .modal-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:20px 24px!important;border-bottom:1px solid var(--u-border)!important;background:var(--u-green)!important;border-radius:var(--u-radius-lg) var(--u-radius-lg) 0 0!important;gap:12px!important}.reservation-modal-header-title,.duplicate-modal-title,.modal-header h2,.add-room-modal .modal-title-section h2{font-family:Playfair Display,serif!important;font-size:17px!important;font-weight:700!important;color:#fff!important;margin:0!important}.reservation-modal-header-left{display:flex!important;align-items:center!important;gap:12px!important}.reservation-modal-header-icon{width:36px!important;height:36px!important;border-radius:10px!important;background:#ffffff26!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--u-gold)!important;flex-shrink:0!important}.reservation-modal-close-btn,.modal-close-btn,.drawer-close-btn{width:32px!important;height:32px!important;border-radius:8px!important;border:1.5px solid rgba(255,255,255,.25)!important;background:#ffffff1a!important;color:#fffc!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important;flex-shrink:0!important}.reservation-modal-close-btn:hover,.modal-close-btn:hover,.drawer-close-btn:hover{background:#fff3!important;color:#fff!important}.reservation-modal-body,.duplicate-modal-text,.modal-body,.add-room-modal .modal-form{padding:24px!important;overflow-y:auto!important}.reservation-info-section{margin-bottom:20px!important}.reservation-section-title{font-size:11px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.7px!important;color:var(--u-gold)!important;margin-bottom:12px!important;padding-bottom:8px!important;border-bottom:1px solid var(--u-border)!important}.reservation-info-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.reservation-info-item{display:flex!important;flex-direction:column!important;gap:3px!important}.reservation-info-label{font-size:11px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.5px!important;color:var(--u-muted)!important}.reservation-info-value{font-size:13px!important;color:var(--u-text)!important;font-weight:500!important;line-height:1.4!important}.reservation-modal-footer,.duplicate-modal-actions,.modal-footer{padding:16px 24px!important;border-top:1px solid var(--u-border)!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;background:#f7f4ee80!important;border-radius:0 0 var(--u-radius-lg) var(--u-radius-lg)!important}.guest-drawer,.event-drawer,.hall-drawer{position:fixed!important;top:0!important;right:0!important;height:100vh!important;width:min(520px,95vw)!important;background:var(--u-card)!important;box-shadow:var(--u-shadow-lg)!important;z-index:1001!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;animation:u-slide-right .25s ease!important;border-left:1px solid var(--u-border)!important}@keyframes u-slide-right{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.kpi-card{background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;padding:20px!important;border:1px solid var(--u-border)!important;box-shadow:var(--u-shadow-sm)!important;transition:box-shadow .2s ease,transform .2s ease!important;display:flex!important;gap:14px!important;align-items:flex-start!important}.kpi-card:hover{box-shadow:var(--u-shadow-md)!important;transform:translateY(-2px)!important}.kpi-icon{width:44px!important;height:44px!important;border-radius:12px!important;background:#c9a2271a!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.kpi-title{font-size:11px!important;font-weight:600!important;color:var(--u-muted)!important;text-transform:uppercase!important;letter-spacing:.5px!important;margin:0 0 4px!important}.kpi-value{font-size:26px!important;font-weight:700!important;color:var(--u-green)!important;font-family:Playfair Display,serif!important;margin:0 0 6px!important;line-height:1!important}.kpi-trend{font-size:12px!important;font-weight:600!important;padding:2px 8px!important;border-radius:12px!important}.kpi-trend.positive{background:#4a7c591f!important;color:var(--u-success)!important}.kpi-trend.negative{background:#c16b5b1f!important;color:var(--u-danger)!important}.kpi-status{font-size:11px!important;color:var(--u-muted)!important;margin-left:6px!important}.dashboard-card{background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;padding:20px!important;border:1px solid var(--u-border)!important;box-shadow:var(--u-shadow-sm)!important}.card-title{font-family:Playfair Display,serif!important;font-size:15px!important;font-weight:700!important;color:var(--u-green)!important;margin:0 0 16px!important;padding-bottom:12px!important;border-bottom:1px solid var(--u-border)!important}.reservation-filters,.guest-filters,.rooms-filters,.functionhall-filters{display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:center!important;padding:16px!important;background:var(--u-card)!important;border:1px solid var(--u-border)!important;border-radius:var(--u-radius-md)!important;box-shadow:var(--u-shadow-sm)!important}.filter-chip{padding:7px 14px!important;font-size:12px!important;font-weight:500!important;border-radius:20px!important;border:1.5px solid var(--u-border)!important;background:var(--u-card)!important;color:var(--u-text)!important;cursor:pointer!important;transition:all .2s ease!important;white-space:nowrap!important}.filter-chip:hover{border-color:var(--u-gold)!important;color:var(--u-gold)!important}.filter-chip.active{background:var(--u-gold)!important;border-color:var(--u-gold)!important;color:#fff!important}.reservation-search-input,.guest-search-input{min-width:220px!important;padding-left:36px!important}.reservation-pagination,.guest-pagination{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 20px!important;background:var(--u-card)!important;border:1px solid var(--u-border)!important;border-radius:var(--u-radius-md)!important;flex-wrap:wrap!important;gap:12px!important}.reservation-pagination-btn{width:34px!important;height:34px!important;border-radius:8px!important;border:1.5px solid var(--u-border)!important;background:var(--u-card)!important;color:var(--u-text)!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:600!important;transition:all .2s ease!important}.reservation-pagination-btn:hover:not(:disabled){background:var(--u-gold)!important;border-color:var(--u-gold)!important;color:#fff!important}.reservation-pagination-btn.active{background:var(--u-gold)!important;border-color:var(--u-gold)!important;color:#fff!important}.reservation-pagination-btn:disabled{opacity:.4!important;cursor:not-allowed!important}.empty-state,.reservation-empty,.no-results{text-align:center!important;padding:64px 24px!important;background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;border:1px dashed var(--u-border)!important}.empty-state svg,.empty-state-icon{width:48px!important;height:48px!important;color:var(--u-border)!important;margin-bottom:16px!important}.empty-state h3,.empty-state-title{font-family:Playfair Display,serif!important;font-size:16px!important;color:var(--u-green)!important;margin:0 0 8px!important}.empty-state p,.empty-state-text{font-size:13px!important;color:var(--u-muted)!important;margin:0!important}.toast,.notification-toast{position:fixed!important;bottom:24px!important;right:24px!important;padding:14px 20px!important;border-radius:var(--u-radius-md)!important;font-size:13px!important;font-weight:500!important;font-family:Inter,sans-serif!important;box-shadow:var(--u-shadow-lg)!important;z-index:9999!important;display:flex!important;align-items:center!important;gap:10px!important;max-width:360px!important;animation:u-slide-up .25s ease!important}.toast.success{background:var(--u-success)!important;color:#fff!important}.toast.error{background:var(--u-danger)!important;color:#fff!important}.toast.warning{background:var(--u-warning)!important;color:#fff!important}.toast.info{background:var(--u-info)!important;color:#fff!important}.room-card{background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;border:1px solid var(--u-border)!important;padding:16px!important;transition:box-shadow .2s ease,transform .2s ease!important;box-shadow:var(--u-shadow-sm)!important;display:flex!important;flex-direction:column!important;gap:10px!important}.room-card:hover{box-shadow:var(--u-shadow-md)!important;transform:translateY(-2px)!important}.room-card-number{font-family:Playfair Display,serif!important;font-size:20px!important;font-weight:700!important;color:var(--u-green)!important}.room-card-type{font-size:12px!important;color:var(--u-muted)!important;font-weight:500!important}.status-card{border-radius:var(--u-radius-md)!important;border:2px solid var(--u-border)!important;padding:16px!important;cursor:pointer!important;transition:all .2s ease!important;background:var(--u-card)!important}.status-card.selected,.status-card:hover{border-color:var(--u-gold)!important;background:#c9a2270f!important}.u-text-gold{color:var(--u-gold)!important}.u-text-green{color:var(--u-green)!important}.u-text-muted{color:var(--u-muted)!important}.u-font-serif{font-family:Playfair Display,serif!important}.u-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-spinner{width:36px!important;height:36px!important;border:3px solid var(--u-border)!important;border-top-color:var(--u-gold)!important;border-radius:50%!important;animation:u-spin .7s linear infinite!important;margin:40px auto!important}@keyframes u-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.reservation-header,.guest-management-header,.functionhall-header,.roomtypes-header{flex-direction:column!important;align-items:flex-start!important;gap:14px!important;padding:18px!important}.reservation-header-actions,.guest-header-actions,.header-actions{width:100%!important}.reservation-action-btn,.header-action-btn,.action-btn{flex:1!important;justify-content:center!important}.reservation-table-wrapper,.guest-table-wrapper,.events-table-wrapper{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.reservation-table,.guest-table,.events-table{min-width:600px!important}.reservation-modal-overlay,.duplicate-modal-overlay,.modal-overlay{align-items:flex-end!important;padding:0!important}.reservation-modal,.duplicate-modal,.modal-content{border-radius:var(--u-radius-lg) var(--u-radius-lg) 0 0!important;max-height:92vh!important;width:100%!important;max-width:100%!important}.reservation-info-grid{grid-template-columns:1fr!important}.reservation-filters,.guest-filters{flex-wrap:wrap!important;gap:8px!important}.reservation-search-input,.guest-search-input{min-width:100%!important}.kpi-grid{grid-template-columns:repeat(2,1fr)!important}.kpi-value{font-size:20px!important}.guest-drawer,.event-drawer,.hall-drawer{width:100%!important}.reservation-modal-footer,.duplicate-modal-actions,.modal-footer{flex-direction:column-reverse!important}.reservation-modal-footer button,.duplicate-modal-actions button,.modal-footer button{width:100%!important;justify-content:center!important}}@media (max-width: 480px){.reservation-page-title,.guest-management-title,.page-title{font-size:18px!important}.kpi-grid{grid-template-columns:1fr!important}.reservation-table,.guest-table{min-width:480px!important}}.tab-nav,.tabs-header{display:flex!important;gap:4px!important;background:var(--u-bg)!important;padding:4px!important;border-radius:var(--u-radius-sm)!important;border:1px solid var(--u-border)!important}.tab-btn,.tab-item{padding:8px 16px!important;font-size:13px!important;font-weight:500!important;border-radius:6px!important;border:none!important;background:transparent!important;color:var(--u-muted)!important;cursor:pointer!important;transition:all .2s ease!important;white-space:nowrap!important}.tab-btn.active,.tab-item.active,.tab-btn:hover,.tab-item:hover{background:var(--u-card)!important;color:var(--u-green)!important;box-shadow:var(--u-shadow-sm)!important}.tab-btn.active,.tab-item.active{color:var(--u-gold)!important;font-weight:600!important}.reservation-container,.guest-management-container,.functionhall-container,.roomtypes-container,.rooms-monitoring-container{padding:24px!important;display:flex!important;flex-direction:column!important;gap:20px!important;background:var(--u-bg)!important;min-height:100vh!important;font-family:Inter,sans-serif!important}@media (max-width: 768px){.reservation-container,.guest-management-container,.functionhall-container,.roomtypes-container{padding:16px!important;gap:14px!important}}.guest-modal-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:#1e2a1e8c!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;padding:16px!important;animation:u-fade-in .2s ease!important}.guest-modal-container{background:var(--u-card)!important;border-radius:var(--u-radius-lg)!important;box-shadow:var(--u-shadow-lg)!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important;animation:u-slide-up .25s ease!important;border:1px solid var(--u-border)!important}.guest-modal-container.add-modal,.guest-modal-container.edit-modal{max-width:700px!important}.guest-modal-container.view-modal{max-width:780px!important}.guest-modal-container.delete-modal,.guest-modal-container.vip-modal{max-width:500px!important}.guest-modal-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:20px 24px!important;background:var(--u-green)!important;border-radius:var(--u-radius-lg) var(--u-radius-lg) 0 0!important;gap:12px!important}.guest-modal-header-title{font-family:Playfair Display,serif!important;font-size:17px!important;font-weight:700!important;color:#fff!important;margin:0!important}.guest-modal-header-icon{width:36px!important;height:36px!important;border-radius:10px!important;background:#ffffff26!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--u-gold)!important;flex-shrink:0!important}.guest-modal-body{padding:24px!important;overflow-y:auto!important}.guest-modal-footer{padding:16px 24px!important;border-top:1px solid var(--u-border)!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;background:#f7f4ee80!important;border-radius:0 0 var(--u-radius-lg) var(--u-radius-lg)!important}.guest-modal-btn{padding:10px 20px!important;font-size:13px!important;font-weight:600!important;font-family:Inter,sans-serif!important;border-radius:var(--u-radius-sm)!important;cursor:pointer!important;transition:all .2s ease!important;display:inline-flex!important;align-items:center!important;gap:7px!important}.guest-modal-btn.primary{background:var(--u-gold)!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px #c9a2274d!important}.guest-modal-btn.primary:hover:not(:disabled){background:var(--u-gold-hover)!important;transform:translateY(-1px)!important}.guest-modal-btn.secondary{background:var(--u-card)!important;color:var(--u-green)!important;border:1.5px solid var(--u-border)!important}.guest-modal-btn.secondary:hover:not(:disabled){border-color:var(--u-gold)!important;color:var(--u-gold)!important}.guest-modal-btn.danger{background:var(--u-danger)!important;color:#fff!important;border:none!important}.guest-modal-btn.danger:hover:not(:disabled){background:#a85040!important}.rtm-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:#1e2a1e8c!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;padding:16px!important;animation:u-fade-in .2s ease!important}.rtm-container{background:var(--u-card)!important;border-radius:var(--u-radius-lg)!important;box-shadow:var(--u-shadow-lg)!important;width:100%!important;max-width:680px!important;max-height:92vh!important;overflow-y:auto!important;animation:u-slide-up .25s ease!important;border:1px solid var(--u-border)!important}.rtm-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:20px 24px!important;background:var(--u-green)!important;border-radius:var(--u-radius-lg) var(--u-radius-lg) 0 0!important}.rtm-title{font-family:Playfair Display,serif!important;font-size:17px!important;font-weight:700!important;color:#fff!important;margin:0!important}.rtm-close{width:32px!important;height:32px!important;border-radius:8px!important;border:1.5px solid rgba(255,255,255,.25)!important;background:#ffffff1a!important;color:#ffffffd9!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important}.rtm-close:hover{background:#fff3!important;color:#fff!important}.rtm-stepper{padding:16px 24px!important;border-bottom:1px solid var(--u-border)!important;display:flex!important;gap:0!important;justify-content:space-between!important}.rtm-step{display:flex!important;align-items:center!important;gap:8px!important;font-size:12px!important;font-weight:500!important;color:var(--u-muted)!important;flex:1!important}.rtm-step-number{width:26px!important;height:26px!important;border-radius:50%!important;border:2px solid var(--u-border)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;font-weight:700!important;flex-shrink:0!important}.rtm-step.active .rtm-step-number,.rtm-step.completed .rtm-step-number{background:var(--u-gold)!important;border-color:var(--u-gold)!important;color:#fff!important}.rtm-step.active{color:var(--u-gold)!important;font-weight:600!important}.add-room-modal{max-width:640px!important;background:var(--u-card)!important;border-radius:var(--u-radius-lg)!important;box-shadow:var(--u-shadow-lg)!important;border:1px solid var(--u-border)!important;animation:u-slide-up .25s ease!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important}.hall-card{background:var(--u-card)!important;border-radius:var(--u-radius-md)!important;border:1px solid var(--u-border)!important;box-shadow:var(--u-shadow-sm)!important;transition:box-shadow .2s ease,transform .2s ease!important;overflow:hidden!important}.hall-card:hover{box-shadow:var(--u-shadow-md)!important;transform:translateY(-2px)!important}.hall-name{font-family:Playfair Display,serif!important;font-size:16px!important;font-weight:700!important;color:var(--u-green)!important}.hall-action{width:34px!important;height:34px!important;border-radius:8px!important;border:1.5px solid var(--u-border)!important;background:var(--u-card)!important;color:var(--u-muted)!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important}.hall-action:hover{border-color:var(--u-gold)!important;color:var(--u-gold)!important}.section-title,.subsection-title{font-family:Playfair Display,serif!important;font-size:15px!important;font-weight:700!important;color:var(--u-green)!important;margin:0 0 14px!important}.section-divider{font-size:11px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.7px!important;color:var(--u-gold)!important;padding-bottom:8px!important;border-bottom:1px solid var(--u-border)!important;margin:20px 0 14px!important}@media (max-width: 768px){.guest-modal-container.add-modal,.guest-modal-container.edit-modal,.guest-modal-container.view-modal,.rtm-container{border-radius:var(--u-radius-lg) var(--u-radius-lg) 0 0!important;max-width:100%!important}.guest-modal-footer,.rtm-footer{flex-direction:column-reverse!important}.guest-modal-btn,.rtm-btn{width:100%!important;justify-content:center!important}.hall-cards-grid{grid-template-columns:1fr!important}}.search-wrapper .search-input,.search-wrapper input[type=text],.search-wrapper input[type=search]{padding-left:40px!important}.filter-wrapper .filter-select,.filter-wrapper select{padding-left:36px!important}.select-with-icon select{padding-left:44px!important;padding-right:36px!important}.input-icon-wrap input,.input-icon-wrap select,[class*=icon-wrap] input,[class*=icon-wrap] select,.rooms-filter-search{padding-left:40px!important}.filters-toolbar{display:flex!important;gap:12px!important;align-items:center!important;flex-wrap:wrap!important;width:100%!important;margin-bottom:20px!important}.search-wrapper{flex:1!important;min-width:200px!important;position:relative!important}.search-icon{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;z-index:1!important;color:#666!important}.search-input{width:100%!important;padding:10px 12px 10px 40px!important;border:1px solid #ddd!important;border-radius:6px!important;font-size:14px!important;color:#314438!important;background:#fff!important}.filter-wrapper{position:relative!important;min-width:160px!important}.filter-icon{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;z-index:1!important;color:#666!important}.filter-select{width:100%!important;padding:10px 12px 10px 40px!important;border:1px solid #ddd!important;border-radius:6px!important;font-size:14px!important;color:#314438!important;background:#fff!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;cursor:pointer!important}.clear-filters-btn{padding:10px 16px!important;border:1px solid #ddd!important;border-radius:6px!important;background:#fff!important;color:#314438!important;cursor:pointer!important;font-size:14px!important;font-weight:500!important}.clear-filters-btn:hover{background:#f5f5f5!important}.hall-cards-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important}@media (max-width: 1024px){.hall-cards-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 640px){.hall-cards-grid{grid-template-columns:1fr!important}}.hall-card{border:1px solid #e0e0e0!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;transition:all .3s ease!important;cursor:pointer!important}.hall-card:hover{box-shadow:0 4px 12px #0000001a!important;transform:translateY(-2px)!important}.hall-image{width:100%!important;height:120px!important;overflow:hidden!important;background:#f5f5f5!important}.hall-image img{width:100%!important;height:100%!important;object-fit:cover!important}.hall-image-placeholder{width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;color:#999!important;gap:8px!important}.hall-content{padding:10px!important}.hall-name{margin:0 0 5px!important;font-size:13px!important;font-weight:600!important;color:#314438!important}.hall-status-badge{display:inline-block!important;padding:2px 8px!important;border-radius:12px!important;font-size:10px!important;font-weight:600!important;margin-bottom:6px!important}.hall-details{margin-bottom:6px!important}.hall-detail{display:flex!important;justify-content:space-between!important;margin-bottom:2px!important;font-size:11px!important}.hall-detail{display:flex!important;justify-content:space-between!important;margin-bottom:4px!important;font-size:14px!important}.detail-label{color:#666!important;font-weight:500!important}.detail-value{color:#314438!important;font-weight:600!important}.hall-amenities{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-bottom:12px!important}.amenity-tag{padding:2px 8px!important;background:#f0f0f0!important;border-radius:4px!important;font-size:11px!important;color:#666!important}.hall-card-actions{display:flex!important;gap:5px!important;padding-top:8px!important;border-top:1px solid #e0e0e0!important}.fh-action-btn{flex:1!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:5px 6px!important;border-radius:6px!important;font-size:11px!important;font-weight:600!important;cursor:pointer!important;border:1px solid #e0e0e0!important;background:#fff!important;color:#314438!important;transition:all .2s ease!important}.fh-edit-btn:hover{background:#1b3a2d!important;border-color:#1b3a2d!important;color:#fff!important}.fh-status-btn:hover{background:#c8a348!important;border-color:#c8a348!important;color:#1b3a2d!important}.fh-delete-btn:hover{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}@keyframes fh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fhvm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fhvm-fade .2s ease}@keyframes fhvm-fade{0%{opacity:0}to{opacity:1}}.fhvm-modal{background:#fff;border-radius:16px;width:580px;max-width:96vw;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #00000047;animation:fhvm-up .25s ease;overflow:hidden}@keyframes fhvm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.fhvm-header{background:#1b3a2d;padding:18px 24px;display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0;gap:12px}.fhvm-header-left{flex:1;display:flex;flex-direction:column;gap:6px}.fhvm-title{font-size:18px;font-weight:600;color:#fff;margin:0}.fhvm-status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;align-self:flex-start}.fhvm-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;line-height:1}.fhvm-close:hover{background:#ffffff3d}.fhvm-image{height:200px;overflow:hidden;flex-shrink:0}.fhvm-image img{width:100%;height:100%;object-fit:cover}.fhvm-body{flex:1;overflow-y:auto;padding:20px 24px;min-height:0}.fhvm-body::-webkit-scrollbar{width:5px}.fhvm-body::-webkit-scrollbar-thumb{background:#d4cfc6;border-radius:3px}.fhvm-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.fhvm-info-item{background:#f5f2ed;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.fhvm-info-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#9ca3af}.fhvm-info-value{font-size:15px;font-weight:700;color:#1b3a2d}.fhvm-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #ece7df}.fhvm-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.fhvm-section-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin-bottom:10px}.fhvm-description{font-size:13px;line-height:1.7;color:#4a4a4a;margin:0}.fhvm-tags{display:flex;flex-wrap:wrap;gap:6px}.fhvm-tag{display:inline-block;padding:4px 12px;background:#f0ebe0;border:1px solid #e0d9cc;color:#1b3a2d;border-radius:20px;font-size:12px;font-weight:500}.fhvm-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fhvm-gallery-item{border-radius:8px;overflow:hidden;aspect-ratio:16/9}.fhvm-gallery-item img{width:100%;height:100%;object-fit:cover}.fhvm-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid #ece7df;background:#faf8f5;flex-shrink:0}.fhvm-btn-close{padding:9px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.fhvm-btn-close:hover{border-color:#c8a348;color:#c8a348}.fhvm-btn-edit{padding:9px 20px;border:none;border-radius:8px;background:#c8a348;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.fhvm-btn-edit:hover{background:#b8933d}.fhdm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fhdm-fade .2s ease}@keyframes fhdm-fade{0%{opacity:0}to{opacity:1}}.fhdm-modal{background:#fff;border-radius:16px;width:420px;max-width:96vw;box-shadow:0 24px 64px #00000047;animation:fhdm-up .25s ease;overflow:hidden}@keyframes fhdm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.fhdm-header{background:#1b3a2d;padding:18px 20px;display:flex;align-items:center;gap:12px}.fhdm-header-icon{background:#dc26262e;border-radius:8px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:#fca5a5;flex-shrink:0}.fhdm-header-text{flex:1}.fhdm-title{font-size:16px;font-weight:600;color:#fff;margin:0 0 2px}.fhdm-subtitle{font-size:12px;color:#ffffff8c;margin:0}.fhdm-close{background:#ffffff1f;border:none;color:#fff;width:30px;height:30px;border-radius:6px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;line-height:1;flex-shrink:0}.fhdm-close:hover{background:#ffffff3d}.fhdm-body{padding:20px}.fhdm-warning-box{background:#fdf2f2;border:1px solid #fca5a5;border-radius:10px;padding:14px 16px}.fhdm-warning-text{font-size:13px;line-height:1.6;color:#374151;margin:0}.fhdm-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #ece7df;background:#faf8f5}.fhdm-btn-cancel{padding:9px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.fhdm-btn-cancel:hover{border-color:#c8a348;color:#c8a348}.fhdm-btn-delete{padding:9px 20px;border:none;border-radius:8px;background:#dc2626;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.fhdm-btn-delete:hover{background:#b91c1c}.form-section{margin-bottom:24px!important}.form-section-title{font-size:16px!important;font-weight:600!important;color:#314438!important;margin-bottom:12px!important}.form-group{margin-bottom:16px!important}.form-group label{display:block!important;margin-bottom:6px!important;font-weight:600!important;color:#314438!important;font-size:14px!important}.form-group input,.form-group textarea,.form-group select{width:100%!important;padding:10px!important;border:1px solid #ddd!important;border-radius:6px!important;font-size:14px!important;color:#314438!important;background:#fff!important}.form-group small{display:block!important;margin-top:4px!important;color:#666!important;font-size:12px!important}.form-row{display:flex!important;gap:12px!important}.form-row .form-group{flex:1!important}.status-cards-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;gap:12px!important}.status-card{display:flex!important;align-items:center!important;gap:8px!important;padding:12px!important;border:2px solid #ddd!important;border-radius:8px!important;cursor:pointer!important;background:#fff!important;transition:all .2s ease!important}.status-card.selected{background:#4a7c591a!important;border-color:#4a7c59!important}.status-card input{display:none!important}.status-icon{font-size:20px!important}.status-label{font-weight:500!important;color:#314438!important}.status-card.selected .status-label{color:#4a7c59!important;font-weight:600!important}.existing-images-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important;gap:12px!important;margin-top:8px!important}.existing-image-item{position:relative!important;width:100%!important;aspect-ratio:1!important;border-radius:8px!important;overflow:hidden!important;border:1px solid #ddd!important}.existing-image-item img{width:100%!important;height:100%!important;object-fit:cover!important}.remove-image-btn{position:absolute!important;top:4px!important;right:4px!important;width:24px!important;height:24px!important;border-radius:50%!important;background:#c75b5b!important;color:#fff!important;border:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:16px!important;font-weight:700!important}.remove-image-btn:hover{background:#a04040!important}.current-image-preview{width:100%!important;max-width:400px!important;height:250px!important;border-radius:8px!important;overflow:hidden!important;border:1px solid #ddd!important;background:#f5f5f5!important;display:flex!important;align-items:center!important;justify-content:center!important}.current-image-preview img{width:100%!important;height:100%!important;object-fit:cover!important}.image-fallback{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;color:#999!important}.fallback-icon{font-size:48px!important}.fallback-text{font-size:14px!important;font-weight:500!important}.empty-state{text-align:center!important;padding:60px 20px!important;color:#666!important}.empty-state-icon{font-size:48px!important;margin-bottom:16px!important}.empty-state h3{margin:0 0 8px!important;color:#314438!important;font-size:20px!important}.empty-state p{margin:0 0 20px!important;color:#666!important}.empty-state button{margin-top:16px!important}.kpi-cards-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important;margin-bottom:24px!important}@media (max-width: 1024px){.kpi-cards-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 640px){.kpi-cards-grid{grid-template-columns:1fr!important}}.kpi-card{background:#fff!important;border:1px solid #e0e0e0!important;border-radius:12px!important;padding:20px!important;text-align:center!important}.kpi-value{font-size:32px!important;font-weight:700!important;color:#314438!important;margin-bottom:4px!important}.kpi-label{font-size:14px!important;font-weight:600!important;color:#666!important;margin-bottom:4px!important}.kpi-sublabel{font-size:12px!important;color:#999!important}.hall-drawer-header{height:250px!important;position:relative!important;overflow:hidden!important}.hall-drawer-header img{width:100%!important;height:100%!important;object-fit:cover!important}.hall-drawer-content{padding:20px!important}.info-item{display:flex!important;justify-content:space-between!important;padding:12px 0!important;border-bottom:1px solid #e0e0e0!important}.info-label{font-weight:600!important;color:#666!important}.info-value{font-weight:600!important;color:#314438!important}.form-actions{display:flex!important;gap:12px!important;margin-top:24px!important;padding-top:24px!important;border-top:1px solid #e0e0e0!important}.form-actions button{flex:1!important;padding:12px!important;border:none!important;border-radius:6px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important}.btn-primary{background:#4a7c59!important;color:#fff!important}.btn-primary:hover{background:#3d6a4a!important}.btn-secondary{background:#f5f5f5!important;color:#314438!important}.btn-secondary:hover{background:#e0e0e0!important}.form-error{padding:12px!important;background:#fee!important;border:1px solid #fcc!important;border-radius:6px!important;color:#c33!important;margin-bottom:16px!important;font-size:14px!important}.loading-container{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:60px 20px!important;color:#666!important}.loading-spinner{width:40px!important;height:40px!important;border:3px solid #f3f3f3!important;border-top:3px solid #d4b337!important;border-radius:50%!important;animation:spin 1s linear infinite!important;margin-bottom:16px!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fhm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fhm-fade .2s ease}@keyframes fhm-fade{0%{opacity:0}to{opacity:1}}.fhm-modal{background:#fff;border-radius:16px;width:640px;max-width:96vw;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #00000047;animation:fhm-up .25s ease;overflow:hidden}@keyframes fhm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.fhm-header{background:#1b3a2d;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.fhm-header-left{display:flex;align-items:center;gap:14px}.fhm-header-icon{font-size:28px;line-height:1}.fhm-header-title{font-size:18px;font-weight:600;color:#fff;margin:0}.fhm-header-subtitle{font-size:12px;color:#fff9;margin:3px 0 0}.fhm-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.fhm-close:hover{background:#ffffff3d}.fhm-body{flex:1;overflow-y:auto;padding:24px;min-height:0}.fhm-body::-webkit-scrollbar{width:6px}.fhm-body::-webkit-scrollbar-track{background:transparent}.fhm-body::-webkit-scrollbar-thumb{background:#d4cfc6;border-radius:3px}.fhm-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #ece7df;background:#faf8f5;flex-shrink:0}.fhm-section{margin-bottom:22px}.fhm-section:last-child{margin-bottom:0}.fhm-section-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin-bottom:10px}.fhm-error{padding:12px 14px;background:#fdf2f2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:20px}.fhm-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fhm-field{display:flex;flex-direction:column;gap:5px}.fhm-field label{font-size:13px;font-weight:500;color:#4a7c59}.fhm-req{color:#dc2626;margin-left:2px}.fhm-hint{font-size:12px;color:#9ca3af}.fhm-input,.fhm-select{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;background:#fff;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;font-family:inherit}.fhm-input:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.fhm-input:disabled{background:#f5f2ed;cursor:not-allowed}.fhm-textarea{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;resize:vertical;min-height:80px;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s}.fhm-textarea:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.fhm-textarea:disabled{background:#f5f2ed;cursor:not-allowed}.fhm-input-prefix-wrap{position:relative;display:flex;align-items:center}.fhm-prefix{position:absolute;left:12px;font-size:14px;color:#4a7c59;pointer-events:none;z-index:1;line-height:1}.fhm-input-prefixed{padding-left:32px!important}.fhm-status-pills{display:flex;gap:8px;flex-wrap:wrap}.fhm-status-pill{padding:10px 18px;border:1.5px solid #ddd;border-radius:20px;cursor:pointer;font-size:13px;font-weight:500;color:#4a7c59;transition:all .15s;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:6px}.fhm-status-pill input{display:none}.fhm-status-pill:hover:not(.active){border-color:#c8a348}.fhm-status-pill.active{font-weight:600}.fhm-current-image{width:100%;height:160px;border-radius:10px;overflow:hidden;background:#f5f2ed}.fhm-current-image img{width:100%;height:100%;object-fit:cover}.fhm-img-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:8px;color:#9ca3af;font-size:14px}.fhm-images-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fhm-img-thumb{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#f5f2ed}.fhm-img-thumb img{width:100%;height:100%;object-fit:cover}.fhm-img-delete{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0000008c;color:#fff;border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .15s}.fhm-img-delete:hover{background:#dc2626d9}.fhm-upload-zone{border:1.5px dashed #ccc;border-radius:10px;overflow:hidden}.fhm-file-hidden{display:none}.fhm-upload-label{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px;cursor:pointer;transition:background .15s}.fhm-upload-label:hover{background:#f5f2ed;border-color:#c8a348}.fhm-upload-icon{font-size:24px}.fhm-upload-text{font-size:14px;font-weight:500;color:#1b3a2d}.fhm-upload-hint{font-size:12px;color:#9ca3af}.fhm-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:fhm-spin .7s linear infinite;display:inline-block;flex-shrink:0}@keyframes fhm-spin{to{transform:rotate(360deg)}}.fhm-btn-cancel{padding:10px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.fhm-btn-cancel:hover:not(:disabled){border-color:#c8a348;color:#c8a348}.fhm-btn-submit{padding:10px 24px;border:none;border-radius:8px;background:#c8a348;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px;font-family:inherit}.fhm-btn-submit:hover:not(:disabled){background:#b8933d}.fhm-btn-cancel:disabled,.fhm-btn-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width:640px){.fhm-modal{max-width:100vw;max-height:100dvh;border-radius:16px 16px 0 0}.fhm-grid-2{grid-template-columns:1fr}.fhm-images-grid{grid-template-columns:repeat(2,1fr)}}.fhsm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fhsm-fade .2s ease}@keyframes fhsm-fade{0%{opacity:0}to{opacity:1}}.fhsm-modal{background:#fff;border-radius:16px;width:500px;max-width:96vw;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #00000047;animation:fhsm-up .25s ease;overflow:hidden}@keyframes fhsm-up{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.fhsm-header{background:#1b3a2d;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.fhsm-header-left{display:flex;align-items:center;gap:14px}.fhsm-header-icon{font-size:26px;line-height:1}.fhsm-header-title{font-size:18px;font-weight:600;color:#fff;margin:0}.fhsm-header-subtitle{font-size:12px;color:#fff9;margin:3px 0 0}.fhsm-close{background:#ffffff1f;border:none;color:#fff;width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.fhsm-close:hover{background:#ffffff3d}.fhsm-body{flex:1;overflow-y:auto;padding:24px;min-height:0}.fhsm-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #ece7df;background:#faf8f5;flex-shrink:0}.fhsm-error{padding:12px 14px;background:#fdf2f2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:16px}.fhsm-hall-card{background:#f5f2ed;border-radius:10px;padding:14px 16px;margin-bottom:20px}.fhsm-hall-name{font-size:15px;font-weight:600;color:#1b3a2d;margin-bottom:6px}.fhsm-hall-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:#4a7c59}.fhsm-current-badge{padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;border:1px solid transparent}.fhsm-section-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6b9e80;margin-bottom:10px}.fhsm-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.fhsm-status-card{padding:14px 12px;border:1.5px solid #e0dbd2;border-radius:10px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .15s;-webkit-user-select:none;user-select:none;background:#fff}.fhsm-status-card input{display:none}.fhsm-status-icon{font-size:22px}.fhsm-status-name{font-size:13px;font-weight:600;color:#1b3a2d}.fhsm-status-desc{font-size:11px;color:#9ca3af}.fhsm-status-card:hover:not(.active){border-color:#c8a348;background:#fdfbf5}.fhsm-field{display:flex;flex-direction:column;gap:5px}.fhsm-field-label{font-size:13px;font-weight:500;color:#4a7c59}.fhsm-optional{color:#9ca3af;font-weight:400;font-size:12px;margin-left:4px}.fhsm-textarea{padding:10px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1b3a2d;resize:vertical;min-height:80px;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s}.fhsm-textarea:focus{outline:none;border-color:#c8a348;box-shadow:0 0 0 3px #c8a3481f}.fhsm-textarea:disabled{background:#f5f2ed;cursor:not-allowed}.fhsm-char-count{font-size:12px;color:#9ca3af;text-align:right}.fhsm-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:fhsm-spin .7s linear infinite;display:inline-block;flex-shrink:0}@keyframes fhsm-spin{to{transform:rotate(360deg)}}.fhsm-btn-cancel{padding:10px 20px;border:1.5px solid #ddd;border-radius:8px;background:#fff;color:#4a7c59;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.fhsm-btn-cancel:hover:not(:disabled){border-color:#c8a348;color:#c8a348}.fhsm-btn-submit{padding:10px 24px;border:none;border-radius:8px;background:#c8a348;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px;font-family:inherit}.fhsm-btn-submit:hover:not(:disabled){background:#b8933d}.fhsm-btn-cancel:disabled,.fhsm-btn-submit:disabled{opacity:.5;cursor:not-allowed}:root{--reservation-primary-dark-green: #1F3D2B;--reservation-secondary-green: #2D5A3D;--reservation-gold: #C9A227;--reservation-light-gold: #D4AF37;--reservation-background: #F8F6F2;--reservation-white: #FFFFFF;--reservation-border: #E5E7EB;--reservation-success: #22C55E;--reservation-warning: #F59E0B;--reservation-danger: #EF4444;--reservation-info: #3B82F6;--reservation-gray: #6B7280}.reservation-container{min-height:100vh;background:var(--reservation-background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:32px;display:flex;flex-direction:column;gap:24px}.reservation-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:12px;box-shadow:0 2px 8px #0000000a}.reservation-header-content{flex:1}.reservation-page-title{font-size:28px;font-weight:700;color:var(--reservation-primary-dark-green);margin-bottom:8px}.reservation-page-subtitle{font-size:14px;font-weight:400;color:var(--reservation-gray)}.reservation-header-actions{display:flex;gap:12px}.reservation-action-btn{padding:12px 24px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;gap:8px}.reservation-action-btn.primary{background:var(--reservation-gold);color:var(--reservation-white)}.reservation-action-btn.primary:hover{background:var(--reservation-light-gold)}.reservation-action-btn.secondary{background:var(--reservation-white);color:var(--reservation-primary-dark-green);border:1px solid var(--reservation-border)}.reservation-action-btn.secondary:hover{border-color:var(--reservation-gold)}.reservation-dashboard-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.reservation-card{background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:12px;padding:14px 16px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;gap:6px}.reservation-card-value{font-size:28px;font-weight:700;color:var(--reservation-gold);line-height:1}.reservation-card-label{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green);text-transform:uppercase;letter-spacing:.5px}.reservation-card-sublabel{font-size:12px;font-weight:400;color:var(--reservation-gray)}.reservation-filter-section{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;flex-wrap:wrap}.reservation-filter-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:10px;box-shadow:0 1px 4px #0000000a;flex-wrap:wrap}.rfb-search{display:flex;align-items:center;gap:6px;flex:1;min-width:220px;padding:0 4px}.rfb-search svg{color:var(--reservation-gray);flex-shrink:0}.rfb-input{flex:1;border:none;outline:none;font-size:13px;color:var(--reservation-primary-dark-green);background:transparent;min-width:0}.rfb-input::placeholder{color:var(--reservation-gray);opacity:.65}.rfb-clear{display:flex;align-items:center;background:none;border:none;cursor:pointer;color:var(--reservation-gray);padding:2px;border-radius:4px;opacity:.6;transition:opacity .2s}.rfb-clear:hover{opacity:1}.rfb-divider{width:1px;height:22px;background:var(--reservation-border);flex-shrink:0}.rfb-select{font-size:13px;color:var(--reservation-primary-dark-green);background:var(--reservation-background);border:1px solid var(--reservation-border);border-radius:7px;padding:6px 10px;outline:none;cursor:pointer;transition:border-color .2s;min-width:130px}.rfb-select:focus{border-color:var(--reservation-gold)}.rfb-date-group{display:flex;flex-direction:column;gap:2px}.rfb-date-label{font-size:10px;font-weight:600;color:var(--reservation-gray);text-transform:uppercase;letter-spacing:.4px;line-height:1}.rfb-date{font-size:13px;color:var(--reservation-primary-dark-green);background:var(--reservation-background);border:1px solid var(--reservation-border);border-radius:7px;padding:5px 8px;outline:none;cursor:pointer;transition:border-color .2s}.rfb-date:focus{border-color:var(--reservation-gold)}.rfb-actions{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}.rfb-apply-btn{display:flex;align-items:center;gap:5px;padding:7px 14px;font-size:13px;font-weight:600;border-radius:7px;border:none;cursor:pointer;background:var(--reservation-gold);color:var(--reservation-white);transition:opacity .2s;white-space:nowrap}.rfb-apply-btn:hover{opacity:.88}.rfb-reset-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px solid var(--reservation-border);background:var(--reservation-white);color:var(--reservation-gray);cursor:pointer;transition:all .2s}.rfb-reset-btn:hover{border-color:var(--reservation-gold);color:var(--reservation-gold)}.reservation-search-input{flex:1;min-width:250px;padding:12px 16px;font-size:14px;font-weight:400;color:var(--reservation-primary-dark-green);background:var(--reservation-background);border:1px solid var(--reservation-border);border-radius:8px;outline:none;transition:border-color .2s ease}.reservation-search-input:focus{border-color:var(--reservation-gold)}.reservation-filter-select{padding:12px 16px;font-size:14px;font-weight:400;color:var(--reservation-primary-dark-green);background:var(--reservation-background);border:1px solid var(--reservation-border);border-radius:8px;cursor:pointer;outline:none;transition:border-color .2s ease;min-width:150px}.reservation-filter-select:focus{border-color:var(--reservation-gold)}.reservation-filter-btn,.reservation-reset-btn{padding:12px 24px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.reservation-filter-btn{background:var(--reservation-gold);color:var(--reservation-white)}.reservation-filter-btn:hover{background:var(--reservation-light-gold)}.reservation-reset-btn{background:var(--reservation-white);color:var(--reservation-primary-dark-green);border:1px solid var(--reservation-border)}.reservation-reset-btn:hover{border-color:var(--reservation-gold)}.reservation-table-section{background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.reservation-table-container{overflow-x:auto}.reservation-table{width:100%;border-collapse:collapse}.reservation-table thead{position:sticky;top:0;background:var(--reservation-background);z-index:10}.reservation-table th{padding:16px;font-size:12px;font-weight:600;color:var(--reservation-gray);text-transform:uppercase;letter-spacing:.5px;text-align:left;border-bottom:2px solid var(--reservation-border)}.reservation-table td{padding:16px;font-size:14px;font-weight:400;color:var(--reservation-primary-dark-green);border-bottom:1px solid var(--reservation-border)}.reservation-table tbody tr:hover{background:var(--reservation-background)}.reservation-table tbody tr:last-child td{border-bottom:none}.reservation-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;color:var(--reservation-white);border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.reservation-status-badge.pending{background:var(--reservation-gold)}.reservation-status-badge.approved{background:var(--reservation-success)}.reservation-status-badge.rejected{background:var(--reservation-danger)}.reservation-status-badge.checked-in{background:var(--reservation-info)}.reservation-status-badge.checked-out{background:var(--reservation-gray)}.reservation-status-badge.cancelled{background:#991b1b}.reservation-action-buttons{display:flex;gap:8px}.reservation-icon-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;color:var(--reservation-gray)}.reservation-icon-btn:hover{background:var(--reservation-background);color:var(--reservation-gold)}.reservation-icon-btn svg{width:18px;height:18px}.reservation-pagination{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-top:1px solid var(--reservation-border)}.reservation-pagination-info{font-size:14px;font-weight:400;color:var(--reservation-gray)}.reservation-pagination-controls{display:flex;gap:8px}.reservation-pagination-btn{padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;border:1px solid var(--reservation-border);background:var(--reservation-white);color:var(--reservation-primary-dark-green)}.reservation-pagination-btn:hover:not(:disabled){border-color:var(--reservation-gold);background:var(--reservation-gold);color:var(--reservation-white)}.reservation-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.reservation-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:reservation-fadeIn .2s ease}@keyframes reservation-fadeIn{0%{opacity:0}to{opacity:1}}.reservation-modal{background:var(--reservation-white);border-radius:16px;box-shadow:0 8px 32px #00000026;overflow:hidden;animation:reservation-scaleIn .2s ease;max-height:90vh;display:flex;flex-direction:column}@keyframes reservation-scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.reservation-modal.view-modal{width:900px;max-width:90vw}.reservation-modal.add-modal,.reservation-modal.edit-modal{width:800px;max-width:90vw}.reservation-modal.approve-modal,.reservation-modal.reject-modal,.reservation-modal.checkin-modal,.reservation-modal.checkout-modal,.reservation-modal.delete-modal{width:500px;max-width:90vw}.reservation-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid var(--reservation-border);background:var(--reservation-white)}.reservation-modal-header-left{display:flex;align-items:center;gap:12px}.reservation-modal-header-icon{width:40px;height:40px;background:var(--reservation-background);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--reservation-gold)}.reservation-modal-header-icon svg{width:20px;height:20px}.reservation-modal-header-title{font-size:20px;font-weight:600;color:var(--reservation-primary-dark-green)}.reservation-modal-close-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;color:var(--reservation-gray)}.reservation-modal-close-btn:hover{background:var(--reservation-background);color:var(--reservation-danger)}.reservation-modal-close-btn svg{width:20px;height:20px}.reservation-modal-body{padding:32px;overflow-y:auto;flex:1}.reservation-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:24px 32px;border-top:1px solid var(--reservation-border);background:var(--reservation-background)}.reservation-modal-btn{padding:12px 24px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.reservation-modal-btn.primary{background:var(--reservation-gold);color:var(--reservation-white)}.reservation-modal-btn.primary:hover{background:var(--reservation-light-gold)}.reservation-modal-btn.secondary{background:var(--reservation-white);color:var(--reservation-primary-dark-green);border:1px solid var(--reservation-border)}.reservation-modal-btn.secondary:hover{border-color:var(--reservation-gold)}.reservation-modal-btn.danger{background:var(--reservation-danger);color:var(--reservation-white)}.reservation-modal-btn.danger:hover{background:#dc2626}.reservation-modal-btn:disabled{opacity:.5;cursor:not-allowed}.reservation-info-section{margin-bottom:24px}.reservation-info-section:last-child{margin-bottom:0}.reservation-section-title{font-size:16px;font-weight:600;color:var(--reservation-primary-dark-green);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.reservation-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.reservation-info-item{display:flex;flex-direction:column;gap:6px}.reservation-info-label{font-size:12px;font-weight:600;color:var(--reservation-gray);text-transform:uppercase;letter-spacing:.5px}.reservation-info-value{font-size:14px;font-weight:500;color:var(--reservation-primary-dark-green)}.reservation-timeline{display:flex;flex-direction:column;gap:12px}.reservation-timeline-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--reservation-background);border-radius:8px}.reservation-timeline-icon{width:32px;height:32px;background:var(--reservation-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--reservation-white)}.reservation-timeline-icon svg{width:16px;height:16px}.reservation-timeline-content{flex:1}.reservation-timeline-label{font-size:12px;font-weight:600;color:var(--reservation-gray)}.reservation-timeline-value{font-size:14px;font-weight:500;color:var(--reservation-primary-dark-green)}.reservation-stepper{display:flex;align-items:center;margin-bottom:28px;position:relative}.reservation-stepper:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:var(--reservation-border);z-index:0;transform:translateY(-50%)}.reservation-step{display:flex;align-items:center;gap:8px;padding:8px 16px 8px 8px;background:var(--reservation-background);border:2px solid var(--reservation-border);border-radius:24px;font-size:13px;font-weight:500;color:var(--reservation-gray);position:relative;z-index:1;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.reservation-step+.reservation-step{margin-left:auto}.reservation-step.active{background:var(--reservation-gold);border-color:var(--reservation-gold);color:var(--reservation-white);box-shadow:0 2px 8px #c8a34859}.reservation-step.completed{background:var(--reservation-success);border-color:var(--reservation-success);color:var(--reservation-white)}.reservation-step-number{width:22px;height:22px;background:#ffffff40;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.reservation-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.reservation-form-field{display:flex;flex-direction:column;gap:6px}.reservation-form-field.full-width{grid-column:span 2}.reservation-form-label{font-size:12px;font-weight:600;color:var(--reservation-gray);text-transform:uppercase;letter-spacing:.6px}.reservation-form-input,.reservation-form-select,.reservation-form-textarea{padding:11px 14px;font-size:14px;font-weight:400;color:var(--reservation-primary-dark-green);background:var(--reservation-white);border:1.5px solid var(--reservation-border);border-radius:8px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.reservation-form-input:focus,.reservation-form-select:focus,.reservation-form-textarea:focus{border-color:var(--reservation-gold);box-shadow:0 0 0 3px #c8a3481f}.reservation-form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A7C59' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.reservation-form-textarea{min-height:90px;resize:vertical}.reservation-review-card{background:var(--reservation-background);border:1px solid var(--reservation-border);border-radius:12px;overflow:hidden;margin-bottom:20px}.reservation-review-section{padding:16px 20px;border-bottom:1px solid var(--reservation-border)}.reservation-review-section:last-child{border-bottom:none}.reservation-review-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--reservation-gray);margin-bottom:12px}.reservation-review-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.reservation-review-item{display:flex;flex-direction:column;gap:3px}.reservation-review-item-label{font-size:11px;color:var(--reservation-gray);font-weight:500}.reservation-review-item-value{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green)}.reservation-available-rooms{margin:20px 0;padding:16px;background:var(--reservation-background);border-radius:8px}.reservation-available-rooms-title{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green);margin-bottom:12px}.reservation-room-option{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--reservation-white);border:1px solid var(--reservation-border);border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .2s ease}.reservation-room-option:hover{border-color:var(--reservation-gold)}.reservation-room-option.selected{border-color:var(--reservation-gold);background:#c9a2270d}.reservation-room-number{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green)}.reservation-room-status{font-size:12px;font-weight:500;color:var(--reservation-success)}.reservation-delete-content{text-align:center;padding:32px 24px}.reservation-delete-icon{width:64px;height:64px;background:#ef44441a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:var(--reservation-danger)}.reservation-delete-icon svg{width:32px;height:32px}.reservation-delete-title{font-size:20px;font-weight:600;color:var(--reservation-primary-dark-green);margin-bottom:8px}.reservation-delete-message{font-size:14px;font-weight:400;color:var(--reservation-gray)}.reservation-loading{display:flex;align-items:center;justify-content:center;padding:64px}.reservation-loading-spinner{width:48px;height:48px;border:4px solid var(--reservation-border);border-top-color:var(--reservation-gold);border-radius:50%;animation:reservation-spin 1s linear infinite}@keyframes reservation-spin{to{transform:rotate(360deg)}}.reservation-spinner{display:flex;align-items:center;gap:12px;padding:12px;background:var(--reservation-background);border-radius:8px}.reservation-spinner .spinner{width:24px;height:24px;border:3px solid var(--reservation-border);border-top-color:var(--reservation-gold);border-radius:50%;animation:reservation-spin 1s linear infinite}.reservation-spinner span{font-size:14px;color:var(--reservation-gray)}.reservation-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;text-align:center}.reservation-empty-icon{width:64px;height:64px;background:var(--reservation-background);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--reservation-gray)}.reservation-empty-icon svg{width:32px;height:32px}.reservation-empty-title{font-size:18px;font-weight:600;color:var(--reservation-primary-dark-green);margin-bottom:8px}.reservation-empty-message{font-size:14px;font-weight:400;color:var(--reservation-gray)}.reservation-error{padding:24px;background:#ef44441a;border:1px solid var(--reservation-danger);border-radius:8px;display:flex;align-items:center;gap:12px}.reservation-error-icon{color:var(--reservation-danger)}.reservation-error-icon svg{width:20px;height:20px}.reservation-error-message{font-size:14px;font-weight:500;color:var(--reservation-danger)}@media (max-width: 1400px){.reservation-dashboard-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.reservation-dashboard-cards{grid-template-columns:repeat(2,1fr)}.reservation-filter-section{flex-direction:column;align-items:stretch}.reservation-search-input,.reservation-filter-select{min-width:100%}.reservation-form-grid{grid-template-columns:1fr}.reservation-form-field.full-width{grid-column:span 1}.reservation-info-grid{grid-template-columns:1fr}}@media (max-width: 768px){.reservation-container{padding:16px}.reservation-header{flex-direction:column;gap:16px;align-items:stretch;padding:20px}.reservation-header-actions{flex-direction:column}.reservation-dashboard-cards{grid-template-columns:1fr}.reservation-table-section{padding:16px}.reservation-modal{width:95vw;max-height:95vh}.reservation-modal-header,.reservation-modal-body,.reservation-modal-footer{padding:20px}.reservation-table{font-size:12px}.reservation-table th,.reservation-table td{padding:12px 8px}.reservation-table thead{display:none}.reservation-table tbody{display:flex;flex-direction:column;gap:16px}.reservation-table tbody tr{display:flex;flex-direction:column;background:var(--reservation-background);border-radius:8px;padding:16px;border:1px solid var(--reservation-border)}.reservation-table tbody tr:hover{background:var(--reservation-background)}.reservation-table td{border:none;padding:8px 0;display:flex;justify-content:space-between;align-items:center}.reservation-table td:before{content:attr(data-label);font-weight:600;color:var(--reservation-gray);font-size:12px}}.reservation-toast{position:fixed;bottom:32px;right:32px;display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 8px 24px #00000026;z-index:9999;animation:reservation-toast-in .3s ease;max-width:420px}@keyframes reservation-toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reservation-toast-success{background:#1f3d2b;color:#fff;border-left:4px solid var(--reservation-success)}.reservation-toast-error{background:#3b1818;color:#fff;border-left:4px solid var(--reservation-danger)}.reservation-toast-info{background:#1a2b3b;color:#fff;border-left:4px solid var(--reservation-info)}.reservation-toast-icon{font-size:16px;font-weight:700;flex-shrink:0}.reservation-toast-message{flex:1;line-height:1.4}@media (max-width: 768px){.reservation-toast{bottom:16px;right:16px;left:16px;max-width:none}}.rform-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--reservation-border)}.rform-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.rform-section-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.rform-section-title{font-size:13px;font-weight:700;color:var(--reservation-primary-dark-green);text-transform:uppercase;letter-spacing:.6px;margin:0 0 14px}.rform-section-header .rform-section-title{margin:0}.rform-section-note{font-size:11px;font-weight:400;color:var(--reservation-gray)}.rform-guest-selector{border:1.5px solid var(--reservation-border);border-radius:10px;overflow:hidden;background:var(--reservation-background);transition:border-color .2s}.rform-guest-selector.has-error{border-color:var(--reservation-danger);background:#fff5f5}.rform-guest-search-wrap{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--reservation-white);border-bottom:1px solid var(--reservation-border)}.rform-guest-search-wrap svg{flex-shrink:0;color:var(--reservation-gray)}.rform-guest-input{flex:1;border:none;outline:none;font-size:14px;color:var(--reservation-primary-dark-green);background:transparent}.rform-guest-input::placeholder{color:#aab0b8}.rform-guest-clear{background:none;border:none;cursor:pointer;padding:2px;color:var(--reservation-gray);border-radius:4px;display:flex;align-items:center}.rform-guest-clear:hover{background:var(--reservation-border)}.rform-guest-dropdown{max-height:220px;overflow-y:auto;background:var(--reservation-white)}.rform-guest-option{display:flex;flex-direction:column;gap:2px;padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--reservation-border);transition:background .15s}.rform-guest-option:last-child{border-bottom:none}.rform-guest-option:hover{background:#f0f5f0}.rform-guest-option-name{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green)}.rform-guest-option-meta{font-size:12px;color:var(--reservation-gray)}.rform-guest-no-results{display:flex;align-items:center;gap:8px;padding:14px;font-size:13px;color:var(--reservation-gray);background:var(--reservation-white)}.rform-guest-no-results svg{flex-shrink:0;color:var(--reservation-gold)}.rform-guest-pill{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--reservation-white)}.rform-guest-pill-avatar{width:38px;height:38px;border-radius:50%;background:var(--reservation-gold);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase}.rform-guest-pill-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.rform-guest-pill-name{font-size:14px;font-weight:600;color:var(--reservation-primary-dark-green)}.rform-guest-pill-meta{font-size:12px;color:var(--reservation-gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rform-guest-change-btn{padding:6px 14px;font-size:12px;font-weight:600;border:1.5px solid var(--reservation-border);border-radius:6px;background:var(--reservation-background);color:var(--reservation-primary-dark-green);cursor:pointer;transition:all .2s;flex-shrink:0}.rform-guest-change-btn:hover{border-color:var(--reservation-gold);color:var(--reservation-gold)}.rform-field-error{font-size:11px;color:var(--reservation-danger);margin:4px 0 0;font-weight:500}.reservation-form-field.has-error .reservation-form-label{color:var(--reservation-danger)}.reservation-form-input.input-error,.reservation-form-select.input-error{border-color:var(--reservation-danger);background:#fff5f5}.reservation-form-input.input-error:focus,.reservation-form-select.input-error:focus{border-color:var(--reservation-danger);box-shadow:0 0 0 3px #dc26261a}:root{--guest-modal-primary-green: #1F3A2E;--guest-modal-gold: #D4AF37;--guest-modal-gold-hover: #C19A2C;--guest-modal-background: #FFFFFF;--guest-modal-light-background: #F8F9FA;--guest-modal-border: #E5E7EB;--guest-modal-danger: #DC3545;--guest-modal-text: #1F2937;--guest-modal-secondary-text: #6B7280;--guest-modal-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--guest-modal-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}.guest-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:guest-modal-fade-in .2s ease-out;padding:20px}@keyframes guest-modal-fade-in{0%{opacity:0}to{opacity:1}}.guest-modal-container{background-color:var(--guest-modal-background);border-radius:12px;box-shadow:var(--guest-modal-shadow-lg);max-height:90vh;overflow-y:auto;animation:guest-modal-scale-in .2s ease-out;display:flex;flex-direction:column}@keyframes guest-modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.guest-modal-container.add-modal,.guest-modal-container.edit-modal{max-width:900px;width:100%}.guest-modal-container.view-modal{max-width:850px;width:100%}.guest-modal-container.delete-modal,.guest-modal-container.vip-modal{max-width:500px;width:100%}.guest-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--guest-modal-border);background-color:var(--guest-modal-background);height:60px;flex-shrink:0}.guest-modal-header-left{display:flex;align-items:center;gap:12px}.guest-modal-header-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:var(--guest-modal-light-background);border-radius:8px;color:var(--guest-modal-gold)}.guest-modal-header-title{font-size:24px;font-weight:600;color:var(--guest-modal-text);margin:0;line-height:1.5}.guest-modal-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:6px;cursor:pointer;color:var(--guest-modal-secondary-text);transition:all .15s ease}.guest-modal-close-btn:hover{background-color:var(--guest-modal-light-background);color:var(--guest-modal-text)}.guest-modal-close-btn svg{width:20px;height:20px}.guest-modal-body{padding:24px;overflow-y:auto;flex:1}.guest-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--guest-modal-border);background-color:var(--guest-modal-background);flex-shrink:0}.guest-modal-section-title{font-size:18px;font-weight:600;color:var(--guest-modal-text);margin:0 0 16px;line-height:1.5}.guest-modal-label{font-size:13px;font-weight:600;text-transform:uppercase;color:var(--guest-modal-secondary-text);margin-bottom:8px;display:block;letter-spacing:.5px}.guest-modal-text{font-size:14px;color:var(--guest-modal-text);line-height:1.5;margin:0}.guest-modal-value{font-size:15px;font-weight:500;color:var(--guest-modal-text);line-height:1.5}.guest-modal-message{font-size:14px;color:var(--guest-modal-secondary-text);line-height:1.5;margin:0}.guest-modal-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.guest-modal-form-grid.full-width{grid-template-columns:1fr}.guest-modal-field{display:flex;flex-direction:column}.guest-modal-field.full-width{grid-column:1 / -1}.guest-modal-field textarea{resize:vertical;min-height:100px}.guest-modal-input,.guest-modal-select,.guest-modal-textarea{height:48px;padding:12px 16px;border:1px solid var(--guest-modal-border);border-radius:8px;font-size:14px;color:var(--guest-modal-text);background-color:var(--guest-modal-background);transition:all .15s ease;font-family:inherit}.guest-modal-textarea{height:auto;min-height:100px}.guest-modal-input:focus,.guest-modal-select:focus,.guest-modal-textarea:focus{outline:none;border-color:var(--guest-modal-gold);box-shadow:0 0 0 3px #d4af3726}.guest-modal-input::placeholder,.guest-modal-textarea::placeholder{color:var(--guest-modal-secondary-text)}.guest-modal-input:disabled,.guest-modal-select:disabled,.guest-modal-textarea:disabled{background-color:var(--guest-modal-light-background);cursor:not-allowed}.guest-modal-vip-toggle{display:flex;align-items:center;gap:12px;padding:16px;background-color:var(--guest-modal-light-background);border-radius:8px;border:1px solid var(--guest-modal-border)}.guest-modal-vip-toggle-label{font-size:14px;font-weight:500;color:var(--guest-modal-text)}.guest-modal-toggle-switch{position:relative;width:52px;height:28px;background-color:var(--guest-modal-border);border-radius:14px;cursor:pointer;transition:background-color .15s ease}.guest-modal-toggle-switch.active{background-color:var(--guest-modal-gold)}.guest-modal-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;background-color:#fff;border-radius:50%;transition:transform .15s ease;box-shadow:0 1px 3px #0003}.guest-modal-toggle-switch.active:after{transform:translate(24px)}.guest-modal-toggle-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.guest-modal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;font-family:inherit;white-space:nowrap}.guest-modal-btn:disabled{opacity:.6;cursor:not-allowed}.guest-modal-btn.primary{background-color:var(--guest-modal-gold);color:#fff}.guest-modal-btn.primary:hover:not(:disabled){background-color:var(--guest-modal-gold-hover)}.guest-modal-btn.secondary{background-color:#fff;color:var(--guest-modal-text);border:1px solid var(--guest-modal-border)}.guest-modal-btn.secondary:hover:not(:disabled){background-color:var(--guest-modal-light-background);border-color:var(--guest-modal-secondary-text)}.guest-modal-btn.danger{background-color:var(--guest-modal-danger);color:#fff}.guest-modal-btn.danger:hover:not(:disabled){background-color:#c82333}.guest-modal-profile-header{display:flex;align-items:center;gap:20px;padding:24px;background-color:var(--guest-modal-light-background);border-radius:12px;margin-bottom:24px}.guest-modal-avatar{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background-color:var(--guest-modal-primary-green);color:#fff;font-size:32px;font-weight:600;border-radius:50%;flex-shrink:0}.guest-modal-profile-info{flex:1}.guest-modal-profile-name{font-size:24px;font-weight:600;color:var(--guest-modal-text);margin:0 0 8px;line-height:1.5}.guest-modal-profile-email{font-size:14px;color:var(--guest-modal-secondary-text);margin:0 0 12px;line-height:1.5}.guest-modal-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:500}.guest-modal-badge.vip{background-color:#d4af371a;color:var(--guest-modal-gold);border:1px solid rgba(212,175,55,.3)}.guest-modal-badge.regular{background-color:var(--guest-modal-light-background);color:var(--guest-modal-secondary-text);border:1px solid var(--guest-modal-border)}.guest-modal-badge svg{width:14px;height:14px}.guest-modal-card{background-color:var(--guest-modal-light-background);border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid var(--guest-modal-border);box-shadow:var(--guest-modal-shadow)}.guest-modal-card:last-child{margin-bottom:0}.guest-modal-card-title{font-size:18px;font-weight:600;color:var(--guest-modal-text);margin:0 0 16px;line-height:1.5}.guest-modal-detail-row{display:flex;margin-bottom:12px}.guest-modal-detail-row:last-child{margin-bottom:0}.guest-modal-detail-label{width:120px;font-size:13px;font-weight:600;text-transform:uppercase;color:var(--guest-modal-secondary-text);letter-spacing:.5px;flex-shrink:0}.guest-modal-detail-value{font-size:15px;font-weight:500;color:var(--guest-modal-text);line-height:1.5;flex:1}.guest-modal-delete-content{text-align:center;padding:20px 0}.guest-modal-delete-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background-color:#dc35451a;border-radius:50%;margin:0 auto 20px;color:var(--guest-modal-danger)}.guest-modal-delete-icon svg{width:32px;height:32px}.guest-modal-delete-title{font-size:24px;font-weight:600;color:var(--guest-modal-text);margin:0 0 8px;line-height:1.5}.guest-modal-delete-guest-name{font-size:18px;font-weight:500;color:var(--guest-modal-text);margin:0 0 16px;line-height:1.5}.guest-modal-delete-message{font-size:14px;color:var(--guest-modal-secondary-text);line-height:1.5;margin:0 0 24px}.guest-modal-vip-content{text-align:center;padding:20px 0}.guest-modal-vip-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background-color:#d4af371a;border-radius:50%;margin:0 auto 20px;color:var(--guest-modal-gold)}.guest-modal-vip-icon svg{width:32px;height:32px}.guest-modal-vip-title{font-size:24px;font-weight:600;color:var(--guest-modal-text);margin:0 0 16px;line-height:1.5}.guest-modal-vip-message{font-size:14px;color:var(--guest-modal-secondary-text);line-height:1.5;margin:0 0 24px}.guest-modal-vip-transition{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px}.guest-modal-vip-status-row{display:flex;align-items:center;gap:12px}.guest-modal-vip-status-label{font-size:14px;font-weight:500;color:var(--guest-modal-secondary-text)}.guest-modal-vip-arrow{color:var(--guest-modal-secondary-text)}.guest-modal-error{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;padding:12px 16px;margin-bottom:16px;display:flex;align-items:center;gap:12px}.guest-modal-error-icon{color:var(--guest-modal-danger);flex-shrink:0}.guest-modal-error-icon svg{width:20px;height:20px}.guest-modal-error-text{font-size:14px;color:var(--guest-modal-danger);margin:0;line-height:1.5}@media (max-width: 768px){.guest-modal-container.add-modal,.guest-modal-container.edit-modal,.guest-modal-container.view-modal{max-width:100%}.guest-modal-form-grid{grid-template-columns:1fr}.guest-modal-header{padding:16px 20px}.guest-modal-body{padding:20px}.guest-modal-footer{padding:16px 20px;flex-direction:column}.guest-modal-btn{width:100%;justify-content:center}.guest-modal-profile-header{flex-direction:column;text-align:center}.guest-modal-detail-row{flex-direction:column;gap:4px}.guest-modal-detail-label{width:100%}}@media (max-width: 480px){.guest-modal-overlay{padding:10px}.guest-modal-header-title,.guest-modal-profile-name{font-size:20px}.guest-modal-avatar{width:64px;height:64px;font-size:24px}}.guest-modal-container:focus{outline:none}.guest-modal-btn:focus-visible{outline:2px solid var(--guest-modal-gold);outline-offset:2px}.guest-modal-input:focus-visible,.guest-modal-select:focus-visible,.guest-modal-textarea:focus-visible{outline:2px solid var(--guest-modal-gold);outline-offset:2px}.guest-modal-container::-webkit-scrollbar{width:8px}.guest-modal-container::-webkit-scrollbar-track{background:var(--guest-modal-light-background)}.guest-modal-container::-webkit-scrollbar-thumb{background:var(--guest-modal-border);border-radius:4px}.guest-modal-container::-webkit-scrollbar-thumb:hover{background:var(--guest-modal-secondary-text)}
