:root{--s1: 8px;--s2: 16px;--s3: 24px;--s4: 32px;--s5: 40px;--s6: 48px;--s8: 64px;--s10: 80px;--color-bg-base: #030405;--color-surface: rgba(14, 15, 17, .7);--color-surface-hover: rgba(22, 24, 28, .9);--color-surface-solid: #0A0B0E;--color-ink-primary: #ECECEC;--color-ink-muted: #7E8C9A;--color-line: rgba(255, 255, 255, .05);--color-accent: #D4AF37;--color-accent-2: #4A5B69;--color-danger: #E63946;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 9999px;--font-heading: "Outfit", sans-serif;--font-body: "Plus Jakarta Sans", sans-serif;--t-fast: .3s cubic-bezier(.8, 0, .1, 1);--t-smooth: .8s cubic-bezier(.8, 0, .1, 1);--t-slow: 1.2s cubic-bezier(.8, 0, .1, 1);--shadow-float: 0 16px 40px -8px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-press: 0 2px 8px rgba(0, 0, 0, .8), inset 0 1px 4px rgba(0, 0, 0, .4);--shadow-glow: 0 0 32px rgba(212, 175, 55, .15)}@media(prefers-reduced-motion:reduce){:root{--t-fast: .01s linear !important;--t-smooth: .01s linear !important;--t-bounce: .01s linear !important;--shadow-float: 0 0 0 rgba(0, 0, 0, 0) !important}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transform:none!important}}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{min-height:100vh;margin:0;background-color:var(--color-bg-base)}body{font-family:var(--font-body);color:var(--color-ink-primary);background-color:var(--color-bg-base);overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,.loader-title,.meals-title{font-family:var(--font-heading);line-height:1.1;font-weight:600;letter-spacing:-.04em;color:var(--color-ink-primary)}img{max-width:100%;display:block}.boot-loader{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--color-bg-base);z-index:9999}.loader-card{width:min(400px,90vw);background:var(--color-surface);border:1px solid var(--color-line);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:var(--s4);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);text-align:center;transform-style:preserve-3d;animation:floatObj 4s ease-in-out infinite alternate}@keyframes floatObj{0%{transform:translateY(-8px) rotateX(2deg)}to{transform:translateY(8px) rotateX(-2deg)}}.room-icon{width:100%;height:var(--s8);border-radius:var(--radius-sm);background:#0006;border:1px solid var(--color-line);position:relative;overflow:hidden;margin-bottom:var(--s3)}.room-fill{position:absolute;inset:0 auto 0 0;height:100%;background:linear-gradient(90deg,var(--color-accent-2),var(--color-accent));transition:width var(--t-fast);box-shadow:var(--shadow-glow)}.room-bed,.room-pillow,.room-lamp{display:none}.loader-progress{color:var(--color-accent);font-family:var(--font-heading);font-size:1.25rem;margin-top:var(--s1);font-weight:800}.app-shell{width:min(1200px,92vw);margin:0 auto;padding:var(--s3) 0 var(--s8);position:relative}.topbar{margin-bottom:var(--s4);position:sticky;top:var(--s2);z-index:100;transform-style:preserve-3d}.nav-container{display:flex;align-items:center;justify-content:space-between;padding:var(--s1) var(--s2);border-radius:var(--radius-pill);background:var(--color-surface);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--color-line);box-shadow:0 8px 32px #0006;transition:transform var(--t-smooth)}.brand-wrap{text-decoration:none;display:flex;align-items:center;gap:var(--s2);color:var(--color-ink-primary);font-family:var(--font-heading);font-weight:800;text-transform:uppercase;letter-spacing:.05em;outline:none}.ima-logo{width:var(--s5);height:var(--s5);object-fit:contain;filter:drop-shadow(0 0 8px var(--color-accent))}.desktop-menu{display:flex;gap:var(--s1)}.nav-link,.mobile-nav-link{background:transparent;border:none;color:var(--color-ink-muted);font-family:var(--font-heading);font-weight:600;padding:var(--s1) var(--s2);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--t-fast);text-transform:uppercase;font-size:.85rem;letter-spacing:.05em;position:relative}.nav-link:hover{color:var(--color-ink-primary);background:#ffffff0d}.nav-link.active{color:#fff;background:linear-gradient(135deg,var(--color-accent-2),var(--color-accent));box-shadow:var(--shadow-glow);text-shadow:0 2px 4px rgba(0,0,0,.5)}.hamburger-btn{display:none;background:transparent;border:1px solid var(--color-line);color:var(--color-ink-primary);width:var(--s5);height:var(--s5);border-radius:var(--radius-sm);cursor:pointer}.mobile-menu{position:absolute;top:calc(100% + var(--s1));left:0;width:100%;background:var(--color-surface-solid);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:var(--s2);display:grid;gap:var(--s1);box-shadow:var(--shadow-float);z-index:99;transform-origin:top center;animation:flipDown3D var(--t-smooth)}@keyframes flipDown3D{0%{opacity:0;transform:perspective(1000px) rotateX(-30deg) translateY(-20px)}to{opacity:1;transform:perspective(1000px) rotateX(0) translateY(0)}}.content{display:grid;gap:var(--s4)}.section,.panel{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-line);padding:var(--s8) var(--s6);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 32px 64px -16px #0009;position:relative;overflow:hidden}.panel-head{margin-bottom:var(--s6);max-width:600px}.panel-head p{color:var(--color-ink-muted);margin-top:var(--s1);font-size:1.1rem}.btn,.primary-btn,.secondary-btn,.card-book-btn,.danger-btn{font-family:var(--font-heading);font-weight:700;padding:12px var(--s3);border-radius:var(--radius-pill);border:none;cursor:pointer;transform-style:preserve-3d;transition:transform var(--t-fast),box-shadow var(--t-fast),filter var(--t-fast);position:relative;overflow:hidden}.btn-primary,.primary-btn{color:#fff;background:linear-gradient(135deg,var(--color-accent-2),var(--color-accent));box-shadow:0 8px 16px #00f0ff33}.btn-secondary,.secondary-btn{color:var(--color-ink-primary);background:#ffffff0d;border:1px solid var(--color-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.danger-btn{background:#ff47571a;color:var(--color-danger);border:1px solid rgba(255,71,87,.4)}.btn:hover,.primary-btn:hover,.secondary-btn:hover,.danger-btn:hover,.card-book-btn:hover{transform:translateY(-4px) translateZ(10px);box-shadow:0 12px 24px #00000080,inset 0 1px #fff3;filter:brightness(1.1)}.btn:active,.primary-btn:active,.secondary-btn:active,.danger-btn:active,.card-book-btn:active{transform:translateY(2px) translateZ(0);box-shadow:var(--shadow-press);transition:all .1s}.hero{border-radius:var(--radius-lg);overflow:hidden;position:relative;min-height:clamp(500px,75vh,800px);display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--color-line);box-shadow:0 40px 80px -20px #000c}.hero-bg{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background-size:cover;background-position:center;z-index:1;filter:brightness(.4);animation:heroKenBurns 30s alternate infinite ease-in-out;transform-origin:center center}@keyframes heroKenBurns{0%{transform:scale(1) translateZ(0)}to{transform:scale(1.1) translate3d(1%,1%,0)}}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(0deg,var(--color-bg-base) 0%,rgba(3,4,5,.4) 40%,transparent 100%)}.hero-content{position:relative;z-index:3;padding:var(--s8)}.hero-content h2{font-size:clamp(3.5rem,8vw,6rem);margin-bottom:var(--s2);line-height:.95;letter-spacing:-.05em;color:var(--color-ink-primary);filter:drop-shadow(0 4px 12px rgba(0,0,0,.9))}.lead{font-size:clamp(1.1rem,2vw,1.4rem);color:var(--color-ink-muted);max-width:600px;margin-bottom:var(--s4)}.cta-group{display:flex;gap:var(--s2)}.grid,.home-photos-grid,.inventory-grid,.highlights-grid,.gallery-grid,.booking-select-grid,.space-preview-grid,.contact-grid,.admin-grid,.room-gallery-grid,.space-gallery-grid,.two-col,.pay-grid{display:grid;gap:var(--s3)}.grid,.inventory-grid,.highlights-grid,.gallery-grid,.home-photos-grid,.booking-select-grid,.space-preview-grid,.contact-grid,.two-col,.pay-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.property-card,.gallery-card,.home-photo-card,.space-preview-card,.highlight-card,.card,.booking-card,.list-card,.contact-card,.booking-select-card{background:var(--color-surface-solid);border-radius:var(--radius-md);border:1px solid var(--color-line);overflow:hidden;transition:transform var(--t-smooth),box-shadow var(--t-smooth),border-color var(--t-smooth);box-shadow:0 8px 24px #0000004d;transform-style:preserve-3d;position:relative;display:flex;flex-direction:column}.property-card:hover,.gallery-card:hover,.home-photo-card:hover,.space-preview-card:hover,.card:hover,.booking-select-card:hover,.list-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 24px 48px -12px #000c;border-color:var(--color-line);z-index:10}.space-preview-card{height:100%}.image-wrap img,.gallery-card img,.home-photo-card img,.space-preview-card img,.card img,.booking-select-card img{width:100%;height:220px;object-fit:cover;transition:transform var(--t-smooth),filter var(--t-smooth);filter:grayscale(20%) contrast(1.1)}.property-card:hover img,.gallery-card:hover img,.home-photo-card:hover img,.space-preview-card:hover img,.card:hover img,.booking-select-card:hover img{transform:scale(1.08) translateZ(16px);filter:grayscale(0%) contrast(1.1)}.body,.card-content,.home-photo-caption,.space-preview-content,.booking-select-card>div,.gallery-card p,.contact-card,.booking-card,.list-card,.highlight-content{padding:var(--s3);transform:translateZ(24px);flex-grow:1}.space-preview-price{color:var(--color-accent);font-weight:800;font-size:1.25rem;margin-top:var(--s1);font-family:var(--font-heading)}.muted,.small,.pay-note,.body p,.card-content p,.list-card p,.contact-card p{color:var(--color-ink-muted)}.pill{position:absolute;top:var(--s2);left:var(--s2);background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px var(--s1);border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;text-transform:uppercase;color:#fff;border:1px solid var(--color-line);transform:translateZ(30px)}.card-book-btn{background:#00f0ff1a;color:var(--color-accent);margin:var(--s2);margin-top:auto;border:1px solid rgba(0,240,255,.2)}.booking-select-card-active{border-color:var(--color-accent);box-shadow:var(--shadow-glow);transform:scale(1.02)}.highlight-card{display:flex;align-items:flex-start;gap:var(--s2);padding:var(--s3);background:linear-gradient(145deg,rgba(255,255,255,.03),transparent)}.highlight-card-alt{background:linear-gradient(145deg,transparent,rgba(255,255,255,.03))}.highlight-index{display:flex;align-items:center;justify-content:center;width:var(--s5);height:var(--s5);border-radius:var(--radius-sm);background:#00f0ff1a;color:var(--color-accent);font-family:var(--font-heading);font-weight:800;border:1px solid rgba(0,240,255,.2);font-size:1.1rem}.highlight-tag{color:var(--color-accent-2);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.booking-form,.feedback-form,.booking-wizard-form,.wizard-panel{display:grid;gap:var(--s3)}.booking-wizard-form,.admin-login{background:var(--color-surface-solid);padding:var(--s4);border-radius:var(--radius-lg);border:1px solid var(--color-line);box-shadow:inset 0 2px 24px #00000080,0 8px 32px #0000004d}.wizard-panel{padding:var(--s3);background:#ffffff05;border:1px dashed rgba(255,255,255,.1);border-radius:var(--radius-md);margin-top:var(--s2)}.wizard-progress-track{height:12px;background:#0006;border-radius:var(--radius-pill);overflow:hidden;box-shadow:inset 0 2px 4px #00000080}.wizard-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-accent-2),var(--color-accent));transition:width var(--t-bounce);box-shadow:0 0 10px #00f0ff80}.wizard-meta{display:flex;justify-content:space-between;color:var(--color-ink-muted);font-family:var(--font-heading)}.wizard-actions{display:flex;justify-content:space-between;gap:var(--s2);margin-top:var(--s2)}label,.meals-block{display:grid;gap:var(--s1);font-weight:600;color:var(--color-ink-primary);font-size:.95rem}input,select,textarea{width:100%;padding:14px var(--s2);background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);color:var(--color-ink-primary);font-family:var(--font-body);transition:all var(--t-fast);box-shadow:inset 0 2px 6px #0006}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);background:#00000080;box-shadow:inset 0 2px 6px #0006,0 0 0 3px #00f0ff33;transform:translateZ(4px)}input::placeholder,textarea::placeholder{color:#fff3}input[type=checkbox]{width:var(--s2);height:var(--s2);padding:0;accent-color:var(--color-accent);box-shadow:none;cursor:pointer}.checkbox-row{display:flex;gap:var(--s2);flex-wrap:wrap}.meal-option{display:flex;align-items:center;gap:var(--s1);padding:var(--s1) var(--s2);background:#ffffff0d;border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t-fast)}.meal-option:hover{background:#ffffff1a}.meal-option:has(input:checked){border-color:var(--color-accent);background:#00f0ff1a}.upi-payment-card{display:grid;gap:var(--s2);padding:var(--s3);border:1px solid var(--color-line);border-radius:var(--radius-md);background:#00000047}.upi-payment-card h5{margin:0;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent)}.upi-qr{width:min(220px,100%);aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--color-line);background:#fff;padding:10px}.room-gallery,.location-wrap,.admin-section,.bookings-wrap,.simple-list{margin-top:var(--s4)}.space-detail-wrap{display:grid;gap:var(--s4)}.space-meta-row{display:flex;gap:var(--s3);padding:var(--s2) 0;border-bottom:1px dashed var(--color-line)}.space-gallery-grid,.room-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.space-gallery-grid img,.room-gallery-grid img{border-radius:var(--radius-sm);border:1px solid var(--color-line);height:160px}.space-feature-list h4{margin-bottom:var(--s1)}.space-feature-list ul{list-style:none;display:grid;gap:var(--s1)}.space-feature-list li:before{content:"✦";color:var(--color-accent);margin-right:var(--s1)}.space-actions{display:flex;gap:var(--s2);margin-top:var(--s2)}.map-link{color:var(--color-accent);text-decoration:none;display:inline-block;margin-top:var(--s1)}.map-link:hover{text-decoration:underline}.map-frame{margin-top:var(--s2);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-line);height:400px}.map-frame iframe{width:100%;height:100%;filter:invert(90%) hue-rotate(180deg)}.admin-head-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s4);flex-wrap:wrap;gap:var(--s2)}.analytics-section .analytics-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:var(--s2)}.analytics-cards .card{text-align:center;padding:var(--s3)}.analytics-cards h3{font-size:2.5rem;color:var(--color-accent);margin-bottom:var(--s1);text-shadow:var(--shadow-glow)}.toast{position:fixed;bottom:var(--s3);right:var(--s3);background:var(--color-surface-hover);color:var(--color-ink-primary);padding:var(--s2) var(--s4);border-radius:var(--radius-pill);font-weight:700;box-shadow:0 16px 32px #0009;border:1px solid var(--color-line);z-index:1000;animation:slideInUp var(--t-smooth)}@keyframes slideInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.fade-up{opacity:0;animation:fadeUp var(--t-smooth) forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active,.fade-leave-active,.loader-fade-enter-active,.loader-fade-leave-active{transition:opacity var(--t-smooth)}.fade-enter-from,.fade-leave-to,.loader-fade-enter-from,.loader-fade-leave-to{opacity:0}.slide-fade-enter-active,.slide-fade-leave-active{transition:all var(--t-fast)}.slide-fade-enter-from,.slide-fade-leave-to{opacity:0;transform:translateY(16px)}.wizard-step-enter-active,.wizard-step-leave-active{transition:all var(--t-smooth)}.wizard-step-enter-from{opacity:0;transform:translate(20px)}.wizard-step-leave-to{opacity:0;transform:translate(-20px)}.room-flow-enter-active,.room-flow-leave-active{transition:all var(--t-smooth)}.room-flow-enter-from,.room-flow-leave-to{opacity:0;transform:translateY(20px)}@media(max-width:980px){.desktop-menu{display:none}.hamburger-btn{display:inline-flex}.nav-container{padding:var(--s1)}}@media(max-width:768px){.app-shell{padding-top:var(--s2);width:96vw}.hero{min-height:480px}.hero-content{padding:var(--s4)}.cta-group,.wizard-actions{flex-direction:column}.admin-head-actions{flex-direction:column;align-items:stretch}}
