.toast[data-v-887caf27]{position:fixed;top:20px;left:50%;transform:translate(-50%);background:#fffffff2;padding:16px 24px;border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:9999;min-width:260px;text-align:center;cursor:pointer}.toast strong[data-v-887caf27]{color:#2e7d32;font-size:16px}.toast p[data-v-887caf27]{color:#666;margin-top:6px;font-size:14px}.toast-enter-active[data-v-887caf27],.toast-leave-active[data-v-887caf27]{transition:all .3s}.toast-enter-from[data-v-887caf27],.toast-leave-to[data-v-887caf27]{opacity:0;transform:translate(-50%) translateY(-20px)}.vc-mask[data-v-5e236a9f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;background:#2e7d3238;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.vc-call-mask[data-v-5e236a9f]{background:#1a1a2e;padding:0}.vc-card[data-v-5e236a9f]{width:min(320px,100%);padding:32px 24px 24px;border-radius:24px;text-align:center;background:linear-gradient(180deg,#fff,#fafff8);box-shadow:0 16px 48px #2e7d3233}.vc-avatar-ring[data-v-5e236a9f]{width:72px;height:72px;margin:0 auto 16px;border-radius:50%;background:linear-gradient(135deg,#e3f2fd,#bbdefb);display:flex;align-items:center;justify-content:center;animation:vc-pulse-5e236a9f 1.5s ease-in-out infinite}@keyframes vc-pulse-5e236a9f{0%,to{transform:scale(1);box-shadow:0 0 #2196f359}50%{transform:scale(1.05);box-shadow:0 0 0 12px #2196f300}}.vc-avatar-icon[data-v-5e236a9f]{font-size:32px}.vc-title[data-v-5e236a9f]{margin:0 0 6px;font-size:20px;color:#2e7d32}.vc-sub[data-v-5e236a9f]{margin:0 0 24px;color:#888;font-size:14px}.vc-actions[data-v-5e236a9f]{display:flex;gap:16px;justify-content:center}.vc-btn[data-v-5e236a9f]{flex:1;border:none;border-radius:24px;padding:12px;font-size:16px;font-weight:600;cursor:pointer}.vc-btn.reject[data-v-5e236a9f]{background:#ffebee;color:#c62828}.vc-btn.accept[data-v-5e236a9f]{background:linear-gradient(135deg,#66bb6a,#43a047);color:#fff}.vc-call-panel[data-v-5e236a9f]{width:100%;height:100%;display:flex;flex-direction:column;max-width:720px;margin:0 auto}.vc-call-header[data-v-5e236a9f]{padding:16px 20px;color:#fff;text-align:center}.vc-call-name[data-v-5e236a9f]{display:block;font-size:18px;font-weight:600}.vc-call-status[data-v-5e236a9f]{font-size:13px;opacity:.75}.vc-video-area[data-v-5e236a9f]{flex:1;position:relative;min-height:0;margin:0 12px;border-radius:16px;overflow:hidden;background:#0d1117}.vc-video-area.group[data-v-5e236a9f]{background:#121826}.vc-net-btn[data-v-5e236a9f]{position:absolute;top:10px;left:10px;z-index:4;width:36px;height:36px;border:none;border-radius:50%;background:#00000073;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 8px #00000040}.vc-net-btn[data-v-5e236a9f]:active{transform:scale(.96)}.vc-net-btn.level-good[data-v-5e236a9f]{box-shadow:0 0 0 2px #66bb6a8c}.vc-net-btn.level-fair[data-v-5e236a9f]{box-shadow:0 0 0 2px #ffc1078c}.vc-net-btn.level-poor[data-v-5e236a9f]{box-shadow:0 0 0 2px #ef53508c}.vc-net-icon[data-v-5e236a9f]{font-size:18px;line-height:1}.vc-net-panel[data-v-5e236a9f]{position:absolute;top:52px;left:10px;z-index:5;width:min(240px,calc(100% - 20px));padding:10px 12px 8px;border-radius:12px;background:#0f172ae0;color:#e2e8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 24px #00000059;font-size:12px}.vc-net-panel-head[data-v-5e236a9f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13px;font-weight:600;color:#fff}.vc-net-close[data-v-5e236a9f]{border:none;background:transparent;color:#94a3b8;font-size:20px;line-height:1;cursor:pointer;padding:0 2px}.vc-net-list[data-v-5e236a9f]{margin:0}.vc-net-row[data-v-5e236a9f]{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px solid rgba(148,163,184,.15)}.vc-net-row[data-v-5e236a9f]:last-child{border-bottom:none}.vc-net-row dt[data-v-5e236a9f]{margin:0;color:#94a3b8;font-weight:500}.vc-net-row dd[data-v-5e236a9f]{margin:0;text-align:right;color:#f1f5f9;font-variant-numeric:tabular-nums}.vc-net-row-sub dt[data-v-5e236a9f],.vc-net-row-sub dd[data-v-5e236a9f]{font-size:11px}.vc-net-tip[data-v-5e236a9f]{margin:8px 0 0;font-size:10px;color:#64748b;text-align:center}.vc-remote-wrap[data-v-5e236a9f]{position:relative;width:100%;height:100%;min-height:280px}.vc-remote-view[data-v-5e236a9f],.vc-remote-view-cell[data-v-5e236a9f],.vc-local-view[data-v-5e236a9f]{width:100%;height:100%;min-height:280px;object-fit:cover;display:block;background:#000}.vc-remote-view-cell[data-v-5e236a9f]{min-height:120px}.vc-local-view[data-v-5e236a9f]{min-height:0}.vc-remote-grid[data-v-5e236a9f]{width:100%;height:100%;min-height:280px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;padding:8px;box-sizing:border-box}.vc-remote-tile[data-v-5e236a9f]{position:relative;border-radius:12px;overflow:hidden;background:#1e293b;min-height:120px}.vc-remote-view-cell[data-v-5e236a9f]{width:100%;height:100%;min-height:120px}.vc-video-placeholder[data-v-5e236a9f]{width:100%;height:100%;min-height:280px;display:flex;align-items:center;justify-content:center;color:#ffffff8c;font-size:15px}.vc-video-placeholder.grid-placeholder[data-v-5e236a9f]{grid-column:1 / -1;min-height:200px}.vc-remote-placeholder[data-v-5e236a9f]{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0;pointer-events:none;background:#0d1117b8}.vc-tap-play[data-v-5e236a9f]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;border:none;background:#0f172ab8;color:#fff;font-size:15px;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.vc-local-view[data-v-5e236a9f]{position:absolute;right:12px;bottom:12px;width:100px;height:140px;min-height:0;border-radius:12px;overflow:hidden;border:2px solid rgba(255,255,255,.85);background:#263238;box-shadow:0 4px 16px #00000059;z-index:2}.vc-local-view.hidden[data-v-5e236a9f]{visibility:hidden;opacity:0;pointer-events:none}.vc-controls[data-v-5e236a9f]{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;padding:20px 16px 28px}.vc-ctrl[data-v-5e236a9f]{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px;border:none;border-radius:16px;padding:10px 8px;background:#ffffff1f;color:#fff;font-size:22px;cursor:pointer}.vc-ctrl span[data-v-5e236a9f]{font-size:11px;opacity:.85}.vc-ctrl.off[data-v-5e236a9f]{background:#ffffff0f;opacity:.65}.vc-ctrl.hangup[data-v-5e236a9f]{background:#e53935;transform:scale(1.08)}.vc-error[data-v-5e236a9f]{text-align:center;color:#ffcdd2;font-size:13px;padding:0 16px 12px}.vc-modal-enter-active[data-v-5e236a9f],.vc-modal-leave-active[data-v-5e236a9f]{transition:opacity .2s ease}.vc-modal-enter-from[data-v-5e236a9f],.vc-modal-leave-to[data-v-5e236a9f]{opacity:0}@media(max-width:768px){.vc-call-panel[data-v-5e236a9f]{width:100%;max-width:none;height:100%;border-radius:0}.vc-video-area[data-v-5e236a9f]{min-height:50vh}.vc-local-view[data-v-5e236a9f]{width:88px;height:124px}.vc-remote-view[data-v-5e236a9f],.vc-remote-view-cell[data-v-5e236a9f],.vc-local-view[data-v-5e236a9f]{transform:translateZ(0);-webkit-transform:translateZ(0)}}.vc-pad-device.vc-call-mask[data-v-5e236a9f],.vc-pad-device .vc-net-btn[data-v-5e236a9f],.vc-pad-device .vc-net-panel[data-v-5e236a9f],.vc-pad-device .vc-tap-play[data-v-5e236a9f]{backdrop-filter:none;-webkit-backdrop-filter:none}.vc-pad-device .vc-remote-view[data-v-5e236a9f],.vc-pad-device .vc-remote-view-cell[data-v-5e236a9f],.vc-pad-device .vc-local-view[data-v-5e236a9f]{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform}.password-field[data-v-340815e7]{width:100%;margin-bottom:16px}.password-wrap[data-v-340815e7]{position:relative;width:100%}.password-input[data-v-340815e7]{width:100%;padding:14px 48px 14px 16px;border:2px solid #c8e6c9;border-radius:14px;font-size:16px;outline:none;background:#ffffffe6;transition:border-color .15s ease,box-shadow .15s ease}.password-input[data-v-340815e7]:focus{border-color:#81c784;box-shadow:0 0 0 3px #81c78440}.eye-btn[data-v-340815e7]{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:none;background:transparent;font-size:18px;line-height:1}.field-hint[data-v-340815e7]{margin:6px 0 0;font-size:13px;color:#888;text-align:left}.app-container[data-v-7d65e520]{min-height:100vh;background:linear-gradient(180deg,#87ceeb,#e8f5e9)}.app-container.has-top-bar[data-v-7d65e520] .page{padding-top:56px}.top-bar[data-v-7d65e520]{position:fixed;top:0;left:0;right:0;z-index:120;display:flex;justify-content:flex-end;align-items:center;padding:8px 12px;background:#ffffffeb;box-shadow:0 2px 8px #00000014}.top-actions[data-v-7d65e520]{display:flex;gap:8px}.top-btn[data-v-7d65e520]{padding:6px 12px;border-radius:999px;border:1.5px solid #a5d6a7;background:#fff;color:#2e7d32;font-size:13px;font-weight:600}.top-btn-danger[data-v-7d65e520]{border-color:#ef9a9a;color:#c62828}.bottom-nav[data-v-7d65e520]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#fffffff5;padding:10px 8px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #2e7d321a;border-top:1px solid rgba(200,230,201,.6);z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-item[data-v-7d65e520]{text-decoration:none;color:#777;font-size:14px;font-weight:600;padding:8px 14px;border-radius:20px;transition:all .2s ease}.nav-item.router-link-active[data-v-7d65e520]{color:#fff;background:linear-gradient(135deg,#66bb6a,#43a047);box-shadow:0 4px 12px #43a04759}.modal-mask[data-v-7d65e520]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000073;display:flex;align-items:center;justify-content:center;padding:20px}.modal-box[data-v-7d65e520]{width:100%;max-width:400px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 8px 24px #00000026}.modal-title[data-v-7d65e520]{margin:0 0 16px;text-align:center;color:#2e7d32;font-size:20px}.modal-actions[data-v-7d65e520]{display:flex;gap:10px;justify-content:center;margin-top:8px}.modal-box .btn-secondary[data-v-7d65e520]{background:#fff;color:#4caf50;border:2px solid #4caf50;padding:10px 20px;border-radius:25px;font-size:16px}.modal-error[data-v-7d65e520]{color:#e53935;font-size:14px;text-align:center;margin:0 0 8px}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{width:100%;min-height:100vh;font-family:Microsoft YaHei,PingFang SC,sans-serif;-webkit-tap-highlight-color:transparent}body{background:radial-gradient(circle at 12% 18%,rgba(200,230,201,.55) 0%,transparent 42%),radial-gradient(circle at 88% 12%,rgba(255,224,178,.45) 0%,transparent 38%),radial-gradient(circle at 72% 82%,rgba(187,222,251,.4) 0%,transparent 40%),linear-gradient(165deg,#f1f8e9,#e8f5e9 35%,#fff8e1);background-attachment:fixed}button{border:none;cursor:pointer;font-family:inherit}.page{padding:20px 20px 80px;max-width:1024px;margin:0 auto}.card{background:linear-gradient(180deg,#fffffff5,#fafff8eb);border-radius:20px;padding:20px;margin-bottom:16px;border:1px solid rgba(200,230,201,.65);box-shadow:0 8px 24px #2e7d3214,0 1px #fffc inset}.btn-primary{background:linear-gradient(135deg,#66bb6a,#43a047);color:#fff;padding:14px 28px;border-radius:25px;font-size:18px;min-width:120px;min-height:48px;box-shadow:0 4px 14px #43a04759;transition:transform .15s ease,box-shadow .15s ease}.btn-primary:hover:not(:disabled){box-shadow:0 6px 18px #43a0476b}.btn-primary:active:not(:disabled){transform:scale(.96)}.btn-primary:disabled{opacity:.65;cursor:not-allowed}.title{font-size:24px;color:#2e7d32;margin-bottom:16px;text-align:center;font-weight:700}.page-header{text-align:center;margin-bottom:16px}.page-header .title{margin-bottom:6px}.page-header .subtitle{color:#777;font-size:14px}.field-input{width:100%;padding:14px 16px;border:2px solid #c8e6c9;border-radius:14px;font-size:16px;outline:none;background:#ffffffe6;transition:border-color .15s ease,box-shadow .15s ease}.field-input:focus{border-color:#81c784;box-shadow:0 0 0 3px #81c78440}.btn-secondary{background:#fff;color:#43a047;border:2px solid #81c784;padding:14px 28px;border-radius:25px;font-size:18px;min-height:48px;transition:background .15s ease,transform .15s ease}.btn-secondary:hover{background:#f1f8e9}.btn-secondary:active{transform:scale(.97)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 20px;position:relative;overflow:hidden}.auth-page:before,.auth-page:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}.auth-page:before{width:280px;height:280px;top:-80px;right:-60px;background:radial-gradient(circle,rgba(129,199,132,.35) 0%,transparent 70%)}.auth-page:after{width:220px;height:220px;bottom:-50px;left:-40px;background:radial-gradient(circle,rgba(255,213,79,.3) 0%,transparent 70%)}.auth-card{position:relative;z-index:1;width:100%;max-width:420px;text-align:center;padding:32px 28px 28px;border-radius:24px;background:linear-gradient(180deg,#fffffffa,#fafff8f2);border:1px solid rgba(200,230,201,.8);box-shadow:0 16px 48px #2e7d3224,0 0 0 1px #fff9 inset}.auth-logo{width:72px;height:72px;margin:0 auto 16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);box-shadow:0 6px 18px #66bb6a40}.auth-title{margin:0 0 8px;font-size:26px;font-weight:700;color:#2e7d32}.auth-subtitle{color:#777;font-size:14px;margin-bottom:28px;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:0}.auth-form .field-input{margin-bottom:14px}.auth-form .btn-primary{width:100%;margin-top:6px}.auth-form .btn-secondary{width:100%;margin-top:12px}.auth-error{color:#e53935;margin-top:14px;font-size:14px;padding:8px 12px;border-radius:10px;background:#ffebee}.back-btn{display:inline-flex;align-items:center;justify-content:center;gap:2px;padding:8px 16px 8px 12px;border-radius:999px;border:1.5px solid #a5d6a7;background:linear-gradient(180deg,#fff,#f1f8e9);color:#2e7d32;font-size:14px;font-weight:600;text-decoration:none;line-height:1.2;white-space:nowrap;box-shadow:0 2px 8px #2e7d321f;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.back-btn:before{content:"‹";font-size:22px;font-weight:700;line-height:1;margin-top:-1px}.back-btn:hover{background:linear-gradient(180deg,#fff,#e8f5e9);border-color:#81c784;box-shadow:0 4px 14px #2e7d322e}.back-btn:active{transform:scale(.96)}.back-btn-wrap{display:flex;justify-content:center;margin-top:20px}
