.home-screen{display:flex;flex-direction:column;min-height:100%}.home-header{position:relative;overflow:hidden;background-image:url(/header.jpg);background-size:cover;background-position:center;background-color:#1a1a2e;padding:24px 20px;border-radius:0 0 32px 32px}.home-header:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#0003,#0000009e);pointer-events:none;z-index:0}.home-header-inner{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;margin:30px 0 40px}.greeting-text{font-size:22px;font-weight:700;color:#fff;margin-bottom:4px}.hotel-name{font-size:14px;color:var(--accent);font-weight:600;margin-bottom:2px}.room-info{font-size:13px;color:#fff9}.avatar-btn{width:44px;height:44px;border-radius:50%;background:var(--accent);border:none;cursor:pointer;font-size:18px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-card{position:relative;z-index:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:5px 16px;display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap;gap:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.info-item{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;padding:12px 16px;flex:1;text-align:center}.info-icon{font-size:22px;flex-shrink:0;text-align:center}.info-icon svg{height:20px;width:20px;flex-shrink:0;text-align:center}.info-label{font-size:10px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.info-value{font-size:13px;font-weight:700;color:#fff}.info-sub{font-size:11px;color:var(--accent)}.info-divider{width:1px;height:40px;background:#ffffff26;margin:0 12px;flex-shrink:0}.home-content{padding:20px;flex:1}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-item{background:var(--card);border:none;border-radius:18px;padding:20px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;cursor:pointer;box-shadow:0 2px 12px #00000012;transition:all .2s;text-align:left}.menu-item:active{transform:scale(.96);box-shadow:0 1px 4px #0000001a}.menu-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--accent, #1a73e8)}.menu-icon svg{width:28px;height:28px}.menu-label{font-size:13px;font-weight:600;color:var(--text);line-height:1.2}.offer-swiper{width:100%;height:150px}.offer-swiper .swiper-pagination{inset:50% auto auto 10px!important;width:auto!important;transform:translateY(-50%)!important;display:flex;flex-direction:column;align-items:center;gap:5px}.offer-swiper .swiper-pagination-bullet{width:5px;height:5px;background:#ffffff59;opacity:1;margin:0!important;border-radius:50%;transition:all .3s}.offer-swiper .swiper-pagination-bullet-active{background:var(--accent);height:14px;border-radius:3px}.offer-card{border-radius:16px;padding:14px 14px 14px 28px;display:flex;align-items:center;gap:12px;position:relative;overflow:hidden;height:100%;box-sizing:border-box;cursor:default}.offer-card:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#00000026,#0008,#00000026);z-index:0;border-radius:inherit}.offer-card>*{position:relative;z-index:1}.offer-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#ffffffe6}.offer-content{flex:1;min-width:0}.offer-title{font-size:16px;font-weight:700;color:#fff;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.offer-desc{font-size:12px;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.offer-discount-badge{display:inline-block;background:var(--accent);color:var(--primary);font-size:10px;font-weight:800;padding:2px 7px;border-radius:100px;margin-top:5px;letter-spacing:.3px}.offer-cta-btn{flex-shrink:0;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:100px;padding:7px 13px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .2s;font-family:inherit}.offer-cta-btn:active{background:#c9a96e4d;border-color:#c9a96e}.menu-badge{background:var(--error);color:#fff;border-radius:100px;font-size:10px;font-weight:700;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.exp-tabs{display:flex;gap:8px;margin-bottom:14px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;scrollbar-width:none}.exp-tabs::-webkit-scrollbar{display:none}.exp-tab{padding:7px 16px;border-radius:100px;border:1.5px solid var(--border);background:var(--card);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s;color:var(--text-muted);font-family:inherit;display:flex;align-items:center;gap:6px}.exp-tab.active{background:#1a1a2e;border-color:#1a1a2e;color:#fff}.exp-swiper{width:100%;padding-bottom:32px!important}.exp-swiper .swiper-pagination-bullet{background:#1a1a2e;opacity:.25}.exp-swiper .swiper-pagination-bullet-active{background:var(--accent);opacity:1}.exp-slide-card{display:flex;align-items:center;gap:16px;background:var(--card);border-radius:18px;padding:18px 16px;cursor:pointer;box-shadow:0 2px 12px #00000014;transition:transform .18s;-webkit-user-select:none;user-select:none}.exp-slide-card:active{transform:scale(.98)}.exp-slide-visual{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.exp-slide-rest{background:linear-gradient(135deg,#1a1a2e,#0f3460);color:#ffffffe6}.exp-slide-spa{background:linear-gradient(135deg,#fef3cd,#e8d5a3);color:#8b5e2a}.exp-slide-activity{background:linear-gradient(135deg,#d4f5e4,#a8e6cf);color:#2d7a50}.exp-slide-body{flex:1;min-width:0}.exp-slide-name{font-size:15px;font-weight:700;color:#1a1a1a;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp-slide-sub{font-size:12px;color:#6b6b6b;margin-bottom:6px}.exp-slide-meta{font-size:12px;font-weight:600;color:#1a1a1a}.exp-slide-price{color:var(--accent)}.exp-slide-arrow{font-size:18px;color:var(--accent);font-weight:700;flex-shrink:0}.time-chip-btn{padding:8px 16px;border-radius:100px;border:1.5px solid var(--border);background:var(--bg);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;color:var(--text);font-family:inherit}.time-chip-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.modal-daypicker-wrap{margin-bottom:16px;border-radius:14px;overflow:hidden;background:#f8f7f4;padding:6px 4px 8px}.modal-daypicker-label{font-size:12px;font-weight:600;color:#6b6b6b;margin-bottom:6px;margin-top:6px;padding:0 8px}.rdp-months{align-items:center}.modal-daypicker-wrap .rdp{--rdp-accent-color: var(--accent, #c9a96e);--rdp-accent-background-color: rgba(201, 169, 110, .15);margin:0 auto;font-family:inherit;font-size:13px}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.room-screen{display:flex;flex-direction:column;min-height:100%;background:var(--bg)}.room-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.back-btn{width:36px;height:36px;border-radius:50%;background:#77777726;border:none;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding-bottom:2px}.room-title{font-size:18px;font-weight:700;color:#fff}.room-subtitle{font-size:12px;color:#fff9;margin-top:2px}.door-section{display:flex;flex-direction:column;align-items:center;padding:32px 20px 24px;background:linear-gradient(180deg,#16213e 0%,var(--bg) 100%)}.door-ring{width:160px;height:160px;border-radius:50%;border:3px solid rgba(3,0,14,.3);display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s}.door-ring:before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(27,0,70,.15)}.door-ring.scanning{border-color:var(--accent);animation:pulse-ring 1s infinite}.door-ring.opened{border-color:var(--success)}@keyframes pulse-ring{0%,to{box-shadow:0 0 #c9a96e4d}50%{box-shadow:0 0 0 20px #c9a96e00}}.door-btn{width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,#191a46,#0b0013);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 8px 24px #c9a96e66}.door-ring.opened .door-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 8px 24px #2ecc7166}.door-btn:active{transform:scale(.95)}.door-btn:disabled{opacity:.8;cursor:not-allowed}.scan-animation{display:flex;flex-direction:column;align-items:center;gap:2px}.scan-icon{font-size:36px;line-height:1}.scan-icon svg{width:60px;height:60px;fill:#c9a96e}.door-feedback{margin-top:16px;display:flex;align-items:center;gap:8px;color:var(--success);font-weight:600;font-size:15px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.door-hint{margin-top:12px;font-size:12px;color:#000;text-align:center}.room-content{padding:0 20px 24px;flex:1}.quick-actions{display:flex;flex-direction:column;gap:10px}.quick-btn{background:var(--card);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s;text-align:left}.quick-btn.active{border-color:var(--accent);background:#fffbf3}.quick-icon{font-size:22px;width:32px;text-align:center}.quick-label{flex:1;font-size:14px;font-weight:600;color:var(--text)}.toggle{width:42px;height:24px;border-radius:12px;background:var(--border);position:relative;transition:background .3s;flex-shrink:0}.toggle:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .3s;box-shadow:0 1px 4px #0003}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(18px)}.arrow{font-size:20px;color:var(--text-muted)}.modal-title{font-size:18px;font-weight:700;margin-bottom:20px;color:var(--text)}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:20px;text-align:center;color:var(--text-muted);font-size:13px;cursor:pointer;transition:border-color .2s}.upload-zone:hover{border-color:var(--accent)}.qr-overlay{position:absolute;inset:0;background:#000000bf;display:flex;align-items:flex-end;z-index:200;border-radius:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.qr-sheet{background:var(--card);border-radius:24px 24px 0 0;padding:20px 20px 36px;width:100%;animation:qrSlideUp .3s cubic-bezier(.34,1.2,.64,1)}@keyframes qrSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.qr-sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.qr-sheet-title{font-size:17px;font-weight:700;color:var(--text)}.qr-close-btn{width:32px;height:32px;border-radius:50%;background:var(--bg);border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.qr-viewfinder-wrap{position:relative;width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#000}.qr-reader{width:100%!important;height:100%!important;border:none!important}.qr-reader>*{border:none!important}#html5qr-reader>img,#html5qr-reader>div>span,#html5qr-reader__header_message,#html5qr-reader__status_span,#html5qr-reader__camera_selection,#html5qr-reader__dashboard,#html5qr-reader__dashboard_section,#html5qr-reader__dashboard_section_swaplink,#html5qr-reader__filescan_input{display:none!important}#html5qr-reader__scan_region{padding:0!important}#html5qr-reader video{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important}.qr-corner{position:absolute;width:28px;height:28px;border-color:var(--accent);border-style:solid;z-index:10}.qr-corner-tl{top:16px;left:16px;border-width:3px 0 0 3px;border-radius:4px 0 0}.qr-corner-tr{top:16px;right:16px;border-width:3px 3px 0 0;border-radius:0 4px 0 0}.qr-corner-bl{bottom:16px;left:16px;border-width:0 0 3px 3px;border-radius:0 0 0 4px}.qr-corner-br{bottom:16px;right:16px;border-width:0 3px 3px 0;border-radius:0 0 4px}.qr-scan-line{position:absolute;left:16px;right:16px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);z-index:10;animation:qrScanMove 2s ease-in-out infinite;box-shadow:0 0 8px var(--accent)}@keyframes qrScanMove{0%{top:20px;opacity:1}45%{top:calc(100% - 20px);opacity:1}50%{top:calc(100% - 20px);opacity:0}55%{top:20px;opacity:0}60%{top:20px;opacity:1}to{top:calc(100% - 20px);opacity:1}}.qr-hint{margin-top:16px;text-align:center;font-size:13px;color:var(--text-muted);line-height:1.5}.reservations-screen{display:flex;flex-direction:column;min-height:100%}.res-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.res-content{padding:20px;flex:1}.res-section-label{font-size:11px;font-weight:700;color:var(--text-muted);letter-spacing:.5px;margin-bottom:10px;margin-top:20px;padding-top:4px;border-top:1px solid var(--border)}.res-section-label:first-child{margin-top:0;border-top:none}.res-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center}.res-empty-icon{font-size:52px;margin-bottom:16px}.res-empty-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:8px}.res-empty-sub{font-size:13px;color:var(--text-muted);line-height:1.5;max-width:260px}.confirmed-res-card{background:var(--card);border-radius:var(--radius);padding:14px;display:flex;align-items:center;gap:12px;margin-bottom:8px;border-left:4px solid var(--success);box-shadow:var(--shadow);transition:opacity .3s}.confirmed-res-card.cancelled{border-left-color:var(--error);opacity:.6}.confirmed-res-icon{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.cancel-btn{background:none;border:1px solid var(--error);color:var(--error);border-radius:8px;padding:4px 10px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s}.cancel-btn:active{background:#ff6b6b1a}.order-tracker-card{background:var(--card);border-radius:var(--radius);padding:14px;margin-bottom:10px;box-shadow:var(--shadow);border-left:4px solid var(--accent)}.order-tracker-card.delivered{border-left-color:var(--success);opacity:.75}.order-tracker-head{display:flex;align-items:flex-start;margin-bottom:14px}.order-steps{display:flex;align-items:flex-start;position:relative}.order-step-label{font-size:9px;color:var(--text-muted);margin-top:5px;text-align:center;font-weight:500;line-height:1.2}.svc-card{background:var(--card);border-radius:var(--radius);padding:14px;display:flex;align-items:center;gap:12px;margin-bottom:8px;box-shadow:var(--shadow);border-left:3px solid var(--accent)}.svc-card-left{flex:1}.roomsvc-screen{display:flex;flex-direction:column;min-height:100%}.roomsvc-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.roomsvc-content{padding:0 20px 20px;flex:1}.towel-row{display:flex;align-items:center;gap:12px;padding:14px 0}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.amenity-btn{background:var(--card);border:2px solid var(--border);border-radius:14px;padding:30px 10px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .2s;position:relative}.amenity-btn.selected{border-color:var(--accent);background:#fffbf3}.amenity-check{position:absolute;top:6px;right:6px;width:18px;height:18px;background:var(--accent);border-radius:50%;color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700}.issue-status{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius);margin-bottom:16px;font-size:16px}.issue-status.pending{background:#fef3cd}.issue-status.repair{background:#dbeafe}.issue-status.resolved{background:#d4f5e4}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:20px;text-align:center;color:var(--text-muted);font-size:13px;cursor:pointer}.request-card{background:var(--card);border-radius:var(--radius);padding:12px 14px;display:flex;align-items:center;gap:12px;margin-bottom:8px;box-shadow:var(--shadow);border-left:3px solid var(--accent)}.restaurant-screen{display:flex;flex-direction:column;min-height:100%;position:relative}.rest-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.rest-content{padding:16px 20px;flex:1}.order-tracker{background:var(--card);border-radius:var(--radius);padding:14px;margin-bottom:10px;box-shadow:var(--shadow);border-left:4px solid var(--accent)}.order-tracker.delivered{border-left-color:var(--success);opacity:.75}.order-tracker-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.order-steps{display:flex;align-items:flex-start;gap:0;position:relative}.order-step-wrap{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.order-step-dot{width:24px;height:24px;border-radius:50%;background:var(--border);color:var(--text-muted);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:1;transition:all .4s}.order-step-dot.done{background:var(--success);color:#fff}.order-step-dot.active{background:var(--accent);color:#fff;box-shadow:0 0 0 4px #c9a96e40;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 4px #c9a96e40}50%{box-shadow:0 0 0 8px #c9a96e1a}}.order-step-label{font-size:10px;color:var(--text-muted);margin-top:5px;text-align:center;font-weight:500;line-height:1.2}.order-step-label.active{color:var(--accent);font-weight:700}.order-step-label.done{color:var(--success)}.order-step-line{position:absolute;top:12px;left:62%;right:-38%;height:2px;background:var(--border);z-index:0;transition:background .4s}.order-step-line.filled{background:var(--success)}.orders-btn{width:40px;height:40px;border-radius:50%;background:#1a1a2e;border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;position:relative}.cart-header-btn{width:40px;height:40px;border-radius:50%;background:var(--accent);border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;position:relative}.cart-count{position:absolute;top:-4px;right:-4px;background:var(--error);color:#fff;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}.cat-pills{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}.cat-pills::-webkit-scrollbar{display:none}.cat-pill{padding:7px 16px;border-radius:100px;border:1.5px solid var(--border);background:var(--card);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s;color:var(--text-muted)}.cat-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.menu-item-card{background:var(--card);border-radius:var(--radius);padding:12px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.menu-item-img{width:58px;height:58px;border-radius:12px;background:linear-gradient(135deg,#fef3cd,#e8d5a3);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.add-btn{width:32px;height:32px;border-radius:50%;background:var(--accent);border:none;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;padding-bottom:1px;transition:all .15s}.add-btn:active{transform:scale(.9)}.cart-float{position:absolute;bottom:90px;left:20px;right:20px;background:#1a1a2e;color:#fff;border-radius:var(--radius);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;box-shadow:var(--shadow-md);font-size:14px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rest-info-card{background:var(--card);border-radius:var(--radius);padding:14px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow);margin-bottom:12px}.rest-info-visual{width:58px;height:58px;border-radius:14px;background:linear-gradient(135deg,#1a1a2e,#0f3460);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.table-modal{max-height:88vh;overflow-y:auto}.modal-section-label{font-size:11px;font-weight:700;color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;margin-bottom:10px}.table-section{background:var(--card);border-radius:var(--radius);padding:14px;margin-bottom:10px;box-shadow:var(--shadow)}.qr-section{background:var(--card);border-radius:var(--radius);padding:24px 20px;margin-top:0;box-shadow:var(--shadow);text-align:center}.modal{background:var(--card);border-radius:24px 24px 0 0;padding:24px 20px 32px;width:100%;animation:slideUp .3s ease}.modal-daypicker-wrap{border-radius:14px;overflow:hidden;background:#f8f7f4;padding:6px 4px 8px;margin-bottom:0}.modal-daypicker-wrap .rdp{--rdp-accent-color: var(--accent, #c9a96e);--rdp-accent-background-color: rgba(201,169,110,.15);margin:0 auto;font-family:inherit;font-size:13px}.modal-daypicker-wrap .rdp-month_caption{display:flex;align-items:center;justify-content:space-between;padding:6px 13px 4px}.modal-daypicker-wrap .rdp-caption_label{font-size:14px;font-weight:700;color:var(--text, #1a1a1a);text-transform:capitalize;order:0}.modal-daypicker-wrap .rdp-nav{display:flex;gap:4px;order:1}.modal-daypicker-wrap .rdp-button_previous,.modal-daypicker-wrap .rdp-button_next{border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text, #1a1a1a);font-size:14px;padding:0}.modal-daypicker-wrap .rdp-weekday{font-size:11px;font-weight:700;color:#aaa;text-transform:uppercase;text-align:center}.modal-daypicker-wrap .rdp-day_button{width:34px;height:34px;border-radius:50%;border:none;background:transparent;font-size:13px;font-weight:500;color:var(--text, #1a1a1a);cursor:pointer;transition:background .15s,color .15s}.modal-daypicker-wrap .rdp-day_button:hover{background:#c9a96e2e;color:var(--accent, #c9a96e)}.modal-daypicker-wrap .rdp-today .rdp-day_button{border:2px solid var(--accent, #c9a96e);color:var(--accent, #c9a96e);font-weight:700}.modal-daypicker-wrap .rdp-selected .rdp-day_button{background:var(--accent, #c9a96e)!important;color:#fff!important;font-weight:700;border:none}.modal-daypicker-wrap .rdp-disabled .rdp-day_button{color:#ccc;cursor:default}.modal-daypicker-wrap .rdp-disabled .rdp-day_button:hover{background:transparent;color:#ccc}.modal-daypicker-wrap .rdp-outside .rdp-day_button{color:#ccc}.explore-screen{display:flex;flex-direction:column;min-height:100%}.explore-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.explore-content{padding:16px 20px 24px;flex:1}.map-placeholder{height:180px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius);position:relative;overflow:hidden;margin-bottom:16px;display:flex;align-items:center;justify-content:center}.map-overlay{display:flex;flex-direction:column;align-items:center;z-index:1}.map-pin{position:absolute;font-size:20px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));cursor:pointer;transition:transform .2s;z-index:2}.map-pin:hover{transform:scale(1.2)}.map-pin.hotel{font-size:24px;z-index:3}.filter-pills{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}.filter-pills::-webkit-scrollbar{display:none}.filter-pill{padding:7px 14px;border-radius:100px;border:1.5px solid var(--border);background:var(--card);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s;color:var(--text-muted)}.filter-pill.active{background:#1a1a2e;border-color:#1a1a2e;color:#fff}.place-card{background:var(--card);border-radius:var(--radius);padding:14px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.place-emoji{width:50px;height:50px;border-radius:12px;background:linear-gradient(135deg,#e8d5a3,#c9a96e);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.save-btn{background:none;border:none;font-size:22px;cursor:pointer;transition:transform .2s}.save-btn:active{transform:scale(1.3)}.event-card{background:var(--card);border-radius:var(--radius);padding:16px;display:flex;align-items:center;gap:14px;margin-bottom:10px;box-shadow:var(--shadow)}.event-emoji{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.transport-card{background:var(--card);border-radius:var(--radius);padding:16px;display:flex;align-items:center;gap:14px;margin-bottom:10px;box-shadow:var(--shadow)}.transport-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#d4f5e4,#a8e6cf);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.club-screen{display:flex;flex-direction:column;min-height:100%}.club-header{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:54px 20px 0;display:flex;align-items:center;gap:12px}.club-hero{background:linear-gradient(160deg,#1a1a2e,#16213e);padding:16px 20px 30px}.club-card{background:linear-gradient(5deg,#c9a96e,#e8d5a3,#fff6e5);border-radius:20px;padding:24px 20px;box-shadow:0 8px 32px #c9a96e66}.club-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.club-level-badge{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#0009;margin-bottom:4px}.club-guest-name{font-size:22px;font-weight:800;color:#1a1a1a}.club-card-bottom{display:flex;justify-content:space-between;align-items:center}.redeem-btn{background:#1a1a2e;color:#c9a96e;border:none;border-radius:var(--radius);padding:12px 20px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}.redeem-btn:active{transform:scale(.95)}.club-content{padding:24px 20px;flex:1}.benefit-row{display:flex;align-items:center;padding:14px 0;gap:12px}.history-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.modal-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:flex-end;z-index:50;border-radius:inherit}.modal{background:var(--card);border-radius:24px 24px 0 0;padding:24px 20px 32px;width:100%;max-height:80%;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-title{font-size:18px;font-weight:700;margin-bottom:20px}.chat-screen{display:flex;flex-direction:column;height:100%;background:#f0f0f5}.chat-header{background:#fff;padding:54px 20px 14px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.chat-agent{flex:1;display:flex;align-items:center;gap:10px}.agent-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-light));display:flex;align-items:center;justify-content:center;font-size:20px}.agent-name{font-size:15px;font-weight:700}.agent-status{font-size:12px;color:#2ecc71;font-weight:500}.chat-messages{flex:1;overflow-y:auto;padding:16px 16px 8px;display:flex;flex-direction:column;gap:10px;scrollbar-width:none}.chat-messages::-webkit-scrollbar{display:none}.chat-date-badge{text-align:center;font-size:11px;color:var(--text-muted);font-weight:600;background:#ffffff0d;padding:4px 12px;border-radius:100px;align-self:center;margin-bottom:4px}.msg-row{display:flex;align-items:flex-end;gap:8px}.msg-row.guest{flex-direction:row-reverse}.msg-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-light));display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.msg-bubble{max-width:72%;padding:10px 14px;border-radius:18px}.msg-bubble.hotel{background:#fff;border-bottom-left-radius:4px;box-shadow:0 1px 4px #0000000f}.msg-bubble.guest{background:#1a1a2e;border-bottom-right-radius:4px}.msg-text{font-size:14px;line-height:1.5}.msg-bubble.hotel .msg-text{color:#1a1a1a}.msg-bubble.guest .msg-text{color:#fff}.msg-time{font-size:10px;margin-top:4px;text-align:right}.msg-bubble.hotel .msg-time{color:#999}.msg-bubble.guest .msg-time{color:#ffffff80}.typing-indicator{display:flex;gap:4px;padding:4px 2px}.typing-indicator span{width:7px;height:7px;background:#bbb;border-radius:50%;animation:typingBounce 1.2s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.quick-replies{display:flex;gap:8px;padding:8px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;scrollbar-width:none}.quick-replies::-webkit-scrollbar{display:none}.quick-reply-btn{padding:7px 14px;border-radius:100px;border:1.5px solid var(--border);background:#fff;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;color:var(--text);transition:all .15s}.quick-reply-btn:active{background:#f0f0f0}.chat-input-bar{display:flex;align-items:center;gap:10px;padding:10px 16px 16px;background:#fff;border-top:1px solid var(--border)}.chat-input{flex:1;padding:12px 16px;border:1.5px solid var(--border);border-radius:24px;font-family:inherit;font-size:14px;background:#f5f5f0;outline:none;color:var(--text)}.chat-input:focus{border-color:var(--accent)}.send-btn{width:42px;height:42px;border-radius:50%;background:var(--accent);border:none;color:#fff;font-size:18px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.send-btn:active{transform:scale(.9)}.spa-screen{display:flex;flex-direction:column;min-height:100%;position:relative}.spa-header{background:linear-gradient(160deg,#1a1a2e,#2c1a3a);padding:54px 20px 20px;display:flex;align-items:center;gap:12px}.spa-banner{background:linear-gradient(135deg,#2c1a3a,#1a1a2e);padding:16px 20px 20px}.spa-banner-content{display:flex;align-items:center;gap:14px}.spa-banner-emoji{width:58px;height:58px;border-radius:18px;background:#c9a96e26;border:1px solid rgba(201,169,110,.3);display:flex;align-items:center;justify-content:center;font-size:30px;flex-shrink:0}.spa-banner-name{font-size:16px;font-weight:700;color:#fff;margin-bottom:2px}.spa-banner-sub{font-size:12px;color:#ffffff8c;margin-bottom:8px}.spa-banner-tags{display:flex;gap:6px;flex-wrap:wrap}.spa-tag{font-size:11px;font-weight:600;color:var(--accent);background:#c9a96e1f;border:1px solid rgba(201,169,110,.25);border-radius:100px;padding:3px 10px}.spa-content{padding:16px 20px 100px;flex:1;overflow-y:auto}.spa-service-card{background:var(--card);border-radius:var(--radius);padding:14px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow);cursor:pointer;transition:all .2s;border:2px solid transparent}.spa-service-card:active{transform:scale(.98)}.spa-service-card.active{border-color:var(--accent);background:#fff8f0}.spa-service-emoji{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#f5f0ff,#e8d5ff);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.spa-service-name{font-weight:700;font-size:14px;color:var(--text)}.spa-service-desc{font-size:12px;color:var(--text-muted);margin-top:2px;line-height:1.3}.spa-service-duration{font-size:11px;color:var(--text-muted)}.spa-service-price{font-size:14px;font-weight:700;color:var(--accent)}.spa-service-arrow{font-size:22px;color:var(--text-muted);transition:transform .2s;flex-shrink:0}.spa-service-arrow.open{transform:rotate(90deg);color:var(--accent)}.spa-booking-panel{margin-top:16px;border-radius:var(--radius);overflow:hidden;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.spa-booking-header{background:var(--accent);padding:12px 16px;border-radius:var(--radius) var(--radius) 0 0}.spa-booking-title{font-size:14px;font-weight:700;color:#fff}.spa-booking-summary{background:var(--card);border-radius:var(--radius-sm);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-muted);margin-bottom:12px;box-shadow:var(--shadow)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #1a1a2e;--accent: #c9a96e;--accent-light: #e8d5a3;--bg: #f5f5f0;--card: #ffffff;--card-raised: #f0f0eb;--text: #1a1a1a;--text-muted: #6b6b6b;--border: #e5e5e5;--success: #2ecc71;--error: #e74c3c;--radius: 16px;--radius-sm: 10px;--shadow: 0 2px 16px rgba(0,0,0,.07);--shadow-md: 0 8px 32px rgba(0,0,0,.13)}html,body{height:100dvh;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:#1a1a2e;color:var(--text);-webkit-font-smoothing:antialiased}#root{height:100dvh;display:flex;align-items:center;justify-content:center}.app-shell{width:390px;height:844px;background:var(--bg);border-radius:44px;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:0 0 0 10px #0d0d1a,0 30px 80px #0009}@media(max-height:900px){.app-shell{height:100vh;border-radius:0;width:390px}}@media(max-width:420px){.app-shell{width:100vw;height:100vh;border-radius:0;box-shadow:none}}.status-bar{height:44px;background:transparent;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:12px;font-weight:600;flex-shrink:0}.screen{flex:1;overflow-y:auto;overflow-x:clip;-webkit-overflow-scrolling:touch;scrollbar-width:none}.screen::-webkit-scrollbar{display:none}.bottom-nav{height:82px;background:var(--card);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-around;padding:0 8px 16px;flex-shrink:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:var(--radius-sm);transition:all .2s;color:var(--text-muted);font-size:10px;font-weight:500}.bottom-nav button.active{color:var(--accent)}.bottom-nav button .nav-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:var(--radius);border:none;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;width:100%}.btn-primary{background:var(--accent);color:#fff}.btn-primary:active{opacity:.85;transform:scale(.98)}.btn-outline{background:transparent;border:1.5px solid var(--accent);color:var(--accent)}.btn-ghost{background:var(--bg);color:var(--text)}.tabs{display:flex;background:var(--bg);border-radius:var(--radius);padding:4px;gap:4px}.tab-btn{flex:1;padding:9px 8px;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background:transparent;color:var(--text-muted)}.tab-btn.active{background:var(--card);color:var(--text);font-weight:600;box-shadow:var(--shadow)}.qty-control{display:flex;align-items:center;gap:12px}.qty-btn{width:30px;height:30px;border-radius:50%;border:none;background:var(--bg);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-weight:300;color:var(--accent)}.qty-btn:active{transform:scale(.9)}.qty-value{font-size:16px;font-weight:600;min-width:20px;text-align:center}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:600}.badge-success{background:#d4f5e4;color:#1a7a45}.badge-warning{background:#fef3cd;color:#856404}.badge-error{background:#fde8e8;color:#b91c1c}.badge-gold{background:#fef3cd;color:#92400e}.section-header{display:flex;align-items:center;justify-content:space-between;margin:45px 0 25px;justify-content:center}.section-title,.modal-title,.greeting-text,.offer-title,.menu-label,.exp-slide-name,.room-title,.res-empty-title,.rest-name{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:0}.section-title{font-size:17px;font-weight:700;color:var(--text);letter-spacing:0}.section-link{font-size:13px;color:var(--accent);font-weight:500;background:none;border:none;cursor:pointer}.progress-bar{height:8px;background:var(--bg);border-radius:100px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#f0c040);border-radius:100px;transition:width .6s ease}.divider{height:1px;background:var(--border);margin:12px 0}.input{width:100%;padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg);color:var(--text);outline:none;transition:border-color .2s}.input:focus{border-color:var(--accent)}textarea.input{resize:vertical;min-height:80px}.select{width:100%;padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg);color:var(--text);outline:none;appearance:none}.toast{position:absolute;bottom:100px;left:50%;transform:translate(-50%);background:#1a1a1a;color:#fff;padding:12px 20px;border-radius:var(--radius);font-size:14px;font-weight:500;white-space:nowrap;z-index:100;animation:toastIn .3s ease,toastOut .3s ease 2.2s forwards}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.rdp-chevron{fill:#0d0d1a}
