html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}html[data-v-b11e4cf9],body[data-v-b11e4cf9],#container[data-v-b11e4cf9]{width:100%;height:100%;margin:0;font-family:Microsoft YaHei,Arial,sans-serif;overflow:hidden}.bp-handle[data-v-b11e4cf9]{background:#ffffff40;border-radius:3px;flex-shrink:0;width:36px;height:5px;margin:8px auto 4px}.bp-panel[data-v-b11e4cf9]{-webkit-backdrop-filter:blur(32px);color:#f0f0f5;z-index:999;background:#1416208c;border-top:1px solid #ffffff1a;border-radius:28px 28px 0 0;flex-direction:column;width:100%;height:auto;min-height:200px;max-height:50vh;transition:transform .45s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;bottom:0;left:0;transform:translateY(100%);box-shadow:0 -8px 40px #00000073,inset 0 1px #ffffff14}.bp-panel.show[data-v-b11e4cf9]{transform:translateY(0)}.bp-header[data-v-b11e4cf9]{border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.bp-title[data-v-b11e4cf9]{font-size:16px;font-weight:600}.bp-close[data-v-b11e4cf9]{cursor:pointer;opacity:.7;padding:0 4px;font-size:22px;line-height:1}.bp-close[data-v-b11e4cf9]:hover{opacity:1}.bp-body[data-v-b11e4cf9]{flex:1;min-height:60px;padding:14px 16px;overflow:auto}.bp-footer[data-v-b11e4cf9]{border-top:1px solid #ffffff14;flex-shrink:0;padding:12px 16px}#bp-nav[data-v-b11e4cf9]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;width:100%;padding:12px;font-size:15px;font-weight:500;transition:opacity .2s}#bp-nav[data-v-b11e4cf9]:hover{opacity:.92}#container[data-v-b11e4cf9]{background:linear-gradient(135deg,#cfe1b3 0%,#b8d49a 50%,#a3c484 100%);position:relative}.building-popup[data-v-b11e4cf9]{color:#1f2933;min-width:210px;padding:10px 12px}.building-popup h3[data-v-b11e4cf9]{margin:0 0 8px;font-size:16px;line-height:1.35}.building-popup p[data-v-b11e4cf9]{color:#52606d;margin:4px 0;font-size:13px}.building-popup strong[data-v-b11e4cf9]{color:#334e68}.weather-card[data-v-9abb97b9]{color:#fff;z-index:110;-webkit-user-select:none;user-select:none;border-radius:16px;width:200px;padding:12px 12px 8px;transition:background .5s;position:absolute;bottom:150px;right:16px;overflow:hidden;box-shadow:0 8px 28px #0000002e}.weather-card[data-v-9abb97b9]:before{content:"";background:inherit;filter:blur();z-index:-1;position:absolute;inset:0}.weather-header[data-v-9abb97b9]{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.weather-city[data-v-9abb97b9]{letter-spacing:.5px;align-items:center;gap:5px;font-size:13px;font-weight:600;display:flex}.weather-refresh[data-v-9abb97b9]{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;transition:background .2s;display:flex}.weather-refresh[data-v-9abb97b9]:hover{background:#ffffff59}.spinning[data-v-9abb97b9]{animation:1s linear infinite spin-9abb97b9}@keyframes spin-9abb97b9{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.weather-main[data-v-9abb97b9]{text-align:center;margin:2px 0 4px}.weather-icon[data-v-9abb97b9]{filter:drop-shadow(0 2px 6px #0000002e);margin-bottom:0;font-size:30px}.weather-temp[data-v-9abb97b9]{justify-content:center;align-items:flex-start;gap:2px;font-size:30px;font-weight:700;line-height:1.1;display:flex}.temp-num[data-v-9abb97b9]{font-size:34px;line-height:1}.temp-unit[data-v-9abb97b9]{opacity:.85;margin-top:3px;font-size:14px}.weather-desc[data-v-9abb97b9]{opacity:.95;margin-top:2px;font-size:12px}.weather-feel[data-v-9abb97b9]{background:#ffffff38;border-radius:9px;margin-top:4px;padding:2px 8px;font-size:11px;display:inline-block}.weather-grid[data-v-9abb97b9]{grid-template-columns:1fr 1fr;gap:6px;margin:6px 0 4px;display:grid}.weather-cell[data-v-9abb97b9]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border-radius:10px;align-items:center;gap:6px;padding:6px 8px;display:flex}.cell-icon[data-v-9abb97b9]{opacity:.95;font-size:12px}.cell-meta[data-v-9abb97b9]{flex-direction:column;line-height:1.2;display:flex}.cell-label[data-v-9abb97b9]{opacity:.85;font-size:10px}.cell-value[data-v-9abb97b9]{font-size:12px;font-weight:600}.cell-unit[data-v-9abb97b9]{opacity:.85;margin-left:2px;font-size:9px;font-weight:400}.weather-footer[data-v-9abb97b9]{opacity:.9;border-top:1px solid #ffffff2e;justify-content:space-between;align-items:center;padding-top:4px;font-size:10px;display:flex}.weather-time[data-v-9abb97b9]{align-items:center;gap:4px;display:flex}.weather-update[data-v-9abb97b9]{color:#fff;cursor:pointer;background:#ffffff38;border:none;border-radius:8px;align-items:center;gap:3px;padding:2px 8px;font-size:10px;transition:background .2s;display:flex}.weather-update[data-v-9abb97b9]:hover{background:#ffffff59}.weather-skeleton .temp-num[data-v-9abb97b9]{opacity:.6}.weather-sunny[data-v-9abb97b9]{background:linear-gradient(135deg,#ffb88c 0%,#ff9a6b 45%,#f08650 100%)}.weather-cloudy[data-v-9abb97b9]{background:linear-gradient(135deg,#8aa1b8 0%,#6c8499 50%,#4f6680 100%)}.weather-overcast[data-v-9abb97b9]{background:linear-gradient(135deg,#8e9aa4 0%,#6c7783 50%,#4a5560 100%)}.weather-rain[data-v-9abb97b9]{background:linear-gradient(135deg,#4e7faa 0%,#3a5f87 50%,#264a6e 100%)}.weather-snow[data-v-9abb97b9]{background:linear-gradient(135deg,#e6eef5 0%,#b9c8d8 50%,#8aa3b8 100%)}.weather-fog[data-v-9abb97b9]{background:linear-gradient(135deg,#c8c8c0 0%,#a4a89e 50%,#7c807a 100%)}.weather-thunder[data-v-9abb97b9]{background:linear-gradient(135deg,#5a4e7a 0%,#3d3458 50%,#1f1b35 100%)}@media (width<=768px){.weather-card[data-v-9abb97b9]{width:180px;padding:10px 10px 6px;bottom:160px;right:8px}.temp-num[data-v-9abb97b9]{font-size:28px}.weather-icon[data-v-9abb97b9]{font-size:26px}}.pp-mask[data-v-9fae5bf7]{z-index:999;-webkit-backdrop-filter:blur(6px);background:#00000059;justify-content:center;align-items:center;animation:.2s ppMaskIn-9fae5bf7;display:flex;position:fixed;inset:0}@keyframes ppMaskIn-9fae5bf7{0%{background:0 0}to{background:#00000059}}.pp-panel[data-v-9fae5bf7]{-webkit-backdrop-filter:blur(40px)saturate(180%);color:#fff;background:#ffffff2e;border:1px solid #ffffff52;border-radius:20px;flex-direction:column;width:380px;max-width:92vw;max-height:86vh;animation:.32s cubic-bezier(.2,.8,.2,1) ppCenterIn-9fae5bf7;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000059,inset 0 1px #ffffff73,inset 0 -1px #ffffff14}@keyframes ppCenterIn-9fae5bf7{0%{opacity:0;transform:scale(.92)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.pp-close[data-v-9fae5bf7]{color:#fff;cursor:pointer;z-index:2;background:#00000040;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s,transform .2s;display:flex;position:absolute;top:16px;right:16px}.pp-close[data-v-9fae5bf7]:hover{background:#0000008c;transform:rotate(90deg)}.pp-header[data-v-9fae5bf7]{border-bottom:1px solid #ffffff0f;padding:56px 28px 20px}.pp-title[data-v-9fae5bf7]{margin:0 0 4px;font-size:20px;font-weight:700}.pp-subtitle[data-v-9fae5bf7]{color:#ffffff80;margin:0;font-size:12px}.pp-loading[data-v-9fae5bf7]{color:#fff9;flex:1;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.pp-body[data-v-9fae5bf7]{flex:1;padding:24px 28px 28px;overflow-y:auto}.pp-avatar-wrap[data-v-9fae5bf7]{flex-direction:column;align-items:center;margin-bottom:24px;display:flex}.pp-avatar[data-v-9fae5bf7]{background:#ffffff14;border:2px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;display:flex;overflow:hidden}.pp-avatar img[data-v-9fae5bf7]{object-fit:cover;width:100%;height:100%}.pp-avatar-default[data-v-9fae5bf7]{color:#ffffff80;font-size:38px}.pp-avatar-upload[data-v-9fae5bf7]{color:#ffffffd9;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:6px;margin-top:12px;padding:6px 14px;font-size:12px;transition:background .2s;display:inline-flex}.pp-avatar-upload[data-v-9fae5bf7]:hover{background:#ffffff26}.pp-field[data-v-9fae5bf7]{margin-bottom:16px}.pp-field label[data-v-9fae5bf7]{color:#ffffff8c;margin-bottom:6px;font-size:12px;display:block}.pp-field input[data-v-9fae5bf7]{color:#fff;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;width:100%;padding:9px 12px;font-size:13px;transition:border-color .2s,background .2s}.pp-field input[data-v-9fae5bf7]:disabled{color:#ffffff8c;cursor:not-allowed;background:#ffffff08}.pp-field input[data-v-9fae5bf7]:focus:not(:disabled){background:#ffffff14;border-color:#7dd3fc99}.pp-error[data-v-9fae5bf7],.pp-success[data-v-9fae5bf7]{border-radius:6px;align-items:center;gap:6px;margin-bottom:12px;padding:8px 12px;font-size:12px;display:flex}.pp-error[data-v-9fae5bf7]{color:#f87171;background:#f871711a}.pp-success[data-v-9fae5bf7]{color:#34d399;background:#34d3991a}.pp-actions[data-v-9fae5bf7]{gap:10px;margin-top:12px;display:flex}.pp-btn[data-v-9fae5bf7]{cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;height:38px;font-size:13px;transition:background .2s,opacity .2s,transform .2s;display:inline-flex}.pp-btn[data-v-9fae5bf7]:disabled{opacity:.6;cursor:not-allowed}.pp-btn-primary[data-v-9fae5bf7]{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.pp-btn-primary[data-v-9fae5bf7]:hover:not(:disabled){background:linear-gradient(135deg,#60a5fa,#2563eb)}.pp-btn-secondary[data-v-9fae5bf7]{color:#fff;background:#ffffff14;border:1px solid #ffffff1f}.pp-btn-secondary[data-v-9fae5bf7]:hover:not(:disabled){background:#ffffff26}.uc-root[data-v-967591db]{z-index:101;display:inline-block;position:absolute;top:60px;right:16px}.uc-trigger.uc-guest[data-v-967591db]{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);background:#00000059;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:1em;transition:background .2s;display:flex}.uc-trigger.uc-guest[data-v-967591db]:hover{background:#0009}.uc-trigger[data-v-967591db]{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);background:#00000059;border:1px solid #ffffff2e;border-radius:24px;align-items:center;gap:8px;height:38px;padding:3px 12px 3px 3px;transition:background .2s,transform .2s;display:flex}.uc-trigger[data-v-967591db]:hover{background:#0009}.uc-avatar[data-v-967591db]{object-fit:cover;background:#ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex;overflow:hidden}.uc-avatar-default[data-v-967591db]{color:#ffffffd9;font-size:14px}.uc-name[data-v-967591db]{color:#fff;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.5px;max-width:100px;font-size:13px;overflow:hidden}.uc-arrow[data-v-967591db]{color:#fff9;font-size:10px;transition:transform .2s}.uc-arrow.rotated[data-v-967591db]{transform:rotate(180deg)}.uc-dropdown[data-v-967591db]{-webkit-backdrop-filter:blur(20px);z-index:200;background:#141620f2;border:1px solid #ffffff1a;border-radius:10px;min-width:160px;padding:6px 0;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0006}.uc-item[data-v-967591db]{color:#ffffffd9;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:10px 16px;font-size:13px;transition:background .15s,color .15s;display:flex}.uc-item[data-v-967591db]:hover{color:#fff;background:#ffffff14}.uc-item i[data-v-967591db]{text-align:center;width:16px;font-size:13px}.uc-item-danger[data-v-967591db]:hover{color:#fca5a5}.uc-divider[data-v-967591db]{background:#ffffff14;height:1px;margin:4px 0}.uc-fade-enter-active[data-v-967591db],.uc-fade-leave-active[data-v-967591db]{transition:opacity .18s,transform .18s}.uc-fade-enter-from[data-v-967591db],.uc-fade-leave-to[data-v-967591db]{opacity:0;transform:translateY(-8px)}@media (width<=768px){.uc-root[data-v-967591db]{top:64px;right:10px}.uc-name[data-v-967591db]{display:none}.uc-trigger[data-v-967591db]{padding:3px}}.home-page[data-v-0eaa00ad]{width:100%;height:100%;position:relative;overflow:hidden}#map-view[data-v-0eaa00ad]{z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.nav-bar[data-v-0eaa00ad]{z-index:100;-webkit-backdrop-filter:blur(20px);background:#1416208c;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;height:52px;padding:0 24px;display:flex;position:absolute;top:0;left:0;right:0}.nav-left[data-v-0eaa00ad]{align-items:center;gap:16px;display:flex}.nav-logo[data-v-0eaa00ad]{object-fit:contain;height:40px;max-height:40px;display:block}.nav-title[data-v-0eaa00ad]{color:#fff;letter-spacing:2px;font-size:17px;font-weight:700}.nav-subtitle[data-v-0eaa00ad]{color:#fff9;font-size:12px;font-weight:400}.nav-stats[data-v-0eaa00ad]{gap:12px;display:flex}.stat-item[data-v-0eaa00ad]{background:#ffffff0f;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:6px;padding:4px 12px;display:flex}.stat-item i[data-v-0eaa00ad]{color:#ffffff80;font-size:16px}.stat-info[data-v-0eaa00ad]{flex-direction:column;display:flex}.stat-value[data-v-0eaa00ad]{color:#fff;font-size:15px;font-weight:700;line-height:1.2}.stat-label[data-v-0eaa00ad]{color:#ffffff73;letter-spacing:.5px;font-size:11px}.charts-container[data-v-0eaa00ad]{z-index:100;pointer-events:none;flex-direction:column;gap:12px;display:flex;position:absolute;top:55px;left:16px}.chart-card[data-v-0eaa00ad]{pointer-events:auto;-webkit-backdrop-filter:blur(20px);background:#1416208c;border:1px solid #ffffff14;border-radius:14px;width:270px;height:170px;padding:8px;transition:background .3s}.chart-card[data-v-0eaa00ad]:hover{background:#141620b3}.logout-btn[data-v-0eaa00ad]{z-index:101;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:1em;transition:background .2s;display:flex;position:absolute;top:60px;right:16px}.logout-btn[data-v-0eaa00ad]:hover{background:#0009}.music-player[data-v-0eaa00ad]{z-index:110;-webkit-backdrop-filter:blur(20px);cursor:pointer;background:#1416208c;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;width:86px;height:86px;transition:transform .2s,box-shadow .2s;display:flex;position:absolute;bottom:450px;right:25px;box-shadow:0 6px 20px #00000047}.music-player[data-v-0eaa00ad]:hover{transform:scale(1.04);box-shadow:0 8px 24px #0000005c}.music-disc[data-v-0eaa00ad]{background:url(/music/xxx.jpg) 50%/cover no-repeat;border:3px solid #ffffffd9;border-radius:50%;flex-shrink:0;width:68px;height:68px;position:relative;box-shadow:0 0 0 2px #14162099,inset 0 0 0 1px #0003}.music-disc[data-v-0eaa00ad]:after{content:"";z-index:1;background:#141620e6;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fff6}.music-center[data-v-0eaa00ad]{z-index:2;color:#fff;pointer-events:none;opacity:0;background:#141620b3;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:10px;transition:opacity .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.music-player:hover .music-center[data-v-0eaa00ad]{opacity:1}.music-player.playing .music-disc[data-v-0eaa00ad]{animation:8s linear infinite musicSpin-0eaa00ad}@keyframes musicSpin-0eaa00ad{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=768px){.music-player[data-v-0eaa00ad]{width:72px;height:72px;bottom:360px}.music-disc[data-v-0eaa00ad]{width:56px;height:56px}}.intro-trigger[data-v-0eaa00ad]{z-index:120;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);background:radial-gradient(circle at 35% 28%,#ffffff6b,#0000 28%),linear-gradient(145deg,#0ea5e9eb,#2563ebc7 52%,#0f172adb);border:1px solid #7dd3fc8f;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;transition:transform .22s,box-shadow .22s;display:flex;position:absolute;bottom:30px;right:150px;box-shadow:0 0 18px #38bdf87a,inset 0 0 14px #ffffff29}.intro-trigger[data-v-0eaa00ad]:before{content:"";border:1px solid #7dd3fc52;border-radius:50%;animation:2.2s ease-out infinite introPulse-0eaa00ad;position:absolute;inset:-7px}.intro-trigger span[data-v-0eaa00ad]{letter-spacing:0;font-size:15px;font-weight:800;position:relative}.intro-trigger[data-v-0eaa00ad]:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 0 26px #38bdf8a3,inset 0 0 16px #fff3}@keyframes introPulse-0eaa00ad{0%{opacity:.86;transform:scale(.92)}to{opacity:0;transform:scale(1.28)}}.intro-mask[data-v-0eaa00ad]{z-index:900;-webkit-backdrop-filter:blur(3px);background:#02061757;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.intro-panel[data-v-0eaa00ad]{background:#080d1ae6;border:1px solid #94a3b842;border-radius:18px;width:min(1120px,75vw);height:min(760px,75vh);animation:.34s cubic-bezier(.2,.8,.2,1) introPanelIn-0eaa00ad;position:relative;overflow:hidden;box-shadow:0 24px 80px #0000008c,inset 0 1px #ffffff14}@keyframes introPanelIn-0eaa00ad{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.intro-frame[data-v-0eaa00ad]{background:radial-gradient(circle,#1e40af47,#020617f0);border:0;width:100%;height:calc(100% - 112px);display:block}.intro-close[data-v-0eaa00ad],.intro-nav[data-v-0eaa00ad]{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);background:#0f172ab3;border:1px solid #ffffff2e;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex;position:absolute}.intro-close[data-v-0eaa00ad]{border-radius:50%;width:38px;height:38px;top:16px;right:16px}.intro-nav[data-v-0eaa00ad]{border-radius:999px;width:46px;height:68px;font-size:18px;top:calc(50% - 56px)}.intro-prev[data-v-0eaa00ad]{left:18px}.intro-next[data-v-0eaa00ad]{right:18px}.intro-close[data-v-0eaa00ad]:hover,.intro-nav[data-v-0eaa00ad]:hover{background:#0ea5e99e;transform:scale(1.04)}.intro-copy[data-v-0eaa00ad]{color:#e5edf7;background:linear-gradient(#0f172ad6,#0f172af5);border-top:1px solid #94a3b82e;grid-template-columns:160px 1fr auto;align-items:center;gap:18px;height:112px;padding:18px 24px;display:grid}.intro-copy-title[data-v-0eaa00ad]{font-size:18px;font-weight:700}.intro-copy-body[data-v-0eaa00ad]{color:#e2e8f0b8;min-height:44px;font-size:14px;line-height:1.6}.intro-count[data-v-0eaa00ad]{color:#e2e8f0a8;font-size:13px}@media (width<=768px){.nav-bar[data-v-0eaa00ad]{flex-direction:column;gap:8px;height:auto;padding:8px 16px}.nav-stats[data-v-0eaa00ad]{flex-wrap:wrap;justify-content:center;gap:8px}.stat-item[data-v-0eaa00ad]{padding:4px 8px}.charts-container[data-v-0eaa00ad]{gap:6px;top:100px;left:8px}.chart-card[data-v-0eaa00ad]{width:200px;height:150px}.intro-trigger[data-v-0eaa00ad]{width:48px;height:48px;bottom:58px;right:78px}.intro-panel[data-v-0eaa00ad]{width:92vw;height:78vh}.intro-copy[data-v-0eaa00ad]{grid-template-columns:1fr auto;gap:8px 12px;padding:14px 16px}.intro-copy-body[data-v-0eaa00ad]{grid-column:1/-1}}.login-page[data-v-31fff520]{background:url(/assets/back-By4aO9C9.jpg) 50%/cover no-repeat;justify-content:center;align-items:center;min-height:100vh;font-family:Poppins,Microsoft YaHei,sans-serif;display:flex}.login-card[data-v-31fff520]{-webkit-backdrop-filter:blur(20px);background:0 0;border:1px solid #ffffff4d;border-radius:20px;flex-direction:column;align-items:center;width:420px;padding:40px 50px;transition:box-shadow .3s,background .3s;display:flex;position:relative}.login-card[data-v-31fff520]:hover{background:0 0;box-shadow:0 0 40px #ffffff4d}.login-logo[data-v-31fff520]{object-fit:contain;width:100%;max-width:320px;height:auto;margin-bottom:24px;display:block}.role-tabs[data-v-31fff520]{gap:8px;width:100%;margin-bottom:28px;display:flex}.role-btn[data-v-31fff520]{color:#fff9;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 0;font-size:.9em;transition:all .25s;display:flex}.role-btn i[data-v-31fff520]{font-size:1em}.role-btn[data-v-31fff520]:hover{color:#fff;background:#ffffff14}.role-btn.active[data-v-31fff520]{color:#fff;background:#ffffff26;border-color:#fff}.guest-hint[data-v-31fff520]{text-align:center;color:#ffffffb3;background:#ffffff0d;border-radius:12px;margin:30px 0;padding:20px}.guest-hint i[data-v-31fff520]{color:#ffffff80;margin-bottom:10px;font-size:2.2em}.guest-hint p[data-v-31fff520]{margin:0;font-size:.95em}.input-box[data-v-31fff520]{border-bottom:2px solid #ffffff80;width:100%;margin:22px 0;position:relative}.input-box input[data-v-31fff520]{color:#fff;background:0 0;border:none;outline:none;width:100%;height:50px;padding:0 45px 0 5px;font-size:1em}.input-box input[data-v-31fff520]:-webkit-autofill{-webkit-text-fill-color:#fff;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #3e404d}.input-box input[data-v-31fff520]:-webkit-autofill:hover{-webkit-text-fill-color:#fff;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #3e404d}.input-box input[data-v-31fff520]:-webkit-autofill:focus{-webkit-text-fill-color:#fff;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #3e404d}.input-box label[data-v-31fff520]{color:#ffffffb3;pointer-events:none;font-size:1em;transition:all .3s;position:absolute;top:50%;left:5px;transform:translateY(-50%)}.input-box label.floating[data-v-31fff520]{color:#ffffff80;font-size:.8em;top:-10px}.input-box .icon[data-v-31fff520]{color:#ffffffb3;font-size:1.1em;line-height:57px;position:absolute;right:8px}.captcha-box[data-v-31fff520]{position:relative}.captcha-img[data-v-31fff520]{cursor:pointer;border:1px solid #ffffff26;border-radius:6px;height:36px;transition:opacity .2s;position:absolute;top:50%;right:35px;transform:translateY(-50%)}.captcha-img[data-v-31fff520]:hover{opacity:.8}.error-msg[data-v-31fff520]{color:#f87171;background:#f871711a;border-radius:8px;align-items:center;gap:6px;width:100%;margin-bottom:4px;padding:10px 14px;font-size:.88em;display:flex}.error-msg i[data-v-31fff520]{font-size:1em}.login-btn[data-v-31fff520]{cursor:pointer;color:#282a37;background:#fff;border:none;border-radius:40px;outline:none;justify-content:center;align-items:center;gap:8px;width:100%;height:44px;margin-top:16px;font-size:1.05em;font-weight:600;transition:background .2s,opacity .2s;display:flex}.login-btn[data-v-31fff520]:hover{background:#ffffea}.login-btn[data-v-31fff520]:disabled{opacity:.6;cursor:not-allowed}@media (width<=480px){.login-card[data-v-31fff520]{border:none;border-radius:0;justify-content:center;width:100%;min-height:100vh;padding:40px 28px}.login-card[data-v-31fff520]:hover{box-shadow:none}.role-btn[data-v-31fff520]{padding:8px 0;font-size:.82em}}
