body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{font-weight:600;margin:0}button,input,select,textarea{font-family:inherit}.landing-page{align-items:stretch;padding:0}.landing-page,.landing-shell{background:#fff;display:flex;flex-direction:column;margin:0;min-height:100vh;width:100%}.landing-shell{border-radius:0;box-shadow:none;max-width:none;overflow:hidden}.landing-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#4338caeb;display:flex;flex-wrap:wrap;gap:12px 16px;justify-content:flex-start;padding:14px clamp(16px,4vw,48px)}.landing-header__brand{align-items:center;color:#fff;display:flex;font-size:1rem;font-weight:600;gap:10px;letter-spacing:.01em}.landing-icon{flex-shrink:0;height:22px;width:22px}.landing-hero{align-items:center;background:linear-gradient(125deg,#1e3a8a,#4c1d95 45%,#7c3aed);display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;padding:56px clamp(16px,4vw,48px) 100px;position:relative;text-align:center}.landing-hero:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");content:"";inset:0;mix-blend-mode:overlay;opacity:.07;pointer-events:none;position:absolute}.landing-hero__waves{background:radial-gradient(ellipse 120% 100% at 50% 100%,#c4b5fd73 0,#0000 55%),radial-gradient(ellipse 80% 80% at 20% 100%,#a78bfa59 0,#0000 50%),radial-gradient(ellipse 90% 90% at 80% 100%,#8b5cf64d 0,#0000 50%);bottom:0;height:72px;left:0;opacity:.95;pointer-events:none;position:absolute;right:0}.landing-hero__waves:after{background:linear-gradient(180deg,#0000,#ffffff1f 35%,#fff);border-radius:50% 50% 0 0/100% 100% 0 0;bottom:-2px;content:"";height:56px;left:-10%;position:absolute;right:-10%}.landing-hero__inner{margin:0 auto;max-width:640px;position:relative;width:100%;z-index:1}.landing-hero__title{color:#fff;font-size:clamp(1.85rem,4.2vw,2.4rem);font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 16px}.landing-hero__subtitle{color:#ffffffeb;font-size:1.05rem;font-weight:400;line-height:1.55;margin:0 0 32px;text-align:center}.landing-hero__subtitle-line2{display:block;margin-top:.4em}.landing-hero__form{align-items:center;display:flex;flex-direction:column;gap:12px}.landing-cta{align-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488 40%,#059669);border:2px solid #ffffffeb;border-radius:14px;box-shadow:0 4px 14px #14b8a673,0 2px 4px #00000014,inset 0 1px 0 #ffffff26;color:#fff;cursor:pointer;display:inline-flex;font-size:1.05rem;font-weight:600;gap:10px;justify-content:center;padding:14px 36px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.landing-cta:hover:not(:disabled){border-color:#fff;box-shadow:0 8px 24px #14b8a680,0 4px 8px #0000001a,inset 0 1px 0 #fff3;transform:translateY(-2px)}.landing-cta:disabled{cursor:not-allowed;opacity:.75;transform:none}.landing-icon--cta{height:24px;width:24px}.landing-hero__footnote{color:#ffffffbf;font-size:.75rem;font-weight:400;margin:16px 0 0}.landing-error{background:#fee2e2f2;border:1px solid #f8717166;border-radius:10px;color:#991b1b;font-size:.875rem;max-width:420px;padding:12px 16px;width:100%}.landing-features{margin:0;padding:0 0 32px}.landing-features,.landing-features__bar{background:#fff;box-sizing:border-box;width:100%}.landing-features__bar{align-items:stretch;border-top:1px solid #e2e8f0;display:grid;grid-template-columns:repeat(3,1fr)}.landing-feature-item{align-items:flex-start;border-right:1px solid #e8ecf1;display:flex;flex-direction:row;gap:16px;padding:28px clamp(20px,4vw,48px);text-align:left}.landing-feature-item:last-child{border-right:none}.landing-feature-item__icon{align-items:center;background:linear-gradient(145deg,#e0e7ff,#dbeafe);border-radius:50%;box-shadow:inset 0 1px 0 #fffc;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.landing-feature-item__glyph{display:block;height:28px;width:28px}.landing-feature-item__body{flex:1 1;min-width:0}.landing-feature-item__title{color:#1e293b;font-size:1.05rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin:0 0 6px}.landing-feature-item__text{color:#64748b;font-size:.875rem;line-height:1.5;margin:0}.landing-loading{align-items:center;background:linear-gradient(125deg,#1e3a8a,#5b21b6);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:100vh;padding:48px;width:100%}.landing-loading-spinner{animation:landing-spin .8s linear infinite;border:3px solid #ffffff40;border-radius:50%;border-top-color:#fff;height:40px;width:40px}@keyframes landing-spin{to{transform:rotate(1turn)}}.landing-loading p{font-size:1rem;font-weight:500;margin:0;opacity:.9}@media (max-width:900px){.landing-features__bar{grid-template-columns:1fr}.landing-feature-item{border-bottom:1px solid #e8ecf1;border-right:none;padding:22px 20px}.landing-feature-item:last-child{border-bottom:none}}@media (max-width:600px){.landing-header{padding:12px 16px}.landing-hero{padding:40px 20px 88px}.landing-cta{max-width:320px;width:100%}}.app-modal-overlay{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.app-modal{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a38;max-height:min(90vh,860px);outline:none;overflow:hidden;width:min(640px,100%)}.app-modal--wide{width:min(900px,100%)}.app-modal__shell{background:#fff;display:flex;flex-direction:column;max-height:min(90vh,860px)}.app-modal__header{align-items:flex-start;background:linear-gradient(135deg,#6366f1,#7c3aed 55%,#9333ea);color:#fff;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:20px 22px}.app-modal__header-main{align-items:flex-start;display:flex;gap:14px;min-width:0}.app-modal__header-icon{align-items:center;background:#ffffff2e;border-radius:12px;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.app-modal__header-text{min-width:0}.app-modal__title{font-size:1.35rem;font-weight:700;line-height:1.25;margin:0}.app-modal__subtitle{color:#ffffffe0;font-size:.92rem;line-height:1.4;margin:6px 0 0}.app-modal__close{background:#ffffff29;border:none;border-radius:10px;color:#fff;cursor:pointer;flex-shrink:0;font-size:1.5rem;height:34px;line-height:1;transition:background-color .15s ease;width:34px}.app-modal__close:hover{background:#ffffff47}.app-modal__body{background:#fff;flex:1 1 auto;overflow-y:auto;padding:22px}.app-modal__footer{align-items:center;background:#fafafa;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:16px 22px}.app-modal__footer--split{justify-content:space-between}.app-modal-field{margin-bottom:18px}.app-modal-field__label{align-items:center;color:#374151;display:flex;font-size:.92rem;font-weight:600;gap:8px;margin-bottom:8px}.app-modal-field__label-text{line-height:1.3}.app-modal-field__label--required .app-modal-field__label-text:after{color:#dc2626;content:" *";font-weight:700}.app-modal-field__hint{color:#6b7280;font-size:.82rem;margin:-4px 0 8px}.app-modal-field select:invalid:not(:focus),.app-modal-field textarea:invalid:not(:focus):not(:placeholder-shown),.app-modal-field__input:invalid:not(:focus):not(:placeholder-shown){border-color:#fca5a5}.app-modal-field__icon{align-items:center;color:#7c3aed;display:flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.app-modal-field select,.app-modal-field textarea,.app-modal-field__input{background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#111827;font-size:.95rem;padding:11px 13px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.app-modal-field textarea::placeholder,.app-modal-field__input::placeholder{color:#9ca3af}.app-modal-field select:focus,.app-modal-field textarea:focus,.app-modal-field__input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf62e;outline:none}.app-modal-field textarea{min-height:88px;resize:vertical}.app-modal-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.app-modal-section{border-top:1px solid #f1f5f9;margin-top:8px;padding-top:18px}.app-modal-section__header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.app-modal-section__title{color:#111827;font-size:1rem;font-weight:700;margin:0}.app-modal-section__subtitle{color:#6b7280;font-size:.85rem;margin:4px 0 0}.app-modal-error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;font-size:.92rem;margin-bottom:16px;padding:12px 14px}.app-modal-btn{border:none;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:background-color .15s ease,opacity .15s ease}.app-modal-btn:disabled{cursor:not-allowed;opacity:.65}.app-modal-btn--ghost{background:#fff;border:1px solid #d1d5db;color:#374151}.app-modal-btn--ghost:hover:not(:disabled){background:#f9fafb}.app-modal-btn--primary{background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff}.app-modal-btn--primary:hover:not(:disabled){filter:brightness(1.05)}.app-modal-btn--outline{background:#f5f3ff;border:1px solid #ddd6fe;color:#6d28d9}.app-modal-btn--outline:hover:not(:disabled){background:#ede9fe}.app-modal-btn--danger{background:#dc2626;color:#fff}.app-modal-btn--danger:hover:not(:disabled){background:#b91c1c}.app-modal-guest-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:1fr 1fr auto;margin-bottom:10px}.app-modal-guest-row input{border:1px solid #e5e7eb;border-radius:10px;font-size:.92rem;padding:10px 12px}.app-modal-guest-row input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf62e;outline:none}@media (max-width:640px){.app-modal-overlay{padding:10px}.app-modal-guest-row,.app-modal-row{grid-template-columns:1fr}.app-modal__footer{align-items:stretch;flex-direction:column-reverse}.app-modal__footer .app-modal-btn{width:100%}}.room-calendar-container{background-color:#f5f5f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100%;opacity:1;transition:opacity .3s ease;width:100%}.calendar-header{align-items:center;background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:15px 20px}.hotel-info h1{font-size:24px;font-weight:700;margin:0}.user-context-info{margin-top:5px;opacity:.8}.user-context-info small{color:#ecf0f1;font-size:12px}.legend{align-items:center;display:flex;gap:20px;margin:10px 0}.user-dropdown-content{min-width:120px}.hotel-selection,.hotel-selector{align-items:center;display:flex}.hotel-selector{gap:10px}.hotel-selector label{font-weight:500}.hotel-selector select{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-size:14px;padding:8px 12px}.date-navigation{align-items:center;display:flex;gap:15px}.date-navigation button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:8px 12px}.date-navigation button:hover{background-color:#2980b9}.date-picker{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:14px;margin:0 10px;padding:8px 12px}.date-picker:focus,.date-picker:hover{border-color:#3498db}.date-picker:focus{box-shadow:0 0 0 2px #3498db33;outline:none}.date-navigation span{font-size:16px;font-weight:500;min-width:300px;text-align:center}.room-calendar-grid{--calendar-header-height:48px;--calendar-row-height:48px;background-color:#fff;border:1px solid #fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;margin:12px;max-width:100%;overflow:hidden;width:calc(100% - 24px)}.room-list{background-color:#34495e;border-right:1px solid #fff;color:#fff;flex:0 0 260px;width:260px}.room-header{background-color:#2c3e50;border-bottom:2px solid #bdc3c7;box-sizing:border-box;color:#fff;flex-shrink:0;font-size:12px;font-weight:700;height:var(--calendar-header-height);justify-content:center;max-height:var(--calendar-header-height);min-height:var(--calendar-header-height);overflow:hidden;padding:0 8px;text-align:center}.room-header,.room-header .date-navigation{align-items:center;display:flex;min-width:0}.room-header .date-navigation{gap:8px;height:100%;max-height:100%;width:100%}.room-header .date-navigation button{align-items:center;background-color:#3498db;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 30px;font-size:12px;font-weight:700;height:30px;justify-content:center;min-width:30px;padding:0;transition:background-color .3s ease;width:30px}.room-header .date-navigation button:hover{background-color:#2980b9}.room-header .date-picker{background-color:#fff;border:1px solid #bdc3c7;border-radius:4px;box-sizing:border-box;color:#333;cursor:pointer;flex:1 1;font-size:11px;height:30px;line-height:1;max-height:30px;min-width:0;padding:2px 6px;width:0}.room-header .date-picker:hover{border-color:#3498db}.room-header .date-picker:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.hotel-dropdown{appearance:none;background:linear-gradient(135deg,#3498db,#2980b9);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:none;border-radius:8px;box-shadow:0 4px 8px #0003;box-sizing:border-box;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:200px;padding:8px 40px 8px 16px;text-align:center;transition:all .3s ease}.hotel-dropdown:hover{box-shadow:0 6px 12px #0000004d;transform:translateY(-2px)}.hotel-dropdown:focus,.hotel-dropdown:hover{background:linear-gradient(135deg,#2980b9,#1f4e79)}.hotel-dropdown:focus{box-shadow:0 0 0 3px #3498db4d;outline:none}.hotel-dropdown option{background-color:#2c3e50;color:#fff;font-weight:500;padding:10px}.hotel-header-cell{background-color:#ecf0f1;border-right:1px solid #bdc3c7;color:#2c3e50;font-size:14px;font-weight:700;height:50px;justify-content:center;min-width:80px;padding:12px 8px;text-align:center}.hotel-header-cell,.room-item{align-items:center;box-sizing:border-box;display:flex}.room-item{border-bottom:1px solid #fff;flex-shrink:0;font-size:13px;height:var(--calendar-row-height);max-height:var(--calendar-row-height);min-height:var(--calendar-row-height);padding:0 12px;position:relative}.room-item.selected{background-color:#3498db}.room-item.hovered{box-shadow:inset -4px 0 0 #3498db;font-weight:600;transition:all .2s ease}.room-item.hovered:not(.selected){background-color:#3498db38;color:#ecf0f1}.room-item.hovered.selected{background-color:#2e86c1}.room-item:last-child{border-bottom:none}.calendar-grid{--cell-min-width:52px;flex:1 1 auto;min-width:0;overflow-x:auto;width:100%}.calendar-no-rooms{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:14px;padding:20px 16px;text-align:center}.date-header{border-bottom:2px solid #bdc3c7;display:grid;flex-shrink:0;grid-template-columns:repeat(15,minmax(52px,1fr));grid-template-columns:repeat(var(--calendar-days,15),minmax(var(--cell-min-width,52px),1fr));height:var(--calendar-header-height);max-height:var(--calendar-header-height);min-height:var(--calendar-header-height);min-width:max(100%,780px);min-width:max(100%,calc(var(--calendar-days, 15)*var(--cell-min-width, 52px)));position:sticky;top:0;width:100%}.date-cell,.date-header{background-color:#ecf0f1;box-sizing:border-box}.date-cell{align-items:center;border-right:1px solid #bdc3c7;color:#2c3e50;display:flex;flex-direction:column;font-weight:600;gap:2px;height:100%;justify-content:center;line-height:1.2;min-height:0;min-width:0;padding:4px 8px;text-align:center}.date-cell__weekday{font-size:12px;font-weight:600;opacity:.85;text-transform:lowercase}.date-cell__day{font-size:13px;font-weight:700;white-space:nowrap}.date-cell:first-child{background-color:#ecf0f1;color:#2c3e50;font-weight:700}.date-cell.selected{background-color:#3498db;box-shadow:0 2px 4px #3498db4d;color:#fff;font-weight:700}.date-cell.selected .date-cell__day,.date-cell.selected .date-cell__weekday{color:#fff;opacity:1}.date-cell.hovered .date-cell__day,.date-cell.hovered .date-cell__weekday{color:#2980b9}.date-cell.hovered{background-color:#e8f4fd;box-shadow:0 4px 0 #3498db,0 2px 4px #3498db4d;color:#2980b9;font-weight:700;transition:all .2s ease}.room-row{align-items:stretch;border-bottom:1px solid #fff;box-sizing:border-box;display:grid;flex-shrink:0;grid-template-columns:repeat(15,minmax(52px,1fr));grid-template-columns:repeat(var(--calendar-days,15),minmax(var(--cell-min-width,52px),1fr));height:var(--calendar-row-height);max-height:var(--calendar-row-height);min-height:var(--calendar-row-height);min-width:max(100%,780px);min-width:max(100%,calc(var(--calendar-days, 15)*var(--cell-min-width, 52px)));width:100%}.room-row:last-child{border-bottom:none}.room-cell{align-items:center;border:none;border-right:1px solid #fff;box-sizing:border-box;cursor:pointer;display:flex;height:100%;justify-content:center;margin:0;min-height:0;min-width:0;padding:0;position:relative;transition:all .2s ease}.room-cell:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.02);z-index:10}.room-cell:has(.cell-half):hover{background-color:initial!important;box-shadow:none;transform:none;z-index:auto}.room-cell:has(.cell-half){background-color:initial!important;border:1px solid #fff!important}.room-cell.check-in-day:has(.cell-half){background:#0000!important;border:1px solid #fff!important}.room-cell.check-out-day:has(.cell-half){background:#0000!important;border:1px solid #fff!important}.room-cell.check-in-day.check-out-day:has(.cell-half){background:#0000!important;border:1px solid #fff!important}.cell-half{flex:1 1;height:100%;position:relative;transition:all .2s ease}.cell-half:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.02);z-index:10}.left-half{border-radius:0 20px 20px 0;border-right:1px solid #fff}.right-half{border-left:1px solid #fff;border-radius:20px 0 0 20px}.cell-half.booked,.left-half.booked,.right-half.booked{color:#721c24}.cell-half.right-half.available,.room-cell .cell-half.right-half.available{background-color:#cbedd3!important;color:#155724!important}.room-cell.available{background-color:#cbedd3;border-color:#fff;color:#155724}.room-cell.available:hover{background-color:#c3e6cb!important}.room-cell.available:has(.cell-half):hover{background-color:initial!important}.room-cell.booked{background-color:#ff9fa7;border-color:#fff;color:#721c24;position:relative}.room-cell.booked:has(.cell-half),.room-cell.check-in-day:has(.cell-half),.room-cell.check-out-day:has(.cell-half){background:#0000!important}.room-cell.booked:hover{background-color:#f5c6cb!important}.room-cell.booked:has(.cell-half):hover{background-color:initial!important}.room-cell.check-in-day{background:linear-gradient(90deg,#d4edda 50%,#ff9fa7 0);border-color:#c3e6cb;position:relative}.room-cell.check-in-day:hover{background:linear-gradient(90deg,#c3e6cb 50%,#f5c6cb 0)!important}.room-cell.check-in-day:has(.cell-half):hover{background:#0000!important}.room-cell.check-out-day{background:linear-gradient(90deg,#ff9fa7 50%,#d4edda 0);border-color:#fff;position:relative}.room-cell.check-out-day:hover{background:linear-gradient(90deg,#ff9fa7 50%,#c3e6cb 0)!important}.room-cell.check-out-day:has(.cell-half):hover{background:#0000!important}.room-cell.check-in-day.check-out-day{background:#ff9fa7;border-color:#f5c6cb;position:relative}.room-cell.check-in-day.check-out-day:hover{background:#f5c6cb!important}.room-cell.check-in-day.check-out-day:has(.cell-half):hover{background:#0000!important}.cell-half{align-items:center;bottom:0;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;margin:0;padding:0;position:absolute;top:0;transition:background-color .2s ease;width:50%}.cell-half.left-half{border-right:1px solid #fff;left:0}.cell-half.left-half.available{background:#cbedd3;border-right:1px solid #fff}.cell-half.right-half{background:#9bd6a9!important;border-left:1px solid #fff;right:0}.cell-half.right-half.available{background:#cbedd3!important;border-left:1px solid #fff}.cell-half.right-half.booked{border-left:1px solid #fff}.cell-half:hover{background-color:#3498db4d!important}.cell-half.left-half:hover,.cell-half:hover{box-shadow:0 2px 8px #0003!important;transform:scale(1.02)!important;z-index:20!important}.cell-half.left-half:hover{background-color:#f5c6cb!important}.cell-half.left-half.available:hover{background-color:#c3e6cb!important}.cell-half.left-half.available:hover,.cell-half.right-half:hover{box-shadow:0 2px 8px #0003!important;transform:scale(1.02)!important;z-index:20!important}.cell-half.right-half:hover{background-color:#f5c6cb!important}.cell-half.right-half.available:hover{background-color:#c3e6cb!important;box-shadow:0 2px 8px #0003!important;transform:scale(1.02)!important;z-index:20!important}.room-cell.conflict{animation:conflict-blink 1.1s ease-in-out infinite;border-color:#450a0a;color:#fff;z-index:5}@keyframes conflict-blink{0%,to{background-color:#0f0f0f;box-shadow:inset 0 0 0 1px #450a0a}50%{background-color:#7f1d1d;box-shadow:inset 0 0 0 1px #0f0f0f}}.room-cell.conflict:hover{animation:none;background-color:#991b1b}.conflict-indicator{color:#fff;font-size:14px;font-weight:800;text-shadow:0 1px 2px #00000073}.reservation-bar{align-items:center;background-color:inherit;border-radius:4px;bottom:0;display:flex;justify-content:center;left:0;margin:2px;position:absolute;right:0;top:0}.reservation-start{left:2px}.reservation-end,.reservation-start{color:inherit;font-size:12px;position:absolute;top:50%;transform:translateY(-50%)}.reservation-end{right:2px}.check-in-arrow{right:2px}.check-in-arrow,.check-out-arrow{color:#721c24;font-size:14px;font-weight:700;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.check-out-arrow{left:2px}.reservation-info{color:#721c24;font-size:11px;font-weight:500;left:50%;max-width:100%;overflow:hidden;padding:0 4px;position:absolute;text-align:center;text-overflow:ellipsis;top:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:1}.transition-info{background:#fffc;border:1px solid #721c24;border-radius:3px;color:#721c24;font-size:10px;font-weight:600;padding:2px 4px}.cell-half.booked[data-status=Paid],.room-cell.booked[data-status=Paid]{background-color:#ef969d!important;color:#721c24!important}.cell-half.booked[data-status=NotPaid],.room-cell.booked[data-status=NotPaid]{background-color:#efe096!important;color:#721c24!important}.loading{color:#666;font-size:18px;padding:40px;text-align:center}@media (max-width:768px){.room-calendar-grid{--calendar-header-height:44px;--calendar-row-height:44px;margin:8px;width:calc(100% - 16px)}.calendar-grid{--cell-min-width:44px}.room-list{flex:0 0 180px;width:180px}.room-header{padding:0 4px}.room-header .date-navigation{gap:4px}.room-header .date-navigation button{flex:0 0 28px;height:26px;min-width:28px;width:28px}.date-header,.room-row{grid-template-columns:repeat(15,minmax(44px,1fr));grid-template-columns:repeat(var(--calendar-days,15),minmax(var(--cell-min-width,44px),1fr));min-width:max(100%,660px);min-width:max(100%,calc(var(--calendar-days, 15)*var(--cell-min-width, 44px)))}.room-item{font-size:12px;padding:0 8px}.room-header .date-picker{font-size:10px;height:26px;max-height:26px;padding:2px 4px}}.calendar-grid::-webkit-scrollbar{height:8px}.calendar-grid::-webkit-scrollbar-track{background:#f1f1f1}.calendar-grid::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.calendar-grid::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.loading-container{border-radius:8px;box-shadow:0 2px 4px #0000001a;height:200px;margin:20px;opacity:.8;transition:opacity .3s ease}.loading-spinner{color:#666;font-size:16px;font-weight:700}.reports-page{box-sizing:border-box;min-height:calc(100vh - 62px);padding:clamp(12px,2vw,24px);width:100%}.reports-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;min-height:calc(100vh - 62px - clamp(12px, 2vw, 24px)*2);overflow:hidden;width:100%}.reports-page-header{align-items:flex-start;display:flex;gap:16px;padding:28px 28px 20px}.reports-page-header__icon{align-items:center;background:#ede9fe;border-radius:50%;color:#7c3aed;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.reports-page-header__title{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0 0 6px}.reports-page-header__subtitle{color:#64748b;font-size:.95rem;line-height:1.45;margin:0}.reports-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:0 28px 24px}.reports-tab{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:8px;padding:10px 18px;transition:background .2s ease,border-color .2s ease,color .2s ease}.reports-tab svg{flex-shrink:0}.reports-tab:hover:not(.reports-tab--active){background:#faf5ff;border-color:#c4b5fd;color:#6d28d9}.reports-tab--active{background:#7c3aed;border-color:#7c3aed;color:#fff}.reports-body{border-top:1px solid #e2e8f0}.reports-body,.reports-panel{display:flex;flex:1 1;flex-direction:column;min-height:0}.reports-panel{padding:0}.reports-toolbar{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:20px 28px}.reports-filters,.reports-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.reports-filter{display:flex;flex:1 1 180px;flex-direction:column;gap:6px;max-width:280px;min-width:min(100%,180px)}.reports-filter__label{color:#334155;font-size:.875rem;font-weight:600}.reports-filter input[type=date],.reports-filter select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:.95rem;min-width:0;padding:9px 12px;width:100%}.reports-filter input[type=date]:focus,.reports-filter select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26;outline:none}.reports-filter select:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.reports-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.reports-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:9px 16px;transition:background .2s ease,opacity .2s ease}.reports-btn:disabled{cursor:not-allowed;opacity:.55}.reports-btn--refresh{background:#16a34a;color:#fff}.reports-btn--refresh:hover:not(:disabled){background:#15803d}.reports-btn--secondary{background:#475569;color:#fff}.reports-btn--secondary:hover:not(:disabled){background:#334155}.reports-btn--primary{background:#7c3aed;color:#fff}.reports-btn--primary:hover:not(:disabled){background:#6d28d9}.reports-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.9rem;margin:0 28px 16px;padding:12px 16px}.reports-table-wrap{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:auto}.reports-table{border-collapse:collapse;font-size:.9rem;min-width:640px;width:100%}.reports-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#334155;font-weight:600;padding:14px 16px;text-align:left}.reports-table td{border-bottom:1px solid #f1f5f9;color:#1e293b;padding:14px 16px;vertical-align:top}.reports-table tbody tr:hover{background:#f8fafc}.reports-empty{color:#64748b;flex-direction:column;padding:56px 24px;text-align:center}.reports-empty,.reports-empty__icon{align-items:center;display:flex;justify-content:center}.reports-empty__icon{background:#ede9fe;border-radius:50%;color:#a78bfa;height:72px;margin-bottom:16px;width:72px}.reports-empty p{font-size:.95rem;margin:0}.reports-summary{border-top:1px solid #f1f5f9;color:#334155;font-size:.95rem;font-weight:600;margin-top:auto;padding:16px 28px 24px}@media (max-width:1024px){.reports-toolbar{align-items:stretch}.reports-filters{flex:1 1 100%}.reports-actions{flex:1 1 100%;justify-content:flex-end}}@media (max-width:768px){.reports-page-header,.reports-summary,.reports-tabs,.reports-toolbar{padding-left:16px;padding-right:16px}.reports-page-header{padding-bottom:16px;padding-top:20px}.reports-page-header__title{font-size:1.25rem}.reports-page-header__subtitle{font-size:.875rem}.reports-tabs{gap:8px;padding-bottom:16px}.reports-tab{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;font-size:.875rem;justify-content:center;padding:10px 12px}.reports-toolbar{align-items:stretch;flex-direction:column;gap:20px;padding-bottom:16px;padding-top:16px}.reports-filters{width:100%}.reports-filter{flex:1 1 100%;max-width:none}.reports-actions{justify-content:stretch;width:100%}.reports-btn{flex:1 1 auto;justify-content:center}.reports-error{margin-left:16px;margin-right:16px}.reports-table{font-size:.85rem;min-width:560px}.reports-table td,.reports-table th{padding:10px 12px}.reports-empty{padding:40px 16px}}@media (max-width:480px){.reports-page{min-height:calc(100vh - 56px);padding:8px}.reports-card{border-radius:8px;min-height:calc(100vh - 72px)}.reports-page-header{align-items:flex-start;gap:12px}.reports-page-header,.reports-tabs{flex-direction:column}.reports-tab{flex:1 1 auto;width:100%}.reports-actions{flex-direction:column}.reports-btn{width:100%}.reports-table{font-size:.8rem;min-width:480px}.reports-table td,.reports-table th{padding:8px 10px}}@media print{.reports-page{max-width:none;padding:0}.reports-card{border-radius:0;box-shadow:none}.reports-page-header,.reports-tabs,.reports-toolbar{display:none!important}.reports-table td,.reports-table th{background:#fff!important;border:1px solid #000!important;color:#000!important}.reports-empty__icon{display:none}}.property-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:95%}.property-rooms-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px;margin-top:20px}.property-rooms-header h3{margin:0}.property-rooms-list{display:flex;flex-direction:column;gap:10px}.property-room-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:120px 180px 100px 90px}.property-room-row input[type=text]{border:1px solid #ddd;border-radius:4px;padding:8px;width:100%}.property-room-active{align-items:center;color:#333;display:flex;font-size:13px;gap:6px}@media (max-width:900px){.property-room-row{grid-template-columns:1fr}}.tenant-name-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000f;margin-bottom:28px;padding:16px 18px}.tenant-name-section__title{color:#1e293b;font-size:1.1rem;margin:0 0 .25rem}.tenant-name-section__header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.tenant-name-section__header .tenant-name-section__intro{margin-bottom:0}.tenant-name-section__intro{color:#64748b;font-size:.875rem;margin:0 0 14px}.tenant-name-section__error{background:#fef2f2;border-radius:8px;color:#b91c1c;font-size:.875rem;margin-bottom:12px;padding:.625rem .75rem}.tenant-name-section__empty,.tenant-name-section__loading{color:#64748b;font-size:.9rem}.tenant-name-section__list{display:flex;flex-direction:column;gap:8px}.tenant-name-section__row{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.tenant-name-section__info{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem .75rem;min-width:0}.tenant-name-section__name{color:#0f172a;font-weight:600}.tenant-name-section__id{color:#94a3b8;font-size:.8rem}.tenant-name-section__active{background:#ecfdf5;border-radius:999px;color:#047857;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.tenant-name-section__btn{background:#f1f5f9;border:none;border-radius:6px;color:#334155;cursor:pointer;flex-shrink:0;font-size:.875rem;font-weight:600;padding:.5rem .75rem}.tenant-name-section__btn--primary{background:#2563eb;color:#fff}.tenant-name-section__btn--ghost{background:#f1f5f9;color:#334155}.tenant-name-modal-overlay{background:#0f172a73;inset:0;position:fixed;z-index:1000}.tenant-name-modal{background:#fff;border-radius:12px;margin:40px auto;max-width:420px;outline:none;padding:24px;width:calc(100% - 32px)}.tenant-name-modal__title{color:#0f172a;font-size:1.15rem;margin:0 0 .25rem}.tenant-name-modal__meta{color:#94a3b8;font-size:.85rem;margin:0 0 1rem}.tenant-name-modal__field{color:#334155;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.375rem;margin-bottom:1rem}.tenant-name-modal__field input{border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;font-weight:400;padding:.625rem .75rem}.tenant-name-modal__actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.property-admin{margin:0 auto;max-width:960px;padding:24px 20px 48px}.property-admin__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:8px}.property-admin__title{color:#1e293b;font-size:1.5rem;margin:0}.property-admin__intro{color:#64748b;font-size:.95rem;line-height:1.5;margin:0 0 24px}.property-admin__subtitle{color:#1e293b;font-size:1.1rem;margin:0 0 16px}.property-admin__empty--error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.property-admin__empty-actions{margin-top:12px}.property-admin__empty{background:#fff;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;padding:28px;text-align:center}.property-admin__list{display:flex;flex-direction:column;gap:12px}.property-admin__card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000f;overflow:hidden}.property-admin__card-row{align-items:flex-start;display:flex;gap:10px;padding:14px 16px}.property-admin__expand{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;flex-shrink:0;font-size:.85rem;height:32px;width:32px}.property-admin__expand:hover{background:#f1f5f9}.property-admin__card-main{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.property-admin__hotel-name{color:#0f172a;font-size:1.05rem;font-weight:600}.property-admin__hotel-meta{color:#94a3b8;font-size:.8rem;word-break:break-all}.property-admin__card-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.property-admin__btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 14px}.property-admin__btn--primary{background:#2563eb;color:#fff}.property-admin__btn--primary:hover{background:#1d4ed8}.property-admin__btn--ghost{background:#f1f5f9;color:#334155}.property-admin__btn--ghost:hover{background:#e2e8f0}.property-admin__btn--danger{background:#fef2f2;color:#b91c1c}.property-admin__btn--danger:hover{background:#fee2e2}.property-admin__btn--small{background:#ecfdf5;color:#047857;font-size:.85rem;padding:6px 12px}.property-admin__btn--small:hover{background:#d1fae5}.property-admin__rooms{background:#fafafa;border-top:1px solid #e2e8f0;padding:0 16px 16px 56px}.property-admin__rooms-head{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:12px 0 4px}.property-admin__rooms-head h3{color:#334155;font-size:1rem;margin:0}.property-admin__rooms-loading{color:#64748b;font-size:.9rem;padding:12px 0}.property-admin__table{border-collapse:collapse;font-size:.9rem;width:100%}.property-admin__table td,.property-admin__table th{border-bottom:1px solid #e2e8f0;padding:10px 8px;text-align:left}.property-admin__table th{color:#64748b;font-weight:600}.property-admin__table-empty{color:#94a3b8;font-style:italic}.property-admin__table-actions{text-align:right;white-space:nowrap}.property-admin__link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.9rem;font-weight:600;padding:4px 8px}.property-admin__link-btn:hover{text-decoration:underline}.property-admin__link-btn--danger{color:#dc2626}@media (max-width:720px){.property-admin__card-row{flex-wrap:wrap}.property-admin__card-actions{justify-content:flex-start;width:100%}.property-admin__rooms{padding-left:16px}}.user-admin{margin:0 auto;max-width:960px;padding:24px 20px 48px}.user-admin__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:8px}.user-admin__title{color:#1e293b;font-size:1.5rem;margin:0}.user-admin__intro{color:#64748b;font-size:.95rem;line-height:1.5;margin:0 0 20px}.user-admin__filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.user-admin__field{color:#334155;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.375rem}.user-admin__field input,.user-admin__field select{border:1px solid #cbd5e1;border-radius:8px;font-size:.9375rem;min-width:200px;padding:.5rem .625rem}.user-admin__checkbox{align-items:center;color:#334155;display:flex;font-size:.875rem;gap:.5rem;padding-bottom:.5rem}.user-admin__filter-hint{color:#64748b;flex-basis:100%;font-size:.8125rem;margin:0}.user-admin__btn{border:none;border-radius:8px;cursor:pointer;font-size:.9375rem;padding:.625rem 1rem}.user-admin__btn--primary{background:#4f46e5;color:#fff}.user-admin__btn--ghost{background:#f1f5f9;color:#334155}.user-admin__btn--danger,.user-admin__error{background:#fef2f2;color:#b91c1c}.user-admin__error{border-radius:8px;margin-bottom:16px;padding:.75rem}.user-admin__empty,.user-admin__loading{background:#fff;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;padding:28px;text-align:center}.user-admin__table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.user-admin__table{border-collapse:collapse;font-size:.9375rem;width:100%}.user-admin__table td,.user-admin__table th{border-bottom:1px solid #e2e8f0;padding:12px 14px;text-align:left}.user-admin__table th{background:#f8fafc;color:#475569;font-weight:600}.user-admin__badge{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.user-admin__badge--admin{background:#ede9fe;color:#5b21b6}.user-admin__badge--disabled{background:#fef2f2;color:#b91c1c}.user-admin__badge--active{background:#ecfdf5;color:#047857}.user-admin__actions{display:flex;flex-wrap:wrap;gap:.375rem}.user-admin__actions button{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#334155;cursor:pointer;font-size:.8125rem;padding:.375rem .625rem}.user-admin__actions button:hover{background:#f8fafc}.user-admin-modal{background:#fff;border-radius:12px;margin:40px auto;max-width:440px;outline:none;padding:24px;width:calc(100% - 32px)}.user-admin-modal-overlay{background:#0f172a73;inset:0;position:fixed;z-index:1000}.user-admin-modal__title{color:#0f172a;font-size:1.25rem;margin:0 0 1rem}.user-admin-modal__field{color:#334155;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.375rem;margin-bottom:1rem}.user-admin-modal__field-label--required:after{color:#dc2626;content:" *";font-weight:700}.user-admin-modal__field input,.user-admin-modal__field select{border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;font-weight:400;padding:.625rem .75rem}.user-admin-modal__checkbox{align-items:center;color:#334155;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem}.user-admin-modal__error{background:#fef2f2;border-radius:8px;color:#b91c1c;font-size:.875rem;margin-bottom:1rem;padding:.625rem}.user-admin-modal__actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.tenant-selector-page{align-items:center;background:linear-gradient(160deg,#0f172a,#1e293b 45%,#334155);display:flex;justify-content:center;min-height:100vh;padding:2rem}.tenant-selector-card{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a40;max-width:440px;padding:2rem;width:100%}.tenant-selector-title{color:#0f172a;font-size:1.5rem;margin:0 0 .5rem}.tenant-selector-subtitle{color:#64748b;line-height:1.5;margin:0 0 1.5rem}.tenant-selector-field{color:#334155;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.375rem;margin-bottom:1rem}.tenant-selector-field input,.tenant-selector-field select{border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;padding:.625rem .75rem}.tenant-selector-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.tenant-selector-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9375rem;padding:.625rem 1rem}.tenant-selector-btn--ghost{background:#f1f5f9;color:#334155}.tenant-selector-btn--primary{background:#4f46e5;color:#fff}.tenant-selector-error,.tenant-selector-loading{border-radius:8px;margin-bottom:1rem;padding:.75rem}.tenant-selector-loading{background:#f8fafc;color:#64748b}.tenant-selector-error{background:#fef2f2;color:#b91c1c}.authenticated-app{display:flex;flex-direction:column;min-height:100vh}.loading-container{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh}.loading-spinner{color:#3498db;font-size:18px;font-weight:600}.app-header{background:linear-gradient(135deg,#2c3e50,#34495e);box-shadow:0 2px 10px #0000001a;color:#fff;padding:0;z-index:1000}.header-content{justify-content:space-between;margin:0 auto;padding:15px 20px}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:20px}.header-brand{align-items:center;border-left:1px solid #ffffff38;border-right:1px solid #ffffff38;display:flex;margin-right:4px;padding:0 20px}.header-brand__name{color:#fff;font-size:22px;font-weight:700;letter-spacing:.02em;line-height:1.1;text-shadow:0 1px 2px #00000026;text-transform:capitalize;white-space:nowrap}.header-brand__name--link{background:none;border:none;cursor:pointer;padding:0;transition:color .2s ease}.header-brand__name--link:hover{color:#90caf9;text-decoration:underline}.header-brand__name--link:focus-visible{border-radius:2px;outline:2px solid #90caf9;outline-offset:3px}.header-hotel-selector{align-items:center;display:flex}.header-hotel-dropdown{appearance:none;background:#007bff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;min-width:180px;padding:8px 40px 8px 16px;transition:all .3s ease}.header-hotel-dropdown:hover{background:#0056b3;box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.header-hotel-dropdown:focus{box-shadow:0 0 0 3px #007bff4d;outline:none}.header-add-property-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;padding:8px 16px}.header-add-property-btn:hover{background:#0056b3}.app-main-loading{align-items:center;color:#3498db;display:flex;font-weight:600;justify-content:center;min-height:40vh}.app-empty-state{background:#fff;border-radius:8px;box-shadow:0 2px 12px #00000014;margin:48px auto;max-width:520px;padding:32px;text-align:center}.app-empty-state__title{color:#2c3e50;font-size:1.35rem;margin:0 0 12px}.app-empty-state__text{color:#64748b;font-size:.95rem;line-height:1.5;margin:0 0 20px}.app-empty-state__cta{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 22px}.app-empty-state__cta:hover{background:#0056b3}.app-error-state{background:#fff8f8;border:1px solid #fecaca;border-radius:8px;box-shadow:0 2px 12px #b91c1c14;margin:48px auto;max-width:560px;padding:28px 32px;text-align:left}.app-error-state__title{color:#991b1b;font-size:1.25rem;margin:0 0 12px}.app-error-state__text{color:#44403c;font-size:.95rem;line-height:1.55;margin:0 0 20px}.app-error-state__actions{display:flex;flex-wrap:wrap;gap:12px}.app-error-state__retry{background:#b91c1c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px}.app-error-state__retry:hover{background:#991b1b}.header-hotel-dropdown option{background-color:#2c3e50;color:#fff;font-weight:500;padding:10px}.header-content h1{color:#fff;font-size:24px;font-weight:700;margin:0}.user-info{align-items:center;display:flex;gap:15px}.welcome-text{color:#ecf0f1;font-size:14px;font-weight:500}.logout-button{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .3s ease}.logout-button:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-1px)}.app-main{background-color:#f5f5f5;flex:1 1}.user-menu{align-items:center;display:flex;gap:12px;position:relative}.user-tenant-label{color:#ecf0f1;font-size:14px;font-weight:500;white-space:nowrap}.user-dropdown{display:inline-block;position:relative}.user-dropdown-toggle{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.user-dropdown-toggle:hover{background:#0056b3;box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.user-dropdown-content{background-color:#fff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 8px 16px 0 #0003;display:none;min-width:140px;position:absolute;right:0;z-index:1000}.user-dropdown:hover .user-dropdown-content{display:block}.dropdown-item{background:none;border:none;color:#333;cursor:pointer;display:block;font-size:14px;padding:12px 16px;text-align:left;text-decoration:none;transition:background-color .2s ease;width:100%}.dropdown-item:hover{background-color:#f8f9fa;color:#007bff}.dropdown-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.dropdown-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}@media (max-width:768px){.header-content{flex-direction:column;gap:15px;text-align:center}.header-content h1{font-size:20px}.user-menu{flex-direction:column;gap:8px}.header-brand{border-left:none;border-right:none;margin-right:0;padding:0}.header-brand__name{font-size:18px}.user-info{flex-direction:column;gap:10px}}.App{background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}*{box-sizing:border-box}body{margin:0;padding:0}
/*# sourceMappingURL=main.7fd01746.css.map*/