@font-face{font-family:uicon-iconfont;src:url(https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf) format("truetype")}:root{--primary: #007aff;--primary-light: rgba(0, 122, 255, .1);--success: #07c160;--warning: #ff976a;--danger: #ee0a24;--bg-color: #f7f8fa;--card-bg: #ffffff;--text-main: #323233;--text-secondary: #969799;--text-light: #c8c9cc;--border-color: #ebedf0;--shadow: 0 2px 12px rgba(100, 100, 100, .08);--radius: 12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.4;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.dark-mode #app{--bg-color: #121212;--card-bg: #1e1e1e;--text-main: #e0e0e0;--text-secondary: #a0a0a0;--text-light: #444444;--border-color: #2c2c2c;--shadow: 0 4px 20px rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{background-color:#1a1a1a;color:var(--text-main);min-height:100vh;display:flex;justify-content:center;align-items:center}#root{width:100%;max-width:480px;height:100vh;display:flex;flex-direction:column}#app{width:100%;height:100%;background-color:var(--bg-color);box-shadow:0 4px 24px #0003;position:relative;display:flex;flex-direction:column;overflow:hidden}.scroll-container{flex:1;overflow-y:auto;padding-bottom:70px;-webkit-overflow-scrolling:touch}.scroll-container::-webkit-scrollbar{width:0px}button{border:none;background:none;font-family:inherit;cursor:pointer;transition:all .2s ease}button:active{opacity:.7}a{color:var(--primary);text-decoration:none}input,textarea{font-family:inherit;border:none;outline:none}.toast-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#1a1a1af2;color:#fff;padding:14px 24px;border-radius:8px;font-size:14px;z-index:99999;text-align:center;width:calc(100% - 60px);max-width:400px;box-sizing:border-box;box-shadow:0 8px 24px #0006;animation:fadeInOut 3s ease forwards;pointer-events:none;white-space:normal;word-break:break-all;line-height:1.6}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%,-40%)}7%{opacity:1;transform:translate(-50%,-50%)}93%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-60%)}}.nav-header{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100;font-weight:500;font-size:16px}.nav-header-left,.nav-header-right{width:60px;display:flex;align-items:center}.nav-header-right{justify-content:flex-end}.nav-header-title{flex:1;text-align:center}.back-btn{font-size:20px;color:var(--text-main)}.app-card{background-color:var(--card-bg);border-radius:var(--radius);padding:16px;margin:12px;box-shadow:var(--shadow)}.floating-cs-btn{position:absolute;bottom:80px;right:16px;width:48px;height:48px;border-radius:50%;background-color:var(--card-bg);box-shadow:0 4px 16px #00000026;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:900;border:1px solid var(--border-color);transition:transform .2s}.floating-cs-btn:active{transform:scale(.9)}.floating-cs-btn img{width:38px;height:38px;border-radius:50%}body.admin-mode{display:block!important;background-color:#f7f8fa!important}body.admin-mode #root{max-width:100%!important;width:100%!important;height:100vh!important}body.admin-mode #app{max-width:100%!important;width:100%!important;height:100%!important;box-shadow:none!important}.pull-to-refresh-indicator{display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;transition:height .15s ease,opacity .15s ease;width:100%}.ptr-content{display:flex;align-items:center;justify-content:center;gap:8px;height:40px}.ptr-spinner{width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:ptr-spin .8s linear infinite}@keyframes ptr-spin{to{transform:rotate(360deg)}}.infinite-scroll-loader{display:flex;align-items:center;justify-content:center;padding:16px 0;color:var(--text-secondary);font-size:13px;gap:8px}.scroll-finished-text{text-align:center;padding:16px 0;color:var(--text-light);font-size:12px}.login-page{display:flex;flex-direction:column;height:100%;background-color:#fff;position:relative;box-sizing:border-box}.login-header{height:56px;display:flex;align-items:center;justify-content:flex-end;padding:0 20px;position:relative;z-index:100}.lang-selector-login{position:relative}.lang-trigger-login{display:flex;flex-direction:row;align-items:center;justify-content:center;width:78px;height:32px;border-radius:10px;padding:0 6px;cursor:pointer;background-color:#d91f270a;border:1px solid rgba(217,31,39,.1);transition:all .2s ease}.lang-trigger-login:active{background-color:#d91f271f}.lang-avatar-login{width:24px;height:24px;border-radius:50%;object-fit:cover;margin-right:4px}.lang-text-login{font-size:11px;font-weight:600;color:#d91f27}.lang-dropdown-login{position:absolute;top:36px;right:0;background-color:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:1000;min-width:100px;overflow:hidden;animation:fadeIn .15s ease-out}.lang-option-login{padding:10px 14px;font-size:12px;color:var(--text-main);cursor:pointer;text-align:center;transition:background-color .2s}.lang-option-login:active{background-color:var(--bg-color)}.lang-option-login.active{color:#d91f27;font-weight:600;background-color:#d91f270d}.login-content{flex:1;padding:24px;display:flex;flex-direction:column;justify-content:flex-start;overflow-y:auto}.logo-section-login{text-align:center;margin-top:30px;margin-bottom:40px}.login-logo-img{width:230px;height:69px;object-fit:contain}.welcome-section{text-align:left;margin-bottom:24px;width:100%;max-width:320px;margin-left:auto;margin-right:auto}.welcome-title{font-size:19px;font-weight:700;color:#002226;margin:0}.welcome-subtitle{font-size:13px;color:#6e7378;line-height:1.5;margin:8px 0 0}.register-highlight{color:#c6a95f;font-weight:700;cursor:pointer;text-decoration:none}.register-highlight:active{opacity:.8}.login-form-new{display:flex;flex-direction:column;gap:16px;width:100%;max-width:320px;margin-left:auto;margin-right:auto}.login-field-item{display:flex;flex-direction:row;align-items:center;padding:12px 0;border-bottom:1px solid #f2f3f5;position:relative}.field-left-badge{width:48px;height:48px;border-radius:10px;background-color:#f7f8fa;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#323233;margin-right:16px;flex-shrink:0}.field-left-badge.red-lock{background-color:#d91f270d;color:#d91f27}.lock-svg{width:18px;height:18px}.field-right-content{flex:1;display:flex;flex-direction:column;justify-content:center}.field-label{font-size:14px;font-weight:700;color:#002226;margin:0 0 4px;text-align:left}.field-right-content input{border:none;outline:none;font-size:13.5px;color:#323233;padding:0;background:transparent;width:100%}.field-right-content input::placeholder{color:#c8c9cc}.eye-btn-login{position:absolute;right:0;bottom:12px;background:none;border:none;outline:none;padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center}.eye-img-login{width:18px;height:18px;object-fit:contain;opacity:.6}.eye-img-login.active{opacity:1}.login-submit-btn-new{width:100%;height:50px;background-color:#d91f27;color:#fff;border:none;border-radius:25px;font-size:16px;font-weight:700;margin-top:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s;box-shadow:0 4px 12px #d91f2733}.login-submit-btn-new:active{opacity:.85}.login-tabs{display:flex;background-color:var(--border-color);padding:4px;border-radius:20px;margin-bottom:24px;max-width:320px;margin-left:auto;margin-right:auto;width:100%}.login-tab{flex:1;text-align:center;padding:10px 0;font-size:14px;font-weight:600;color:var(--text-secondary);border-radius:16px;cursor:pointer;transition:all .2s ease}.login-tab.active{background-color:var(--card-bg);color:#d91f27;box-shadow:0 2px 6px #00000014}.navigation-bar{position:absolute;bottom:0;left:0;right:0;height:60px;background-color:var(--card-bg);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;align-items:center;z-index:1000;padding-bottom:env(safe-area-inset-bottom)}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:100%;cursor:pointer}.nav-icon-font{font-family:uicon-iconfont;font-size:24px;color:#969799;margin-bottom:2px;transition:transform .2s ease,color .2s ease;line-height:1}.nav-item.active .nav-icon-font{color:#d91f27;transform:scale(1.05)}.nav-label{font-size:11px;color:#6b7280;font-weight:500;transition:color .2s ease}.nav-item.active .nav-label{color:#d91f27;font-weight:600}.middle-item{position:relative;overflow:visible;z-index:1001}.middle-button-container{position:absolute;top:-19px;width:48px;height:48px;border-radius:24px;background-color:transparent;border:none;display:flex;align-items:center;justify-content:center;box-shadow:none;transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.middle-button-img{width:48px;height:48px;object-fit:contain}.middle-item:active .middle-button-container{transform:scale(.9) translateY(-15px)}.cs-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0006;display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s ease-out}.cs-modal-content{background-color:var(--card-bg);width:85%;max-width:340px;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px #00000026;animation:slideUp .25s cubic-bezier(.175,.885,.32,1.15)}.cs-modal-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.cs-modal-header h3{font-size:16px;font-weight:600;color:var(--text-main)}.cs-close-btn{font-size:24px;color:var(--text-secondary);line-height:1}.cs-modal-body{padding:20px 16px;display:flex;flex-direction:column;align-items:center}.cs-avatar-container{width:68px;height:68px;border-radius:50%;background-color:var(--bg-color);display:flex;align-items:center;justify-content:center;margin-bottom:12px;border:2px solid var(--primary-light)}.cs-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover}.cs-welcome{font-size:13px;color:var(--text-secondary);text-align:center;margin-bottom:20px;line-height:1.5}.cs-option-card{width:100%;background-color:var(--bg-color);border-radius:10px;padding:12px 14px;margin-bottom:12px;display:flex;align-items:center;cursor:pointer;transition:background-color .2s}.cs-option-card:hover,.cs-option-card:active{background-color:var(--primary-light)}.cs-option-icon{font-size:20px;margin-right:12px}.cs-option-details{flex:1}.cs-option-details h4{font-size:14px;font-weight:500;color:var(--text-main);margin-bottom:2px}.cs-option-details p{font-size:11px;color:var(--text-secondary)}.cs-option-arrow{font-size:14px;color:var(--text-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.home-page{display:flex;flex-direction:column;height:100%;position:relative;background-color:var(--bg-color)}.home-sticky-header{position:sticky;top:0;z-index:100;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column}.home_head_body{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:44px;padding:0 15px;background-color:#fff;position:relative}.home_head_icon{width:125px;height:30px;object-fit:contain}.language-selector-home{position:relative}.language_btn{display:flex;flex-direction:row;align-items:center;justify-content:center;width:78px;height:32px;border-radius:10px;padding:0 6px;cursor:pointer;background-color:#d91f270a;border:1px solid rgba(217,31,39,.1);transition:all .2s ease}.language_btn:active{background-color:#d91f271f}.lang-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;margin-right:4px}.lang-text{font-size:11px;font-weight:600;color:#d91f27}.lang-dropdown-home{position:absolute;top:36px;right:0;background-color:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:1000;min-width:100px;overflow:hidden;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.lang-option-home{padding:10px 14px;font-size:12px;color:var(--text-main);cursor:pointer;text-align:center;transition:background-color .2s}.lang-option-home:hover,.lang-option-home:active{background-color:var(--bg-color)}.lang-option-home.active{color:#d91f27;font-weight:600;background-color:#d91f270d}.index_top{width:100%;height:211px;position:relative;background-color:#000;overflow:hidden;cursor:pointer}.index_top_video{width:100%;height:100%;object-fit:cover;display:block}.uni-video-cover{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:95}.uni-video-play-btn{width:50px;height:50px;background-color:#ffffffe6;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0003;margin-bottom:8px;transition:transform .2s ease}.uni-video-play-btn:after{content:"";display:block;width:0;height:0;border-style:solid;border-width:10px 0 10px 18px;border-color:transparent transparent transparent #000000;margin-left:4px}.index_top:active .uni-video-play-btn{transform:scale(.9)}.uni-video-cover-duration{color:#fff;font-size:14px;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.5);margin:0}.index_search_body{width:calc(100% - 24px);margin:-25px auto 16px;background-color:#fff;border-radius:10px;padding:5px 15px 20px;box-shadow:#0000000d 0 0 6px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:102}.index_search_body .search_item{width:100%;height:50px;margin-top:15px;padding-left:20px;padding-right:20px;background-color:#f9f9f9;border-radius:10px;display:flex;justify-content:space-between;align-items:center}.index_search_body .search_item input{flex:1;background:transparent;font-size:14px;color:#323233;height:100%;border:none;outline:none}.index_search_body .search_item input::placeholder{color:#999}.search-globe-icon{width:20px;height:20px;object-fit:contain;cursor:pointer}.search_btn{width:100%;height:50px;margin-top:20px;border-radius:25px;background-color:#d91f27;color:#fff;font-size:16px;font-weight:600;display:flex;justify-content:center;align-items:center;transition:opacity .2s;border:none}.search_btn:active{opacity:.85}.popular-section{padding:0 12px}.index-title-container{display:flex;align-items:center;margin-top:16px;margin-bottom:12px;position:relative}.index-title-icon{width:25px;height:25px;object-fit:contain;flex-shrink:0}.index-title-text{font-size:18px;font-weight:700;color:#002226;margin-left:8px;z-index:2;line-height:25px}.hotel-list-horizontal{display:flex;flex-direction:column;gap:12px}.hotel-card-horizontal{background-color:#fff;border-radius:12px;box-shadow:#00000008 0 2px 6px;display:flex;flex-direction:row;justify-content:space-between;padding:12px;height:145px;cursor:pointer;transition:transform .2s}.hotel-card-horizontal:active{transform:scale(.98)}.hotel-card-left{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding-right:12px;height:100%}.hotel-card-title{font-size:15px;font-weight:700;color:#323233;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.hotel-card-badge{display:inline-block;align-self:flex-start;font-size:10px;font-weight:500;color:#07c160;background-color:#07c1600f;padding:2px 6px;border-radius:4px;margin-top:4px}.hotel-card-divider{width:100%;height:1px;border-top:1px dashed rgb(235,237,240);margin-top:8px;margin-bottom:6px}.hotel-card-meta-row{display:flex;align-items:flex-end;justify-content:space-between}.hotel-card-price-col{display:flex;flex-direction:row;align-items:baseline;gap:2px}.hotel-card-currency{font-size:11px;font-weight:700;color:#de8e3c;line-height:1.1}.hotel-card-price-val{font-size:18px;font-weight:700;color:#de8e3c;line-height:1.1}.hotel-card-details-col{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.hotel-card-detail-item{display:flex;align-items:center;font-size:10px;color:#969799}.detail-icon{font-size:10px;margin-right:3px}.detail-text{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-card-right{width:100px;height:100%;border-radius:8px;overflow:hidden}.hotel-card-img-vertical{width:100%;height:100%;object-fit:cover;display:block}.ranking-board-card{width:100%;aspect-ratio:690 / 800;background-image:url(/image/index_two_bg-DtZgLArJ.png);background-size:100% 100%;background-repeat:no-repeat;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:#00000008 0 2px 6px}.ranking-board-item{height:20%;width:100%;display:flex;flex-direction:row;align-items:center;cursor:pointer;box-sizing:border-box;padding-left:23%;transition:background-color .2s ease}.ranking-board-item:active{background-color:#0000000a}.ranking-board-avatar-wrapper{width:58px;height:58px;border-radius:50%;overflow:hidden;flex-shrink:0;margin-right:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000014}.ranking-board-avatar{width:100%;height:100%;object-fit:cover}.ranking-board-name{font-size:16px;font-weight:700;color:#002226;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:15px}.provide-cards-list{display:flex;flex-direction:column;gap:65px;margin-top:55px;padding-bottom:40px}.provide-card{position:relative;background-color:#fff;border-radius:16px;box-shadow:0 4px 18px #00000008;padding:55px 20px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;box-sizing:border-box}.provide-card-avatar-wrapper{position:absolute;top:-45px;left:50%;transform:translate(-50%);width:90px;height:90px;border-radius:50%;overflow:hidden;box-shadow:0 4px 12px #00000014;background-color:#fff;display:flex;align-items:center;justify-content:center}.provide-card-avatar{width:100%;height:100%;object-fit:cover;display:block}.provide-card-title{font-size:18px;font-weight:700;color:#002226;margin:0 0 12px;line-height:1.45}.provide-card-desc{font-size:13px;color:#5a646e;line-height:1.6;margin:0}.ecosystem-intro{font-size:13px;color:#969696;line-height:1.65;margin:8px 0 20px;text-align:left}.ecosystem-cards-list{display:flex;flex-direction:column;gap:16px}.ecosystem-card{border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;box-sizing:border-box;box-shadow:0 2px 8px #00000003}.ecosystem-card.bg-teal{background-color:#f2f6f8}.ecosystem-card.bg-gold{background-color:#f9f6ef}.ecosystem-card-header{display:flex;flex-direction:row;align-items:center;gap:12px;margin-bottom:12px}.ecosystem-card.reverse .ecosystem-card-header{justify-content:space-between}.ecosystem-avatar-wrapper{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;box-shadow:0 2px 6px #0000000d}.ecosystem-avatar{width:100%;height:100%;object-fit:cover;display:block}.ecosystem-card-title{font-size:17px;font-weight:700;margin:0;line-height:1.35}.ecosystem-card-title.color-teal{color:#7ab3c0}.ecosystem-card-title.color-gold{color:#c6a95f}.ecosystem-card-desc{font-size:12.5px;color:#50555a;line-height:1.65;margin:0;text-align:left}.testimonial-card{position:relative;background-color:#fff;border-radius:16px;box-shadow:0 4px 18px #00000008;padding:24px 20px;margin-top:40px;display:flex;flex-direction:column;box-sizing:border-box}.testimonial-card-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:40px}.testimonial-location{font-size:15px;font-weight:700;color:#c6a95f}.testimonial-avatar-wrapper{position:absolute;top:-30px;right:20px;width:72px;height:72px;border-radius:50%;overflow:hidden;border:3px solid #ffffff;box-shadow:0 4px 10px #00000014;background-color:#fff}.testimonial-avatar{width:100%;height:100%;object-fit:cover;display:block}.testimonial-content{font-size:13px;color:#6e7378;line-height:1.7;margin:16px 0 0;text-align:left}.testimonial-author{font-size:15px;font-weight:700;color:#c6a95f;text-align:right;margin-top:16px}.home-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000a6;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .25s ease-out}.home-modal-content{width:90%;max-width:380px;background-color:#fff;border-radius:16px;padding:24px;box-shadow:0 10px 30px #00000026;animation:zoomIn .3s cubic-bezier(.18,.89,.32,1.28)}.home-modal-header{text-align:center;margin-bottom:20px}.home-modal-header h3{font-size:18px;font-weight:700;color:#323233;margin:0}.home-modal-form{display:flex;flex-direction:column;gap:15px}.form-group-home{display:flex;flex-direction:column;gap:6px;text-align:left}.form-group-home label{font-size:13px;font-weight:600;color:#646566}.form-group-home input,.gender-select-home{padding:10px 14px;border:1px solid #dcdee0;border-radius:8px;font-size:14px;outline:none;background-color:#fafafa;color:#323233;transition:all .2s}.form-group-home input:focus,.gender-select-home:focus{border-color:#007aff;background-color:#fff}.home-modal-actions{display:flex;gap:12px;margin-top:15px}.home-modal-btn{flex:1;padding:12px;border:none;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.home-modal-btn:active{opacity:.85}.skip-btn{background-color:#f2f3f5;color:#646566}.save-btn{background-color:#007aff;color:#fff;box-shadow:0 4px 10px #007aff33}.booking-page{display:flex;flex-direction:column;height:100%;position:relative;background-color:var(--bg-color)}.booking-header-tabs{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;position:sticky;top:0;z-index:100}.booking-tab{flex:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-secondary);font-weight:500;cursor:pointer;position:relative;transition:all .2s}.booking-tab.active{color:var(--primary);font-weight:600}.booking-tab.active:after{content:"";position:absolute;bottom:0;left:30%;right:30%;height:3px;border-radius:2px;background-color:var(--primary)}.booking-list{padding:12px;display:flex;flex-direction:column;gap:12px}.booking-card{background-color:var(--card-bg);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;padding:12px;gap:12px;transition:transform .2s}.booking-card:active{transform:scale(.98)}.booking-card-img-container{width:90px;height:90px;border-radius:8px;overflow:hidden;flex-shrink:0}.booking-card-img{width:100%;height:100%;object-fit:cover}.booking-card-details{flex:1;display:flex;flex-direction:column;justify-content:space-between}.booking-card-title{font-size:14px;font-weight:600;color:var(--text-main);line-height:1.3}.booking-card-desc{font-size:11px;color:var(--text-secondary);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.booking-card-location{font-size:11px;color:var(--text-secondary);margin-top:4px}.booking-card-price-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.booking-card-price{display:flex;align-items:baseline}.price-num{font-size:15px;font-weight:700;color:var(--danger)}.price-unit{font-size:10px;color:var(--text-secondary)}.go-btn{background:linear-gradient(135deg,#007aff,#0056d6);color:#fff;font-size:12px;font-weight:600;padding:6px 14px;border-radius:14px;box-shadow:0 2px 6px #007aff33}.booking-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s}.booking-modal-content{background-color:var(--card-bg);width:90%;max-width:380px;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0003;animation:slideUp .25s cubic-bezier(.175,.885,.32,1.15)}.booking-modal-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.booking-modal-header h3{font-size:16px;font-weight:600;color:var(--text-main)}.modal-close-btn{font-size:24px;color:var(--text-secondary)}.form-item label{font-size:12px;font-weight:500;color:var(--text-secondary)}.form-item input,.form-item textarea{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;font-size:13px;color:var(--text-main);transition:all .2s}.form-item input:focus,.form-item textarea:focus{border-color:var(--primary);background-color:var(--card-bg)}.form-item input.readonly-input{background-color:#f2f3f5;color:var(--text-secondary);border-color:var(--border-color)}.modal-actions{display:flex;gap:12px;margin-top:8px}.modal-btn{flex:1;height:40px;border-radius:20px;font-size:14px;font-weight:600}.cancel-btn{background-color:var(--bg-color);color:var(--text-main);border:1px solid var(--border-color)}.submit-btn{background:linear-gradient(135deg,#007aff,#0056d6);color:#fff}.hotel-detail-page{display:flex;flex-direction:column;height:100%;background-color:#f7f8fa;position:relative;box-sizing:border-box}.detail-nav-header{height:46px;background-color:#fff;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100;box-shadow:0 1px 4px #00000008}.detail-back-btn{font-size:14px;font-weight:600;color:#002226;border:none;background:none;cursor:pointer;padding:8px 12px 8px 0}.detail-header-title{font-size:16px;font-weight:700;color:#002226}.detail-scroll-container{flex:1;overflow-y:auto;padding-bottom:84px;-webkit-overflow-scrolling:touch}.detail-gallery-main{position:relative;width:100%;aspect-ratio:16 / 10;overflow:hidden;background-color:#e2e8f0}.detail-main-img{width:100%;height:100%;object-fit:cover}.detail-badge-tag{position:absolute;top:12px;left:12px;background-color:#07c160e6;color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:4px;letter-spacing:.5px}.detail-gallery-thumbs{display:flex;gap:8px;padding:12px;background-color:#fff;overflow-x:auto;border-bottom:1px solid #ebedf0}.detail-gallery-thumbs::-webkit-scrollbar{display:none}.detail-thumb-item{width:64px;height:48px;border-radius:6px;overflow:hidden;border:2px solid transparent;flex-shrink:0;cursor:pointer;transition:border-color .2s ease}.detail-thumb-item img{width:100%;height:100%;object-fit:cover}.detail-thumb-item.active{border-color:#d91f27}.detail-info-card{background-color:#fff;margin:12px;padding:16px;border-radius:12px;box-shadow:0 2px 10px #0000000a}.detail-item-title{font-size:19px;font-weight:700;color:#002226;margin-bottom:8px;line-height:1.35}.detail-rating-row{display:flex;align-items:center;gap:6px;margin-bottom:12px}.detail-rating-stars{color:#f39c12;font-size:12px}.detail-rating-score{font-size:13.5px;font-weight:700;color:#323233}.detail-review-count{font-size:12px;color:#969799}.detail-divider{height:1px;background-color:#f2f3f5;margin:12px 0}.detail-meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#646566;margin-bottom:8px}.detail-meta-item:last-child{margin-bottom:0}.meta-icon{font-size:15px;flex-shrink:0}.price-highlight{font-size:18px;font-weight:700;color:#d91f27}.price-unit-tag{font-size:11px;font-weight:400;color:#969799;margin-left:2px}.detail-amenities-section{background-color:#fff;margin:12px;padding:16px;border-radius:12px;box-shadow:0 2px 10px #0000000a}.section-title-label{font-size:15px;font-weight:700;color:#002226;margin-bottom:12px;border-left:3px solid rgb(217,31,39);padding-left:8px}.amenities-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.amenity-grid-item{display:flex;align-items:center;gap:6px}.amenity-check{color:#07c160;font-weight:700;font-size:12px}.amenity-text{font-size:12.5px;color:#4a5568}.detail-desc-section{background-color:#fff;margin:12px;padding:16px;border-radius:12px;box-shadow:0 2px 10px #0000000a}.detail-paragraph-text{font-size:13px;color:#555c68;line-height:1.65;text-align:justify}.detail-bottom-action-bar{position:absolute;bottom:0;left:0;width:100%;height:68px;background-color:#fff;border-top:1px solid #ebedf0;display:flex;align-items:center;justify-content:space-between;padding:0 16px;box-shadow:0 -2px 10px #0000000a;z-index:90;box-sizing:border-box}.action-price-col{display:flex;align-items:baseline}.action-price-val{font-size:20px;font-weight:800;color:#d91f27}.action-price-lbl{font-size:11px;color:#969799;margin-left:2px}.detail-book-btn{background-color:#d91f27;color:#fff;border:none;height:42px;padding:0 28px;border-radius:21px;font-size:14px;font-weight:700;box-shadow:0 3px 8px #d91f2740;cursor:pointer;transition:opacity .2s}.detail-book-btn:active{opacity:.85}.booking-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.booking-modal-content{background-color:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden;box-shadow:0 8px 30px #00000026;animation:modalSlideIn .25s ease-out}@keyframes modalSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.booking-modal-header{padding:16px;border-bottom:1px solid #ebedf0;display:flex;align-items:center;justify-content:space-between}.booking-modal-header h3{font-size:16px;font-weight:700;color:#002226;margin:0}.modal-close-btn{font-size:24px;color:#c8c9cc;cursor:pointer}.booking-modal-form{padding:16px;display:flex;flex-direction:column;gap:14px}.form-item{display:flex;flex-direction:column;gap:6px}.form-item label{font-size:12px;font-weight:700;color:#646566}.form-item input[type=text],.form-item input[type=date],.form-item textarea{border:1px solid #dcdfe6;border-radius:8px;padding:10px 12px;font-size:13.5px;color:#303133;width:100%;box-sizing:border-box;background-color:#fff}.form-item input[type=text]:focus,.form-item input[type=date]:focus,.form-item textarea:focus{border-color:#d91f27;outline:none}.form-item .readonly-input{background-color:#f5f7fa;color:#909399;cursor:not-allowed}.form-item.half{flex:1}.modal-actions{display:flex;gap:12px;margin-top:10px}.modal-btn{flex:1;height:40px;border-radius:20px;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .2s;display:flex;align-items:center;justify-content:center}.cancel-btn{background-color:#f4f4f5;color:#909399;border:1px solid #dcdfe6}.submit-btn{background-color:#d91f27;color:#fff;border:none;box-shadow:0 2px 6px #d91f2733}.modal-btn:active{opacity:.85}.detail-comments-section{background-color:#fff;margin:0 12px 12px;padding:16px;border-radius:12px;box-shadow:0 2px 10px #0000000a}.comments-list-box{margin-top:12px}.comment-item-card{padding:12px 0;border-bottom:1px solid #f2f3f5}.comment-item-card:last-child{border-bottom:none}.comment-author-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.comment-author-info{display:flex;align-items:center;gap:8px}.comment-avatar-img{width:28px;height:28px;border-radius:50%;object-fit:cover}.comment-author-name{font-size:13px;font-weight:600;color:#323233}.comment-date-val{font-size:11px;color:#969799}.comment-content-text{font-size:13px;color:#646566;line-height:1.4;margin:0;padding-left:36px;word-break:break-all}.comment-submit-form{margin-top:16px;display:flex;flex-direction:column;gap:8px}.comment-textarea-input{width:100%;height:60px;border:1px solid #dcdee0;border-radius:8px;padding:8px 12px;font-size:13px;box-sizing:border-box;resize:none}.comment-submit-btn-row{display:flex;justify-content:flex-end}.comment-submit-btn{height:30px;padding:0 16px;border-radius:15px;background-color:#d91f27;color:#fff;border:none;font-size:12px;font-weight:600;cursor:pointer}.comment-submit-btn:disabled{background-color:#ebedf0;color:#c8c9cc;cursor:not-allowed}.chat-page{display:flex;flex-direction:column;height:100%;position:relative;background-color:var(--bg-color)}.chat-header{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100}.chat-header-title{font-size:16px;font-weight:600;color:var(--text-main)}.publish-header-btn{font-size:13px;color:var(--primary);font-weight:600}.posts-list{padding:12px;display:flex;flex-direction:column;gap:12px}.post-card{background-color:var(--card-bg);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.post-author-row{display:flex;align-items:center;margin-bottom:10px}.post-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;margin-right:10px;border:1px solid var(--border-color)}.post-author-info{display:flex;flex-direction:column}.post-author-name{font-size:13px;font-weight:600;color:var(--text-main)}.post-post-time{font-size:10px;color:var(--text-secondary);margin-top:1px}.post-body{margin-bottom:12px}.post-text{font-size:13px;color:var(--text-main);line-height:1.5;white-space:pre-wrap;word-break:break-all}.post-image-grid{display:grid;gap:8px;margin-top:10px;border-radius:8px;overflow:hidden}.grid-1{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.post-img-wrapper{aspect-ratio:1;overflow:hidden;border-radius:6px;cursor:pointer}.post-img-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.post-img-wrapper img:hover{transform:scale(1.05)}.post-footer{display:flex;gap:20px;border-top:1px solid var(--border-color);padding-top:10px}.post-action-btn{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary)}.post-action-btn.liked{color:var(--danger);font-weight:500}.action-icon{font-size:16px}.floating-publish-btn{position:absolute;bottom:80px;right:16px;width:48px;height:48px;border-radius:50%;background-color:var(--primary);box-shadow:0 4px 16px #007aff59;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:900;transition:transform .2s}.floating-publish-btn:active{transform:scale(.9)}.floating-publish-btn img{width:26px;height:26px;object-fit:contain}.image-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000f2;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s}.image-viewer-img{max-width:95%;max-height:85%;object-fit:contain;animation:zoomIn .25s cubic-bezier(.175,.885,.32,1.15)}.image-viewer-close{position:absolute;top:20px;right:20px;color:#fff;font-size:36px;z-index:10000;background:transparent;border:none}@keyframes zoomIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.post-comments-section{margin-top:10px;background-color:#fafafa;border-radius:8px;padding:10px;border:1px solid var(--border-color)}.comments-divider{height:1px;background-color:var(--border-color);margin-bottom:8px}.comments-threads{display:flex;flex-direction:column;gap:10px;max-height:250px;overflow-y:auto;margin-bottom:10px;padding-right:4px}.comments-threads::-webkit-scrollbar{width:4px}.comments-threads::-webkit-scrollbar-thumb{background-color:#c8c9cc;border-radius:2px}.no-comments-text{font-size:11px;color:var(--text-secondary);text-align:center;padding:8px 0}.comment-item{display:flex;gap:8px;align-items:flex-start}.comment-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.comment-content-box{flex:1;min-width:0;background-color:#fff;border-radius:8px;padding:6px 10px;border:1px solid #ebedf0}.comment-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.comment-author-name{font-size:11px;font-weight:600;color:var(--text-main)}.comment-time{font-size:9px;color:var(--text-secondary)}.comment-text-body{font-size:11px;color:var(--text-main);line-height:1.4;word-break:break-all}.comment-input-form{display:flex;gap:8px;border-top:1px solid var(--border-color);padding-top:8px}.comment-input-form input{flex:1;font-size:12px;border:1px solid #dcdee0;border-radius:14px;padding:6px 12px;background-color:#fff;outline:none}.comment-input-form input:focus{border-color:var(--primary)}.comment-send-btn{font-size:12px;color:#fff;background-color:var(--primary);border-radius:14px;padding:6px 14px;font-weight:500}.create-post-page{display:flex;flex-direction:column;height:100%;background-color:var(--card-bg)}.create-post-header{height:46px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-weight:500}.back-btn-text{font-size:14px;color:var(--text-secondary)}.create-post-title{font-size:16px;font-weight:600;color:var(--text-main)}.publish-submit-btn{font-size:14px;color:var(--primary);font-weight:600}.publish-submit-btn:disabled{color:var(--text-light);cursor:not-allowed}.create-post-content{flex:1;padding:16px;display:flex;flex-direction:column}.create-post-content textarea{width:100%;font-size:15px;color:var(--text-main);resize:none;line-height:1.6;border:none;background-color:transparent}.char-count{text-align:right;font-size:11px;color:var(--text-secondary);margin-top:8px;margin-bottom:24px}.image-upload-section{display:flex;flex-direction:column;gap:10px}.section-label{font-size:13px;font-weight:600;color:var(--text-main)}.upload-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.upload-preview-wrapper{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.upload-preview-wrapper img{width:100%;height:100%;object-fit:cover}.remove-img-btn{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background-color:#0009;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1}.upload-add-box{aspect-ratio:1;border:1.5px dashed var(--text-light);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background-color:var(--bg-color);transition:all .2s}.upload-add-box:active{border-color:var(--primary);background-color:var(--primary-light)}.plus-sign{font-size:20px;color:var(--text-secondary);font-weight:400;margin-bottom:2px}.upload-text{font-size:9px;color:var(--text-secondary)}.profile-page{display:flex;flex-direction:column;height:100%;position:relative;background-color:var(--bg-color)}.profile-card-header{background:linear-gradient(to right,#ff7675,#d63031);padding:24px 20px;color:#fff;border-radius:20px;margin:12px;box-shadow:0 4px 15px #d6303126}.profile-user-row{display:flex;align-items:center;margin-bottom:20px}.profile-avatar-container{position:relative;cursor:pointer;display:inline-block;margin-right:14px;width:54px;height:54px}.profile-avatar-container:hover .avatar-edit-overlay{background-color:#000c}.profile-avatar{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.4);margin-right:0}.avatar-edit-overlay{position:absolute;bottom:0;right:0;background-color:#00000080;color:#fff;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;border:1px solid white;transition:background-color .2s}.profile-user-info{display:flex;flex-direction:column}.profile-phone{font-size:17px;font-weight:600;letter-spacing:.5px}.profile-invite{font-size:11px;opacity:.8;margin-top:2px}.profile-stats-row{display:flex;background-color:var(--card-bg);border-radius:var(--radius);margin:12px;padding:16px 0;box-shadow:var(--shadow)}.stat-item{flex:1;display:flex;flex-direction:column;align-items:center;cursor:pointer}.stat-item:first-child{border-right:1px solid var(--border-color)}.stat-val{font-size:16px;font-weight:700;color:#2d3436}.stat-label{font-size:11px;color:var(--text-secondary);margin-top:4px}.wallet-actions-row{display:flex;gap:12px;padding:12px 12px 0}.wallet-btn{flex:1;height:60px;border-radius:var(--radius);display:flex;align-items:center;padding:0 16px;gap:10px;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s,box-shadow .2s}.wallet-btn.recharge-btn{background:linear-gradient(135deg,#fff9eb,#ffeaa7);border:1px solid #ffe194}.wallet-btn.withdraw-btn{background:linear-gradient(135deg,#fff0f2,#ffcbd1);border:1px solid #ffa3b1}.wallet-btn:active{transform:scale(.97);box-shadow:0 1px 4px #0000000d}.w-btn-icon{font-size:20px}.w-btn-label{font-size:13px;font-weight:600;color:var(--text-main)}.menu-list-card{padding:0 14px}.menu-item{display:flex;align-items:center;padding:14px 0;border-bottom:1px solid var(--border-color);cursor:pointer}.menu-item:last-child{border-bottom:none}.menu-item:active{background-color:var(--bg-color)}.menu-icon{font-size:18px;margin-right:12px;width:20px;text-align:center}.menu-title{flex:1;font-size:13px;color:var(--text-main);font-weight:500}.menu-arrow{font-size:12px;color:var(--text-secondary)}.logout-btn-container{padding:12px 12px 24px}.logout-submit-btn{width:100%;height:44px;background-color:var(--card-bg);color:var(--danger);border-radius:var(--radius);font-size:14px;font-weight:600;box-shadow:var(--shadow);border:1px solid rgba(238,10,36,.1);transition:all .2s}.logout-submit-btn:active{background-color:#ee0a240d}.profile-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2100;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.profile-modal-content{background-color:var(--card-bg);width:90%;max-width:380px;border-radius:18px;max-height:85%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #0003;animation:slideUp .25s cubic-bezier(.175,.885,.32,1.15)}.profile-modal-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.profile-modal-header h3{font-size:16px;font-weight:600;color:var(--text-main)}.profile-close-btn{font-size:24px;color:var(--text-secondary);line-height:1;background:none;border:none;cursor:pointer}.profile-modal-body{padding:16px;overflow-y:auto;flex:1}.modal-tabs{display:flex;background-color:var(--bg-color);padding:4px;border-radius:10px;margin-bottom:16px}.modal-tab{flex:1;text-align:center;padding:8px 0;font-size:13px;font-weight:500;color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .2s}.modal-tab.active{background-color:var(--card-bg);color:var(--primary);font-weight:600;box-shadow:0 2px 6px #0000000f}.wallet-card-visual{background:linear-gradient(135deg,#2d3436,#000);color:#fff;padding:20px;border-radius:12px;margin-bottom:16px;box-shadow:0 4px 15px #00000040;position:relative;overflow:hidden}.wallet-card-visual:after{content:"";position:absolute;width:150px;height:150px;background:#ffffff0d;border-radius:50%;top:-50px;right:-50px}.card-chip{font-size:24px;margin-bottom:12px}.card-balance-label{font-size:11px;opacity:.7}.card-balance-val{font-size:26px;font-weight:700;letter-spacing:.5px;margin-top:4px}.card-number-sim{font-family:monospace;font-size:14px;opacity:.5;margin-top:16px}.transaction-section h4{font-size:13px;color:var(--text-main);margin-bottom:10px;font-weight:600}.transaction-list{display:flex;flex-direction:column;gap:8px}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.tx-left{display:flex;flex-direction:column}.tx-title{font-size:13px;color:var(--text-main);font-weight:500}.tx-date{font-size:10px;color:var(--text-secondary);margin-top:2px}.tx-amount{font-size:13px;font-weight:600}.tx-amount.plus{color:var(--success)}.tx-amount.minus{color:var(--text-main)}.modal-form-group{margin-bottom:14px}.modal-form-group label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.modal-input{width:100%;height:40px;border:1px solid var(--border-color);background-color:var(--bg-color);color:var(--text-main);border-radius:8px;padding:0 12px;font-size:13px}.modal-input:focus{border-color:var(--primary);background-color:var(--card-bg)}.quick-amounts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;margin-bottom:14px}.quick-amount-btn{background-color:var(--bg-color);border:1px solid var(--border-color);color:var(--text-main);padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer}.quick-amount-btn:active{background-color:var(--primary-light);border-color:var(--primary);color:var(--primary)}.pay-methods-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.pay-method-option{display:flex;align-items:center;padding:10px 12px;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;cursor:pointer}.pay-method-option.active{border-color:var(--primary);background-color:var(--primary-light)}.pay-method-icon{font-size:16px;margin-right:10px}.pay-method-name{font-size:12px;font-weight:500;color:var(--text-main)}.bank-details-box{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:12px;margin-bottom:14px}.bank-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:8px}.bank-detail-row:last-child{margin-bottom:0}.bank-label{color:var(--text-secondary)}.bank-val-container{display:flex;align-items:center;gap:6px}.bank-value{font-weight:600;color:var(--text-main)}.copy-btn{background-color:var(--border-color);color:var(--text-main);padding:2px 6px;border-radius:4px;font-size:10px;cursor:pointer}.copy-btn:active{background-color:var(--text-light)}.modal-submit-btn{width:100%;height:42px;background-color:var(--primary);color:#fff;border-radius:8px;font-size:14px;font-weight:600;margin-top:10px;box-shadow:0 4px 10px #007aff26}.modal-submit-btn:active{opacity:.9}.traveler-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.traveler-item-card{display:flex;justify-content:space-between;align-items:center;padding:12px;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px}.traveler-details{display:flex;flex-direction:column;gap:2px}.traveler-name{font-size:13px;font-weight:600;color:var(--text-main)}.traveler-passport{font-size:11px;color:var(--text-secondary)}.traveler-delete-btn{color:var(--danger);font-size:12px;font-weight:500;cursor:pointer}.consent-text-box{border:1px solid var(--border-color);background-color:var(--bg-color);border-radius:8px;padding:12px;font-size:12px;line-height:1.6;color:var(--text-main);max-height:200px;overflow-y:auto;margin-bottom:14px}.consent-checkbox-row{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--text-main);margin-bottom:14px;cursor:pointer}.consent-checkbox-row input{margin-top:2px}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.setting-row:last-child{border-bottom:none}.setting-title-desc{display:flex;flex-direction:column}.setting-title{font-size:13px;font-weight:500;color:var(--text-main)}.setting-desc{font-size:10px;color:var(--text-secondary);margin-top:2px}.lang-btn-grid{display:flex;gap:6px}.lang-btn-mini{background-color:var(--bg-color);border:1px solid var(--border-color);color:var(--text-main);padding:4px 10px;border-radius:4px;font-size:11px;cursor:pointer}.lang-btn-mini.active{border-color:var(--primary);color:var(--primary);background-color:var(--primary-light);font-weight:600}.switch-toggle{position:relative;display:inline-block;width:44px;height:24px}.switch-toggle input{opacity:0;width:0;height:0}.slider-round{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.3s;border-radius:24px}.slider-round:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #00000026}input:checked+.slider-round{background-color:var(--success)}input:checked+.slider-round:before{transform:translate(20px)}.profile-user-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-header-name{font-size:11px;font-weight:600;background-color:#fff3;padding:2px 8px;border-radius:10px;color:#fff;border:1px solid rgba(255,255,255,.3)}.profile-header-details{margin-top:14px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.3)}.profile-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 12px}.profile-detail-cell{display:flex;flex-direction:column;gap:2px}.profile-detail-cell .p-label{font-size:10px;opacity:.75;color:#fff}.profile-detail-cell .p-val{font-size:12.5px;font-weight:500;color:#fff;word-break:break-all}.menu-item-disabled{opacity:.65;cursor:not-allowed;pointer-events:auto}.menu-item-disabled:active{background-color:transparent!important}.menu-status-badge{font-size:11px;color:var(--text-secondary);background-color:var(--border-color);padding:2px 8px;border-radius:12px;font-weight:500}.about-page{display:flex;flex-direction:column;height:100%;background-color:var(--bg-color)}.about-header{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100}.about-header-title{font-size:16px;font-weight:600;color:var(--text-main);flex:1;text-align:center}.header-empty{width:20px}.about-logo-section{display:flex;flex-direction:column;align-items:center;padding:32px 0 20px;gap:8px}.about-logo{width:50%;max-width:160px;object-fit:contain}.app-version{font-size:11px;color:var(--text-secondary)}.about-section-title{font-size:14px;font-weight:600;color:var(--text-main);border-left:3px solid var(--primary);padding-left:8px;margin-bottom:12px}.about-text{font-size:13px;color:var(--text-main);line-height:1.6}.about-features-list{list-style:none;display:flex;flex-direction:column;gap:12px}.about-features-list li strong{font-size:13px;color:var(--text-main)}.about-features-list li p{font-size:12px;color:var(--text-secondary);margin-top:2px;line-height:1.4}.about-footer-text{text-align:center;padding:24px 0;font-size:10px;color:var(--text-secondary)}.orders-page{display:flex;flex-direction:column;height:100%;background-color:var(--bg-color)}.orders-header{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100}.orders-header-title{font-size:16px;font-weight:600;color:var(--text-main);flex:1;text-align:center}.orders-tabs{height:44px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-around;align-items:center;position:sticky;top:46px;z-index:100}.orders-tab{font-size:13px;color:var(--text-secondary);font-weight:500;cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center;padding:0 8px;position:relative;transition:all .2s}.orders-tab.active{color:var(--primary);font-weight:600}.orders-tab.active:after{content:"";position:absolute;bottom:0;left:10%;right:10%;height:3px;border-radius:2px;background-color:var(--primary)}.orders-list{padding:12px;display:flex;flex-direction:column}.order-item-card{margin:0 0 12px;padding:14px}.order-item-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:10px;margin-bottom:12px}.order-item-type-badge{font-size:10px;background-color:var(--bg-color);color:var(--text-secondary);padding:2px 6px;border-radius:4px;font-weight:500}.order-item-status{font-size:11px;font-weight:600}.status-pending{color:var(--warning)}.status-paid{color:var(--success)}.status-completed{color:var(--primary)}.status-refunded{color:var(--text-secondary)}.order-item-body{display:flex;gap:12px;margin-bottom:12px}.order-item-img{width:70px;height:70px;object-fit:cover;border-radius:6px;flex-shrink:0}.order-item-details{flex:1;display:flex;flex-direction:column;justify-content:center}.order-item-name{font-size:13px;font-weight:600;color:var(--text-main);margin-bottom:4px}.order-item-dates{font-size:11px;color:var(--text-secondary);margin-bottom:2px}.order-item-remarks{font-size:10px;color:var(--text-secondary);background-color:var(--bg-color);padding:4px 8px;border-radius:4px;margin-top:4px}.order-item-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-color);padding-top:10px}.order-item-total{font-size:12px;color:var(--text-secondary)}.order-item-price{font-size:14px;font-weight:700;color:var(--danger);margin-left:6px}.refund-request-btn{font-size:11px;color:var(--text-secondary);border:1px solid var(--border-color);padding:4px 10px;border-radius:12px;transition:all .2s}.refund-request-btn:active{background-color:var(--bg-color);color:var(--danger);border-color:#ee0a2433}.empty-orders{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-text{font-size:13px;color:var(--text-secondary);margin-bottom:20px}.empty-book-btn{background:linear-gradient(135deg,#007aff,#0056d6);color:#fff;font-size:13px;font-weight:600;padding:8px 24px;border-radius:20px;box-shadow:0 4px 12px #007aff33}.lottery-page{display:flex;flex-direction:column;height:100%;position:relative;background:linear-gradient(180deg,#74b9ff,#fff 10%,#ffd180);color:#2d3436}.lottery-header{height:46px;background-color:#ffffffe6;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100}.lottery-header .back-btn{color:#2d3436;font-size:20px}.lottery-header-title{font-size:16px;font-weight:600;color:#2d3436;flex:1;text-align:center}.lottery-info-card{background-color:#ffffffd9;border:1px solid rgba(255,255,255,.5);margin:16px;border-radius:12px;box-shadow:var(--shadow)}.points-display{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#2d3436}.points-display strong{font-size:18px;color:#e67e22}.lottery-cost-text{font-size:11px;color:var(--text-secondary);margin-top:6px}.shelf-board-container{position:relative;width:90%;max-width:320px;margin:20px auto;display:flex;justify-content:center;align-items:center}.lottery_board{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:8px;background-color:#fff6;border:3px solid rgb(243,156,18);border-radius:12px;padding:10px;width:100%;aspect-ratio:1;box-shadow:#f39c1233 0 0 10px inset,var(--shadow)}.prize_item{background-color:#fff;border-bottom:3px solid rgb(255,234,167);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;padding:4px;transition:all .1s ease;box-shadow:0 2px 4px #0000000d}.prize-slot-icon{font-size:18px;margin-bottom:2px;display:flex;align-items:center;justify-content:center}.prize-slot-img-icon{width:24px;height:24px;object-fit:contain}.prize-slot-text{font-size:9px;color:#2d3436;font-weight:600;text-align:center;white-space:nowrap}.prize_item.highlighted{border:3px solid rgb(238,10,36)!important;background-color:#ffebeb;box-shadow:0 0 12px #ee0a2466;transform:scale(1.03)}.go-btn-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.go_btn{width:70px;height:70px;border-radius:50%;background-image:radial-gradient(#ffeaa7,#f1c40f);border:2.5px solid rgb(255,255,255);color:#7f5c00;font-size:16px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:#f39c12 0 4px,#00000040 0 4px 6px;transition:all .15s ease}.go_btn:active:not(:disabled){transform:translateY(3px);box-shadow:#f39c12 0 1px,#00000026 0 1px 3px}.go_btn:disabled{filter:grayscale(.5);opacity:.75;cursor:not-allowed}.rules_card{background-color:#fffc;border:1px solid rgba(255,255,255,.5);margin:16px;padding:16px;color:#2d3436}.rules_card h4{font-size:13px;font-weight:600;color:#d84315;margin-bottom:8px}.rules_card ul{list-style:none;font-size:12px;color:#4f5f76;line-height:1.6}.prize-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000a6;display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s}.prize-modal-content{background:linear-gradient(135deg,#182a4a,#0b1528);border:2px solid #ffd07a;width:80%;max-width:300px;border-radius:16px;padding:24px 20px;display:flex;flex-direction:column;align-items:center;box-shadow:0 10px 30px #00000080,0 0 15px #ffd07a33;animation:popUp .3s cubic-bezier(.175,.885,.32,1.25);text-align:center}.prize-congrats-header{font-size:15px;font-weight:700;color:#ffd07a;margin-bottom:16px}.prize-icon{font-size:44px;margin-bottom:16px;display:flex;align-items:center;justify-content:center}.prize-modal-img-icon{width:64px;height:64px;object-fit:contain}.prize-result-desc{font-size:13px;color:#fff;line-height:1.5;margin-bottom:8px}.prize-result-desc strong{color:#ffd07a;font-size:15px}.prize-result-action{font-size:11px;color:#8c9bb5}.prize-modal-close-btn{width:80%;height:36px;border-radius:18px;background:linear-gradient(135deg,#ffd07a,#ffa03b);color:#102e5b;font-weight:700;font-size:13px;margin-top:20px;box-shadow:0 4px 10px #ffa03b4d}@keyframes popUp{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.activity-middle-page{display:flex;flex-direction:column;height:100%;background-color:var(--bg-color);position:relative}.activity-header{height:46px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:100}.activity-header-title{font-size:16px;font-weight:600;color:var(--text-main);flex:1;text-align:center}.video-banner-container{position:relative;width:100%;height:170px;overflow:hidden}.video-banner{width:100%;height:100%;object-fit:cover}.video-overlay-text{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(0deg,#0009,#0000001a);display:flex;flex-direction:column;justify-content:flex-end;padding:16px;color:#fff}.video-overlay-text h2{font-size:18px;font-weight:700;margin-bottom:4px}.video-overlay-text p{font-size:11px;opacity:.9}.activity-menu-grid{padding:12px;display:flex;flex-direction:column;gap:12px}.activity-menu-card{background-color:var(--card-bg);border-radius:var(--radius);padding:16px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s}.activity-menu-card:active{transform:scale(.98)}.activity-menu-info h4{font-size:14px;font-weight:600;color:var(--text-main);margin-bottom:4px}.activity-menu-info p{font-size:11px;color:var(--text-secondary);line-height:1.4}.activity-menu-action-arrow{font-size:14px;color:var(--text-secondary)}.activity-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2100;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.activity-modal-content{background-color:var(--card-bg);width:90%;max-width:380px;border-radius:18px;max-height:85%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #0003;animation:slideUp .25s cubic-bezier(.175,.885,.32,1.15)}.activity-modal-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.activity-modal-header h3{font-size:15px;font-weight:600;color:var(--text-main)}.activity-close-btn{font-size:24px;color:var(--text-secondary);line-height:1;background:none;border:none;cursor:pointer}.activity-modal-body{padding:16px;overflow-y:auto;flex:1}.vote-card{display:flex;align-items:center;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:10px;padding:10px;margin-bottom:10px;gap:12px}.vote-img{width:70px;height:50px;object-fit:cover;border-radius:6px}.vote-info{flex:1;display:flex;flex-direction:column}.vote-name{font-size:13px;font-weight:600;color:var(--text-main)}.vote-stats{font-size:11px;color:var(--text-secondary);margin-top:2px}.vote-btn{padding:6px 12px;background-color:var(--primary);color:#fff;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer}.vote-btn.voted{background-color:var(--border-color);color:var(--text-secondary);cursor:not-allowed}.checkin-calendar-box{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;padding:14px;margin-bottom:16px}.checkin-calendar-header{font-size:13px;font-weight:600;margin-bottom:12px;color:var(--text-main);text-align:center}.checkin-days-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.checkin-day-cell{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .2s;position:relative}.checkin-day-cell.checked{background-color:#ee0a2414;border-color:var(--danger);color:var(--danger)}.day-number{font-size:10px;color:var(--text-secondary)}.checkin-day-cell.checked .day-number{color:var(--danger)}.day-points-reward{font-size:12px;font-weight:700;margin-top:6px}.checkin-checkmark{font-size:14px;margin-top:4px}.admin-page-container{display:flex;flex-direction:row;height:100vh;width:100vw;background-color:#f7f8fa;overflow:hidden}.admin-sidebar{width:240px;background-color:#1a1d24;color:#a0aec0;display:flex;flex-direction:column;height:100%;flex-shrink:0;border-right:1px solid #2d3748}.admin-sidebar-brand{padding:24px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #2d3748}.admin-sidebar-logo{height:32px;object-fit:contain}.admin-sidebar-title{font-size:16px;font-weight:600;color:#fff;white-space:nowrap}.admin-sidebar-menu{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.admin-sidebar-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500}.admin-sidebar-item:hover{background-color:#2d3748;color:#fff}.admin-sidebar-item.active{background-color:#ee0a24;color:#fff}.sidebar-icon{font-size:16px;width:20px;display:flex;align-items:center;justify-content:center}.admin-sidebar-footer{padding:16px 12px;border-top:1px solid #2d3748}.admin-sidebar-user-card{display:flex;align-items:center;gap:10px;background-color:#242933;padding:8px 10px;border-radius:8px;transition:all .2s ease}.user-avatar-wrapper{width:32px;height:32px;border-radius:50%;overflow:hidden;background-color:#4a5568;flex-shrink:0}.user-avatar-img{width:100%;height:100%;object-fit:cover}.user-profile-details{display:flex;flex-direction:column;flex:1;min-width:0}.user-profile-name{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-profile-role{font-size:10px;color:#a0aec0}.admin-sidebar-logout-icon-btn{background:none;border:none;font-size:16px;cursor:pointer;color:#a0aec0;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.admin-sidebar-logout-icon-btn:hover{background-color:#2d3748;color:#ee0a24}.admin-main-content{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden}.admin-nav-header{height:60px;background-color:#fff;border-bottom:1px solid #ebedf0;display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.admin-header-title{font-weight:600;font-size:16px;color:#1a1d24}.admin-workspace{flex:1;overflow-y:auto;padding:24px;background-color:#f7f8fa}@media(max-width:768px){.admin-sidebar{width:64px}.admin-sidebar-brand{padding:16px 8px;justify-content:center}.admin-sidebar-logo{height:24px}.admin-sidebar-title{display:none}.admin-sidebar-menu{padding:12px 6px}.admin-sidebar-item{padding:12px;justify-content:center}.sidebar-text{display:none}.admin-sidebar-footer{padding:12px 4px}.admin-sidebar-user-card{padding:4px;justify-content:center;background-color:transparent}.user-avatar-wrapper,.user-profile-details{display:none}.admin-sidebar-logout-icon-btn{font-size:16px;padding:6px;background-color:#2d3748;border-radius:50%;color:#ee0a24}.admin-nav-header{padding:0 16px}.admin-workspace{padding:16px}}.config-section{display:flex;flex-direction:column;gap:12px;padding-bottom:24px}.config-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;padding:0 4px}.config-header-row h3{font-size:15px;font-weight:600;color:#323233}.admin-add-btn{background-color:#ee0a24;color:#fff;font-size:12px;font-weight:500;padding:6px 12px;border-radius:16px;box-shadow:0 2px 6px #ee0a2433}.helper-text{font-size:12px;color:#969799;padding:0 4px}.booking-sub-tabs{display:flex;gap:8px;margin-bottom:8px;padding:0 4px}.sub-tab{padding:6px 14px;font-size:13px;border-radius:14px;background-color:#e8eaed;color:#646566;cursor:pointer;transition:all .2s}.sub-tab.active{background-color:#07c160;color:#fff;font-weight:500}.admin-config-card{background-color:#fff;border-radius:10px;padding:10px;display:flex;gap:10px;box-shadow:0 1px 4px #0000000d;border:1px solid #ebedf0;position:relative;align-items:center}.card-thumb{width:60px;height:60px;border-radius:6px;overflow:hidden;flex-shrink:0;background-color:#f2f3f5}.card-thumb img{width:100%;height:100%;object-fit:cover}.card-info{flex:1;min-width:0}.card-info h4{font-size:14px;font-weight:600;color:#323233;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-info p{font-size:11px;color:#969799;line-height:1.4;margin-bottom:2px}.card-desc-short{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:#646566!important}.card-actions{display:flex;flex-direction:row;gap:6px;flex-shrink:0}.card-actions.flex-col{flex-direction:column}.action-btn{padding:5px 10px;font-size:11px;font-weight:500;border-radius:4px;border:1px solid #dcdee0;background-color:#fff}.action-btn.edit{color:#1989fa;border-color:#bcd8ff;background-color:#f2f8ff}.action-btn.delete{color:#ee0a24;border-color:#ffcbd0;background-color:#fff2f3}.lottery-grid-editor{display:flex;flex-direction:column;gap:10px}.lottery-slot-card{background-color:#fff;border-radius:10px;padding:12px;display:flex;align-items:center;gap:12px;box-shadow:0 1px 4px #0000000d;border:1px solid #ebedf0}.slot-badge{background-color:#1989fa;color:#fff;font-size:11px;font-weight:500;padding:3px 8px;border-radius:10px;flex-shrink:0}.slot-avatar{font-size:26px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#f7f8fa;border-radius:50%;flex-shrink:0}.slot-avatar img{width:100%;height:100%;object-fit:contain;border-radius:50%}.slot-info{flex:1;min-width:0}.slot-title{font-size:14px;font-weight:600;color:#323233}.slot-meta{font-size:11px;color:#969799;margin-top:2px}.admin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:999}.admin-modal-content{width:90%;max-width:420px;background-color:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 30px #0000004d;display:flex;flex-direction:column;max-height:85vh;animation:modalSlideUp .3s ease-out}@keyframes modalSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.admin-modal-header{padding:16px;border-bottom:1px solid #ebedf0;display:flex;justify-content:space-between;align-items:center}.admin-modal-header h3{font-size:16px;font-weight:600;color:#323233}.admin-modal-close{font-size:24px;color:#c8c9cc;line-height:1}.admin-modal-form{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.half{flex:1}.form-row{display:flex;gap:12px}.form-group label{font-size:12px;font-weight:500;color:#646566}.form-group input,.form-group textarea,.form-group select{width:100%;border:1px solid #dcdee0;border-radius:6px;padding:8px 12px;font-size:14px;color:#323233;background-color:#fff;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#ee0a24}.form-group textarea{resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #ebedf0}.modal-btn{padding:10px 20px;border-radius:20px;font-size:14px;font-weight:500}.modal-btn.cancel-btn{background-color:#f2f3f5;color:#646566}.modal-btn.submit-btn{background-color:#ee0a24;color:#fff}@media(min-width:600px){.config-cards-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;padding:8px 4px}.lottery-grid-editor{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.admin-modal-content{max-width:650px;width:650px}.admin-modal-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-modal-form>.form-group:has(textarea),.admin-modal-form>.form-group:has(input[placeholder*=カンマ]){grid-column:span 2}.form-actions{grid-column:span 2}}.admin-login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;background-color:#f2f3f5;padding:24px}.admin-login-card{width:100%;max-width:400px;background-color:#fff;border-radius:12px;padding:32px 24px;box-shadow:0 4px 16px #00000014;border:1px solid #ebedf0}.admin-login-logo{text-align:center;margin-bottom:24px}.admin-login-logo img{height:36px;margin-bottom:12px;object-fit:contain}.admin-login-logo h2{font-size:18px;font-weight:600;color:#323233}.admin-login-form{display:flex;flex-direction:column;gap:16px}.admin-login-submit-btn{background-color:#ee0a24;color:#fff;font-size:14px;font-weight:500;padding:12px;border-radius:6px;width:100%;margin-top:8px;box-shadow:0 2px 8px #ee0a2433}.admin-login-back-btn{color:#646566;font-size:13px;text-align:center;background:none;border:none;width:100%;margin-top:4px}.orders-cards-list{display:flex;flex-direction:column;gap:16px;padding:8px 4px}.admin-order-card{background-color:#fff;border-radius:12px;border:1px solid #ebedf0;box-shadow:0 2px 8px #0000000a;padding:16px;display:flex;flex-direction:column;gap:12px}.order-card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f2f3f5;padding-bottom:10px}.order-user-phone{display:flex;align-items:center;gap:6px;font-size:14px;color:#323233}.order-user-phone strong{font-size:15px;color:#111}.admin-status-select{border:1px solid #dcdee0;border-radius:14px;padding:4px 10px;font-size:12px;font-weight:500;outline:none;background-color:#f7f8fa;cursor:pointer}.admin-status-select.status-pending{color:#ff976a;border-color:#ffe8de;background-color:#fff7f4}.admin-status-select.status-paid{color:#1989fa;border-color:#d1e8ff;background-color:#f0f7ff}.admin-status-select.status-completed{color:#07c160;border-color:#c2f0d5;background-color:#f0fbf5}.admin-status-select.status-refunded{color:#969799;border-color:#ebedf0;background-color:#f7f8fa}.order-card-body{display:flex;gap:14px;align-items:flex-start}.order-card-body .order-thumb{width:76px;height:76px;border-radius:8px;overflow:hidden;flex-shrink:0;background-color:#f2f3f5;border:1px solid #f2f3f5}.order-card-body .order-thumb img{width:100%;height:100%;object-fit:cover}.order-details{flex:1;min-width:0}.order-title{font-size:15px;font-weight:600;color:#323233;margin-bottom:8px}.order-detail-grid{display:flex;flex-direction:column;gap:6px}.detail-row{display:flex;font-size:12px;line-height:1.4}.detail-row .label{color:#969799;width:72px;flex-shrink:0}.detail-row .val{color:#323233}.detail-row .val-badge{background-color:#e8eaed;color:#646566;padding:1px 6px;border-radius:4px;font-size:11px}.detail-row .val-date{color:#e67e22;font-weight:500}.detail-row.remarks{background-color:#f7f8fa;border-radius:6px;padding:6px 10px;margin-top:4px;display:flex}.detail-row .val-remarks{color:#646566;white-space:pre-wrap;word-break:break-all}.order-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f2f3f5;padding-top:12px;margin-top:4px}.order-price-info{font-size:13px;color:#646566}.order-price-info .price-val{font-size:16px;color:#ee0a24;margin-left:6px}.admin-order-delete-btn{background:none;border:1px solid #ffcbd0;color:#ee0a24;padding:6px 14px;border-radius:14px;font-size:12px;font-weight:500;background-color:#fff2f3;cursor:pointer;transition:all .2s}.admin-order-delete-btn:hover{background-color:#ffe6e8}@media(min-width:600px){.orders-cards-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px}}.admin-table-wrapper{width:100%;overflow-x:auto;background-color:#fff;border-radius:12px;border:1px solid #ebedf0;box-shadow:0 2px 8px #0000000a}.admin-users-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.admin-users-table th{background-color:#f7f8fa;color:#646566;padding:14px 16px;font-weight:600;border-bottom:1px solid #ebedf0;white-space:nowrap}.admin-users-table td{padding:12px 16px;border-bottom:1px solid #f2f3f5;color:#323233;vertical-align:middle;white-space:nowrap}.admin-users-table tbody tr{transition:background-color .15s ease}.admin-users-table tbody tr:hover{background-color:#f7f8fa}.admin-users-table .action-btn{cursor:pointer;transition:all .2s ease}.admin-users-table .action-btn:hover{opacity:.85}.map-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000a6;display:flex;justify-content:center;align-items:center;z-index:10000}.map-picker-content{width:90%;max-width:700px;background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #00000059;display:flex;flex-direction:column;height:80vh;max-height:600px;overflow:hidden;animation:mapModalFadeIn .25s ease-out}@keyframes mapModalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.map-picker-header{padding:16px 20px;border-bottom:1px solid #eef0f2;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.map-picker-header h3{font-size:16px;margin:0;font-weight:600;color:#1a1d24}.map-picker-close{background:none;border:none;font-size:24px;color:#c8c9cc;cursor:pointer;padding:0;line-height:1}.map-picker-close:hover{color:#646566}.map-picker-body{flex:1;display:flex;flex-direction:column;padding:16px;gap:12px;min-height:0}.map-search-bar{display:flex;gap:8px;flex-shrink:0}.map-search-bar input{flex:1;padding:8px 12px;border:1px solid #dcdfe6;border-radius:4px;font-size:14px;outline:none}.map-search-bar input:focus{border-color:#1989fa}.map-search-bar button{background-color:#ee0a24;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;font-size:13px}.map-container-wrapper{flex:1;min-height:250px;position:relative;border:1px solid #e4e7ed;border-radius:6px;overflow:hidden}#map-container{width:100%;height:100%;z-index:1}.map-address-panel{background-color:#f5f7fa;padding:12px;border-radius:6px;font-size:13px;line-height:1.4;color:#303133;border:1px solid #e4e7ed;flex-shrink:0}.map-address-label{font-weight:600;color:#606266;margin-bottom:4px}.map-picker-footer{padding:16px 20px;border-top:1px solid #eef0f2;display:flex;justify-content:flex-end;gap:12px;flex-shrink:0}.map-footer-btn{padding:8px 20px;font-size:14px;border-radius:4px;font-weight:500;cursor:pointer;border:1px solid #dcdfe6}.map-footer-btn.cancel{background-color:#fff;color:#606266}.map-footer-btn.confirm{background-color:#1989fa;color:#fff;border-color:#1989fa}.map-footer-btn.confirm:disabled{background-color:#a0cfff;border-color:#a0cfff;cursor:not-allowed}.admin-notifications-wrapper{position:fixed;bottom:24px;right:24px;z-index:11000;display:flex;flex-direction:column;gap:12px;width:320px;max-width:calc(100vw - 48px);pointer-events:none}.admin-notification-toast{pointer-events:auto;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(238,10,36,.2);border-radius:12px;box-shadow:0 10px 30px #00000026,inset 0 1px #fff9;padding:16px;display:flex;flex-direction:column;gap:8px;animation:notifSlideIn .35s cubic-bezier(.175,.885,.32,1.275) both;overflow:hidden;position:relative}.admin-notification-toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#ee0a24,#ff6034)}@keyframes notifSlideIn{0%{transform:translateY(100px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.notification-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed rgba(0,0,0,.08);padding-bottom:8px}.notif-badge{font-size:13px;font-weight:700;color:#ee0a24;display:flex;align-items:center;gap:4px;animation:pulseBadge 1.5s infinite}@keyframes pulseBadge{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.notif-time{font-size:11px;color:#969799;margin-left:auto;margin-right:8px}.notif-close-btn{background:none;border:none;font-size:20px;color:#c8c9cc;cursor:pointer;line-height:1;padding:0;transition:color .2s}.notif-close-btn:hover{color:#ee0a24}.notification-body{font-size:12.5px;color:#323233;display:flex;flex-direction:column;gap:4px}.notification-body p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-body strong{color:#646566;font-weight:600;display:inline-block;width:60px}.notification-footer{display:flex;justify-content:flex-end;margin-top:4px}.notif-action-btn{background:linear-gradient(135deg,#ee0a24,#ff6034);color:#fff;border:none;font-size:11px;font-weight:600;padding:6px 14px;border-radius:14px;cursor:pointer;box-shadow:0 4px 10px #ee0a2433;transition:all .2s ease}.notif-action-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #ee0a244d}.notif-action-btn:active{transform:translateY(0)}.service-page{display:flex;flex-direction:column;height:100%;background-color:var(--bg-color);position:relative}.service-header-banner{background:linear-gradient(135deg,#141e30,#243b55);padding:24px 16px;color:#fff;text-align:center;border-bottom-left-radius:20px;border-bottom-right-radius:20px;box-shadow:0 4px 15px #00000026;position:relative;overflow:hidden}.service-header-banner:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 60%);pointer-events:none}.service-header-title{font-size:20px;font-weight:700;margin-bottom:6px;letter-spacing:1px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.service-header-subtitle{font-size:12px;opacity:.85;font-weight:300}.service-filter-tabs{display:flex;overflow-x:auto;padding:12px 8px;gap:8px;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);scrollbar-width:none}.service-filter-tabs::-webkit-scrollbar{display:none}.service-filter-tab{white-space:nowrap;padding:6px 14px;font-size:12px;border-radius:16px;background-color:var(--bg-color);color:var(--text-secondary);border:1px solid var(--border-color);font-weight:500;transition:all .25s ease}.service-filter-tab.active{background-color:#243b55;color:#fff;border-color:#243b55;box-shadow:0 2px 8px #243b5540;transform:translateY(-1px)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary)}.empty-icon{font-size:48px;margin-bottom:12px;opacity:.7}.empty-text{font-size:14px}.staff-cards-grid{display:flex;flex-direction:column;gap:12px;padding:6px 12px}.staff-card.app-card{display:flex;padding:12px;gap:12px;margin:0;border:1px solid var(--border-color);background-color:var(--card-bg);transition:transform .2s ease,box-shadow .2s ease}.staff-card.app-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.staff-img-container{position:relative;width:90px;height:120px;flex-shrink:0;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.staff-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.staff-card:hover .staff-img{transform:scale(1.06)}.staff-badge{position:absolute;top:4px;left:4px;background-color:#dc3545e6;color:#fff;font-size:9px;padding:2px 6px;border-radius:4px;font-weight:700}.staff-status-dot.online{position:absolute;bottom:0;left:0;right:0;background-color:#07c160d9;color:#fff;font-size:9px;padding:2px 0;text-align:center;font-weight:500;animation:pulseBg 2s infinite}@keyframes pulseBg{0%{background-color:#07c160d9}50%{background-color:#07c16099}to{background-color:#07c160d9}}.staff-info{display:flex;flex-direction:column;flex:1;justify-content:space-between}.staff-name-row{display:flex;justify-content:space-between;align-items:center}.staff-name{font-size:15px;font-weight:600;color:var(--text-main)}.staff-rating-badge{font-size:11px;color:var(--text-main);background-color:var(--bg-color);padding:2px 6px;border-radius:10px;border:1px solid var(--border-color)}.rating-score{font-weight:700}.rating-count{font-size:10px;color:var(--text-secondary);margin-left:2px}.staff-short-desc{font-size:11px;color:var(--text-secondary);line-height:1.4;margin:6px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.staff-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.staff-tag-pill{font-size:9px;color:#243b55;background-color:#243b5514;padding:2px 6px;border-radius:4px;font-weight:500;border:1px solid rgba(36,59,85,.15)}.staff-footer{display:flex;justify-content:space-between;align-items:center}.staff-price-container{color:#e74c3c;font-weight:700}.price-symbol{font-size:11px}.price-amount{font-size:16px}.price-unit{font-size:11px;color:var(--text-secondary);font-weight:400}.staff-book-btn{background:linear-gradient(135deg,#141e30,#243b55);color:#fff;font-size:11px;padding:6px 14px;border-radius:14px;font-weight:600;box-shadow:0 2px 6px #141e3033}.staff-book-btn:active{transform:scale(.96)}.service-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1200;animation:fadeInModal .2s ease-out}.service-modal-content{background-color:var(--card-bg);width:100%;max-width:480px;border-top-left-radius:20px;border-top-right-radius:20px;padding:20px;box-shadow:0 -4px 24px #00000026;animation:slideUpModal .25s cubic-bezier(.1,.8,.3,1);max-height:85%;overflow-y:auto}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}.service-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:12px;margin-bottom:16px}.service-modal-header h3{font-size:16px;font-weight:600;color:var(--text-main)}.modal-close-btn{font-size:24px;color:var(--text-secondary);line-height:1}.staff-summary-card{display:flex;align-items:center;gap:12px;background-color:var(--bg-color);padding:10px 14px;border-radius:8px;margin-bottom:16px;border:1px solid var(--border-color)}.summary-avatar{width:44px;height:56px;object-fit:cover;border-radius:4px}.summary-info h4{font-size:14px;font-weight:600;color:var(--text-main);margin-bottom:4px}.summary-meta{font-size:11px;color:var(--text-secondary)}.service-modal-form .form-group-item{display:flex;flex-direction:column;margin-bottom:14px}.service-modal-form label{font-size:12px;font-weight:600;color:var(--text-main);margin-bottom:6px}.required-label:after{content:" *";color:#e74c3c}.service-modal-form input[type=text],.service-modal-form input[type=date],.service-modal-form select,.service-modal-form textarea{border:1px solid var(--border-color);border-radius:6px;padding:10px 12px;font-size:13px;background-color:var(--bg-color);color:var(--text-main);width:100%}.service-modal-form input:focus,.service-modal-form select:focus,.service-modal-form textarea:focus{border-color:#243b55;background-color:var(--card-bg)}.form-row-group{display:flex;gap:12px}.form-row-group .half{flex:1}.modal-action-buttons{display:flex;gap:12px;margin-top:20px}.modal-action-btn{flex:1;padding:12px;font-size:13px;font-weight:600;border-radius:8px;text-align:center}.modal-action-btn.cancel{border:1px solid var(--border-color);background-color:var(--card-bg);color:var(--text-secondary)}.modal-action-btn.submit{background:linear-gradient(135deg,#141e30,#243b55);color:#fff}.map-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000a6;z-index:2200;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeInModal .2s ease-out}.map-modal-content{width:92%;max-width:440px;background-color:var(--card-bg);border-radius:16px;padding:20px;box-shadow:0 10px 30px #00000040;animation:zoomIn .3s cubic-bezier(.18,.89,.32,1.28)}.map-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:1px solid var(--border-color);padding-bottom:10px}.map-modal-header h3{font-size:15px;font-weight:700;color:var(--text-main);margin:0}.map-close-btn{font-size:24px;color:var(--text-secondary);background:none;border:none;cursor:pointer}.map-region-tabs{display:flex;background-color:var(--bg-color);padding:4px;border-radius:8px;margin-bottom:12px}.map-region-tab{flex:1;border:none;background:none;color:var(--text-secondary);font-size:13px;font-weight:600;padding:8px 0;border-radius:6px;cursor:pointer;transition:all .2s}.map-region-tab.active{background-color:#243b55;color:#fff;box-shadow:0 2px 6px #243b5526}.map-instruction{font-size:11px;color:var(--text-secondary);margin-bottom:16px;text-align:center}.map-address-container{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:inset 0 2px 8px #00000005}.address-plan-grid{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;padding-right:4px}.map-address-box{display:flex;flex-direction:column;padding:10px 14px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;position:relative}.map-address-box:hover{border-color:#243b55;background-color:#243b5505}.map-address-box.selected{background:linear-gradient(135deg,#141e30,#243b55)!important;border-color:#243b55!important;color:#fff!important}.map-address-box.selected .address-name{color:#fff!important}.map-address-box.selected .address-text{color:#ffffffbf!important}.map-address-box.selected .address-icon{color:#de8e3c!important}.address-name{font-size:13px;font-weight:600;color:var(--text-main);margin-bottom:3px}.address-text{font-size:11px;color:var(--text-secondary)}.address-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--text-secondary)}.map-location-btn:not(:disabled):hover{background-color:#219a52!important;transform:translateY(-1px);box-shadow:0 4px 12px #27ae6059!important}.map-location-btn:not(:disabled):active{transform:translateY(0)}.locating-spinner{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
