@charset "UTF-8";:root{--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--header-h: 50px;--tabbar-h: 50px;--mobile-max-width: 428px;--color-primary: #e74c3c;--color-secondary: #667eea;--color-background: #f5f5f5;--color-surface: #ffffff;--color-text: #2c3e50;--color-text-secondary: #7f8c8d;--color-border: #e1e5e9;--color-error: #e74c3c;--color-success: #27ae60;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--transition-fast: .2s;--transition-normal: .3s;--transition-slow: .5s}*{margin:0;padding:0;box-sizing:border-box}ul,ol{list-style:none}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}html,body{width:100%;max-width:100%;overflow-x:hidden;line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0 auto;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,sans-serif;padding:0;background-color:var(--color-background)}.mobile-header{display:flex;position:fixed;height:calc(var(--header-h));max-width:var(--mobile-max-width);top:0;width:100%;z-index:1100;background-color:#fff;color:#4b4848;padding:.5rem;padding-top:calc(.5rem + env(safe-area-inset-top));box-shadow:0 2px 10px #0000001a;flex-shrink:0}.mobile-header .header-content{display:flex;align-items:center;justify-content:space-between;position:relative;width:100%;height:32px}.mobile-header h1{margin:0;font-size:1.2rem;font-weight:600;text-align:center;flex:1;line-height:32px}.header-left,.header-right{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.back-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;color:#4b4848;width:32px;height:32px}.back-button:hover{background-color:#f5f5f5}.back-button:active{background-color:#e9ecef;transform:scale(.95)}@media (max-width: 768px){.back-button:active{background-color:#e9ecef;transform:scale(.9)}}.main-container{display:flex;justify-content:center;gap:80px;margin:0 auto}.desktop-sidebar{display:none;height:100vh;height:100dvh;position:sticky;top:0;width:var(--mobile-max-width);justify-content:center}.desktop-sidebar .sidebar-content{display:flex;flex-direction:column;justify-content:center;align-items:center}.desktop-sidebar .app-brand{margin-bottom:24px}.desktop-sidebar .app-brand .brand-logo{width:140px;height:auto;display:block;border-radius:16px;box-shadow:0 4px 16px #00000026}.desktop-sidebar .qr-box{display:flex;align-items:center;gap:.7rem;justify-content:space-between;background-color:#fff;border-radius:8px;padding:36px;max-width:420px}.desktop-sidebar .qr-box .qr-text{display:flex;flex-direction:column;gap:4px;color:#222}.desktop-sidebar .qr-box .qr-text p{white-space:nowrap;margin:0}.desktop-sidebar .qr-box .qr-code img{width:10rem}.mobile-area{background-color:#fff;max-width:var(--mobile-max-width);width:100%;min-height:100dvh;overflow-x:hidden;position:relative;flex:1 1 auto;padding-top:var(--header-h)}.mobile-area .card{margin:0 auto;margin-bottom:1rem;width:100%;overflow:hidden}.mobile-area .swiper-container{margin-top:.5rem}.mobile-area .mobile-wrapper{padding:16px;padding-bottom:calc(var(--sab, 0px) + var(--tabbar-h) + 10px)}.mobile-area .bottom-tabbar{display:flex;height:calc(var(--tabbar-h));width:100%;max-width:var(--mobile-max-width);position:fixed;bottom:0;background-color:#fff;border-top:1px solid #e1e5e9;box-shadow:0 -2px 10px #0000000d;z-index:1100;padding-bottom:var(--sab, 0px)}.mobile-area .bottom-tabbar.bottom-tabbar--detail .gnb{display:none}.mobile-area .bottom-tabbar.bottom-tabbar--detail .detail-actions{display:flex;gap:.75rem;width:100%;padding:0 16px;align-items:center}.mobile-area .bottom-tabbar.bottom-tabbar--detail .detail-actions button{flex:1;padding:.75rem 1rem;font-size:1rem;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s}.mobile-area .bottom-tabbar.bottom-tabbar--detail .detail-actions .btn-price{background:#fff;color:#e74c3c;border:2px solid #e74c3c}.mobile-area .bottom-tabbar.bottom-tabbar--detail .detail-actions .btn-booking{background:#e74c3c;color:#fff}.mobile-area .bottom-tabbar .gnb{display:flex;justify-content:space-between;align-items:stretch;width:100%}.mobile-area .bottom-tabbar .gnb>li{flex:1;display:flex}.mobile-area .bottom-tabbar .tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:var(--tabbar-h);max-height:var(--tabbar-h);padding-bottom:10px;border:0;border-radius:0;background:none;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;appearance:none;-webkit-appearance:none;outline:none;width:100%;color:#7f8c8d}.mobile-area .bottom-tabbar .tab-item .nav-icon{width:1.2rem;padding-top:.5rem}.mobile-area .bottom-tabbar .tab-item .tab-label{font-size:.8rem;line-height:.9;color:inherit;font-weight:500;display:flex;justify-content:center;align-items:center;width:100%;white-space:normal;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center;margin:0}.mobile-area .bottom-tabbar .tab-item:hover{background-color:#ecf0f1;color:#2c3e50}.mobile-area .bottom-tabbar .tab-item.active{background:#d1d1d1;color:#2c3e50;font-weight:700;position:relative}.content-area{width:100%}.content-section{padding:0}@media (min-width: 1024px){body{height:100dvh}.desktop-sidebar{display:flex}}@font-face{font-family:swiper-icons;src:url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);font-weight:400;font-style:normal}: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);-webkit-backface-visibility:hidden;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-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.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}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.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;-webkit-appearance: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)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.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}.swiper-container{width:100%;max-width:100%;overflow:hidden;padding:.1rem}.mySwiper{width:100%;max-width:100%;height:100%;border-radius:9px;overflow:hidden}.mySwiper .swiper-pagination-bullet{width:6px;height:6px;background:#0000004d;opacity:1}.mySwiper .swiper-pagination-bullet.swiper-pagination-bullet-active{background:#000}.swiper-slide{text-align:center;background:#fff;display:flex;justify-content:center;align-items:center}.banner-slide{width:100%;height:100%;padding:0 .3rem;overflow:hidden}.banner-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.category-grid-container{width:100%;padding:0;margin:0;box-sizing:border-box}@media (min-width: 1024px){.category-grid-container{max-width:400px;margin:0 auto}}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.1rem;padding:.3rem;background:#fff;width:100%;margin:0;box-sizing:border-box;overflow:hidden;place-items:center;justify-items:center;align-items:center}.category-item{display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,background-color .2s ease;border-radius:8px;padding:.2rem;box-sizing:border-box;width:100%;aspect-ratio:1;position:relative}.category-item:hover{transform:translateY(-2px);background-color:#f8f9fa}.category-item:active{transform:translateY(0);background-color:#e9ecef}@media (max-width: 768px){.category-item:active{transform:scale(.95);background-color:#e9ecef}}.category-icon{width:70px;height:70px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.category-icon img{width:90%;height:90%;object-fit:contain}.category-name{font-size:.8rem;font-weight:500;color:#333;text-align:center;line-height:1.2;word-break:keep-all}.review-videos{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0}.video-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden;display:flex;flex-direction:column}.video-card .thumb,.video-card .player{width:100%;aspect-ratio:9/16;display:block;position:relative;background:#f6f6f6}.video-card .thumb{border:0;padding:0;cursor:pointer}.video-card .thumb img,.video-card .thumb .thumb-fallback{width:100%;height:100%;object-fit:cover;display:block}.video-card .thumb .thumb-fallback{background:linear-gradient(180deg,#f9f9f9,#ececec)}.video-card .thumb .play-badge{position:absolute;right:10px;bottom:10px;background:#0009;color:#fff;font-weight:700;border-radius:50%;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center}.video-card .caption{padding:.75rem .85rem;font-size:.95rem;line-height:1.35;color:#222}.filter-bar{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.75rem;background:#fff;position:relative}.filter-bar .filter-top{display:flex;align-items:center;gap:.5rem}.filter-bar .filter-buttons{display:flex;gap:.5rem;align-items:center;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1}.filter-bar .filter-buttons::-webkit-scrollbar{display:none}.filter-bar .filter-bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .25rem}.filter-bar .filter-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem .9rem;background:#fff;color:#555;border:1.5px solid #ddd;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.filter-bar .filter-btn .arrow{font-size:.7rem;transition:transform .2s ease}.filter-bar .filter-btn .filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:#e74c3c;color:#fff;border-radius:10px;font-size:.7rem;font-weight:600}.filter-bar .filter-btn:hover,.filter-bar .filter-btn.active{border-color:#e74c3c;color:#e74c3c;background:#fff5f5}.filter-bar .filter-btn.active .arrow{transform:rotate(180deg)}.filter-bar .filter-btn.has-value{border-color:#e74c3c;color:#e74c3c}.filter-bar .filter-btn.reset{background:#f5f5f5;border-color:#999;color:#666;padding:.35rem .75rem;font-size:.7rem;height:28px;display:flex;align-items:center}.filter-bar .filter-btn.reset .reset-icon{font-size:1rem;display:inline-block;transition:transform .3s ease}.filter-bar .filter-btn.reset:hover{background:#e74c3c;border-color:#e74c3c;color:#fff}.filter-bar .filter-btn.reset:hover .reset-icon{transform:rotate(180deg)}.filter-bar .result-count{font-size:.7rem;color:#999;font-weight:400;white-space:nowrap;margin-right:.4rem}.filter-bar .sort-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;margin-left:auto;background:#fff;color:#666;border:1px solid #ddd;border-radius:6px;font-size:.7rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.filter-bar .sort-btn .sort-icon{font-size:.8rem;color:#888}.filter-bar .sort-btn:hover{background:#f8f8f8;border-color:#ccc}.filter-bar .sort-btn:active{background:#f0f0f0}.filter-dropdown-container{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:.5rem;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;border:1px solid #e0e0e0}.filter-dropdown .filter-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #f0f0f0}.filter-dropdown .filter-dropdown-header .dropdown-title{font-size:.95rem;font-weight:600;color:#333}.filter-dropdown .filter-dropdown-header .close-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:50%;color:#666;font-size:1.2rem;cursor:pointer;transition:all .2s ease}.filter-dropdown .filter-dropdown-header .close-btn:hover{background:#f5f5f5;color:#333}.filter-dropdown .filter-dropdown-content{padding:.75rem;min-height:200px;max-height:400px;overflow-y:auto}.filter-dropdown .filter-dropdown-content::-webkit-scrollbar{width:6px}.filter-dropdown .filter-dropdown-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.filter-dropdown .filter-dropdown-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.filter-dropdown .filter-dropdown-content::-webkit-scrollbar-thumb:hover{background:#999}.filter-dropdown .filter-dropdown-content .location-grid{display:flex;gap:1rem}.filter-dropdown .filter-dropdown-content .location-section{min-width:0}.filter-dropdown .filter-dropdown-content .location-section:first-child{flex:0 0 auto;width:100px}.filter-dropdown .filter-dropdown-content .location-section:last-child{flex:1}.filter-dropdown .filter-dropdown-content .location-section .section-title{font-size:.8rem;font-weight:600;color:#333;margin-bottom:.5rem;padding-left:.5rem;padding-bottom:.4rem;border-bottom:1px solid #e0e0e0}.filter-dropdown .filter-dropdown-content .location-section .filter-options{display:flex;flex-wrap:wrap;gap:.4rem}.filter-dropdown .filter-dropdown-content .location-section.city-section{padding-bottom:1rem}.filter-dropdown .filter-dropdown-content .location-section.city-section .section-title{padding-left:.75rem;margin-bottom:.4rem;padding-bottom:.3rem}.filter-dropdown .filter-dropdown-content .location-section.city-section .filter-options{flex-direction:column;gap:0}.filter-dropdown .filter-dropdown-footer{display:flex;gap:.75rem;padding:.75rem 1rem;border-top:1px solid #f0f0f0;background:#fafafa}.filter-dropdown .filter-dropdown-footer .reset-filter-btn{flex:1;padding:.5rem 1.5rem;background:transparent;color:#e74c3c;border:1.5px solid #e74c3c;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.filter-dropdown .filter-dropdown-footer .reset-filter-btn:hover{background:#fff5f4}.filter-dropdown .filter-dropdown-footer .reset-filter-btn:active{background:#ffe5e5}.filter-dropdown .filter-dropdown-footer .apply-btn{flex:1;padding:.5rem 1.5rem;background:#e74c3c;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-dropdown .filter-dropdown-footer .apply-btn:hover{background:#c0392b}.filter-dropdown .filter-options{display:flex;flex-wrap:wrap;gap:.5rem}.filter-dropdown .filter-chip{padding:.5rem 1rem;background:#f5f5f5;border:1.5px solid transparent;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:#555;font-weight:500}.filter-dropdown .filter-chip:hover{background:#fff5f5;border-color:#ffc9c9}.filter-dropdown .filter-chip.active{background:#e74c3c;color:#fff;border-color:#e74c3c}.filter-dropdown .filter-chip.city-chip{background:transparent;border:none;border-left:3px solid transparent;padding:.65rem .75rem;border-radius:0;text-align:left;width:100%;font-weight:500;font-size:.9rem;color:#666}.filter-dropdown .filter-chip.city-chip:hover{background:#f8f9fa;color:#333}.filter-dropdown .filter-chip.city-chip.active{background:#fff5f5;color:#e74c3c;border-left-color:#e74c3c;font-weight:600}.filter-dropdown .price-range{display:flex;flex-direction:column;gap:0;padding:0}.filter-dropdown .price-range .price-histogram{display:flex;align-items:flex-end;justify-content:space-between;height:60px;gap:1px;padding:0 10%;margin-top:1.5rem;margin-bottom:.5rem}.filter-dropdown .price-range .price-histogram .histogram-bar{flex:1;background:#d8d8d8;border-radius:1px 1px 0 0;min-height:1px;transition:background .2s ease}.filter-dropdown .price-range .price-histogram .histogram-bar.active{background:#e74c3c}.filter-dropdown .price-range .price-slider-wrapper{padding:0 10%;margin-bottom:1.2rem}.filter-dropdown .price-range .price-values{display:flex;justify-content:space-between;margin-bottom:.4rem;font-size:.7rem;color:#999;font-weight:500}.filter-dropdown .price-range .price-slider-container{position:relative;height:24px;display:flex;align-items:center}.filter-dropdown .price-range .price-slider-container .price-slider{position:absolute;width:100%;height:4px;background:transparent;pointer-events:none;appearance:none;-webkit-appearance:none;margin:0}.filter-dropdown .price-range .price-slider-container .price-slider::-webkit-slider-runnable-track{height:4px;background:transparent}.filter-dropdown .price-range .price-slider-container .price-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #ccc;cursor:pointer;pointer-events:all;position:relative;margin-top:-8px;box-shadow:0 1px 3px #00000026;transition:border-color .2s}.filter-dropdown .price-range .price-slider-container .price-slider::-webkit-slider-thumb:hover{border-color:#aaa}.filter-dropdown .price-range .price-slider-container .price-slider::-webkit-slider-thumb:active{border-color:#888}.filter-dropdown .price-range .price-slider-container .price-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #ccc;cursor:pointer;pointer-events:all;box-shadow:0 1px 3px #00000026}.filter-dropdown .price-range .price-slider-container .price-slider::-moz-range-track{height:4px;background:transparent}.filter-dropdown .price-range .price-slider-container .price-slider.price-slider-min{z-index:3}.filter-dropdown .price-range .price-slider-container .price-slider.price-slider-max{z-index:2}.filter-dropdown .price-range .price-slider-container:before{content:"";position:absolute;width:100%;height:4px;background:#d8d8d8;border-radius:2px;top:50%;transform:translateY(-50%);left:0}.filter-dropdown .price-range .price-input-row{display:flex;align-items:flex-end;gap:.6rem;padding:0 10%;margin-bottom:1rem}.filter-dropdown .price-range .price-input-group{flex:1;display:flex;flex-direction:column;gap:.3rem}.filter-dropdown .price-range .price-input-group .price-label{font-size:.7rem;color:#999;font-weight:500;padding-left:.1rem}.filter-dropdown .price-range .price-input-group .price-input-wrapper{display:flex;align-items:center;border:1px solid #ddd;border-radius:6px;background:#fff;transition:border-color .2s;padding:.5rem .8rem}.filter-dropdown .price-range .price-input-group .price-input-wrapper:focus-within{border-color:#bbb}.filter-dropdown .price-range .price-input-group .price-input-wrapper .currency-symbol{font-size:1rem;color:#999;font-weight:500;margin-right:.3rem}.filter-dropdown .price-range .price-input-group .price-input-wrapper .price-input{flex:1;text-align:right;border:none;font-size:.9rem;font-weight:600;color:#333;padding:0;background:transparent;width:100%}.filter-dropdown .price-range .price-input-group .price-input-wrapper .price-input:focus{outline:none}.filter-dropdown .price-range .price-input-group .price-input-wrapper .price-input::-webkit-inner-spin-button,.filter-dropdown .price-range .price-input-group .price-input-wrapper .price-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.filter-dropdown .price-range .price-input-group .price-input-wrapper .price-input[type=number]{appearance:textfield;-moz-appearance:textfield}.filter-dropdown .price-range .price-separator{color:#ccc;font-size:1.1rem;font-weight:400;padding-bottom:.7rem}.filter-dropdown .price-filter .filter-dropdown-header{display:flex;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e8e8e8}.filter-dropdown .price-filter .filter-dropdown-header .dropdown-title{font-size:.95rem;font-weight:600;color:#333;margin-right:auto}.filter-dropdown .price-filter .filter-dropdown-header .price-description{font-size:.75rem;color:#999;font-weight:500;margin-right:1rem}.filter-dropdown .price-filter .filter-dropdown-header .close-btn{font-size:1.4rem;color:#aaa}.filter-dropdown .price-filter .filter-dropdown-header .close-btn:hover{color:#888}.filter-dropdown .price-filter .filter-dropdown-content{padding:1rem 1.5rem}.filter-dropdown .price-filter .filter-dropdown-footer{padding:.9rem 1.25rem;border-top:1px solid #e8e8e8;background:#fff;display:flex;gap:.75rem}.filter-dropdown .price-filter .filter-dropdown-footer .reset-filter-btn{flex:1;padding:.85rem;background:transparent;color:#e74c3c;border:1.5px solid #e74c3c;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.filter-dropdown .price-filter .filter-dropdown-footer .reset-filter-btn:hover{background:#fff5f4}.filter-dropdown .price-filter .filter-dropdown-footer .reset-filter-btn:active{background:#ffe5e5}.filter-dropdown .price-filter .filter-dropdown-footer .apply-btn{flex:1;padding:.85rem;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.filter-dropdown .price-filter .filter-dropdown-footer .apply-btn:hover{background:#d63828}.filter-dropdown .price-filter .filter-dropdown-footer .apply-btn:active{background:#c9302c}.no-results{text-align:center;padding:3rem 1rem;color:#999;font-size:1.1rem;width:100%}.no-results p{margin:0}.hospital-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:#2c3e50}.hospital-subtitle{font-size:.95rem;color:#7f8c8d;margin-bottom:1.5rem}.hospital-grid{display:flex;flex-direction:column;gap:.5rem;width:100%}.hospital-grid .hospital-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 0 5px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.hospital-grid .hospital-card a{display:block;color:inherit;text-decoration:none}.hospital-grid .hospital-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.hospital-grid .hospital-card:hover .hospital-image{transform:scale(1.01)}.hospital-grid .hospital-card .hospital-card-content{display:flex;align-items:flex-start;gap:.75rem;padding:.8rem .9rem}.hospital-grid .hospital-card .hospital-card-logo{width:64px;height:64px;border-radius:12px;overflow:hidden;background:#f8f9fa;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hospital-grid .hospital-card .hospital-card-logo img{width:100%;height:100%;object-fit:contain;display:block}.hospital-grid .hospital-card .hospital-card-logo.placeholder{font-size:.7rem;color:#999}.hospital-grid .hospital-card .hospital-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.hospital-grid .hospital-card .hospital-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.hospital-grid .hospital-card .hospital-card-name{font-size:1rem;font-weight:600;color:#222;margin:0;line-height:1.3}.hospital-grid .hospital-card .hospital-card-meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;font-size:.78rem;color:#666}.hospital-grid .hospital-card .hospital-card-tag{padding:.1rem .4rem;border-radius:999px;background:#fff5f5;color:#e74c3c;font-size:.75rem}.hospital-grid .hospital-card .hospital-card-location{font-size:.78rem;color:#666}.hospital-grid .hospital-card .hospital-card-address{margin:0;margin-top:.1rem;font-size:.78rem;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hospital-grid .hospital-card .hospital-image-wrapper{width:100%;height:auto;overflow:hidden;background:#f8f9fa}.hospital-grid .hospital-card .hospital-image-wrapper .hospital-image{width:100%;height:auto;object-fit:contain;display:block;transition:transform .3s ease}.hospital-detail{padding-bottom:calc(var(--sab, 0px) + var(--tabbar-h) + 10px)}.hospital-detail .hospital-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;margin-top:.5rem;padding:.5rem;background:#fff;border-radius:0}.hospital-detail .hospital-header .hospital-header-card{display:flex;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #f0f0f0;align-items:stretch;flex-wrap:wrap}.hospital-detail .hospital-header .hospital-header-card .hospital-card-logo{flex:0 0 96px;width:96px;min-height:96px;height:100%;max-height:160px;border-radius:16px;background:linear-gradient(135deg,#fdfbfb,#ebedee);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 1px 2px #00000014;padding:8px}.hospital-detail .hospital-header .hospital-header-card .hospital-card-logo img{width:100%;height:100%;object-fit:contain}.hospital-detail .hospital-header .hospital-header-card .hospital-card-logo.placeholder{font-size:.8rem;color:#999}.hospital-detail .hospital-header .hospital-header-card .hospital-card-logo.detail{width:124px;min-height:124px;flex:0 0 124px;padding:0;border-radius:20px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 6px 18px #00000014}.hospital-detail .hospital-header .hospital-header-card .hospital-card-logo.detail img{object-fit:cover;border-radius:inherit}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info{flex:1;display:flex;flex-direction:column;gap:.75rem;justify-content:center}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-title{font-size:1.5rem;font-weight:700;color:#222;margin:0;line-height:1.3;word-break:keep-all}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-meta{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.75rem;color:#555;align-items:center;line-height:1.3}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-meta .hospital-card-tag{padding:.15rem .5rem;border-radius:999px;background:#fff0f0;color:#e74c3c;font-size:.8rem;font-weight:600}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-meta .hospital-card-location{color:#666}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-meta .hospital-card-phone{color:#333;font-weight:600}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-address{margin:0;font-size:.75rem;color:#555;line-height:1.4;word-break:keep-all}.hospital-detail .hospital-header .hospital-header-card .hospital-card-info .hospital-card-address.multi p{margin:0;line-height:1.35}.hospital-detail .hospital-header .hospital-info-section{display:flex;flex-direction:column;gap:1rem}.hospital-detail .hospital-header .hospital-info-section .hospital-hours{background:#fff6f3;border-radius:16px;padding:1rem 1.2rem;border:1px solid rgba(255,163,136,.35);box-shadow:0 10px 25px #ffa38826}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-heading{display:flex;align-items:center;gap:.4rem;margin-bottom:.75rem}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-heading span{font-size:.95rem;font-weight:700;color:#d9480f}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-list li{display:flex;justify-content:space-between;gap:.75rem;font-size:.85rem;color:#503124;padding-bottom:.35rem;border-bottom:1px dashed rgba(217,72,15,.2)}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-list li:last-child{border-bottom:none;padding-bottom:0}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-list li .hours-day{font-weight:600;min-width:46px}.hospital-detail .hospital-header .hospital-info-section .hospital-hours .hours-list li .hours-value{flex:1;text-align:right;font-weight:500}.hospital-detail .hospital-header .hospital-specialty-section{font-size:.9rem;color:#666}.hospital-detail .hospital-header .hospital-specialty-section .specialty-label{font-weight:500}.hospital-detail .hospital-header .hospital-specialty-section .specialty-value{color:#333}.hospital-detail .hospital-header .hospital-actions{display:flex;gap:.75rem;margin-top:.5rem}.hospital-detail .hospital-header .hospital-actions button{flex:1;padding:.75rem 1rem;font-size:1rem;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s}.hospital-detail .hospital-header .hospital-actions .btn-price{background:#fff;color:#e74c3c;border:2px solid #e74c3c}.hospital-detail .hospital-header .hospital-actions .btn-price:hover{background:#fef5f5}.hospital-detail .hospital-header .hospital-actions .btn-booking{background:#e74c3c;color:#fff}.hospital-detail .hospital-header .hospital-actions .btn-booking:hover{background:#c0392b}.hospital-detail-image{width:100%;margin-bottom:1.5rem}.hospital-detail-image .detail-image{width:100%;height:auto;display:block;object-fit:contain}.price-list-page .price-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem;background:#fff}.price-list-page .price-header .back-button{align-self:flex-start;padding:.5rem 1rem;background:#f8f8f8;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;color:#333}.price-list-page .price-header .back-button:hover{background:#e8e8e8}.price-list-page .price-header .price-title{font-size:1.4rem;font-weight:700;color:#222;margin:0}.price-list-page .price-categories{display:flex;flex-direction:column;gap:1.5rem}.price-list-page .price-categories .price-category{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.price-list-page .price-categories .price-category .category-title{font-size:1.2rem;font-weight:600;color:#e74c3c;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e74c3c}.price-list-page .price-categories .price-category .price-items{display:flex;flex-direction:column;gap:.75rem}.price-list-page .price-categories .price-category .price-items .price-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9f9f9;border-radius:8px;transition:background .2s}.price-list-page .price-categories .price-category .price-items .price-item:hover{background:#f0f0f0}.price-list-page .price-categories .price-category .price-items .price-item .item-info{display:flex;flex-direction:column;gap:.25rem}.price-list-page .price-categories .price-category .price-items .price-item .item-info .item-name{font-size:.95rem;color:#333;font-weight:500}.price-list-page .price-categories .price-category .price-items .price-item .item-info .item-price-info{display:flex;align-items:center;gap:.4rem}.price-list-page .price-categories .price-category .price-items .price-item .item-info .item-price-info .item-original-price{font-size:.8rem;color:#999;text-decoration:line-through}.price-list-page .price-categories .price-category .price-items .price-item .item-info .item-price-info .discount-rate{display:inline-block;padding:.15rem .5rem;background:#ff6b6b;color:#fff;font-size:.75rem;font-weight:600;border-radius:4px;white-space:nowrap}.price-list-page .price-categories .price-category .price-items .price-item .item-price{font-size:1.1rem;font-weight:700;color:#e74c3c}.price-list-page .price-footer{margin-top:2rem;padding:1.5rem;background:#f8f8f8;border-radius:12px;text-align:center}.price-list-page .price-footer .price-notice{font-size:.85rem;color:#666;margin:.5rem 0;line-height:1.5}.price-list-page .price-footer .btn-back-to-detail{margin-top:1rem;padding:.75rem 2rem;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.price-list-page .price-footer .btn-back-to-detail:hover{background:#c0392b}.booking-page{padding-bottom:calc(var(--sab, 0px) + var(--tabbar-h) + 80px)}.booking-page .booking-tabs{display:flex;background:#fff;border-bottom:1px solid #e0e0e0}.booking-page .booking-tabs .tab{flex:1;padding:1rem;background:none;border:none;font-size:1rem;color:#666;cursor:pointer;position:relative;transition:color .2s}.booking-page .booking-tabs .tab.active{color:#e74c3c;font-weight:600}.booking-page .booking-tabs .tab.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60%;height:3px;background:#e74c3c}.booking-page .date-selector{display:flex;gap:.5rem;padding:1rem;background:#fff;overflow-x:auto;-webkit-overflow-scrolling:touch}.booking-page .date-selector::-webkit-scrollbar{display:none}.booking-page .date-selector .date-button{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:.75rem 1rem;background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s}.booking-page .date-selector .date-button.active{background:#ffe5e5;border-color:#e74c3c;color:#e74c3c}.booking-page .date-selector .date-button.active .date-label{font-weight:600}.booking-page .date-selector .date-button .date-label{font-size:1rem;color:inherit}.booking-page .date-selector .date-button .date-sublabel{font-size:.75rem;color:#999;margin-top:.25rem}.booking-page .date-header{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#f8f8f8;font-size:1.1rem;font-weight:600;color:#333}.booking-page .date-header .calendar-icon{font-size:1.2rem}.booking-page .booking-slots{display:flex;flex-direction:column;gap:.75rem;padding:1rem}.booking-page .booking-slots .booking-slot{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f}.booking-page .booking-slots .booking-slot .slot-info{flex:1}.booking-page .booking-slots .booking-slot .slot-info .slot-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.booking-page .booking-slots .booking-slot .slot-info .slot-header .slot-logo{width:50px;height:50px;object-fit:contain;border-radius:8px}.booking-page .booking-slots .booking-slot .slot-info .slot-header .slot-title{font-size:1rem;font-weight:500;color:#333;margin:0}.booking-page .booking-slots .booking-slot .slot-info .slot-details{display:flex;align-items:center;gap:1rem;padding-left:58px}.booking-page .booking-slots .booking-slot .slot-info .slot-details .slot-time{font-size:.85rem;color:#666}.booking-page .booking-slots .booking-slot .slot-info .slot-details .slot-available{font-size:.85rem;color:#e74c3c;font-weight:500}.booking-page .booking-slots .booking-slot .btn-book-now{flex-shrink:0;padding:.75rem 1.5rem;background:#fff;color:#e74c3c;border:2px solid #e74c3c;border-radius:25px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.booking-page .booking-slots .booking-slot .btn-book-now:hover{background:#e74c3c;color:#fff}.booking-page .booking-nav{max-width:var(--mobile-max-width);margin:0 auto;display:flex;gap:.5rem;padding:.75rem 1rem;background:#fff;border-top:1px solid #e0e0e0}.booking-page .booking-nav .booking-nav-btn{flex:1;padding:.75rem;background:#e74c3c;color:#fff;border:none;border-radius:25px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.booking-page .booking-nav .booking-nav-btn:hover{background:#c0392b}.community-page{display:flex;flex-direction:column;gap:.75rem;padding-top:.5rem}.community-page .community-header{background:#fff;border-radius:12px;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.community-page .community-header .title{margin:0;font-size:1.1rem;font-weight:700;color:#222}.community-page .community-header .actions{display:flex;gap:.5rem}.community-page .community-header .actions .btn{padding:.45rem .75rem;border-radius:8px;border:1px solid #e0e0e0;background:#fff;color:#333;font-size:.9rem}.community-page .community-tabs{display:flex;background:#fff;border-radius:12px;overflow:hidden}.community-page .community-tabs .tab{flex:1;padding:.85rem 1rem;background:none;border:none;font-size:.95rem;color:#666;cursor:pointer;border-bottom:2px solid transparent}.community-page .community-tabs .tab.active{color:#e74c3c;font-weight:600;border-bottom-color:#e74c3c}.community-page .post-list{display:flex;flex-direction:column;gap:.75rem}.community-page .post-list .post-card{background:#fff;border-radius:12px;padding:.85rem 1rem;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:.5rem}.community-page .post-list .post-card .post-header{display:flex;align-items:center;gap:.5rem}.community-page .post-list .post-card .post-header .avatar{width:34px;height:34px;border-radius:50%;background:#f0f0f0;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem}.community-page .post-list .post-card .post-header .meta{display:flex;flex-direction:column;line-height:1.2}.community-page .post-list .post-card .post-header .meta .author{font-weight:600;color:#222}.community-page .post-list .post-card .post-header .meta .time{font-size:.8rem;color:#888}.community-page .post-list .post-card .post-body .text{font-size:.95rem;color:#333;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;display:box;line-clamp:3;box-orient:vertical}.community-page .post-list .post-card .post-body .images{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:.5rem}.community-page .post-list .post-card .post-body .images img{width:100%;height:64px;object-fit:cover;border-radius:6px;background:#f6f6f6}.community-page .post-list .post-card .post-actions{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:#666}.community-page .post-list .post-card .post-actions .action{display:inline-flex;align-items:center;gap:.25rem}.userinfo-page{position:relative;width:100%;display:flex;flex-direction:column;gap:.75rem;padding:1rem 0 4rem}.userinfo-page .profile-section{border-radius:12px;padding:0 1rem;display:flex;flex-direction:column;position:relative;min-height:8.5rem}.userinfo-page .profile-section .page-title{margin:0;font-size:1.2rem;font-weight:600;text-align:center;flex:1;line-height:32px;color:#4b4848}.userinfo-page .profile-section .profile-card{bottom:0rem;left:2rem;width:100%;display:flex;flex-direction:column;gap:.75rem;background-size:cover;background-position:center}.userinfo-page .profile-section .profile-card .avatar{width:56px;height:56px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem}.userinfo-page .profile-section .profile-card .info{display:flex;flex-direction:column;line-height:1.2;margin-left:.5rem;gap:.35rem}.userinfo-page .profile-section .profile-card .info .name{font-weight:700;font-size:1rem;color:#222;display:flex;align-items:center;gap:.5rem}.userinfo-page .profile-section .profile-card .info .name .membership-badge{font-size:.65rem;padding:.2rem .5rem;border-radius:12px;color:#fff;font-weight:600}.userinfo-page .profile-section .profile-card .info .sub{font-size:.85rem;color:#888}.userinfo-page .profile-section .profile-card .info .edit-under-name-btn{align-self:flex-start;background:#fff;border:1px solid #eee;border-radius:12px;padding:.5rem .75rem;display:inline-flex;flex-direction:row;align-items:center;gap:.4rem;font-size:.8rem;color:#333;cursor:pointer;transition:all .2s}.userinfo-page .profile-section .profile-card .info .edit-under-name-btn:hover{background:#fff5f8;transform:translateY(-2px)}.userinfo-page .profile-section .edit-button{position:absolute;top:.5rem;right:2em;border:0;padding:.5rem;text-align:center;font-size:.8rem;color:#888;cursor:pointer;transition:opacity .2s,background .2s,color .2s;border-radius:8px;min-width:80px;white-space:nowrap}.userinfo-page .profile-section .edit-button:hover{color:#333;text-decoration:underline;font-weight:600}.userinfo-page .profile-section .edit-button.login-btn{background:#fff;color:#ff6090;padding:.5rem 1rem;font-weight:600;border:1px solid rgba(255,96,144,.3)}.userinfo-page .profile-section .edit-button.login-btn:hover{background:#fff;color:#ff4070;text-decoration:none;box-shadow:0 2px 8px #ff609033;border-color:#ff609080}.userinfo-page .stats-section .stats-card{background:#fff;border-radius:12px;padding:1rem;display:flex;justify-content:space-around;box-shadow:0 2px 8px #0000000f}.userinfo-page .stats-section .stats-card .stat-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:all .2s;border-radius:8px;padding:.5rem}.userinfo-page .stats-section .stats-card .stat-item:hover{background:#fff5f8;transform:translateY(-2px)}.userinfo-page .stats-section .stats-card .stat-item .stat-value{font-size:1.5rem;font-weight:700;color:#ff6090}.userinfo-page .stats-section .stats-card .stat-item .stat-label{font-size:.85rem;color:#666}.userinfo-page .reservation-section{background:#fff;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 2px 8px #0000000f}.userinfo-page .reservation-section .reservation-title{font-size:1.1rem;font-weight:700;color:#4b4848;margin-bottom:.5rem}.userinfo-page .reservation-section .reservation-card{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.userinfo-page .reservation-section .reservation-card .reservation-item{background:#fff;border:1px solid #eee;border-radius:12px;padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-size:.85rem;color:#333;cursor:pointer;transition:all .2s}.userinfo-page .reservation-section .reservation-card .reservation-item .item-icon{font-size:1.5rem}.userinfo-page .reservation-section .reservation-card .reservation-item:hover{background:#fff5f8;border-color:#ff6090;color:#ff6090;font-weight:600;transform:translateY(-2px);box-shadow:0 4px 8px #ff609033}.userinfo-page .community-section{background:#fff;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 2px 8px #0000000f}.userinfo-page .community-section .community-title{font-size:1.1rem;font-weight:700;color:#4b4848;margin-bottom:.5rem}.userinfo-page .community-section .community-card{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.userinfo-page .community-section .community-card .community-item{background:#fff;border:1px solid #eee;border-radius:12px;padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-size:.85rem;color:#333;cursor:pointer;transition:all .2s}.userinfo-page .community-section .community-card .community-item .item-icon{font-size:1.5rem}.userinfo-page .community-section .community-card .community-item:hover{background:#fff5f8;border-color:#ff6090;color:#ff6090;font-weight:600;transform:translateY(-2px);box-shadow:0 4px 8px #ff609033}.userinfo-page .recent-section{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000000f}.userinfo-page .recent-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.userinfo-page .recent-section .section-header .section-title{font-size:1.1rem;font-weight:700;color:#4b4848}.userinfo-page .recent-section .section-header .view-all{background:none;border:none;color:#999;font-size:.85rem;cursor:pointer;transition:color .2s}.userinfo-page .recent-section .section-header .view-all:hover{color:#ff6090}.userinfo-page .recent-section .recent-card{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.userinfo-page .recent-section .recent-card .recent-item{background:#fff;border:1px solid #eee;border-radius:12px;padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-size:.85rem;color:#333;cursor:pointer;transition:all .2s}.userinfo-page .recent-section .recent-card .recent-item .item-icon{font-size:1.5rem}.userinfo-page .recent-section .recent-card .recent-item:hover{background:#fff5f8;border-color:#ff6090;color:#ff6090;font-weight:600;transform:translateY(-2px);box-shadow:0 4px 8px #ff609033}.userinfo-page .menu-section .menu-list{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f}.userinfo-page .menu-section .menu-list .menu-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #f5f5f5;background:#fff;border:none;width:100%;color:#333;font-size:.95rem;cursor:pointer;transition:background .2s}.userinfo-page .menu-section .menu-list .menu-item:last-child{border-bottom:none}.userinfo-page .menu-section .menu-list .menu-item .menu-arrow{color:#bbb;font-size:1.2rem}.userinfo-page .menu-section .menu-list .menu-item:hover{background:#f9f9f9}.userinfo-page .logout-section{padding-bottom:1rem}.userinfo-page .logout-section .logout-button{width:100%;background:#fff;border:1px solid #eee;border-radius:12px;padding:1rem;color:#999;font-size:.95rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000000f}.userinfo-page .logout-section .logout-button:hover{background:#f5f5f5;color:#666;border-color:#ddd}.login-page{width:100%;max-width:480px;display:flex;justify-content:center}@media (max-width: 768px){.login-page{margin:20px auto;padding:0 16px 60px}}.login-page__card{width:100%;background:#fff;border-radius:24px;box-shadow:0 10px 40px #00000014;position:relative;overflow:hidden}.login-page__content{padding:48px 32px 32px}@media (max-width: 768px){.login-page__content{padding:40px 24px 24px}}.login-page__header{text-align:center;margin-bottom:24px}.login-page__header h2{font-size:32px;font-weight:700;margin-bottom:12px;color:#111827}@media (max-width: 768px){.login-page__header h2{font-size:28px}}.login-page__header p{font-size:15px;color:#6b7280;line-height:1.5;margin:0}.social-login{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.social-login li button{width:100%;display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:18px;border:1px solid #e0e0e0;background:#fff;color:#111827;box-shadow:0 6px 18px #0f172a0d;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease,color .2s ease;position:relative;cursor:pointer}.social-login li button:hover{background:#fff5f8;border-color:#ff6090;color:#ff6090;transform:translateY(-2px);box-shadow:0 10px 20px #ff609033}.social-login li button .icon{width:36px;height:36px;border-radius:12px;background:#f3f4f6;background-repeat:no-repeat;background-position:center;background-size:24px 24px}.social-login li button .label{font-size:1rem;font-weight:600;flex:1;text-align:left}.social-login .line .icon{background-image:url(/assets/icons/line_logo.png)}.social-login .google .icon{background-image:url(/assets/icons/google_logo.svg)}.social-login .whatsapp .icon{background-image:url(/assets/icons/whatsapp_logo.png)}.social-login .wechat .icon{background-image:url(/assets/icons/wechat_logo.png)}
