:root{--bg-deep: #060e1a;--bg-surface: #0c182b;--bg-surface-elevated: #13223d;--bg-card: rgba(12, 24, 43, .75);--bg-card-hover: rgba(19, 34, 61, .85);--gold-champagne: #d4af37;--gold-glow: #f3c64c;--gold-muted: #997e26;--gold-subtle: rgba(212, 175, 55, .12);--gold-border: rgba(212, 175, 55, .35);--gold-gradient: linear-gradient(135deg, #fceec5 0%, #d4af37 50%, #aa831b 100%);--sapphire-light: #38bdf8;--sapphire-primary: #1d4ed8;--sapphire-glow: rgba(56, 189, 248, .25);--sapphire-border: rgba(56, 189, 248, .25);--status-available: #10b981;--status-available-bg: rgba(16, 185, 129, .15);--status-occupied: #ef4444;--status-occupied-bg: rgba(239, 68, 68, .15);--status-cleaning: #f59e0b;--status-cleaning-bg: rgba(245, 158, 11, .15);--status-maintenance: #6b7280;--status-maintenance-bg: rgba(107, 114, 128, .15);--status-vip: #8b5cf6;--status-vip-bg: rgba(139, 92, 246, .18);--font-serif: "Cinzel", serif, Georgia;--font-sans: "Outfit", "Inter", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--glass-blur: blur(16px);--glass-border: 1px solid rgba(212, 175, 55, .22);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .45);--glass-card: rgba(12, 24, 43, .72);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--text-gold: #f3c64c;--ease-luxury: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--transition-smooth: all .25s cubic-bezier(.16, 1, .3, 1);--transition-spring: all .35s cubic-bezier(.34, 1.56, .64, 1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 22px;--radius-full: 9999px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;color-scheme:dark}body{background-color:var(--bg-deep);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at 15% 15%,rgba(29,78,216,.18) 0%,transparent 40%),radial-gradient(circle at 85% 25%,rgba(212,175,55,.12) 0%,transparent 45%),radial-gradient(circle at 50% 80%,#060e1af2,#060e1a);pointer-events:none;z-index:-1}.scroll-progress-line{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#f3c64c,#d4af37,#38bdf8);box-shadow:0 0 12px #d4af37b3;z-index:9999;transition:width .1s linear;pointer-events:none}h1,h2,h3,h4,.font-serif{font-family:var(--font-serif);letter-spacing:.03em;font-weight:700;color:#fff}a{color:inherit;text-decoration:none}button,.btn,[role=button]{font-family:var(--font-sans);cursor:pointer;border:none;background:none;outline:none;transition:transform .18s var(--ease-spring),box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease;will-change:transform}button:active:not(:disabled),.btn:active:not(:disabled),[role=button]:active:not([aria-disabled=true]){transform:scale(.965) translateY(1.5px)!important;transition-duration:.07s!important}button:focus-visible,.btn:focus-visible{outline:2px solid var(--gold-glow);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gold-champagne)}.glass-panel{background:var(--glass-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg)}.glass-panel-subtle{background:#0c182b73;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md)}.gold-gradient-text{background:linear-gradient(115deg,#c49b2c,#fef08a,#d4af37,#f59e0b,#c49b2c);background-size:250% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block;animation:shimmerGoldText 7s linear infinite;text-shadow:0 0 25px rgba(212,175,55,.25)}.sapphire-gradient-text{background:linear-gradient(135deg,#93c5fd,#38bdf8,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.btn-primary-gold,.btn-gold{position:relative;background:linear-gradient(135deg,#f3c64c,#d4af37);color:#060e1a;font-weight:700;font-size:.95rem;padding:.75rem 1.5rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 4px 20px #d4af3759;overflow:hidden;isolation:isolate;transition:var(--transition-smooth)}.btn-primary-gold:before,.btn-gold:before,.btn-shimmer:before{content:"";position:absolute;top:-50%;left:-160%;width:100%;height:200%;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,.5) 50%,rgba(255,255,255,0) 70%,transparent 100%);transform:rotate(25deg);animation:shimmerBeam 4s ease-in-out infinite;pointer-events:none;z-index:1}.btn-primary-gold:hover,.btn-gold:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 8px 30px #f3c64c8c,0 0 15px #fef08a66;background:linear-gradient(135deg,#fef08a,#f3c64c)}.btn-secondary-sapphire{background:#1d4ed840;border:1px solid var(--sapphire-light);color:#fff;font-weight:500;font-size:.95rem;padding:.75rem 1.5rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:.5rem;transition:var(--transition-smooth)}.btn-secondary-sapphire:hover{background:#1d4ed873;box-shadow:0 4px 20px var(--sapphire-glow);transform:translateY(-2px)}.btn-outline-gold{background:transparent;border:1px solid var(--gold-champagne);color:var(--gold-glow);padding:.6rem 1.25rem;border-radius:var(--radius-md);font-weight:500;display:inline-flex;align-items:center;gap:.5rem;transition:var(--transition-smooth)}.btn-outline-gold:hover{background:var(--gold-subtle);border-color:var(--gold-glow);transform:translateY(-2px);box-shadow:0 0 16px #d4af374d}.badge-status{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.badge-available{background:var(--status-available-bg);color:var(--status-available);border:1px solid rgba(16,185,129,.3)}.badge-occupied{background:var(--status-occupied-bg);color:var(--status-occupied);border:1px solid rgba(239,68,68,.3)}.badge-cleaning{background:var(--status-cleaning-bg);color:var(--status-cleaning);border:1px solid rgba(245,158,11,.3)}.badge-maintenance{background:var(--status-maintenance-bg);color:var(--status-maintenance);border:1px solid rgba(107,114,128,.3)}.badge-vip{background:var(--status-vip-bg);color:var(--status-vip);border:1px solid rgba(139,92,246,.3)}.modal-backdrop,.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#060e1ae0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto;animation:modalBackdropFade .25s var(--ease-luxury) forwards}.modal-content{background:var(--bg-surface);border:var(--glass-border);border-radius:var(--radius-xl);box-shadow:0 25px 60px -15px #000000d9,0 0 35px #d4af372e;width:100%;max-width:850px;max-height:90vh;overflow-y:auto;position:relative;animation:modalSpringIn .32s var(--ease-luxury) forwards}.modal-content-large{max-width:1180px}@keyframes modalBackdropFade{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}}@keyframes modalSpringIn{0%{opacity:0;transform:scale(.95) translateY(14px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.75rem;border-bottom:1px solid rgba(212,175,55,.18);background:#0c182b99}.modal-close-btn{color:var(--text-secondary);padding:.4rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.modal-close-btn:hover{color:#fff;background:#ffffff1a}.modal-body{padding:1.75rem}.category-tabs-wrapper{display:flex;justify-content:center;margin-bottom:2rem;position:relative;width:100%}.category-tabs-container{position:relative;display:inline-flex;align-items:center;background:#0a1426bf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:5px;border-radius:var(--radius-full);border:1.5px solid var(--gold-border);box-shadow:0 8px 30px #0006;max-width:100%;overflow-x:auto}.sliding-gold-pill{position:absolute;top:5px;bottom:5px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f3c64c,#d4af37);box-shadow:0 4px 20px #d4af3773;transition:transform .35s var(--ease-luxury),width .3s var(--ease-luxury);pointer-events:none;z-index:1}.tab-btn-pill{position:relative;z-index:2;background:transparent!important;border:none!important;color:var(--text-secondary);padding:8px 22px;border-radius:var(--radius-full);font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:color .25s ease}.tab-btn-pill.active{color:#060e1a!important;font-weight:800}@keyframes waterfallSlideUp{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.waterfall-item{animation:waterfallSlideUp .42s var(--ease-luxury) both}.waterfall-delay-1{animation-delay:.04s}.waterfall-delay-2{animation-delay:.08s}.waterfall-delay-3{animation-delay:.12s}.waterfall-delay-4{animation-delay:.16s}.waterfall-delay-5{animation-delay:.2s}.waterfall-delay-6{animation-delay:.24s}.waterfall-delay-7{animation-delay:.28s}@keyframes shimmerBeam{0%{left:-160%}25%,to{left:200%}}@keyframes shimmerGoldText{0%{background-position:0% center}to{background-position:250% center}}@keyframes sacredBreathingAura{0%,to{opacity:.45;transform:scale(1);filter:drop-shadow(0 0 25px rgba(212,175,55,.25))}50%{opacity:.85;transform:scale(1.06);filter:drop-shadow(0 0 50px rgba(212,175,55,.5))}}.aura-breathing{animation:sacredBreathingAura 8s ease-in-out infinite;will-change:transform,opacity,filter}@keyframes ripplePulse{0%{transform:scale(.95);opacity:.8}50%{opacity:.4}to{transform:scale(1.8);opacity:0}}.ripple-pulse{position:relative}.ripple-pulse:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:inherit;background:inherit;animation:ripplePulse 2s cubic-bezier(.24,0,.38,1) infinite;pointer-events:none}@keyframes kenBurnsSubtle{0%{transform:scale(1) translate(0)}50%{transform:scale(1.05) translate(-.8%,-.5%)}to{transform:scale(1) translate(0)}}.ken-burns{animation:kenBurnsSubtle 24s ease-in-out infinite;will-change:transform}@keyframes soundwaveDance{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}.soundwave-container{display:inline-flex;align-items:flex-end;gap:3px;height:18px}.soundwave-bar{display:inline-block;width:3px;height:100%;background:var(--gold-glow);border-radius:2px;animation:soundwaveDance 1.2s ease-in-out infinite;transform-origin:bottom}.soundwave-bar:nth-child(2){animation-delay:.2s}.soundwave-bar:nth-child(3){animation-delay:.4s}.soundwave-bar:nth-child(4){animation-delay:.6s}@keyframes springPop{0%{transform:scale(.8) translateY(3px);opacity:.6}60%{transform:scale(1.18) translateY(-2px)}to{transform:scale(1) translateY(0);opacity:1}}.spring-pop{animation:springPop .35s var(--ease-spring);display:inline-block;will-change:transform}.accordion-grid{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s var(--ease-luxury),opacity .3s ease;opacity:0}.accordion-grid.is-open{grid-template-rows:1fr;opacity:1}.accordion-inner{overflow:hidden}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.25rem}.form-label{font-size:.85rem;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:.35rem}.form-input,.form-select,.form-textarea{background:#060e1ab3;border:1px solid rgba(212,175,55,.25);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.95rem;transition:var(--transition-smooth)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--gold-glow);box-shadow:0 0 15px #f3c64c40;background:#060e1af2}.tape-chart-container{overflow-x:auto;border:1px solid rgba(212,175,55,.2);border-radius:var(--radius-lg);background:var(--bg-surface)}.tape-floor-group{border-bottom:2px solid rgba(212,175,55,.25)}.tape-floor-header{background:#13223de6;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;font-size:.9rem;font-weight:600;color:var(--gold-glow)}.tape-room-row{display:grid;grid-template-columns:160px repeat(10,1fr);align-items:center;border-bottom:1px solid rgba(255,255,255,.05);padding:.5rem .75rem;transition:var(--transition-smooth)}.tape-room-row:hover{background:#1d4ed814}.official-invoice-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:99999;display:flex;justify-content:center;align-items:flex-start;padding:30px 15px;overflow-y:auto;background:#030712e0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.official-invoice-modal-content{width:100%;max-width:880px;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.invoice-action-bar{display:flex;justify-content:space-between;align-items:center;background:#0a1426f2;border:1px solid rgba(212,175,55,.4);padding:10px 16px;border-radius:8px;margin-bottom:12px;color:#fff}.invoice-action-bar .action-bar-title{font-weight:700;font-size:.95rem;color:var(--gold-glow);display:flex;align-items:center;gap:8px}.tax-invoice-sheet{background:#fff;color:#000;padding:24px 28px;border-radius:4px;box-shadow:0 10px 40px #0009;font-family:Courier New,Courier,monospace,system-ui;font-size:11px;line-height:1.35;border:1px solid #d1d5db}.sheet-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #000000;padding-bottom:10px;margin-bottom:8px}.header-left .page-mark{font-size:10px;color:#555;display:block}.header-left .tax-invoice-title{font-family:Arial,sans-serif;font-size:20px;font-weight:900;letter-spacing:1px;margin:2px 0;color:#000}.header-left .copy-type{font-size:9.5px;font-weight:700;color:#333;letter-spacing:.5px}.header-right{text-align:right;max-width:500px}.hotel-brand-block .hotel-trade-name{font-family:Arial,sans-serif;font-size:16px;font-weight:900;color:#000;margin:0 0 2px;letter-spacing:.5px}.hotel-brand-block .proprietor-line{font-size:10.5px;font-weight:700;color:#222}.hotel-brand-block .address-line,.hotel-brand-block .contact-line,.hotel-brand-block .website-line{font-size:10px;color:#333}.particulars-grid{display:flex;justify-content:space-between;border-bottom:1.5px solid #000000;padding:8px 0;margin-bottom:8px;gap:20px}.particulars-col{flex:1}.field-row{display:flex;margin-bottom:3px;font-size:10.5px}.field-label{width:120px;font-weight:700;color:#222;flex-shrink:0}.field-colon{width:12px;text-align:center;flex-shrink:0}.field-value{flex:1;word-break:break-word;color:#000}.text-bold-gstin{font-weight:900;letter-spacing:.5px}.ledger-table{width:100%;border-collapse:collapse;margin-bottom:8px;font-size:10.5px}.ledger-table th{border-top:1.5px solid #000000;border-bottom:1.5px solid #000000;padding:4px 6px;text-align:left;font-weight:800;font-size:10px}.ledger-table th.th-amount,.ledger-table td.text-right{text-align:right;font-variant-numeric:tabular-nums}.ledger-table td{padding:4px 6px;border-bottom:.5px dashed #cccccc;color:#000}.ledger-table tfoot td{border-top:1px solid #000000;border-bottom:1px solid #000000;padding:4px 6px}.ledger-table tfoot .tfoot-round td{border-bottom:2px solid #000000}.text-net-amount{font-size:13px;font-weight:900}.in-words-row{border-bottom:1.5px solid #000000;padding:5px 0;font-size:10.5px;margin-bottom:8px}.in-words-label{font-weight:700;margin-right:6px}.in-words-value{font-weight:800;letter-spacing:.3px}.tax-summary-block{border:1px solid #000000;padding:6px 10px;margin-bottom:10px;max-width:480px}.tax-summary-title{font-size:11px;font-weight:900;text-decoration:underline;margin-bottom:4px}.tax-summary-table{width:100%;border-collapse:collapse;font-size:10px}.tax-summary-table th,.tax-summary-table td{padding:2px 4px}.tax-summary-table thead th{border-bottom:1px solid #000000}.tax-summary-total-row td{border-top:1px solid #000000;font-weight:800}.invoice-terms-box{border:1px solid #777777;border-radius:3px;padding:6px 10px;margin-bottom:16px;background-color:#fafafa}.invoice-terms-header{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;color:#111;border-bottom:1px solid #dddddd;padding-bottom:2px}.invoice-terms-list{margin:0;padding-left:14px;font-size:8px;line-height:1.35;color:#222}.signature-grid{display:flex;justify-content:space-between;gap:40px;margin-top:25px;margin-bottom:12px}.sig-col{flex:1;text-align:center}.sig-line{border-top:1.5px solid #000000;margin-bottom:4px}.sig-title{font-size:10.5px;font-weight:800;display:block}.sig-disclaimer{font-size:8px;color:#444;margin-top:2px;line-height:1.2}.sheet-footer-strip{background:#060e1a;color:#fff;text-align:center;font-size:8.5px;padding:4px 8px;font-weight:700;letter-spacing:.3px;margin-top:10px;-webkit-print-color-adjust:exact;print-color-adjust:exact}@media print{body *{visibility:hidden}.official-invoice-overlay{position:static!important;padding:0!important;background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.official-invoice-overlay *,.tax-invoice-sheet,.tax-invoice-sheet *{visibility:visible}.tax-invoice-sheet{position:absolute;left:0;top:0;width:210mm;margin:0;padding:12mm 15mm;box-shadow:none!important;border:none!important}.printable-receipt,.printable-receipt *{visibility:visible}.printable-receipt{position:absolute;left:0;top:0;width:80mm;margin:0;padding:5mm;background:#fff!important;color:#000!important;font-family:monospace;font-size:11px;box-shadow:none!important;border:none!important}.invoice-action-bar,.no-print,.modal-close-btn{display:none!important}}
