@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700;900&display=swap";:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-color: #1890ff;--primary-hover: #40a9ff;--primary-active: #096dd9;--primary-soft: #e6f7ff;--secondary-color: #69c0ff;--warning-color: #faad14;--error-color: #ff4d4f;--success-color: #52c41a;--text-color: #2c3e50;--text-light: #666;--text-muted: #8c8c8c;--background-color: #f0f5ff;--page-background: linear-gradient(180deg, #f0f5ff 0%, #e6f4ff 45%, #f5f8fc 100%);--card-background: #ffffff;--border-color: #d6e4ff;--header-gradient: linear-gradient(135deg, #1890ff 0%, #40a9ff 100%);--sidebar-background: #ffffff;--shadow-color: rgba(24, 144, 255, .12)}a{font-weight:500;color:var(--primary-color);text-decoration:inherit}a:hover{color:var(--primary-hover)}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background:var(--page-background);background-color:var(--background-color);color:var(--text-color)}h1{font-size:3.2em;line-height:1.1;color:var(--text-color)}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--primary-color);color:#fff;cursor:pointer;transition:border-color .25s,background-color .25s}button:hover{border-color:var(--primary-hover);background-color:var(--primary-hover)}button:focus,button:focus-visible{outline:none}button:focus-visible{box-shadow:0 0 0 2px #1890ff59}.card{padding:2em;background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px}#app{width:100%;min-height:100vh;background:var(--page-background);background-color:var(--background-color);color:var(--text-color)}.app-header,.page-header{background:var(--header-gradient);color:#fff}.app-header h1,.page-header h1,.header h1{color:#fff}:root[data-skin],:root[data-skin=blue],:root[data-skin=green],:root[data-skin=orange],:root[data-skin=purple],:root[data-skin=dark]{--primary-color: #1890ff;--primary-hover: #40a9ff;--primary-active: #096dd9;--primary-soft: #e6f7ff;--secondary-color: #69c0ff;--warning-color: #faad14;--error-color: #ff4d4f;--success-color: #52c41a;--text-color: #2c3e50;--text-light: #666;--text-muted: #8c8c8c;--background-color: #f0f5ff;--page-background: linear-gradient(180deg, #f0f5ff 0%, #e6f4ff 45%, #f5f8fc 100%);--card-background: #ffffff;--border-color: #d6e4ff;--header-gradient: linear-gradient(135deg, #1890ff 0%, #40a9ff 100%);--sidebar-background: #ffffff;--shadow-color: rgba(24, 144, 255, .12)}.toast-container[data-v-7b761a0e]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast[data-v-7b761a0e]{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:300px;max-width:400px;pointer-events:auto;border-left:4px solid;animation:slideIn-7b761a0e .3s ease}.toast.success[data-v-7b761a0e]{border-left-color:#52c41a}.toast.error[data-v-7b761a0e]{border-left-color:#ff4d4f}.toast.warning[data-v-7b761a0e]{border-left-color:#faad14}.toast.info[data-v-7b761a0e]{border-left-color:#1890ff}.toast-icon[data-v-7b761a0e]{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.toast.success .toast-icon[data-v-7b761a0e]{background:#f6ffed;color:#52c41a}.toast.error .toast-icon[data-v-7b761a0e]{background:#fff2f0;color:#ff4d4f}.toast.warning .toast-icon[data-v-7b761a0e]{background:#fffbe6;color:#faad14}.toast.info .toast-icon[data-v-7b761a0e]{background:#e6f7ff;color:#1890ff}.toast-content[data-v-7b761a0e]{flex:1;min-width:0}.toast-title[data-v-7b761a0e]{font-size:15px;font-weight:600;color:#262626;margin-bottom:4px}.toast-message[data-v-7b761a0e]{font-size:14px;color:#595959;line-height:1.5}.toast-close[data-v-7b761a0e]{width:20px;height:20px;border:none;background:transparent;color:#8c8c8c;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;flex-shrink:0;margin-top:-2px}.toast-close[data-v-7b761a0e]:hover{background:#f5f5f5;color:#262626}@keyframes slideIn-7b761a0e{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-enter-active[data-v-7b761a0e],.toast-leave-active[data-v-7b761a0e]{transition:all .3s ease}.toast-enter-from[data-v-7b761a0e],.toast-leave-to[data-v-7b761a0e]{transform:translate(100%);opacity:0}@media (max-width: 480px){.toast-container[data-v-7b761a0e]{left:16px;right:16px;top:16px}.toast[data-v-7b761a0e]{min-width:auto;max-width:none}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Microsoft YaHei,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.login-page[data-v-28d466ce]{position:relative;width:100vw;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;background:#0b1f3a}.bg-layer[data-v-28d466ce]{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 20% 20%,rgba(64,169,255,.35),transparent 55%),radial-gradient(ellipse 70% 50% at 80% 70%,rgba(24,144,255,.28),transparent 50%),linear-gradient(160deg,#0a2748,#124a8a 42%,#1a6fc4 72%,#2f8fde)}.glow[data-v-28d466ce]{position:absolute;border-radius:50%;filter:blur(50px);opacity:.55;animation:float-28d466ce 12s ease-in-out infinite}.glow-a[data-v-28d466ce]{width:360px;height:360px;left:-80px;top:-60px;background:#69c0ff}.glow-b[data-v-28d466ce]{width:420px;height:420px;right:-100px;bottom:-80px;background:#1890ff;animation-delay:-4s}.glow-c[data-v-28d466ce]{width:220px;height:220px;left:42%;top:55%;background:#91d5ff;opacity:.35;animation-delay:-7s}.grid-overlay[data-v-28d466ce]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%)}.radar[data-v-28d466ce]{position:absolute;width:min(52vw,520px);height:min(52vw,520px);left:8%;bottom:6%;opacity:.55}.ring[data-v-28d466ce]{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;border:1px solid rgba(255,255,255,.18);border-radius:50%}.r1[data-v-28d466ce]{width:34%;height:34%}.r2[data-v-28d466ce]{width:62%;height:62%}.r3[data-v-28d466ce]{width:92%;height:92%}.sweep[data-v-28d466ce]{position:absolute;top:4%;right:4%;bottom:4%;left:4%;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,rgba(145,213,255,.35) 50deg,transparent 70deg);animation:spin-28d466ce 8s linear infinite;-webkit-mask-image:radial-gradient(circle,transparent 18%,#000 19%);mask-image:radial-gradient(circle,transparent 18%,#000 19%)}.dot[data-v-28d466ce]{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 12px #91d5ff;animation:pulse-28d466ce 2.8s ease-in-out infinite}.d1[data-v-28d466ce]{left:62%;top:28%}.d2[data-v-28d466ce]{left:30%;top:58%;animation-delay:.8s}.d3[data-v-28d466ce]{left:72%;top:68%;animation-delay:1.4s}.login-shell[data-v-28d466ce]{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;width:min(920px,calc(100vw - 40px));min-height:520px;border-radius:24px;overflow:hidden;background:#ffffff14;border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 80px #051e4673;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:rise-28d466ce .7s ease-out}.brand-panel[data-v-28d466ce]{display:flex;flex-direction:column;justify-content:center;padding:48px 40px;color:#fff;background:linear-gradient(180deg,#ffffff14,#ffffff05)}.brand-mark[data-v-28d466ce]{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-weight:900;font-size:22px;letter-spacing:1px;color:#0b1f3a;background:linear-gradient(145deg,#e6f7ff,#69c0ff);box-shadow:0 10px 30px #1890ff59;margin-bottom:28px}.brand-title[data-v-28d466ce]{margin:0;font-size:clamp(28px,3.2vw,38px);font-weight:900;line-height:1.25;letter-spacing:1px;color:#fff}.brand-desc[data-v-28d466ce]{margin:16px 0 0;font-size:15px;color:#e6f7ffd9;letter-spacing:2px}.login-box[data-v-28d466ce]{padding:44px 40px;background:#fffffff5}.login-header[data-v-28d466ce]{margin-bottom:28px}.login-header h2[data-v-28d466ce]{margin:0 0 8px;font-size:26px;font-weight:700;color:#1f2d3d}.login-header p[data-v-28d466ce]{margin:0;color:#6b7c93;font-size:14px}.login-form[data-v-28d466ce]{display:flex;flex-direction:column;gap:16px}.form-item[data-v-28d466ce]{display:flex;flex-direction:column;gap:8px}.form-item label[data-v-28d466ce]{font-size:13px;color:#3a4a5b;font-weight:500}.form-item input[data-v-28d466ce],.form-item select[data-v-28d466ce]{padding:12px 14px;border:1px solid #d6e4ff;border-radius:10px;font-size:14px;background:#f8fbff;color:#1f2d3d;transition:border-color .25s,box-shadow .25s,background .25s}.form-item input[data-v-28d466ce]:focus,.form-item select[data-v-28d466ce]:focus{outline:none;border-color:#1890ff;background:#fff;box-shadow:0 0 0 3px #1890ff26}.error-message[data-v-28d466ce]{color:#ff4d4f;font-size:13px;text-align:center}.login-btn[data-v-28d466ce]{margin-top:4px;padding:14px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 10px 24px #1890ff47}.login-btn[data-v-28d466ce]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #1890ff59;opacity:1}.login-btn[data-v-28d466ce]:disabled{opacity:.65;cursor:not-allowed}.login-footer[data-v-28d466ce]{margin-top:18px;text-align:center}.login-footer p[data-v-28d466ce]{margin:0;color:#8fa3bf;font-size:12px}.remember-me[data-v-28d466ce]{flex-direction:row!important;align-items:center}.checkbox-label[data-v-28d466ce]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:#5b6b7c}.checkbox-label input[type=checkbox][data-v-28d466ce]{width:16px;height:16px;accent-color:#1890ff;cursor:pointer}@keyframes spin-28d466ce{to{transform:rotate(360deg)}}@keyframes pulse-28d466ce{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.35);opacity:1}}@keyframes float-28d466ce{0%,to{transform:translateY(0)}50%{transform:translateY(18px)}}@keyframes rise-28d466ce{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 820px){.login-shell[data-v-28d466ce]{grid-template-columns:1fr;min-height:auto}.brand-panel[data-v-28d466ce]{padding:28px 28px 12px}.brand-title[data-v-28d466ce]{font-size:24px}.brand-desc[data-v-28d466ce]{margin-top:8px;font-size:13px}.radar[data-v-28d466ce]{opacity:.28;left:auto;right:-10%;bottom:auto;top:-8%}.login-box[data-v-28d466ce]{padding:28px}}.admin-layout[data-v-336a6b90]{min-height:100vh;background:#f0f4f8;color:#1f2d3d;overflow-x:hidden}.topbar[data-v-336a6b90]{height:56px;display:flex;align-items:center;gap:12px;padding:0 14px;background:linear-gradient(90deg,#0b3a6e,#1677ff);color:#fff;box-shadow:0 2px 10px #0000001f;position:sticky;top:0;z-index:50;overflow:visible}.brand[data-v-336a6b90]{display:flex;align-items:center;gap:8px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0}.pin[data-v-336a6b90]{font-size:18px}.modules[data-v-336a6b90]{display:flex;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.modules[data-v-336a6b90]::-webkit-scrollbar{display:none}.mod-btn[data-v-336a6b90]{border:none;outline:none;box-shadow:none;background:transparent;color:#ffffffd9;padding:8px 12px;border-radius:8px;cursor:pointer;white-space:nowrap;font-size:14px;flex-shrink:0}.mod-btn[data-v-336a6b90]:hover,.mod-btn[data-v-336a6b90]:focus,.mod-btn[data-v-336a6b90]:focus-visible,.mod-btn[data-v-336a6b90]:active{outline:none;box-shadow:none;border-color:transparent;background:#ffffff1f;color:#fff}.mod-btn.active[data-v-336a6b90],.mod-btn.active[data-v-336a6b90]:hover,.mod-btn.active[data-v-336a6b90]:focus,.mod-btn.active[data-v-336a6b90]:focus-visible,.mod-btn.active[data-v-336a6b90]:active{outline:none;box-shadow:none;background:#ffffff38;color:#fff;font-weight:600}.top-actions[data-v-336a6b90]{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.link-btn[data-v-336a6b90]{border:1px solid rgba(255,255,255,.35);outline:none;box-shadow:none;background:#ffffff1f;color:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:13px}.link-btn[data-v-336a6b90]:hover,.link-btn[data-v-336a6b90]:focus,.link-btn[data-v-336a6b90]:focus-visible,.link-btn[data-v-336a6b90]:active{outline:none;box-shadow:none;background:#ffffff38;color:#fff}.user-menu[data-v-336a6b90]{position:relative;flex-shrink:0}.user-trigger[data-v-336a6b90]{display:inline-flex;align-items:center;gap:6px;height:34px;border:1px solid rgba(255,255,255,.4);outline:none;box-shadow:none;background:#ffffff24;color:#fff;border-radius:17px;padding:0 10px 0 4px;cursor:pointer;max-width:140px}.user-trigger[data-v-336a6b90]:hover,.user-trigger[data-v-336a6b90]:focus,.user-trigger[data-v-336a6b90]:focus-visible,.user-trigger[data-v-336a6b90]:active,.user-menu:hover .user-trigger[data-v-336a6b90]{outline:none;box-shadow:none;background:#ffffff3d;color:#fff}.avatar[data-v-336a6b90]{width:26px;height:26px;border-radius:50%;background:#fff;color:#1677ff;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.user-name[data-v-336a6b90]{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:72px}.caret[data-v-336a6b90]{font-size:10px;opacity:.85;flex-shrink:0}.body[data-v-336a6b90]{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 56px)}.body.fullscreen[data-v-336a6b90]{grid-template-columns:1fr}.sider[data-v-336a6b90]{background:#fff;border-right:1px solid #e4ebf2;padding:12px 10px;position:sticky;top:56px;height:calc(100vh - 56px);overflow:auto}.sider-title[data-v-336a6b90]{font-size:12px;color:#7a8b9c;padding:6px 10px 10px;font-weight:600}.sider-item[data-v-336a6b90]{width:100%;display:flex;align-items:center;gap:10px;border:none;outline:none;box-shadow:none;background:transparent;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer;color:#334155;font-size:14px;margin-bottom:2px}.sider-item[data-v-336a6b90]:hover,.sider-item[data-v-336a6b90]:focus,.sider-item[data-v-336a6b90]:focus-visible{outline:none;box-shadow:none;background:#f0f7ff;color:#334155}.sider-item.active[data-v-336a6b90],.sider-item.active[data-v-336a6b90]:hover,.sider-item.active[data-v-336a6b90]:focus,.sider-item.active[data-v-336a6b90]:focus-visible{outline:none;box-shadow:none;background:#e6f4ff;color:#1677ff;font-weight:600}.ico[data-v-336a6b90]{width:20px;text-align:center}.badge[data-v-336a6b90]{margin-left:auto;background:#ff4d4f;color:#fff;border-radius:10px;padding:0 7px;font-size:11px;min-width:18px;text-align:center}.content[data-v-336a6b90]{min-width:0;padding:12px 16px 0;display:flex;flex-direction:column;min-height:calc(100vh - 56px)}.content.padless[data-v-336a6b90]{padding:0}.content-body[data-v-336a6b90]{flex:1;min-height:0}.app-footer[data-v-336a6b90]{text-align:center;padding:14px 12px 16px;font-size:12px;color:#94a3b8;letter-spacing:.5px}.crumb[data-v-336a6b90]{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:#64748b}.crumb-back[data-v-336a6b90]{border:1px solid #d0dbe8;background:#fff;border-radius:8px;padding:4px 10px;cursor:pointer;color:#1677ff}.sep[data-v-336a6b90]{opacity:.5}@media (max-width: 960px){.body[data-v-336a6b90]{grid-template-columns:1fr}.sider[data-v-336a6b90]{position:relative;top:0;height:auto;display:flex;flex-wrap:wrap;gap:4px}.sider-title[data-v-336a6b90]{width:100%}.sider-item[data-v-336a6b90]{width:auto}.modules[data-v-336a6b90]{display:none}}.user-dropdown-pop{width:196px;background:#fff;color:#1f2d3d;border-radius:12px;box-shadow:0 12px 32px #0f285033;border:1px solid #e4ebf2;padding:6px;z-index:3000}.user-dropdown-pop .ud-head{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-bottom:1px solid #eef2f6;margin-bottom:4px}.user-dropdown-pop .ud-head strong{font-size:14px;color:#0f172a}.user-dropdown-pop .ud-head span{font-size:12px;color:#64748b}.user-dropdown-pop .ud-divider{height:1px;background:#eef2f6;margin:4px 6px}.user-dropdown-pop button{width:100%;text-align:left;border:none;background:transparent;padding:10px 12px;border-radius:8px;cursor:pointer;color:#334155;font-size:13px}.user-dropdown-pop button:hover{background:#f0f7ff;color:#1677ff}.user-dropdown-pop button.danger{color:#cf1322}.user-dropdown-pop button.danger:hover{background:#fff1f0}.pwd-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3100;background:#00000073;display:flex;align-items:center;justify-content:center}.pwd-modal{width:360px;background:#fff;border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 16px 40px #0003}.pwd-modal h3{margin:0 0 4px;font-size:16px;color:#1f2d3d}.pwd-modal label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#64748b}.pwd-modal input{border:1px solid #d0dbe8;border-radius:8px;padding:8px 10px;color:#1f2d3d;font-size:14px}.pwd-err{margin:0;color:#cf1322;font-size:12px}.pwd-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.pwd-actions button{border-radius:8px;padding:7px 14px;cursor:pointer;font-size:13px;border:1px solid #d0dbe8}.pwd-actions .ghost{background:#fff;color:#334155}.pwd-actions .primary{background:#1677ff;border-color:#1677ff;color:#fff}.scene3d-container[data-v-37de4d3a]{position:relative;width:100%;height:100%;overflow:hidden}.canvas-container[data-v-37de4d3a]{position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(135deg,#f5f7fa,#e4e8ec)}.scene-controls[data-v-37de4d3a]{position:absolute;top:20px;left:20px;background:#fffffff2;border-radius:12px;padding:20px;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:200px;max-height:calc(100% - 40px);overflow-y:auto;transition:all .3s ease;z-index:1000}.scene-controls.collapsed[data-v-37de4d3a]{width:50px;min-width:50px;padding:10px;overflow:hidden}.collapse-btn[data-v-37de4d3a]{position:absolute;top:10px;right:10px;width:30px;height:30px;border:none;background:#0000001a;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .3s ease;z-index:1001}.collapse-btn[data-v-37de4d3a]:hover{background:#0003;transform:scale(1.1)}.scene-controls.collapsed .control-group[data-v-37de4d3a],.scene-controls.collapsed .alerts-section[data-v-37de4d3a]{display:none}.scene-controls.collapsed .collapse-btn[data-v-37de4d3a]{right:5px;top:5px}.alerts-section[data-v-37de4d3a]{margin-bottom:20px;padding:15px;background:#fff8f8cc;border-radius:8px;border-left:4px solid #ff4444}.alerts-title[data-v-37de4d3a]{margin-top:0;margin-bottom:10px;color:#f44;font-size:14px;font-weight:700}.alert-list[data-v-37de4d3a]{display:flex;flex-direction:column;gap:10px}.alert-item[data-v-37de4d3a]{display:flex;flex-direction:column;gap:5px;padding:10px;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;animation:alertPulse-37de4d3a 2s infinite}.alert-item.active[data-v-37de4d3a]{animation:alertPulse-37de4d3a 1s infinite}@keyframes alertPulse-37de4d3a{0%{box-shadow:0 0 #f446}70%{box-shadow:0 0 0 10px #f440}to{box-shadow:0 0 #f440}}.alert-type[data-v-37de4d3a]{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:700;width:fit-content}.alert-type.fence[data-v-37de4d3a]{background:#fc0;color:#333}.alert-type.danger[data-v-37de4d3a]{background:#f44;color:#fff}.alert-message[data-v-37de4d3a]{font-size:13px;color:#333;margin:5px 0}.alert-time[data-v-37de4d3a]{font-size:11px;color:#999;margin-bottom:5px}.clear-alert-btn[data-v-37de4d3a]{align-self:flex-start;padding:4px 8px;background:#f0f0f0;border:none;border-radius:4px;font-size:11px;cursor:pointer;transition:background .2s}.clear-alert-btn[data-v-37de4d3a]:hover{background:#e0e0e0}.control-group[data-v-37de4d3a]{margin-bottom:20px}.control-group[data-v-37de4d3a]:last-child{margin-bottom:0}.control-group label[data-v-37de4d3a]{display:block;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.view-modes[data-v-37de4d3a]{display:flex;gap:8px}.mode-btn[data-v-37de4d3a]{flex:1;padding:8px 12px;border:1px solid #e0e0e0;background:#fff;color:#2c3e50;border-radius:6px;cursor:pointer;font-size:13px;transition:all .3s}.mode-btn[data-v-37de4d3a]:hover{border-color:#1890ff;color:#1890ff}.mode-btn.active[data-v-37de4d3a]{background:#1890ff;border-color:#1890ff;color:#fff}.toggle-options[data-v-37de4d3a]{display:flex;flex-direction:column;gap:8px}.time-buttons[data-v-37de4d3a],.weather-buttons[data-v-37de4d3a]{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.time-btn[data-v-37de4d3a],.weather-btn[data-v-37de4d3a]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 12px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#2c3e50;cursor:pointer;transition:all .3s ease;min-width:80px;font-size:13px}.time-btn[data-v-37de4d3a]:hover,.weather-btn[data-v-37de4d3a]:hover{background:#e6f7ff;border-color:#1890ff;color:#1890ff}.time-btn.active[data-v-37de4d3a],.weather-btn.active[data-v-37de4d3a]{background:#1890ff;color:#fff;border-color:#1890ff;outline:none;box-shadow:none}.mode-btn[data-v-37de4d3a]:focus,.mode-btn[data-v-37de4d3a]:focus-visible,.time-btn[data-v-37de4d3a]:focus,.time-btn[data-v-37de4d3a]:focus-visible,.weather-btn[data-v-37de4d3a]:focus,.weather-btn[data-v-37de4d3a]:focus-visible,.action-btn[data-v-37de4d3a]:focus,.action-btn[data-v-37de4d3a]:focus-visible{outline:none;box-shadow:0 0 0 2px #1890ff40}.time-icon[data-v-37de4d3a],.weather-icon[data-v-37de4d3a]{font-size:18px;margin-bottom:4px}.toggle-item[data-v-37de4d3a]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#333}.toggle-item input[type=checkbox][data-v-37de4d3a]{width:16px;height:16px;cursor:pointer}.scene-actions[data-v-37de4d3a]{display:flex;flex-direction:column;gap:8px}.action-btn[data-v-37de4d3a]{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f5f5f5;color:#2c3e50;border:1px solid #e8e8e8;border-radius:8px;cursor:pointer;font-size:14px;transition:all .3s}.action-btn[data-v-37de4d3a]:hover{background:#e8e8e8}.action-btn .icon[data-v-37de4d3a]{font-size:16px}.person-info-panel[data-v-37de4d3a]{position:absolute;top:20px;right:20px;background:#fffffff2;border-radius:12px;padding:0;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:250px;overflow:hidden}.panel-header[data-v-37de4d3a]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.panel-header h3[data-v-37de4d3a]{margin:0;font-size:16px;font-weight:600}.close-btn[data-v-37de4d3a]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;line-height:1}.panel-content[data-v-37de4d3a]{padding:20px}.info-row[data-v-37de4d3a]{display:flex;justify-content:space-between;margin-bottom:12px;font-size:14px}.info-row[data-v-37de4d3a]:last-child{margin-bottom:0}.info-row .label[data-v-37de4d3a]{color:#666}.info-row .value[data-v-37de4d3a]{font-weight:500;color:#333}.info-row .value.online[data-v-37de4d3a]{color:#52c41a}.info-row .value.warning[data-v-37de4d3a]{color:#faad14}.info-row .value.offline[data-v-37de4d3a]{color:#999}.panel-actions[data-v-37de4d3a]{display:flex;gap:10px;padding:0 20px 20px}.focus-btn[data-v-37de4d3a],.trajectory-btn[data-v-37de4d3a]{flex:1;padding:10px;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .3s}.focus-btn[data-v-37de4d3a]{background:#1890ff;color:#fff}.focus-btn[data-v-37de4d3a]:hover{background:#40a9ff}.trajectory-btn[data-v-37de4d3a]{background:#f5f5f5;color:#333}.trajectory-btn[data-v-37de4d3a]:hover{background:#e8e8e8}.scene-legend[data-v-37de4d3a]{position:absolute;bottom:20px;left:20px;background:#fffffff2;border-radius:12px;padding:16px 20px;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scene-legend h4[data-v-37de4d3a]{margin:0 0 12px;font-size:14px;font-weight:600;color:#333}.legend-item[data-v-37de4d3a]{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;color:#666}.legend-item[data-v-37de4d3a]:last-child{margin-bottom:0}.color-box[data-v-37de4d3a]{width:16px;height:16px;border-radius:4px}.color-box.online[data-v-37de4d3a]{background:#52c41a}.color-box.warning[data-v-37de4d3a]{background:#faad14}.color-box.offline[data-v-37de4d3a]{background:#999}.color-box.fence[data-v-37de4d3a]{background:#64b5f6}.color-box.furniture[data-v-37de4d3a]{background:#8d6e63}.loading-overlay[data-v-37de4d3a]{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:100}.loading-spinner[data-v-37de4d3a]{width:48px;height:48px;border:4px solid #e8e8e8;border-top-color:#1890ff;border-radius:50%;animation:spin-37de4d3a 1s linear infinite}@keyframes spin-37de4d3a{to{transform:rotate(360deg)}}.loading-overlay span[data-v-37de4d3a]{font-size:14px;color:#666}.map2d[data-v-af6c7393]{width:100%;height:100%;min-height:420px;position:relative;background:#eef3f8}.indoor-stage[data-v-af6c7393],.outdoor-stage[data-v-af6c7393]{position:absolute;top:0;right:0;bottom:0;left:0}.floor-img[data-v-af6c7393]{width:100%;height:100%;object-fit:contain;background:#f5f8fc}.floor-fallback[data-v-af6c7393]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#f0f7ff,#e8eef5)}.area[data-v-af6c7393]{position:absolute;border:1px solid rgba(22,119,255,.35);color:#334155;font-size:12px;display:flex;align-items:center;justify-content:center;border-radius:4px;pointer-events:none}.person[data-v-af6c7393]{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:2;display:flex;flex-direction:column;align-items:center;gap:2px}.person .dot[data-v-af6c7393]{width:12px;height:12px;border-radius:50%;background:#1677ff;box-shadow:0 0 0 4px #1677ff40}.person.active .dot[data-v-af6c7393]{background:#ff4d4f;box-shadow:0 0 0 4px #ff4d4f4d}.person .name[data-v-af6c7393]{background:#000000b8;color:#fff;font-size:11px;padding:2px 6px;border-radius:4px;white-space:nowrap}.empty[data-v-af6c7393]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#94a3b8;font-size:14px;pointer-events:none}.amap[data-v-af6c7393]{width:100%;height:100%}.amap-tip[data-v-af6c7393]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fffffff2;padding:12px 18px;border-radius:8px;color:#334155;font-size:13px;box-shadow:0 4px 16px #00000014;z-index:5}.amap-tip.err[data-v-af6c7393]{color:#cf1322;max-width:80%;text-align:center;line-height:1.5}.amap-person-label{background:#000000bf;color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;white-space:nowrap;border:none}[data-v-a23e848d]{margin:0;padding:0;box-sizing:border-box}.home-embed[data-v-a23e848d]{height:calc(100vh - 56px);display:flex;flex-direction:column;background:var(--page-background)}.list-head[data-v-a23e848d]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.system-status[data-v-a23e848d]{padding:2px 8px;background:#fff1f0;border-radius:10px;font-size:11px;color:#ff4d4f}.system-status.connected[data-v-a23e848d]{background:#f6ffed;color:#52c41a}.main-container[data-v-a23e848d]{display:flex;height:100%;width:100%}.sidebar[data-v-a23e848d]{width:260px;background:var(--card-background);border-right:1px solid var(--border-color);padding:12px;overflow-y:auto;display:flex;flex-direction:column}.person-list.full[data-v-a23e848d]{flex:1;display:flex;flex-direction:column;margin:0;border:none;padding:0}.nav-item[data-v-a23e848d]{display:flex;align-items:center;padding:12px 20px;cursor:pointer;transition:all .3s;border-left:3px solid transparent;position:relative;color:var(--text-color)}.nav-item[data-v-a23e848d]:hover{background:var(--background-color)}.nav-item.active[data-v-a23e848d]{background:#1890ff1a;border-left-color:var(--primary-color);color:var(--primary-color)}.nav-icon[data-v-a23e848d]{font-size:18px;margin-right:12px}.nav-text[data-v-a23e848d]{font-size:14px;font-weight:500}.alarm-badge[data-v-a23e848d]{position:absolute;right:16px;background:var(--error-color);color:#fff;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:700}.person-list[data-v-a23e848d]{margin-top:20px;padding:0 16px;flex:1;overflow-y:auto}.person-list h3[data-v-a23e848d]{font-size:13px;font-weight:600;margin-bottom:12px;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px}.search-box[data-v-a23e848d]{margin-bottom:12px}.search-box input[data-v-a23e848d]{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:13px;transition:all .3s;background:var(--card-background);color:var(--text-color)}.search-box input[data-v-a23e848d]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #1890ff1a}.person-items[data-v-a23e848d]{list-style:none}.person-item[data-v-a23e848d]{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:8px;cursor:pointer;transition:all .3s;margin-bottom:4px;border:2px solid transparent;background:var(--card-background)}.person-item[data-v-a23e848d]:hover{background:var(--background-color);border-color:#1890ff33}.person-item.active[data-v-a23e848d]{background:#1890ff1a;border-color:var(--primary-color);box-shadow:0 0 0 2px #1890ff33}.person-item.offline[data-v-a23e848d]{opacity:.6}.person-info[data-v-a23e848d]{display:flex;flex-direction:column;gap:4px}.person-name[data-v-a23e848d]{font-weight:500;color:var(--text-color);font-size:14px}.person-extra[data-v-a23e848d]{font-size:11px;color:#64748b;margin-right:6px}.person-room[data-v-a23e848d]{font-size:12px;color:var(--text-light)}.person-meta[data-v-a23e848d]{display:flex;align-items:center;gap:8px}.person-area[data-v-a23e848d]{font-size:11px;color:var(--text-light);background:var(--background-color);padding:2px 8px;border-radius:10px}.person-status[data-v-a23e848d]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.person-status.online[data-v-a23e848d]{background:var(--secondary-color);box-shadow:0 0 0 2px #52c41a4d}.person-status.warning[data-v-a23e848d]{background:var(--warning-color);box-shadow:0 0 0 2px #faad144d}.person-status.offline[data-v-a23e848d]{background:var(--text-light)}.content[data-v-a23e848d]{flex:1;display:flex;flex-direction:column;padding:20px;overflow:hidden;background:var(--background-color)}.map-controls[data-v-a23e848d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 20px;background:var(--card-background);border-radius:12px;box-shadow:0 2px 8px #0000000f;border:1px solid var(--border-color)}.control-left[data-v-a23e848d]{display:flex;align-items:center;gap:24px}.floor-selector[data-v-a23e848d]{display:flex;align-items:center;gap:10px}.floor-selector label[data-v-a23e848d]{font-size:14px;color:var(--text-light);font-weight:500}.floor-selector select[data-v-a23e848d]{padding:10px 14px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--card-background);color:var(--text-color);cursor:pointer;min-width:150px;transition:all .3s}.floor-selector select[data-v-a23e848d]:hover{border-color:var(--primary-hover)}.floor-selector select[data-v-a23e848d]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #1890ff1a}.real-time-stats[data-v-a23e848d]{display:flex;gap:16px}.stat-item[data-v-a23e848d]{display:flex;align-items:center;gap:6px;font-size:14px}.stat-label[data-v-a23e848d]{color:var(--text-light)}.stat-value[data-v-a23e848d]{font-weight:600;padding:4px 10px;border-radius:12px;font-size:13px}.stat-value.online[data-v-a23e848d]{background:#52c41a1a;color:var(--secondary-color)}.stat-value.warning[data-v-a23e848d]{background:#faad141a;color:var(--warning-color)}.stat-value.offline[data-v-a23e848d]{background:var(--background-color);color:var(--text-light)}.map-toggles[data-v-a23e848d]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.map-toggles .seg[data-v-a23e848d]{display:inline-flex;background:#eef3f8;border-radius:8px;padding:2px;border:1px solid #d6e4ff}.map-toggles .seg button[data-v-a23e848d]{border:none;outline:none;box-shadow:none;background:transparent;color:#475569;padding:5px 12px;border-radius:6px;font-size:13px;cursor:pointer}.map-toggles .seg button.on[data-v-a23e848d]{background:#1677ff;color:#fff}.map-hint[data-v-a23e848d]{font-size:12px;color:#7a8b9c}.info-panel[data-v-a23e848d]{display:flex;gap:24px;font-size:13px;color:var(--text-light)}.info-panel p[data-v-a23e848d]{display:flex;align-items:center;gap:6px}.scene-section[data-v-a23e848d]{flex:1;min-height:0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f;border:1px solid var(--border-color)}.stats-panel[data-v-a23e848d]{margin-top:16px;padding:16px 20px;background:var(--card-background);border-radius:12px;box-shadow:0 2px 8px #0000000f;border:1px solid var(--border-color)}.stats-grid[data-v-a23e848d]{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-card[data-v-a23e848d]{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,var(--background-color) 0%,var(--card-background) 100%);border-radius:10px;border:1px solid var(--border-color);transition:all .3s}.stat-card[data-v-a23e848d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-icon[data-v-a23e848d]{font-size:28px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#1890ff1a;border-radius:12px}.stat-info[data-v-a23e848d]{display:flex;flex-direction:column;gap:4px}.stat-info .stat-label[data-v-a23e848d]{font-size:13px;color:var(--text-light)}.stat-info .stat-value[data-v-a23e848d]{font-size:24px;font-weight:700;color:var(--text-color)}@media (max-width: 1200px){.stats-grid[data-v-a23e848d]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.main-container[data-v-a23e848d]{flex-direction:column}.sidebar[data-v-a23e848d]{width:100%;height:auto;max-height:200px;border-right:none;border-bottom:1px solid #e8e8e8}.map-controls[data-v-a23e848d]{flex-direction:column;align-items:flex-start;gap:12px}.control-left[data-v-a23e848d]{flex-direction:column;align-items:flex-start;width:100%;gap:12px}.stats-grid[data-v-a23e848d]{grid-template-columns:1fr}}.dash[data-v-c94d9a86]{display:flex;flex-direction:column;gap:16px}.cards[data-v-c94d9a86]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card[data-v-c94d9a86]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2;box-shadow:0 2px 10px #0f28500a}.card .num[data-v-c94d9a86]{font-size:28px;font-weight:700;color:#0b3a6e}.card.online .num[data-v-c94d9a86]{color:#52c41a}.card.warn .num[data-v-c94d9a86]{color:#ff4d4f}.card .label[data-v-c94d9a86]{color:#7a8b9c;margin-top:4px;font-size:13px}.grid[data-v-c94d9a86]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel[data-v-c94d9a86]{background:#fff;border-radius:12px;padding:14px 16px;border:1px solid #e4ebf2}.panel.wide[data-v-c94d9a86]{grid-column:1 / -1}.panel h3[data-v-c94d9a86]{margin:0 0 12px;font-size:15px}.shortcuts[data-v-c94d9a86]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.shortcuts button[data-v-c94d9a86]{border:1px solid #e4ebf2;background:#f8fafc;border-radius:10px;padding:12px 8px;cursor:pointer;display:flex;flex-direction:column;gap:6px;align-items:center;color:#334155;font-size:12px}.shortcuts button[data-v-c94d9a86]:hover{border-color:#1677ff;color:#1677ff}.row[data-v-c94d9a86]{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed #eef2f6;font-size:13px}.empty[data-v-c94d9a86]{color:#94a3b8;font-size:13px;padding:12px 0}table[data-v-c94d9a86]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-c94d9a86],td[data-v-c94d9a86]{text-align:left;padding:8px 6px;border-bottom:1px solid #eef2f6}.tiny[data-v-c94d9a86]{border:none;background:#1677ff;color:#fff;border-radius:6px;padding:4px 8px;cursor:pointer}@media (max-width: 900px){.cards[data-v-c94d9a86],.grid[data-v-c94d9a86],.shortcuts[data-v-c94d9a86]{grid-template-columns:1fr 1fr}.panel.wide[data-v-c94d9a86]{grid-column:auto}}.screen[data-v-b34b14d8]{position:relative;min-height:100vh;color:#d8e9ff;padding:12px 16px 16px;background:#04101f;overflow:hidden}.bg-grid[data-v-b34b14d8]{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% -10%,rgba(32,120,220,.35),transparent 55%),linear-gradient(rgba(40,110,180,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(40,110,180,.08) 1px,transparent 1px);background-size:auto,40px 40px,40px 40px}.head[data-v-b34b14d8]{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:10px}.head-side[data-v-b34b14d8]{display:flex;gap:8px;align-items:center}.head-side.right[data-v-b34b14d8]{justify-content:flex-end}.chip[data-v-b34b14d8]{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid rgba(100,180,255,.35);background:#14468266;color:#9fd0ff}.chip.dim[data-v-b34b14d8]{opacity:.75}.title-wrap[data-v-b34b14d8]{display:flex;align-items:center;gap:14px}.title-wrap h1[data-v-b34b14d8]{margin:0;font-size:28px;letter-spacing:4px;font-weight:700;background:linear-gradient(180deg,#fff,#7eb8ff);-webkit-background-clip:text;color:transparent}.deco[data-v-b34b14d8]{width:70px;height:2px;background:linear-gradient(90deg,transparent,#3aa0ff);display:block}.deco.right[data-v-b34b14d8]{background:linear-gradient(90deg,#3aa0ff,transparent)}.clock[data-v-b34b14d8]{color:#8fb7e8;font-size:14px;font-variant-numeric:tabular-nums;padding-right:4px}.exit-btn[data-v-b34b14d8]{border:1px solid rgba(140,190,255,.45);background:#143c6e8c;color:#d7eaff;border-radius:8px;padding:6px 12px;font-size:12px;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s}.exit-btn[data-v-b34b14d8]:hover{background:#2864b4b3;border-color:#7ec8ff;color:#fff}.layout[data-v-b34b14d8]{position:relative;z-index:1;display:grid;grid-template-columns:260px 1fr 300px;gap:12px;min-height:calc(100vh - 78px)}.col[data-v-b34b14d8]{min-width:0;display:flex;flex-direction:column;gap:12px}.panel[data-v-b34b14d8]{background:linear-gradient(180deg,#0e2a4ee0,#081a30eb);border:1px solid rgba(70,150,230,.28);box-shadow:inset 0 0 30px #2878dc14;border-radius:10px;padding:12px 14px}.panel.grow[data-v-b34b14d8]{flex:1;min-height:0;display:flex;flex-direction:column}.panel-hd[data-v-b34b14d8]{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#7ec8ff;margin-bottom:10px;font-weight:600;padding-left:8px;border-left:3px solid #2f8cff}.panel-hd em[data-v-b34b14d8]{font-style:normal;background:#ff4d4f;color:#fff;border-radius:10px;padding:0 7px;font-size:11px}.hero-num[data-v-b34b14d8]{font-size:48px;font-weight:800;color:#fff;line-height:1;text-align:center}.hero-sub[data-v-b34b14d8]{text-align:center;color:#7ea4cc;font-size:12px;margin:4px 0 12px}.stat-grid[data-v-b34b14d8]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat[data-v-b34b14d8]{background:#ffffff0a;border-radius:8px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:2px}.stat b[data-v-b34b14d8]{font-size:20px;color:#e8f3ff}.stat b.ok[data-v-b34b14d8]{color:#73d13d}.stat b.warn[data-v-b34b14d8]{color:#ff7875}.stat b.cyan[data-v-b34b14d8]{color:#36cfc9}.stat span[data-v-b34b14d8]{font-size:11px;color:#7ea4cc}.b-row[data-v-b34b14d8]{margin-bottom:10px}.b-top[data-v-b34b14d8]{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.b-top b[data-v-b34b14d8]{color:#7cffb2}.bar[data-v-b34b14d8]{height:6px;background:#ffffff14;border-radius:4px;overflow:hidden}.bar i[data-v-b34b14d8]{display:block;height:100%;background:linear-gradient(90deg,#1677ff,#36cfc9)}.dev-row[data-v-b34b14d8]{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.08);font-size:13px}.dev-row b[data-v-b34b14d8]{color:#69c0ff}.map-panel[data-v-b34b14d8]{flex:1;display:flex;flex-direction:column;background:linear-gradient(180deg,#0e2a4ee0,#081a30eb);border:1px solid rgba(70,150,230,.28);border-radius:12px;padding:12px;min-height:0}.floor-tabs[data-v-b34b14d8]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.floor-tabs button[data-v-b34b14d8]{border:1px solid rgba(100,170,255,.35);background:#10325aa6;color:#c9e2ff;border-radius:999px;padding:6px 14px;cursor:pointer;font-size:13px}.floor-tabs button.active[data-v-b34b14d8]{background:linear-gradient(180deg,#3a9bff,#1677ff);border-color:#5eb0ff;color:#fff;font-weight:600;box-shadow:0 0 12px #1677ff73}.map-stage[data-v-b34b14d8]{position:relative;flex:1;min-height:420px;border-radius:10px;overflow:hidden;background:#0a1d33;border:1px solid rgba(80,140,200,.25)}.map-stage.campus[data-v-b34b14d8]{background:linear-gradient(180deg,#12301f,#0b1f14 60%,#0a1d33)}.campus-fallback[data-v-b34b14d8]{position:absolute;top:0;right:0;bottom:0;left:0}.campus-ground[data-v-b34b14d8]{position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:16px;background:radial-gradient(circle at 70% 70%,rgba(82,196,26,.18),transparent 40%),linear-gradient(135deg,#1450288c,#0a283c66);border:1px dashed rgba(140,220,160,.25)}.campus-building[data-v-b34b14d8]{position:absolute;border-radius:10px;padding:10px;background:linear-gradient(180deg,#1864b4bf,#0c325ad9);border:1px solid rgba(120,190,255,.45);color:#e6f4ff;display:flex;flex-direction:column;justify-content:center;gap:4px;box-shadow:0 8px 20px #00000040}.campus-building strong[data-v-b34b14d8]{font-size:14px}.campus-building span[data-v-b34b14d8]{font-size:12px;color:#7cffb2}.campus-garden[data-v-b34b14d8]{position:absolute;border-radius:12px;background:#52c41a33;border:1px solid rgba(135,208,104,.45);color:#b7eb8f;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.floor-img[data-v-b34b14d8]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#0a1d33}.floor-fallback[data-v-b34b14d8]{position:absolute;top:0;right:0;bottom:0;left:0}.area[data-v-b34b14d8]{position:absolute;border:1px solid rgba(255,255,255,.25);font-size:11px;color:#e8f3ff;display:flex;align-items:center;justify-content:center;opacity:.9;overflow:hidden}.person[data-v-b34b14d8]{position:absolute;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center}.person .dot[data-v-b34b14d8]{width:12px;height:12px;border-radius:50%;background:#36cfc9;border:2px solid #fff;box-shadow:0 0 10px #36cfc9;position:relative;z-index:1}.person .pulse[data-v-b34b14d8]{position:absolute;top:0;width:12px;height:12px;border-radius:50%;background:#36cfc973;animation:pulse-b34b14d8 1.8s ease-out infinite}.person .name[data-v-b34b14d8]{margin-top:4px;font-size:11px;white-space:nowrap;background:#001428bf;color:#e6f7ff;border:1px solid rgba(100,180,255,.35);border-radius:4px;padding:1px 6px}@keyframes pulse-b34b14d8{0%{transform:scale(1);opacity:.8}to{transform:scale(3.2);opacity:0}}.map-foot[data-v-b34b14d8]{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:#8fb7e8}.alarm-list[data-v-b34b14d8]{overflow:auto;flex:1;min-height:0}.alarm[data-v-b34b14d8]{display:flex;gap:8px;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.08)}.alarm-tag[data-v-b34b14d8]{flex:0 0 auto;font-size:11px;padding:2px 8px;border-radius:4px;height:fit-content;background:#ff4d4f33;color:#ffccc7}.alarm-tag.t2[data-v-b34b14d8]{background:#ff4d4f40;color:#ff7875}.alarm-tag.t3[data-v-b34b14d8]{background:#faad1433;color:#ffe58f}.alarm-tag.t1[data-v-b34b14d8]{background:#f5222d40;color:#ffa39e}.alarm-body .t[data-v-b34b14d8]{font-size:13px;color:#fff}.alarm-body .s[data-v-b34b14d8]{font-size:12px;color:#7ea4cc;margin-top:2px}.type-grid[data-v-b34b14d8]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.type-card[data-v-b34b14d8]{border-radius:8px;padding:8px 6px;text-align:center;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.type-card b[data-v-b34b14d8]{display:block;font-size:18px;color:#fff}.type-card span[data-v-b34b14d8]{font-size:11px;color:#8fb7e8}.type-card.sos b[data-v-b34b14d8]{color:#ff4d4f}.type-card.fence b[data-v-b34b14d8]{color:#ffa940}.type-card.fall b[data-v-b34b14d8]{color:#ff7875}.type-card.static b[data-v-b34b14d8]{color:#b37feb}.type-card.battery b[data-v-b34b14d8]{color:#ffc53d}.type-card.offline b[data-v-b34b14d8]{color:#8c8c8c}.type-card.night b[data-v-b34b14d8]{color:#597ef7}.type-card.presence b[data-v-b34b14d8]{color:#36cfc9}.muted[data-v-b34b14d8]{color:#6b879f;font-size:13px}.pad[data-v-b34b14d8]{padding:12px 0}@media (max-width: 1200px){.layout[data-v-b34b14d8]{grid-template-columns:1fr}.map-stage[data-v-b34b14d8]{min-height:360px}}.elderly-manage[data-v-be722e78]{width:100%;min-height:100%;background:var(--page-background)}.main-container[data-v-be722e78]{display:flex;min-height:calc(100vh - 120px)}.sidebar[data-v-be722e78]{width:250px;background-color:#fff;border-right:1px solid #e8e8e8;padding:20px;overflow-y:auto}.stats-card[data-v-be722e78]{background-color:#f9f9f9;border-radius:8px;padding:15px;margin-bottom:20px}.stats-card h3[data-v-be722e78]{font-size:16px;margin-bottom:15px;color:#333}.stat-item[data-v-be722e78]{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee}.stat-item[data-v-be722e78]:last-child{border-bottom:none}.stat-label[data-v-be722e78]{color:#666}.stat-value[data-v-be722e78]{font-weight:600}.stat-value.online[data-v-be722e78]{color:#52c41a}.stat-value.warning[data-v-be722e78]{color:#faad14}.stat-value.offline[data-v-be722e78]{color:#999}.quick-actions h3[data-v-be722e78]{font-size:16px;margin-bottom:15px;color:#333}.action-btn[data-v-be722e78]{width:100%;padding:12px;margin-bottom:10px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .3s}.action-btn[data-v-be722e78]:hover{background-color:#40a9ff}.action-btn .icon[data-v-be722e78]{font-size:18px}.content[data-v-be722e78]{flex:1;padding:20px;overflow-y:auto}.toolbar[data-v-be722e78]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;background-color:#fff;padding:15px;border-radius:8px;box-shadow:0 2px 4px #0000000d}.search-box[data-v-be722e78]{display:flex;gap:10px}.search-box input[data-v-be722e78]{width:250px;padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.search-btn[data-v-be722e78]{padding:8px 16px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer}.filter-box[data-v-be722e78]{display:flex;gap:10px}.filter-box select[data-v-be722e78]{padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.table-container[data-v-be722e78]{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden;margin-bottom:20px}.elderly-table[data-v-be722e78]{width:100%;border-collapse:collapse}.elderly-table th[data-v-be722e78]{background-color:#fafafa;padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:1px solid #e8e8e8}.elderly-table td[data-v-be722e78]{padding:12px;border-bottom:1px solid #f0f0f0}.table-row[data-v-be722e78]:hover{background-color:#f5f5f5}.avatar[data-v-be722e78]{width:40px;height:40px;border-radius:50%;overflow:hidden}.avatar img[data-v-be722e78]{width:100%;height:100%;object-fit:cover}.avatar-placeholder[data-v-be722e78]{width:100%;height:100%;background-color:#1890ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600}.status-badge[data-v-be722e78]{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-online[data-v-be722e78]{background-color:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.status-warning[data-v-be722e78]{background-color:#fffbe6;color:#faad14;border:1px solid #ffe58f}.status-offline[data-v-be722e78]{background-color:#f5f5f5;color:#999;border:1px solid #d9d9d9}.contact-info[data-v-be722e78]{font-size:13px}.contact-info .phone[data-v-be722e78]{color:#999;font-size:12px}.action-btns[data-v-be722e78]{display:flex;gap:8px}.btn-edit[data-v-be722e78],.btn-delete[data-v-be722e78]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:13px;transition:opacity .3s}.btn-edit[data-v-be722e78]{background-color:#1890ff;color:#fff}.btn-delete[data-v-be722e78]{background-color:#ff4d4f;color:#fff}.btn-edit[data-v-be722e78]:hover,.btn-delete[data-v-be722e78]:hover{opacity:.8}.empty-text[data-v-be722e78]{text-align:center;color:#999;padding:40px}.pagination[data-v-be722e78]{display:flex;justify-content:center;align-items:center;gap:15px}.pagination button[data-v-be722e78]{padding:8px 16px;background-color:#fff;border:1px solid #d9d9d9;border-radius:4px;cursor:pointer}.pagination button[data-v-be722e78]:disabled{opacity:.5;cursor:not-allowed}.modal-overlay[data-v-be722e78]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-be722e78]{background-color:#fff;border-radius:8px;width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 12px #00000026}.modal-header[data-v-be722e78]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e8e8e8}.modal-header h2[data-v-be722e78]{font-size:18px;margin:0}.close-btn[data-v-be722e78]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-form[data-v-be722e78]{padding:20px}.form-row[data-v-be722e78]{display:flex;gap:20px;margin-bottom:20px}.form-group[data-v-be722e78]{flex:1}.form-group.full-width[data-v-be722e78]{flex:2}.form-group label[data-v-be722e78]{display:block;margin-bottom:8px;font-size:14px;color:#333}.form-group label .required[data-v-be722e78]{color:#ff4d4f}.form-group input[data-v-be722e78],.form-group select[data-v-be722e78],.form-group textarea[data-v-be722e78]{width:100%;padding:10px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.form-group textarea[data-v-be722e78]{resize:vertical}.photo-upload[data-v-be722e78]{display:flex;flex-direction:column;gap:10px}.upload-btn[data-v-be722e78]{padding:8px 16px;background-color:#f0f0f0;border:1px dashed #d9d9d9;border-radius:4px;cursor:pointer;font-size:14px}.photo-preview[data-v-be722e78]{width:80px;height:80px;border-radius:4px;overflow:hidden}.photo-preview img[data-v-be722e78]{width:100%;height:100%;object-fit:cover}.form-actions[data-v-be722e78]{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;border-top:1px solid #e8e8e8}.btn-cancel[data-v-be722e78],.btn-save[data-v-be722e78],.btn-delete-confirm[data-v-be722e78]{padding:10px 24px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:opacity .3s}.btn-cancel[data-v-be722e78]{background-color:#f0f0f0;color:#333}.btn-save[data-v-be722e78]{background-color:#1890ff;color:#fff}.btn-delete-confirm[data-v-be722e78]{background-color:#ff4d4f;color:#fff}.btn-cancel[data-v-be722e78]:hover,.btn-save[data-v-be722e78]:hover,.btn-delete-confirm[data-v-be722e78]:hover{opacity:.8}.btn-save[data-v-be722e78]:disabled{opacity:.5;cursor:not-allowed}.confirm-modal[data-v-be722e78]{width:400px}.modal-body[data-v-be722e78]{padding:20px}.modal-body p[data-v-be722e78]{margin:0 0 10px}.warning-text[data-v-be722e78]{color:#ff4d4f;font-size:14px}.floorplan-manage[data-v-25fcba8f]{width:100%;min-height:100%;background:var(--page-background)}.message-toast[data-v-25fcba8f]{position:fixed;top:80px;left:50%;transform:translate(-50%);padding:12px 40px 12px 20px;border-radius:8px;font-size:14px;z-index:1000;animation:slideDown-25fcba8f .3s ease;box-shadow:0 4px 12px #00000026;max-width:500px;min-width:300px;cursor:pointer;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message-toast.success[data-v-25fcba8f]{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.message-toast.error[data-v-25fcba8f]{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.message-text[data-v-25fcba8f]{display:block;line-height:1.5;word-break:break-all}.message-close[data-v-25fcba8f]{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.5;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.message-close[data-v-25fcba8f]:hover{opacity:1}@keyframes slideDown-25fcba8f{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.main-container[data-v-25fcba8f]{display:flex;min-height:calc(100vh - 120px)}.sidebar[data-v-25fcba8f]{width:300px;background-color:#fff;border-right:1px solid #e8e8e8;display:flex;flex-direction:column}.sidebar-header[data-v-25fcba8f]{padding:15px;border-bottom:1px solid #e8e8e8}.sidebar-header h3[data-v-25fcba8f]{margin:0 0 10px;font-size:16px}.seed-btn[data-v-25fcba8f]{margin-top:8px;background:#13c2c2!important}.plan-group[data-v-25fcba8f]{margin-bottom:12px}.plan-group-title[data-v-25fcba8f]{font-size:12px;font-weight:600;color:#5a7aa0;padding:6px 4px 8px;border-bottom:1px solid #e8eef5;margin-bottom:8px}.kind-tag[data-v-25fcba8f]{margin-left:6px;font-size:11px;color:#389e0d;background:#f6ffed;padding:1px 6px;border-radius:4px}.add-btn[data-v-25fcba8f]{width:100%;padding:10px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.floorplan-list[data-v-25fcba8f]{flex:1;overflow-y:auto;padding:10px}.floorplan-item[data-v-25fcba8f]{display:flex;gap:10px;padding:10px;border-radius:4px;cursor:pointer;transition:background-color .3s;margin-bottom:10px;border:2px solid transparent}.floorplan-item[data-v-25fcba8f]:hover{background-color:#f5f5f5}.floorplan-item.active[data-v-25fcba8f]{background-color:#e6f7ff;border-color:#1890ff}.floorplan-item.default[data-v-25fcba8f]{border-left:3px solid #52c41a}.plan-thumbnail[data-v-25fcba8f]{width:60px;height:60px;border-radius:4px;overflow:hidden;flex-shrink:0;background-color:#f0f0f0}.plan-thumbnail img[data-v-25fcba8f]{width:100%;height:100%;object-fit:cover}.no-image[data-v-25fcba8f]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:#999}.plan-info[data-v-25fcba8f]{flex:1}.plan-name[data-v-25fcba8f]{font-weight:500;margin-bottom:4px}.plan-size[data-v-25fcba8f]{font-size:12px;color:#999}.default-badge[data-v-25fcba8f]{display:inline-block;padding:2px 6px;background-color:#52c41a;color:#fff;font-size:11px;border-radius:2px;margin-top:4px}.empty-tip[data-v-25fcba8f]{text-align:center;color:#999;padding:40px 20px}.content[data-v-25fcba8f]{flex:1;padding:20px;overflow-y:auto}.no-selection[data-v-25fcba8f]{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:16px}.plan-detail[data-v-25fcba8f]{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.detail-header[data-v-25fcba8f]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e8e8e8}.detail-header h2[data-v-25fcba8f]{margin:0;font-size:20px}.header-actions[data-v-25fcba8f]{display:flex;gap:10px}.btn-edit[data-v-25fcba8f],.btn-set-default[data-v-25fcba8f],.btn-delete[data-v-25fcba8f]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-edit[data-v-25fcba8f]{background-color:#1890ff;color:#fff}.btn-set-default[data-v-25fcba8f]{background-color:#52c41a;color:#fff}.btn-delete[data-v-25fcba8f]{background-color:#ff4d4f;color:#fff}.detail-content[data-v-25fcba8f]{display:flex;padding:20px;gap:20px}.image-section[data-v-25fcba8f]{width:400px;height:300px;border-radius:8px;overflow:hidden;background-color:#f0f0f0}.image-section img[data-v-25fcba8f]{width:100%;height:100%;object-fit:contain}.no-image-large[data-v-25fcba8f]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#999}.info-section[data-v-25fcba8f]{flex:1}.info-grid[data-v-25fcba8f]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px}.info-item[data-v-25fcba8f]{display:flex;flex-direction:column;gap:5px}.info-item label[data-v-25fcba8f]{font-size:12px;color:#999}.info-item span[data-v-25fcba8f]{font-size:14px;font-weight:500}.description label[data-v-25fcba8f]{font-size:12px;color:#999;display:block;margin-bottom:5px}.description p[data-v-25fcba8f]{margin:0;line-height:1.6}.areas-section[data-v-25fcba8f]{padding:20px;border-top:1px solid #e8e8e8}.areas-header[data-v-25fcba8f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.areas-header h3[data-v-25fcba8f]{margin:0;font-size:16px}.btn-add-area[data-v-25fcba8f]{padding:8px 16px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.areas-table[data-v-25fcba8f]{width:100%;border-collapse:collapse}.areas-table th[data-v-25fcba8f]{background-color:#fafafa;padding:12px;text-align:left;font-weight:600;border-bottom:1px solid #e8e8e8}.areas-table td[data-v-25fcba8f]{padding:12px;border-bottom:1px solid #f0f0f0}.color-preview[data-v-25fcba8f]{width:30px;height:20px;border-radius:4px;border:1px solid #d9d9d9}.btn-edit-small[data-v-25fcba8f],.btn-delete-small[data-v-25fcba8f]{padding:4px 8px;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-right:5px}.btn-edit-small[data-v-25fcba8f]{background-color:#1890ff;color:#fff}.btn-delete-small[data-v-25fcba8f]{background-color:#ff4d4f;color:#fff}.empty-text[data-v-25fcba8f]{text-align:center;color:#999;padding:20px}.modal-overlay[data-v-25fcba8f]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-25fcba8f]{background-color:#fff;border-radius:8px;width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 12px #00000026}.modal-content.large[data-v-25fcba8f]{width:1200px;max-width:95vw}.modal-body[data-v-25fcba8f]{display:flex;gap:20px;padding:20px}.preview-section[data-v-25fcba8f]{flex:1;min-width:600px}.preview-section h3[data-v-25fcba8f]{margin:0 0 10px;font-size:16px;color:#666;font-weight:600}.preview-container[data-v-25fcba8f]{position:relative;width:100%;height:500px;background-color:#f5f5f5;border:2px dashed #d9d9d9;border-radius:4px;overflow:hidden;cursor:crosshair}.preview-image[data-v-25fcba8f]{width:100%;height:100%;object-fit:contain;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.no-image[data-v-25fcba8f]{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:14px}.area-preview[data-v-25fcba8f]{position:absolute;border:2px solid;border-radius:4px;opacity:.7;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:all .3s ease}.area-preview-label[data-v-25fcba8f]{font-size:14px;color:#333;background-color:#ffffffe6;padding:4px 8px;border-radius:4px;white-space:nowrap;font-weight:700;box-shadow:0 2px 4px #0000001a}.coordinate-hint[data-v-25fcba8f]{position:absolute;bottom:10px;left:10px;background-color:#000000b3;color:#fff;padding:8px 12px;border-radius:4px;font-size:14px;font-family:monospace;font-weight:700}.preview-info[data-v-25fcba8f]{margin-top:10px;padding:10px;background-color:#f6ffed;border:1px solid #b7eb8f;border-radius:4px}.preview-info p[data-v-25fcba8f]{margin:0;font-size:12px;color:#52c41a;line-height:1.5}.rotation-control[data-v-25fcba8f]{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;padding:10px;background-color:#f0f5ff;border:1px solid #d6e4ff;border-radius:4px}.btn-rotate[data-v-25fcba8f]{padding:6px 12px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .3s}.btn-rotate[data-v-25fcba8f]:hover{background-color:#40a9ff}.btn-reset[data-v-25fcba8f]{padding:6px 12px;background-color:#ff4d4f;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .3s}.btn-reset[data-v-25fcba8f]:hover{background-color:#ff7875}.rotation-angle[data-v-25fcba8f]{font-size:14px;font-weight:700;color:#1890ff;min-width:50px;text-align:center;font-family:monospace}.polygon-section[data-v-25fcba8f]{background-color:#f6ffed;border:1px solid #b7eb8f;border-radius:4px;padding:15px;margin-bottom:15px}.polygon-points[data-v-25fcba8f]{max-height:150px;overflow-y:auto;margin-bottom:10px}.point-item[data-v-25fcba8f]{display:flex;justify-content:space-between;align-items:center;padding:8px;background-color:#fff;border-radius:4px;margin-bottom:5px;font-size:13px}.btn-remove-point[data-v-25fcba8f]{background-color:#ff4d4f;color:#fff;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;font-size:12px;line-height:1}.no-points[data-v-25fcba8f]{color:#999;font-size:13px;text-align:center;padding:20px}.btn-open-large[data-v-25fcba8f]{width:100%;padding:12px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-open-large[data-v-25fcba8f]:hover{background-color:#40a9ff}.hint-text[data-v-25fcba8f]{font-size:12px;color:#666;margin-top:5px;margin-bottom:0}.large-preview-overlay[data-v-25fcba8f]{z-index:2000}.large-preview-content[data-v-25fcba8f]{background-color:#fff;border-radius:8px;width:90vw;height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.large-preview-body[data-v-25fcba8f]{flex:1;display:flex;flex-direction:column;padding:20px;overflow:hidden}.drawing-hint[data-v-25fcba8f]{display:flex;align-items:center;gap:15px;padding:15px;background-color:#e6f7ff;border:1px solid #91d5ff;border-radius:4px;margin-bottom:15px}.drawing-hint p[data-v-25fcba8f]{margin:0;font-size:14px;color:#1890ff}.btn-finish[data-v-25fcba8f]{padding:8px 16px;background-color:#52c41a;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-undo[data-v-25fcba8f]{padding:8px 16px;background-color:#faad14;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-clear[data-v-25fcba8f]{padding:8px 16px;background-color:#ff4d4f;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.large-image-container[data-v-25fcba8f]{flex:1;position:relative;background-color:#f5f5f5;border:2px dashed #d9d9d9;border-radius:4px;overflow:hidden;cursor:crosshair}.large-preview-image[data-v-25fcba8f]{width:100%;height:100%;object-fit:contain}.polygon-svg[data-v-25fcba8f]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.modal-body .modal-form[data-v-25fcba8f]{flex:0 0 350px}.modal-body .modal-form .form-group label[data-v-25fcba8f]{font-size:14px;font-weight:500}.modal-body .modal-form input[data-v-25fcba8f],.modal-body .modal-form select[data-v-25fcba8f]{font-size:14px;padding:10px}.modal-header[data-v-25fcba8f]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e8e8e8}.modal-header h2[data-v-25fcba8f]{margin:0;font-size:18px}.close-btn[data-v-25fcba8f]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-form[data-v-25fcba8f]{padding:20px}.form-group[data-v-25fcba8f]{margin-bottom:20px}.form-row[data-v-25fcba8f]{display:flex;gap:15px}.form-row .form-group[data-v-25fcba8f]{flex:1}.form-group label[data-v-25fcba8f]{display:block;margin-bottom:8px;font-size:14px;color:#333}.form-group label .required[data-v-25fcba8f]{color:#ff4d4f}.form-group input[data-v-25fcba8f],.form-group select[data-v-25fcba8f],.form-group textarea[data-v-25fcba8f]{width:100%;padding:10px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.form-group input[type=color][data-v-25fcba8f]{height:40px;padding:5px}.file-upload[data-v-25fcba8f]{border:1px dashed #d9d9d9;padding:15px;border-radius:4px;text-align:center}.file-name[data-v-25fcba8f]{margin-top:10px;font-size:13px;color:#666}.checkbox-group label[data-v-25fcba8f]{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox][data-v-25fcba8f]{width:auto}.form-actions[data-v-25fcba8f]{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;border-top:1px solid #e8e8e8}.btn-cancel[data-v-25fcba8f],.btn-save[data-v-25fcba8f]{padding:10px 24px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-cancel[data-v-25fcba8f]{background-color:#f0f0f0;color:#333}.btn-save[data-v-25fcba8f]{background-color:#1890ff;color:#fff}.btn-save[data-v-25fcba8f]:disabled{opacity:.5;cursor:not-allowed}.fence-section[data-v-25fcba8f]{background:#fff5f5;border:2px solid #ffccc7;border-radius:8px;padding:15px;margin:15px 0}.fence-header[data-v-25fcba8f]{margin-bottom:10px}.fence-title[data-v-25fcba8f]{font-weight:600;color:#cf1322;font-size:16px}.fence-settings[data-v-25fcba8f]{padding-top:10px;border-top:1px solid #ffccc7}.time-restriction[data-v-25fcba8f]{background:#fff;padding:10px;border-radius:6px;margin:10px 0}.fence-hint[data-v-25fcba8f]{background:#fff2f0;border-left:4px solid #ff4d4f;padding:10px;margin-top:10px;border-radius:0 4px 4px 0}.fence-hint p[data-v-25fcba8f]{margin:0;color:#cf1322;font-size:13px}.checkbox-label[data-v-25fcba8f]{display:flex;align-items:center;cursor:pointer}.checkbox-label input[type=checkbox][data-v-25fcba8f]{width:18px;height:18px;margin-right:8px;cursor:pointer}.fence-badge[data-v-25fcba8f]{display:inline-block;background:#fff2f0;border:1px solid #ffccc7;color:#cf1322;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.no-fence[data-v-25fcba8f]{color:#999}.page[data-v-90a62831]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-90a62831]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}h2[data-v-90a62831]{margin:0;font-size:18px}button[data-v-90a62831]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-90a62831]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.danger[data-v-90a62831]{color:#ff4d4f!important;border-color:#ffccc7;background:#fff}table[data-v-90a62831]{width:100%;border-collapse:collapse;font-size:14px}th[data-v-90a62831],td[data-v-90a62831]{text-align:left;padding:10px 8px;border-bottom:1px solid #eef2f6}.ops[data-v-90a62831]{display:flex;gap:8px}.empty[data-v-90a62831]{color:#94a3b8;padding:24px;text-align:center}.mask[data-v-90a62831]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:80}.modal[data-v-90a62831]{width:420px;background:#fff;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}.modal label[data-v-90a62831]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#64748b}.modal input[data-v-90a62831],.modal textarea[data-v-90a62831]{border:1px solid #d0dbe8;border-radius:8px;padding:8px 10px;color:#1f2d3d}.actions[data-v-90a62831]{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.searchable-select[data-v-7845f5f4]{position:relative;width:100%}.input-wrap[data-v-7845f5f4]{position:relative}input[data-v-7845f5f4]{width:100%;box-sizing:border-box;padding:9px 32px 9px 12px;border:1px solid var(--border-color, #d6e4ff);border-radius:8px;font-size:14px;color:var(--text-color, #2c3e50);background:#fff;outline:none;transition:border-color .2s,box-shadow .2s}input[data-v-7845f5f4]:focus{border-color:var(--primary-color, #1890ff);box-shadow:0 0 0 3px #1890ff1f}.clear-btn[data-v-7845f5f4]{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:none;border-radius:50%;background:#f0f0f0;color:#666;cursor:pointer;line-height:1;padding:0;font-size:14px}.clear-btn[data-v-7845f5f4]:hover{background:#e6f7ff;color:#1890ff}.dropdown[data-v-7845f5f4]{position:absolute;left:0;right:0;top:calc(100% + 4px);margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--border-color, #d6e4ff);border-radius:10px;box-shadow:0 10px 24px #1890ff24;max-height:220px;overflow:auto;z-index:50}.dropdown.empty[data-v-7845f5f4]{padding:12px;color:#8c8c8c;font-size:13px}.dropdown li[data-v-7845f5f4]{padding:8px 10px;border-radius:6px;font-size:13px;color:#2c3e50;cursor:pointer}.dropdown li.active[data-v-7845f5f4],.dropdown li[data-v-7845f5f4]:hover{background:#e6f7ff;color:#1890ff}.dropdown li.selected[data-v-7845f5f4]{background:#1890ff;color:#fff}.data-analysis[data-v-17496156]{width:100%;min-height:100%;background-color:var(--background-color)}.header[data-v-17496156]{display:none}.header h1[data-v-17496156]{font-size:18px;font-weight:600;color:#fff}.header-right[data-v-17496156]{display:flex;align-items:center;gap:10px}.back-btn[data-v-17496156],.logout-btn[data-v-17496156]{padding:8px 16px;background-color:#fff3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.back-btn[data-v-17496156]:hover,.logout-btn[data-v-17496156]:hover{background-color:#ffffff4d}.main-container[data-v-17496156]{display:flex;min-height:calc(100vh - 120px)}.sidebar[data-v-17496156]{width:280px;background-color:var(--card-background);border-right:1px solid var(--border-color);padding:20px;overflow-y:auto}.filter-section[data-v-17496156]{margin-bottom:24px}.filter-section h3[data-v-17496156]{font-size:14px;font-weight:600;color:var(--text-color);margin-bottom:12px}.time-filter[data-v-17496156]{display:flex;flex-wrap:wrap;gap:8px}.time-btn[data-v-17496156]{padding:6px 12px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--card-background);color:var(--text-color);cursor:pointer;font-size:13px;transition:all .3s}.time-btn[data-v-17496156]:hover{border-color:var(--primary-color);color:var(--primary-color)}.time-btn.active[data-v-17496156]{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.custom-date[data-v-17496156]{margin-top:12px;display:flex;align-items:center;gap:8px}.custom-date input[data-v-17496156]{padding:6px;border:1px solid var(--border-color);border-radius:4px;font-size:13px;background-color:var(--card-background);color:var(--text-color)}.filter-select[data-v-17496156]{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--card-background);color:var(--text-color)}.analysis-types[data-v-17496156]{display:flex;flex-direction:column;gap:8px}.type-checkbox[data-v-17496156]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-color)}.type-checkbox input[data-v-17496156]{cursor:pointer}.generate-btn[data-v-17496156]{width:100%;padding:12px;background-color:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s}.generate-btn[data-v-17496156]:hover:not(:disabled){background-color:var(--primary-hover)}.generate-btn[data-v-17496156]:disabled{opacity:.6;cursor:not-allowed}.content[data-v-17496156]{flex:1;padding:20px;overflow-y:auto;background-color:var(--background-color)}.stats-overview[data-v-17496156]{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}.stat-card[data-v-17496156]{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 4px #0000000d}.stat-icon[data-v-17496156]{font-size:32px}.stat-info[data-v-17496156]{display:flex;flex-direction:column}.stat-label[data-v-17496156]{font-size:14px;color:var(--text-light);margin-bottom:4px}.stat-value[data-v-17496156]{font-size:24px;font-weight:600;color:var(--text-color)}.charts-grid[data-v-17496156]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.chart-card[data-v-17496156]{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.chart-header[data-v-17496156]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.chart-header h3[data-v-17496156]{font-size:16px;font-weight:600;color:var(--text-color)}.export-btn[data-v-17496156]{padding:4px 12px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:13px;color:var(--text-light);transition:all .3s}.export-btn[data-v-17496156]:hover{background-color:var(--border-color)}.chart-container[data-v-17496156]{width:100%;height:280px}.data-table-section[data-v-17496156]{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.table-header[data-v-17496156]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.table-header h3[data-v-17496156]{font-size:16px;font-weight:600;color:var(--text-color)}.table-container[data-v-17496156]{overflow-x:auto}.data-table[data-v-17496156]{width:100%;border-collapse:collapse}.data-table th[data-v-17496156]{background-color:var(--background-color);padding:12px;text-align:left;font-weight:600;color:var(--text-color);border-bottom:1px solid var(--border-color)}.data-table td[data-v-17496156]{padding:12px;border-bottom:1px solid var(--border-color);color:var(--text-color)}.status-tag[data-v-17496156]{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-tag.normal[data-v-17496156]{background-color:#52c41a1a;color:var(--secondary-color)}.status-tag.warning[data-v-17496156]{background-color:#faad141a;color:var(--warning-color)}.status-tag.offline[data-v-17496156]{background-color:var(--background-color);color:var(--text-light)}.pagination[data-v-17496156]{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:20px}.pagination button[data-v-17496156]{padding:8px 16px;background-color:var(--card-background);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;color:var(--text-color)}.pagination button[data-v-17496156]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.stats-overview[data-v-17496156]{grid-template-columns:repeat(2,1fr)}.charts-grid[data-v-17496156]{grid-template-columns:1fr}}@media (max-width: 768px){.main-container[data-v-17496156]{flex-direction:column}.sidebar[data-v-17496156]{width:100%;height:auto;max-height:300px;border-right:none;border-bottom:1px solid var(--border-color)}.stats-overview[data-v-17496156]{grid-template-columns:1fr}}.system-settings[data-v-9b374d9e]{width:100%;min-height:100%;background:var(--page-background)}.header h1[data-v-9b374d9e]{font-size:18px;font-weight:600;color:#fff}.header-right[data-v-9b374d9e]{display:flex;gap:10px}.back-btn[data-v-9b374d9e],.logout-btn[data-v-9b374d9e]{padding:8px 16px;background-color:#fff3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.back-btn[data-v-9b374d9e]:hover,.logout-btn[data-v-9b374d9e]:hover{background-color:#ffffff4d}.main-container[data-v-9b374d9e]{display:flex;min-height:calc(100vh - 120px)}.sidebar[data-v-9b374d9e]{width:240px;background-color:#fff;border-right:1px solid #e8e8e8;padding:20px 0;overflow-y:auto}.menu-section[data-v-9b374d9e]{margin-bottom:30px}.menu-item[data-v-9b374d9e]{display:flex;align-items:center;padding:12px 20px;cursor:pointer;transition:all .3s;border-left:3px solid transparent}.menu-item[data-v-9b374d9e]:hover{background-color:#f5f5f5}.menu-item.active[data-v-9b374d9e]{background-color:#e6f7ff;border-left-color:#1890ff;color:#1890ff}.menu-icon[data-v-9b374d9e]{font-size:18px;margin-right:12px}.menu-text[data-v-9b374d9e]{font-size:14px}.system-info[data-v-9b374d9e]{padding:20px 20px 0;border-top:1px solid #e8e8e8}.system-info h4[data-v-9b374d9e]{font-size:14px;color:#666;margin-bottom:12px}.info-item[data-v-9b374d9e]{display:flex;justify-content:space-between;padding:8px 0;font-size:13px;color:#999}.content[data-v-9b374d9e]{flex:1;padding:20px;overflow-y:auto}.settings-panel[data-v-9b374d9e]{background-color:#fff;border-radius:8px;padding:24px;margin-bottom:20px}.settings-panel h2[data-v-9b374d9e]{font-size:18px;font-weight:600;color:#333;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid #e8e8e8}.settings-panel h3[data-v-9b374d9e]{font-size:16px;font-weight:600;color:#333;margin:24px 0 16px}.settings-form[data-v-9b374d9e]{max-width:600px}.form-group[data-v-9b374d9e]{margin-bottom:20px}.form-group label[data-v-9b374d9e]{display:block;margin-bottom:8px;font-size:14px;color:#333}.form-group input[type=text][data-v-9b374d9e],.form-group input[type=number][data-v-9b374d9e],.form-group input[type=password][data-v-9b374d9e],.form-group select[data-v-9b374d9e]{width:100%;padding:10px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px;transition:border-color .3s}.form-group input[data-v-9b374d9e]:focus,.form-group select[data-v-9b374d9e]:focus{border-color:#1890ff;outline:none}.form-hint[data-v-9b374d9e]{display:block;margin-top:4px;font-size:12px;color:#999}.checkbox-group[data-v-9b374d9e]{display:flex;align-items:center}.checkbox-label[data-v-9b374d9e]{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox][data-v-9b374d9e]{width:16px;height:16px;cursor:pointer}.logo-upload[data-v-9b374d9e]{display:flex;align-items:center;gap:16px}.logo-preview[data-v-9b374d9e],.logo-placeholder[data-v-9b374d9e]{width:80px;height:80px;border-radius:8px;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;border:1px dashed #d9d9d9}.logo-preview img[data-v-9b374d9e]{max-width:100%;max-height:100%;object-fit:contain}.logo-placeholder[data-v-9b374d9e]{color:#999;font-size:12px}.upload-btn[data-v-9b374d9e]{padding:8px 16px;background-color:#f0f0f0!important;border:1px solid #d9d9d9!important;border-radius:4px;cursor:pointer;font-size:14px;color:#334155!important;outline:none;box-shadow:none}.upload-btn[data-v-9b374d9e]:hover,.upload-btn[data-v-9b374d9e]:focus,.upload-btn[data-v-9b374d9e]:focus-visible{background-color:#e0e0e0!important;color:#1f2d3d!important;outline:none;box-shadow:none}.alert-rules[data-v-9b374d9e]{margin-bottom:24px}.rule-item[data-v-9b374d9e]{background-color:#f9f9f9;border-radius:8px;padding:16px;margin-bottom:12px}.rule-header[data-v-9b374d9e]{margin-bottom:12px}.rule-config[data-v-9b374d9e]{padding-left:24px}.rule-config label[data-v-9b374d9e]{display:block;margin-bottom:8px;font-size:13px;color:#666}.rule-config input[data-v-9b374d9e]{width:120px;padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px}.pwd-card[data-v-9b374d9e]{background:#f7fbff;border:1px solid #d6e4ff;border-radius:10px;padding:14px 16px;margin-bottom:18px}.pwd-card h3[data-v-9b374d9e]{margin:0 0 10px;font-size:15px;color:#1f2d3d}.pwd-row[data-v-9b374d9e]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pwd-row input[data-v-9b374d9e]{padding:8px 10px;border:1px solid #d0dbe8;border-radius:8px;min-width:140px;background:#fff}.pwd-hint[data-v-9b374d9e]{margin:10px 0 0;font-size:12px;color:#7a8b9c}.users-section[data-v-9b374d9e]{margin-top:8px}.toolbar[data-v-9b374d9e]{margin-bottom:16px}.add-btn[data-v-9b374d9e]{padding:8px 16px;background-color:#52c41a;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.add-btn[data-v-9b374d9e]:hover{background-color:#73d13d}.users-table[data-v-9b374d9e]{width:100%;border-collapse:collapse}.users-table th[data-v-9b374d9e],.users-table td[data-v-9b374d9e]{padding:12px;text-align:left;border-bottom:1px solid #e8e8e8}.users-table th[data-v-9b374d9e]{background-color:#fafafa;font-weight:600;color:#333}.status-badge[data-v-9b374d9e]{padding:4px 8px;border-radius:4px;font-size:12px}.status-badge.active[data-v-9b374d9e]{background-color:#f6ffed;color:#52c41a}.status-badge.inactive[data-v-9b374d9e]{background-color:#f5f5f5;color:#999}.btn-edit[data-v-9b374d9e],.btn-delete[data-v-9b374d9e]{padding:4px 12px;border:none;border-radius:4px;cursor:pointer;font-size:13px;margin-right:8px}.btn-edit[data-v-9b374d9e]{background-color:#1890ff;color:#fff}.btn-delete[data-v-9b374d9e]{background-color:#ff4d4f;color:#fff}.data-actions[data-v-9b374d9e]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px}.action-card[data-v-9b374d9e]{background-color:#f9f9f9;border-radius:8px;padding:20px;border:1px solid #e8e8e8}.action-card.danger[data-v-9b374d9e]{border-color:#ffccc7;background-color:#fff2f0}.action-card h3[data-v-9b374d9e]{margin:0 0 8px;font-size:16px;color:#333}.action-card p[data-v-9b374d9e]{margin:0 0 16px;font-size:13px;color:#666}.action-btn[data-v-9b374d9e]{padding:8px 20px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:opacity .3s}.action-btn[data-v-9b374d9e]:hover:not(:disabled){opacity:.8}.action-btn[data-v-9b374d9e]:disabled{opacity:.5;cursor:not-allowed}.action-btn.warning[data-v-9b374d9e]{background-color:#faad14}.action-btn.danger[data-v-9b374d9e]{background-color:#ff4d4f}.storage-info[data-v-9b374d9e]{margin-top:30px;padding-top:20px;border-top:1px solid #e8e8e8}.storage-bar[data-v-9b374d9e]{height:20px;background-color:#f0f0f0;border-radius:10px;overflow:hidden;margin:12px 0}.storage-used[data-v-9b374d9e]{height:100%;background:linear-gradient(90deg,#52c41a,#95de64);border-radius:10px;transition:width .3s}.storage-text[data-v-9b374d9e]{display:flex;justify-content:space-between;font-size:13px;color:#666}.about-content[data-v-9b374d9e]{text-align:center;padding:40px}.about-logo[data-v-9b374d9e]{margin-bottom:40px}.logo-large[data-v-9b374d9e]{font-size:64px;margin-bottom:16px}.about-logo h1[data-v-9b374d9e]{font-size:24px;margin-bottom:8px}.about-logo p[data-v-9b374d9e]{color:#999}.about-info[data-v-9b374d9e]{max-width:400px;margin:0 auto 40px}.info-row[data-v-9b374d9e]{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e8e8e8;font-size:14px}.info-row a[data-v-9b374d9e]{color:#1890ff;text-decoration:none}.about-thanks[data-v-9b374d9e]{margin-top:40px}.about-thanks p[data-v-9b374d9e]{color:#666;margin-bottom:16px}.tech-tags[data-v-9b374d9e]{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.tech-tag[data-v-9b374d9e]{padding:6px 12px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#666}.settings-footer[data-v-9b374d9e]{display:flex;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e8e8e8}.btn-save[data-v-9b374d9e],.btn-reset[data-v-9b374d9e]{padding:10px 24px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:opacity .3s}.btn-save[data-v-9b374d9e]{background-color:#1890ff;color:#fff}.btn-reset[data-v-9b374d9e]{background-color:#f0f0f0;color:#333}.btn-save[data-v-9b374d9e]:hover:not(:disabled),.btn-reset[data-v-9b374d9e]:hover{opacity:.8}.btn-save[data-v-9b374d9e]:disabled{opacity:.5;cursor:not-allowed}.modal-overlay[data-v-9b374d9e]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-9b374d9e]{background-color:#fff;border-radius:8px;width:400px;max-width:90%}.modal-header[data-v-9b374d9e]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e8e8e8}.modal-header h3[data-v-9b374d9e]{margin:0;font-size:16px}.close-btn[data-v-9b374d9e]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-body[data-v-9b374d9e]{padding:20px}.modal-footer[data-v-9b374d9e]{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e8e8e8}.btn-cancel[data-v-9b374d9e]{padding:8px 16px;background-color:#f0f0f0;border:none;border-radius:4px;cursor:pointer;font-size:14px}.required[data-v-9b374d9e]{color:#ff4d4f}@media (max-width: 768px){.main-container[data-v-9b374d9e]{flex-direction:column}.sidebar[data-v-9b374d9e]{width:100%;height:auto;max-height:200px;border-right:none;border-bottom:1px solid #e8e8e8}.data-actions[data-v-9b374d9e]{grid-template-columns:1fr}.settings-form[data-v-9b374d9e]{max-width:100%}}.alarm-page[data-v-073c5726],#app[data-v-073c5726]{min-height:100%;background:var(--page-background)}.header[data-v-073c5726]{display:none}.header h1[data-v-073c5726]{margin:0;font-size:24px;font-weight:600;color:#fff}.header-actions[data-v-073c5726]{display:flex;gap:12px;align-items:center}.export-btn[data-v-073c5726]{background:#1677ff;color:#fff;border:1px solid #1677ff;padding:8px 14px;border-radius:6px;font-size:13px;cursor:pointer}.export-btn[data-v-073c5726]:hover{filter:brightness(1.05)}.test-sos-btn[data-v-073c5726]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s}.test-sos-btn[data-v-073c5726]:hover{background:#ffffff4d}.sound-toggle-btn[data-v-073c5726]{background:#fff3;border:1px solid rgba(255,255,255,.4);padding:8px 12px;border-radius:6px;font-size:18px;cursor:pointer;transition:all .3s}.sound-toggle-btn[data-v-073c5726]:hover{background:#ffffff4d}.sound-toggle-btn.muted[data-v-073c5726]{opacity:.5}.nav-btn[data-v-073c5726]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s}.nav-btn[data-v-073c5726]:hover{background:#ffffff4d}.logout-btn[data-v-073c5726]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s}.logout-btn[data-v-073c5726]:hover{background:#ffffff4d}.main-container[data-v-073c5726]{display:flex;padding:20px;gap:20px;max-width:1600px;margin:0 auto}.stats-sidebar[data-v-073c5726]{width:280px;flex-shrink:0}.stats-card[data-v-073c5726]{background:#fff;border-radius:12px;padding:20px;margin-bottom:15px;box-shadow:0 2px 8px #00000014;text-align:center}.stats-card.urgent[data-v-073c5726]{background:var(--header-gradient);color:#fff}.stats-card h3[data-v-073c5726]{margin:0 0 10px;font-size:14px;font-weight:500;opacity:.9}.stats-number[data-v-073c5726]{font-size:36px;font-weight:700;margin:10px 0}.stats-label[data-v-073c5726]{font-size:12px;opacity:.8}.alarm-type-stats[data-v-073c5726]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.alarm-type-stats h4[data-v-073c5726]{margin:0 0 15px;font-size:16px;color:#333}.type-list[data-v-073c5726]{display:flex;flex-direction:column;gap:10px}.type-item[data-v-073c5726]{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f0f0f0}.type-item[data-v-073c5726]:last-child{border-bottom:none}.type-dot[data-v-073c5726]{width:12px;height:12px;border-radius:50%}.type-dot.fall[data-v-073c5726]{background:#ff4d4f}.type-dot.sos[data-v-073c5726]{background:#ff6b6b}.type-dot.fence[data-v-073c5726]{background:#faad14}.type-dot.offline[data-v-073c5726]{background:#8c8c8c}.type-dot.battery[data-v-073c5726]{background:#52c41a}.type-name[data-v-073c5726]{flex:1;font-size:14px;color:#666}.type-count[data-v-073c5726]{font-weight:600;color:#333}.alarm-main[data-v-073c5726]{flex:1;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.filter-bar[data-v-073c5726]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f0f0f0;gap:20px}.filter-tabs[data-v-073c5726]{display:flex;gap:10px}.filter-tabs button[data-v-073c5726]{background:#f5f5f5;border:1px solid #e8e8e8;padding:10px 20px;border-radius:6px;font-size:14px;color:#2c3e50;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:5px;outline:none;box-shadow:none}.filter-tabs button[data-v-073c5726]:hover{background:#e6f7ff;border-color:#91d5ff;color:#1890ff}.filter-tabs button.active[data-v-073c5726]{background:#1890ff;border-color:#1890ff;color:#fff}.filter-tabs button[data-v-073c5726]:focus,.filter-tabs button[data-v-073c5726]:focus-visible{outline:none;box-shadow:0 0 0 2px #1890ff40}.badge[data-v-073c5726]{background:#fff1f0;color:#ff4d4f;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.filter-tabs button.active .badge[data-v-073c5726]{background:#fffffff2;color:#1890ff}.filter-options[data-v-073c5726]{display:flex;gap:10px}.filter-select[data-v-073c5726],.search-input[data-v-073c5726]{padding:10px 15px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;outline:none}.filter-select[data-v-073c5726]{min-width:120px}.search-input[data-v-073c5726]{width:200px}.search-input[data-v-073c5726]:focus,.filter-select[data-v-073c5726]:focus{border-color:#ff6b6b}.alarm-list-container[data-v-073c5726]{padding:20px;max-height:calc(100vh - 200px);overflow-y:auto}.empty-state[data-v-073c5726]{text-align:center;padding:60px 20px;color:#999}.empty-icon[data-v-073c5726]{font-size:64px;margin-bottom:20px}.alarm-list[data-v-073c5726]{display:flex;flex-direction:column;gap:15px}.alarm-card[data-v-073c5726]{background:#fafafa;border-radius:10px;padding:20px;border-left:4px solid #d9d9d9;transition:all .3s}.alarm-card[data-v-073c5726]:hover{box-shadow:0 4px 12px #0000001a}.alarm-card.urgent[data-v-073c5726]{background:#fff2f0;border-left-color:#ff4d4f}.alarm-card.critical[data-v-073c5726]{animation:pulse-073c5726 2s infinite}@keyframes pulse-073c5726{0%,to{box-shadow:0 0 #ff4d4f66}50%{box-shadow:0 0 0 10px #ff4d4f00}}.batch-bar[data-v-073c5726]{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;margin:0 0 14px;padding:12px 16px;background:#f0f7ff;border:1px solid #d6e8ff;border-radius:8px}.batch-check-all[data-v-073c5726]{display:inline-flex;align-items:center;gap:8px;color:#1f3a5f;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none}.batch-count[data-v-073c5726]{color:#5a7aa0;font-size:13px}.batch-actions[data-v-073c5726]{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.btn-batch[data-v-073c5726],.btn-batch-note[data-v-073c5726],.btn-batch-clear[data-v-073c5726]{padding:7px 14px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:opacity .2s}.btn-batch[data-v-073c5726]{background:#52c41a;color:#fff}.btn-batch-note[data-v-073c5726]{background:#1890ff;color:#fff}.btn-batch-clear[data-v-073c5726]{background:#eef2f7;color:#5a6a7a}.btn-batch[data-v-073c5726]:disabled,.btn-batch-note[data-v-073c5726]:disabled{opacity:.45;cursor:not-allowed}.alarm-card.selected[data-v-073c5726]{border-color:#1890ff;box-shadow:0 0 0 1px #1890ff40}.alarm-check[data-v-073c5726]{display:inline-flex;align-items:center;cursor:pointer}.alarm-check input[data-v-073c5726]{width:16px;height:16px;cursor:pointer}.alarm-header-row[data-v-073c5726]{display:flex;align-items:center;gap:15px;margin-bottom:15px}.alarm-type-badge[data-v-073c5726]{padding:5px 12px;border-radius:4px;font-size:13px;font-weight:600;color:#fff}.alarm-type-badge.fall[data-v-073c5726]{background:#ff4d4f}.alarm-type-badge.sos[data-v-073c5726]{background:#ff6b6b}.alarm-type-badge.fence[data-v-073c5726]{background:#faad14}.alarm-type-badge.offline[data-v-073c5726]{background:#8c8c8c}.alarm-type-badge.battery[data-v-073c5726]{background:#52c41a}.alarm-status[data-v-073c5726]{padding:4px 10px;border-radius:4px;font-size:12px}.alarm-status.unprocessed[data-v-073c5726]{background:#fff2f0;color:#ff4d4f}.alarm-status.processing[data-v-073c5726]{background:#e6f7ff;color:#1890ff}.alarm-status.processed[data-v-073c5726]{background:#f6ffed;color:#52c41a}.alarm-time[data-v-073c5726]{margin-left:auto;color:#999;font-size:13px}.alarm-body[data-v-073c5726]{margin-bottom:15px}.info-row[data-v-073c5726]{display:flex;margin-bottom:8px}.info-row .label[data-v-073c5726]{color:#666;width:80px;flex-shrink:0}.info-row .value[data-v-073c5726]{color:#333;font-weight:500}.handle-info[data-v-073c5726]{margin-top:15px;padding-top:15px;border-top:1px dashed #d9d9d9}.alarm-actions[data-v-073c5726]{display:flex;gap:10px}.btn-handle[data-v-073c5726],.btn-handle-with-note[data-v-073c5726],.btn-locate[data-v-073c5726]{padding:8px 16px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .3s}.btn-handle[data-v-073c5726]{background:#52c41a;color:#fff}.btn-handle[data-v-073c5726]:hover{background:#73d13d}.btn-handle-with-note[data-v-073c5726]{background:#1890ff;color:#fff}.btn-handle-with-note[data-v-073c5726]:hover{background:#40a9ff}.btn-locate[data-v-073c5726]{background:#f5f5f5;color:#666;margin-left:auto}.btn-locate[data-v-073c5726]:hover{background:#e8e8e8}.btn-video[data-v-073c5726]{background:var(--primary-color);color:#fff;border:none;border-radius:6px;padding:6px 12px;cursor:pointer}.btn-video[data-v-073c5726]:hover{background:var(--primary-hover)}.type-dot.static[data-v-073c5726]{background:#fa8c16}.type-dot.night[data-v-073c5726]{background:#2f54eb}.type-dot.gather[data-v-073c5726]{background:#eb2f96}.type-dot.lost[data-v-073c5726]{background:#595959}.video-modal-mask[data-v-073c5726]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1200}.video-modal[data-v-073c5726]{width:min(820px,92vw);background:#111827;color:#fff;border-radius:12px;padding:16px;max-height:80vh;overflow:auto}.video-modal-head[data-v-073c5726]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.video-modal-head h3[data-v-073c5726]{margin:0;font-size:16px}.video-modal-head button[data-v-073c5726]{background:transparent;border:none;color:#fff;font-size:22px;cursor:pointer}.video-empty[data-v-073c5726]{color:#9ca3af;font-size:13px;margin-bottom:10px}.video-grid[data-v-073c5726]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.video-card[data-v-073c5726]{background:#1f2937;border-radius:10px;overflow:hidden}.video-screen[data-v-073c5726]{position:relative;height:130px;display:flex;align-items:flex-end;padding:8px}.video-screen .scan[data-v-073c5726]{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.18) 3px);animation:vscan-073c5726 2.5s linear infinite}.video-screen .live[data-v-073c5726]{position:absolute;top:8px;right:8px;color:#ff4d4f;font-size:11px;font-weight:700;z-index:1}.video-screen .cam-name[data-v-073c5726]{position:relative;z-index:1;font-size:12px}.video-meta[data-v-073c5726]{padding:8px 10px;font-size:12px;color:#9ca3af}@keyframes vscan-073c5726{0%{transform:translateY(0)}to{transform:translateY(10px)}}.modal-overlay[data-v-073c5726]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-073c5726]{background:#fff;border-radius:12px;width:500px;max-width:90%;overflow:hidden}.modal-header[data-v-073c5726]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-073c5726]{margin:0;font-size:18px}.close-btn[data-v-073c5726]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-body[data-v-073c5726]{padding:20px}.form-group[data-v-073c5726]{margin-bottom:20px}.form-group label[data-v-073c5726]{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-group input[data-v-073c5726],.form-group textarea[data-v-073c5726]{width:100%;padding:10px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;outline:none}.form-group input[data-v-073c5726]:focus,.form-group textarea[data-v-073c5726]:focus{border-color:#ff6b6b}.modal-footer[data-v-073c5726]{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #f0f0f0}.btn-cancel[data-v-073c5726],.btn-confirm[data-v-073c5726]{padding:10px 20px;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s}.btn-cancel[data-v-073c5726]{background:#f5f5f5;color:#666}.btn-confirm[data-v-073c5726]{background:#ff6b6b;color:#fff}.btn-confirm[data-v-073c5726]:hover{background:#ee5a5a}@media (max-width: 1200px){.main-container[data-v-073c5726]{flex-direction:column}.stats-sidebar[data-v-073c5726]{width:100%}.filter-bar[data-v-073c5726]{flex-direction:column;align-items:stretch}.filter-options[data-v-073c5726]{justify-content:space-between}}.health-page[data-v-441b568c],#app[data-v-441b568c]{min-height:100%;background:var(--page-background)}.header[data-v-441b568c]{display:none;justify-content:space-between;align-items:center;box-shadow:0 2px 10px var(--shadow-color)}.header h1[data-v-441b568c]{margin:0;font-size:24px;font-weight:600;color:#fff}.header-actions[data-v-441b568c]{display:flex;gap:12px}.nav-btn[data-v-441b568c],.logout-btn[data-v-441b568c]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s}.nav-btn[data-v-441b568c]:hover,.logout-btn[data-v-441b568c]:hover{background:#ffffff4d}.main-container[data-v-441b568c]{display:flex;padding:20px;gap:20px;max-width:1600px;margin:0 auto}.elderly-sidebar[data-v-441b568c]{width:280px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.sidebar-header[data-v-441b568c]{padding:20px;border-bottom:1px solid #f0f0f0}.sidebar-header h3[data-v-441b568c]{margin:0 0 15px;font-size:16px;color:#333}.search-input[data-v-441b568c]{width:100%;padding:10px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;outline:none}.search-input[data-v-441b568c]:focus{border-color:#52c41a}.elderly-list[data-v-441b568c]{list-style:none;padding:0;margin:0;max-height:calc(100vh - 200px);overflow-y:auto}.elderly-list li[data-v-441b568c]{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;cursor:pointer;transition:all .3s;border-left:3px solid transparent}.elderly-list li[data-v-441b568c]:hover{background:#f6ffed}.elderly-list li.active[data-v-441b568c]{background:#f6ffed;border-left-color:#52c41a}.elderly-info[data-v-441b568c]{display:flex;flex-direction:column}.elderly-name[data-v-441b568c]{font-weight:500;color:#333}.elderly-room[data-v-441b568c]{font-size:12px;color:#999;margin-top:4px}.health-indicator[data-v-441b568c]{width:10px;height:10px;border-radius:50%}.health-indicator.status-normal[data-v-441b568c]{background:#52c41a}.health-main[data-v-441b568c]{flex:1}.health-main.empty[data-v-441b568c]{display:flex;align-items:center;justify-content:center;min-height:500px}.empty-state[data-v-441b568c]{text-align:center;color:#999}.empty-icon[data-v-441b568c]{font-size:64px;margin-bottom:20px}.overview-cards[data-v-441b568c]{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;margin-bottom:20px}.overview-card[data-v-441b568c]{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 2px 8px #00000014}.card-icon[data-v-441b568c]{font-size:32px}.card-content h4[data-v-441b568c]{margin:0 0 5px;font-size:14px;color:#666;font-weight:500}.card-value[data-v-441b568c]{margin:0;font-size:24px;font-weight:700;color:#333}.card-value.score-good[data-v-441b568c]{color:#52c41a}.card-value.score-normal[data-v-441b568c]{color:#faad14}.card-value.score-bad[data-v-441b568c]{color:#ff4d4f}.card-unit[data-v-441b568c]{margin:0;font-size:12px;color:#999}.charts-section[data-v-441b568c]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.chart-container[data-v-441b568c]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.chart-container h3[data-v-441b568c]{margin:0 0 15px;font-size:16px;color:#333}.chart[data-v-441b568c]{height:250px}.detail-tabs[data-v-441b568c]{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.tab-header[data-v-441b568c]{display:flex;border-bottom:1px solid #f0f0f0}.tab-header button[data-v-441b568c]{flex:1;padding:15px 20px;background:none;border:none;font-size:14px;cursor:pointer;transition:all .3s;border-bottom:3px solid transparent}.tab-header button[data-v-441b568c]:hover{background:#f6ffed}.tab-header button.active[data-v-441b568c]{color:#52c41a;border-bottom-color:#52c41a;font-weight:600}.tab-content[data-v-441b568c]{padding:20px}.data-table-container[data-v-441b568c]{overflow-x:auto}.data-table[data-v-441b568c]{width:100%;border-collapse:collapse}.data-table th[data-v-441b568c],.data-table td[data-v-441b568c]{padding:12px;text-align:left;border-bottom:1px solid #f0f0f0}.data-table th[data-v-441b568c]{font-weight:600;color:#333;background:#fafafa}.status-badge[data-v-441b568c]{padding:4px 8px;border-radius:4px;font-size:12px}.status-badge.status-normal[data-v-441b568c]{background:#f6ffed;color:#52c41a}.status-badge.status-warning[data-v-441b568c]{background:#fffbe6;color:#faad14}.status-badge.status-danger[data-v-441b568c]{background:#fff2f0;color:#ff4d4f}.reports-grid[data-v-441b568c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.report-card[data-v-441b568c]{background:#fafafa;border-radius:8px;padding:20px;border:1px solid #f0f0f0}.report-header[data-v-441b568c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.report-type[data-v-441b568c]{background:#52c41a;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px}.report-score[data-v-441b568c]{font-size:24px;font-weight:700}.report-period[data-v-441b568c]{color:#999;font-size:13px;margin-bottom:15px}.report-stats[data-v-441b568c]{display:flex;gap:20px;margin-bottom:15px}.stat-item[data-v-441b568c]{display:flex;flex-direction:column}.stat-label[data-v-441b568c]{font-size:12px;color:#999}.stat-value[data-v-441b568c]{font-weight:600;color:#333}.btn-view[data-v-441b568c]{background:#52c41a;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;width:100%}.suggestions-list[data-v-441b568c]{display:flex;flex-direction:column;gap:15px}.suggestion-card[data-v-441b568c]{background:#fafafa;border-radius:8px;padding:20px;border:1px solid #f0f0f0;border-left:4px solid #52c41a}.suggestion-card.unread[data-v-441b568c]{background:#f6ffed;border-left-color:#faad14}.suggestion-header[data-v-441b568c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.suggestion-type[data-v-441b568c]{background:#e6f7ff;color:#1890ff;padding:4px 8px;border-radius:4px;font-size:12px}.suggestion-priority[data-v-441b568c]{padding:4px 8px;border-radius:4px;font-size:12px}.suggestion-priority.priority-1[data-v-441b568c]{background:#f6ffed;color:#52c41a}.suggestion-priority.priority-2[data-v-441b568c]{background:#e6f7ff;color:#1890ff}.suggestion-priority.priority-3[data-v-441b568c]{background:#fffbe6;color:#faad14}.suggestion-priority.priority-4[data-v-441b568c]{background:#fff2f0;color:#ff4d4f}.suggestion-title[data-v-441b568c]{margin:0 0 10px;font-size:16px;color:#333}.suggestion-content[data-v-441b568c]{margin:0 0 10px;color:#666;line-height:1.6}.suggestion-basis[data-v-441b568c]{font-size:13px;color:#999;margin-bottom:15px}.suggestion-actions[data-v-441b568c]{display:flex;gap:10px}.btn-read[data-v-441b568c],.btn-adopt[data-v-441b568c]{padding:6px 12px;border:none;border-radius:4px;font-size:13px;cursor:pointer}.btn-read[data-v-441b568c]{background:#e6f7ff;color:#1890ff}.btn-adopt[data-v-441b568c]{background:#52c41a;color:#fff}.modal-overlay[data-v-441b568c]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-441b568c]{background:#fff;border-radius:12px;width:600px;max-width:90%;max-height:80vh;overflow-y:auto}.modal-header[data-v-441b568c]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f0f0f0}.modal-header h3[data-v-441b568c]{margin:0}.close-btn[data-v-441b568c]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-body[data-v-441b568c]{padding:20px}.report-detail-header[data-v-441b568c]{text-align:center;margin-bottom:20px}.report-score-large[data-v-441b568c]{font-size:48px;font-weight:700;margin-bottom:10px}.report-status[data-v-441b568c]{font-size:18px;color:#666}.report-section[data-v-441b568c]{margin-bottom:20px}.report-section h4[data-v-441b568c]{margin:0 0 10px;color:#333}.report-summary[data-v-441b568c],.report-suggestions[data-v-441b568c]{color:#666;line-height:1.8;white-space:pre-line}.report-stats-detail[data-v-441b568c]{background:#fafafa;border-radius:8px;padding:15px}.stat-row[data-v-441b568c]{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.stat-row[data-v-441b568c]:last-child{border-bottom:none}@media (max-width: 1200px){.overview-cards[data-v-441b568c]{grid-template-columns:repeat(3,1fr)}.charts-section[data-v-441b568c]{grid-template-columns:1fr}}@media (max-width: 768px){.main-container[data-v-441b568c]{flex-direction:column}.elderly-sidebar[data-v-441b568c]{width:100%}.overview-cards[data-v-441b568c]{grid-template-columns:repeat(2,1fr)}}.sim-page[data-v-a7d7c946]{min-height:100%;background:var(--page-background);color:var(--text-color)}.page-hint[data-v-a7d7c946]{margin:0;padding:0 24px 8px;font-size:13px;color:#64748b}.main[data-v-a7d7c946]{display:grid;grid-template-columns:320px 1fr 300px;gap:16px;padding:16px 24px 32px}.panel[data-v-a7d7c946]{background:var(--card-background);border:1px solid var(--border-color);border-radius:14px;padding:16px;box-shadow:0 4px 16px var(--shadow-color)}.panel h2[data-v-a7d7c946]{margin:0 0 14px;font-size:16px;color:var(--text-color)}.panel h2 small[data-v-a7d7c946]{color:var(--text-muted);font-weight:400}.status-row[data-v-a7d7c946]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.dot[data-v-a7d7c946]{width:10px;height:10px;border-radius:50%;background:#bfbfbf}.dot.on[data-v-a7d7c946]{background:var(--success-color);box-shadow:0 0 8px #52c41a80}.muted[data-v-a7d7c946]{color:var(--text-muted);font-size:12px}.form-row[data-v-a7d7c946]{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-row label[data-v-a7d7c946]{font-size:13px;color:var(--text-light)}.form-row input[data-v-a7d7c946]{padding:8px 10px;border-radius:8px;border:1px solid var(--border-color);background:#fff;color:var(--text-color)}.btn-row[data-v-a7d7c946]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}button.primary[data-v-a7d7c946]{background:var(--primary-color);color:#fff;border:none}button.danger[data-v-a7d7c946]{background:var(--error-color);color:#fff;border:none}button.warn[data-v-a7d7c946]{background:var(--warning-color);color:#fff;border:none}button.ghost[data-v-a7d7c946]{background:var(--primary-soft);color:var(--primary-color);border:1px solid var(--border-color)}button[data-v-a7d7c946]:disabled{opacity:.45;cursor:not-allowed}.hint[data-v-a7d7c946]{font-size:12px;color:var(--text-muted);line-height:1.5;margin:0}.device-card[data-v-a7d7c946]{background:var(--primary-soft);border:1px solid var(--border-color);border-radius:10px;padding:12px;margin-bottom:10px}.device-head[data-v-a7d7c946]{display:flex;justify-content:space-between;align-items:center}.code[data-v-a7d7c946]{margin-left:8px;color:var(--text-muted);font-size:12px}.mode[data-v-a7d7c946]{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--primary-color);color:#fff}.meta[data-v-a7d7c946]{margin:8px 0;font-size:12px;color:var(--text-light)}.scenario-btns[data-v-a7d7c946]{display:flex;flex-wrap:wrap;gap:6px}.scenario-btns button[data-v-a7d7c946]{font-size:12px;padding:6px 8px;border-radius:6px}.empty[data-v-a7d7c946]{color:var(--text-muted);font-size:13px}.log ul[data-v-a7d7c946]{list-style:none;margin:0;padding:0;max-height:70vh;overflow:auto}.log li[data-v-a7d7c946]{font-size:12px;padding:6px 0;border-bottom:1px solid var(--border-color);color:var(--text-light)}@media (max-width: 1100px){.main[data-v-a7d7c946]{grid-template-columns:1fr}}.traj-page[data-v-cb09a2d4]{min-height:100%;background:var(--page-background);color:var(--text-color)}.btn[data-v-cb09a2d4]{border-radius:8px;padding:8px 14px;cursor:pointer;font-size:13px;font-weight:600;border:1px solid transparent;color:#fff}.btn[data-v-cb09a2d4]:disabled{opacity:.55;cursor:not-allowed}.btn-primary[data-v-cb09a2d4]{background:#1677ff!important;border-color:#1677ff!important;color:#fff!important}.btn-accent[data-v-cb09a2d4]{background:#13c2c2!important;border-color:#13c2c2!important;color:#fff!important}.btn-primary[data-v-cb09a2d4]:hover:not(:disabled),.btn-accent[data-v-cb09a2d4]:hover:not(:disabled){filter:brightness(1.05)}.toolbar[data-v-cb09a2d4]{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:12px 20px;background:var(--card-background);border-bottom:1px solid var(--border-color)}.toolbar label[data-v-cb09a2d4]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-light)}.elderly-picker[data-v-cb09a2d4]{min-width:220px}.toolbar select[data-v-cb09a2d4],.toolbar input[type=datetime-local][data-v-cb09a2d4]{padding:7px 10px;border-radius:8px;border:1px solid var(--border-color);background:#fff;color:var(--text-color)}.muted[data-v-cb09a2d4]{color:var(--text-muted);font-size:12px;align-self:center}.err[data-v-cb09a2d4]{color:#cf1322;font-size:12px;align-self:center}.body[data-v-cb09a2d4]{display:grid;grid-template-columns:1fr 320px;gap:16px;padding:16px 20px 28px}.map-wrap[data-v-cb09a2d4]{background:var(--card-background);border-radius:12px;padding:12px;border:1px solid var(--border-color);box-shadow:0 4px 16px var(--shadow-color)}.map-title[data-v-cb09a2d4]{font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-color);display:flex;align-items:center;gap:8px}.tag.outdoor[data-v-cb09a2d4]{font-size:11px;padding:2px 8px;border-radius:4px;background:#f6ffed;color:#389e0d;font-weight:500}.canvas-box[data-v-cb09a2d4]{position:relative}canvas[data-v-cb09a2d4]{width:100%;height:auto;border-radius:8px;background:#e6f4ff;display:block}.empty-overlay[data-v-cb09a2d4]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#f0f5ffeb;border-radius:8px;text-align:center;padding:24px}.empty-overlay p[data-v-cb09a2d4]{margin:0;color:#334155;font-weight:600}.empty-overlay .hint[data-v-cb09a2d4]{font-size:12px;font-weight:400;color:#64748b;max-width:320px}.playback[data-v-cb09a2d4]{display:flex;align-items:center;gap:12px;margin-top:10px}.playback input[type=range][data-v-cb09a2d4]{flex:1}.side h3[data-v-cb09a2d4]{margin:16px 0 10px;font-size:14px;color:var(--text-color)}.side h3[data-v-cb09a2d4]:first-child{margin-top:0}.info[data-v-cb09a2d4]{background:var(--primary-soft);border-radius:10px;padding:12px;margin-bottom:8px;font-size:13px;border:1px solid var(--border-color)}.info p[data-v-cb09a2d4]{margin:4px 0}.seg-list[data-v-cb09a2d4]{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.seg-btn[data-v-cb09a2d4]{text-align:left;background:#fff!important;color:var(--text-color)!important;border:1px solid var(--border-color)!important;display:flex;justify-content:space-between;padding:8px 12px;border-radius:8px;cursor:pointer}.seg-btn.active[data-v-cb09a2d4]{border-color:var(--primary-color)!important;background:var(--primary-soft)!important}.cam-card[data-v-cb09a2d4]{margin-bottom:12px;border-radius:10px;overflow:hidden;background:var(--card-background);border:1px solid var(--border-color)}.cam-card.cover[data-v-cb09a2d4]{outline:2px solid var(--primary-color)}.cam-screen[data-v-cb09a2d4]{position:relative;height:110px;display:flex;align-items:flex-end;padding:8px;overflow:hidden}.cam-screen .scan[data-v-cb09a2d4]{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.12) 3px);animation:drift-cb09a2d4 3s linear infinite}.cam-label[data-v-cb09a2d4]{position:relative;z-index:1;font-size:11px;color:#fff;text-shadow:0 1px 2px #000}.live[data-v-cb09a2d4]{position:absolute;top:8px;right:8px;font-size:11px;color:#ff4d4f;font-weight:700;z-index:1}.cam-meta[data-v-cb09a2d4]{padding:8px 10px;display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-light)}@keyframes drift-cb09a2d4{0%{transform:translateY(0)}to{transform:translateY(12px)}}@media (max-width: 960px){.body[data-v-cb09a2d4]{grid-template-columns:1fr}}.page[data-v-26ae31ca]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-26ae31ca]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}h2[data-v-26ae31ca]{margin:0;font-size:18px}.actions[data-v-26ae31ca]{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.actions label[data-v-26ae31ca]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#64748b}.actions input[data-v-26ae31ca],.actions select[data-v-26ae31ca]{padding:7px 10px;border:1px solid #d0dbe8;border-radius:8px}.hint[data-v-26ae31ca]{color:#7a8b9c;font-size:13px;margin:10px 0 14px}button[data-v-26ae31ca]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-26ae31ca]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.body[data-v-26ae31ca]{display:grid;grid-template-columns:1fr 260px;gap:14px}.map-wrap[data-v-26ae31ca]{border:1px solid #e4ebf2;border-radius:10px;padding:10px;background:#fafcff}canvas[data-v-26ae31ca]{width:100%;height:auto;border-radius:8px;display:block}.map-foot[data-v-26ae31ca]{margin-top:8px;font-size:12px;color:#64748b}.side h3[data-v-26ae31ca]{margin:0 0 10px;font-size:14px}.person[data-v-26ae31ca]{width:100%;text-align:left;margin-bottom:6px;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #e4ebf2}.person.active[data-v-26ae31ca]{border-color:#1677ff;background:#e6f4ff}.person span[data-v-26ae31ca]{font-size:12px;color:#64748b}.muted[data-v-26ae31ca]{color:#94a3b8;font-size:13px}@media (max-width: 960px){.body[data-v-26ae31ca]{grid-template-columns:1fr}}.page[data-v-915c9a42]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-915c9a42]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}h2[data-v-915c9a42]{margin:0;font-size:18px}.actions[data-v-915c9a42]{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.actions label[data-v-915c9a42]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#64748b}.actions input[data-v-915c9a42],.actions select[data-v-915c9a42]{padding:7px 10px;border:1px solid #d0dbe8;border-radius:8px}.hint[data-v-915c9a42]{color:#7a8b9c;font-size:13px;margin:10px 0 14px}button[data-v-915c9a42]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-915c9a42]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.map-wrap[data-v-915c9a42]{border:1px solid #e4ebf2;border-radius:10px;padding:10px;background:#0b1f3a}canvas[data-v-915c9a42]{width:100%;height:auto;border-radius:8px;display:block}.meta[data-v-915c9a42]{display:flex;gap:16px;margin-top:8px;color:#9fb6d1;font-size:12px}.page[data-v-63b4a740]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-63b4a740]{display:flex;justify-content:space-between;align-items:center}h2[data-v-63b4a740]{margin:0;font-size:18px}.hint[data-v-63b4a740]{color:#7a8b9c;font-size:13px;margin:10px 0 14px}.save-msg[data-v-63b4a740]{color:#1677ff;font-size:13px;margin:-6px 0 12px}button[data-v-63b4a740]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-63b4a740]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.grid[data-v-63b4a740]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.card[data-v-63b4a740]{border:1px solid #e4ebf2;border-radius:10px;padding:14px;background:#fafcff}.card h3[data-v-63b4a740]{margin:0 0 12px;font-size:14px;color:#1677ff}.row[data-v-63b4a740]{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed #e8eef5}.row[data-v-63b4a740]:last-child{border-bottom:none}.label[data-v-63b4a740]{display:flex;flex-direction:column;gap:2px}.label strong[data-v-63b4a740]{font-size:13px;color:#1f2d3d}.label span[data-v-63b4a740]{font-size:11px;color:#94a3b8}.val[data-v-63b4a740]{width:110px;border:1px solid #d0dbe8;border-radius:8px;padding:6px 8px}.switch[data-v-63b4a740]{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#334155}.leave-page[data-v-50d69468]{min-height:100%;background:var(--page-background);color:var(--text-color)}.page-hint[data-v-50d69468]{margin:0;padding:0 24px 4px;font-size:13px;color:#64748b}.layout[data-v-50d69468]{display:grid;grid-template-columns:360px 1fr;gap:16px;padding:12px 24px 32px}.panel[data-v-50d69468]{background:var(--card-background);border-radius:12px;padding:16px;box-shadow:0 4px 20px var(--shadow-color);border:1px solid var(--border-color)}.panel button[data-v-50d69468]{border:none;border-radius:8px;padding:8px 12px;cursor:pointer;background:var(--primary-soft);color:var(--primary-color)}.panel button.primary[data-v-50d69468]{background:var(--primary-color);color:#fff}.panel button.danger[data-v-50d69468]{background:var(--error-color);color:#fff}.panel h2[data-v-50d69468]{margin:0 0 14px;font-size:16px}.form label[data-v-50d69468]{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#5b6b7c;margin-bottom:10px}.form input[data-v-50d69468],.form select[data-v-50d69468],.form textarea[data-v-50d69468]{padding:8px 10px;border:1px solid #d9e2ec;border-radius:8px;font-size:14px}.msg[data-v-50d69468]{margin-top:10px;color:#1677ff;font-size:13px}.list-head[data-v-50d69468]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.list-head select[data-v-50d69468]{padding:6px 8px;border-radius:8px;border:1px solid #d9e2ec}.card[data-v-50d69468]{border:1px solid #eef2f6;border-radius:10px;padding:12px;margin-bottom:10px}.card-top[data-v-50d69468]{display:flex;justify-content:space-between;align-items:center}.badge[data-v-50d69468]{font-size:12px;padding:2px 8px;border-radius:999px;background:#f0f0f0}.badge.s1[data-v-50d69468]{background:#fff7e6;color:#d48806}.badge.s2[data-v-50d69468],.badge.s4[data-v-50d69468]{background:#e6f4ff;color:#1677ff}.badge.s3[data-v-50d69468]{background:#fff1f0;color:#cf1322}.badge.s5[data-v-50d69468]{background:#f6ffed;color:#389e0d}.card-body p[data-v-50d69468]{margin:4px 0;font-size:13px;color:#4a5a6a}.card-actions[data-v-50d69468]{display:flex;gap:8px;margin-top:10px}.empty[data-v-50d69468]{color:#8a9bb0;font-size:13px}@media (max-width: 900px){.layout[data-v-50d69468]{grid-template-columns:1fr}}.page[data-v-ac4f4494]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-ac4f4494]{display:flex;justify-content:space-between;align-items:center}h2[data-v-ac4f4494]{margin:0;font-size:18px}.hint[data-v-ac4f4494]{color:#7a8b9c;font-size:13px;margin:10px 0 14px}button[data-v-ac4f4494]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-ac4f4494]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}table[data-v-ac4f4494]{width:100%;border-collapse:collapse;font-size:12px}th[data-v-ac4f4494],td[data-v-ac4f4494]{text-align:left;padding:8px 6px;border-bottom:1px solid #eef2f6;vertical-align:top}select[data-v-ac4f4494],.time[data-v-ac4f4494],.cap[data-v-ac4f4494]{border:1px solid #d0dbe8;border-radius:6px;padding:4px 6px}.time[data-v-ac4f4494]{width:64px}.cap[data-v-ac4f4494]{width:60px}.mt[data-v-ac4f4494]{display:block;margin-top:6px;max-width:140px}.week[data-v-ac4f4494]{display:flex;flex-wrap:wrap;gap:4px 6px;max-width:150px}.week label[data-v-ac4f4494]{display:inline-flex;align-items:center;gap:2px;font-size:11px;color:#475569}.switch[data-v-ac4f4494]{display:inline-flex;align-items:center;gap:6px}.ops[data-v-ac4f4494]{display:flex;flex-direction:column;gap:6px}.empty[data-v-ac4f4494]{text-align:center;color:#94a3b8;padding:28px}.page[data-v-fdace46c]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2;max-width:780px}.toolbar[data-v-fdace46c]{display:flex;justify-content:space-between;align-items:center}h2[data-v-fdace46c]{margin:0;font-size:18px}.hint[data-v-fdace46c],.tip[data-v-fdace46c]{color:#7a8b9c;font-size:13px;margin:12px 0}.form[data-v-fdace46c]{display:flex;flex-direction:column;gap:14px}.row[data-v-fdace46c]{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center;font-size:14px}.weeks[data-v-fdace46c]{display:flex;flex-wrap:wrap;gap:10px}input[data-v-fdace46c],select[data-v-fdace46c]{border:1px solid #d0dbe8;border-radius:8px;padding:7px 10px}button[data-v-fdace46c]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-fdace46c]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.page[data-v-2ecddb72]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-2ecddb72]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}h2[data-v-2ecddb72]{margin:0;font-size:18px}button[data-v-2ecddb72]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-2ecddb72]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.danger[data-v-2ecddb72]{color:#ff4d4f!important;background:#fff}table[data-v-2ecddb72]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-2ecddb72],td[data-v-2ecddb72]{text-align:left;padding:10px 8px;border-bottom:1px solid #eef2f6}.tag[data-v-2ecddb72]{padding:2px 8px;border-radius:999px;font-size:12px;background:#e6f4ff;color:#1677ff}.tag.s2[data-v-2ecddb72]{background:#f5f5f5;color:#8c8c8c}.tag.s3[data-v-2ecddb72]{background:#fff1f0;color:#ff4d4f}.ops[data-v-2ecddb72]{display:flex;gap:8px}.empty[data-v-2ecddb72]{text-align:center;color:#94a3b8;padding:28px}.mask[data-v-2ecddb72]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:80}.modal[data-v-2ecddb72]{width:420px;background:#fff;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}.modal label[data-v-2ecddb72]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#64748b}.modal input[data-v-2ecddb72],.modal textarea[data-v-2ecddb72],.modal select[data-v-2ecddb72]{border:1px solid #d0dbe8;border-radius:8px;padding:8px 10px}.actions[data-v-2ecddb72]{display:flex;justify-content:flex-end;gap:8px}.page[data-v-ab9e9504]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-ab9e9504]{display:flex;justify-content:space-between;align-items:center}h2[data-v-ab9e9504]{margin:0;font-size:18px}.hint[data-v-ab9e9504]{color:#7a8b9c;font-size:13px;margin:10px 0 14px}button[data-v-ab9e9504]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.primary[data-v-ab9e9504]{background:#1677ff!important;color:#fff!important;border-color:#1677ff}.danger[data-v-ab9e9504]{color:#ff4d4f!important;background:#fff}table[data-v-ab9e9504]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-ab9e9504],td[data-v-ab9e9504]{text-align:left;padding:10px 8px;border-bottom:1px solid #eef2f6}.ops[data-v-ab9e9504]{display:flex;gap:8px}.mask[data-v-ab9e9504]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:80}.modal[data-v-ab9e9504]{width:420px;background:#fff;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}.modal.wide[data-v-ab9e9504]{width:520px;max-height:80vh}.modal label[data-v-ab9e9504]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#64748b}.modal input[data-v-ab9e9504]{border:1px solid #d0dbe8;border-radius:8px;padding:8px 10px}.actions[data-v-ab9e9504]{display:flex;justify-content:flex-end;gap:8px}.member-list[data-v-ab9e9504]{max-height:360px;overflow:auto;display:flex;flex-direction:column;gap:6px}.m-item[data-v-ab9e9504]{flex-direction:row!important;align-items:center;gap:8px!important;color:#334155!important}.page[data-v-c494f45f]{background:#fff;border-radius:12px;padding:16px;border:1px solid #e4ebf2}.toolbar[data-v-c494f45f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}h2[data-v-c494f45f]{margin:0;font-size:18px}.actions[data-v-c494f45f]{display:flex;gap:8px}button[data-v-c494f45f]{border:1px solid #d0dbe8;background:#fff;color:#334155;border-radius:8px;padding:7px 12px;cursor:pointer}.ghost[data-v-c494f45f]{background:#f0f7ff!important;border-color:#bcd8ff;color:#1677ff!important}table[data-v-c494f45f]{width:100%;border-collapse:collapse;font-size:12px}th[data-v-c494f45f],td[data-v-c494f45f]{text-align:left;padding:9px 6px;border-bottom:1px solid #eef2f6;white-space:nowrap}.empty[data-v-c494f45f]{text-align:center;color:#94a3b8;padding:28px}.nurse-login-container[data-v-44ab5777]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1890ff,#40a9ff);padding:20px}.login-card[data-v-44ab5777]{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;padding:30px;width:100%;max-width:400px}.login-header[data-v-44ab5777]{text-align:center;margin-bottom:30px}.login-header h2[data-v-44ab5777]{color:#333;margin-bottom:8px;font-size:24px}.login-header p[data-v-44ab5777]{color:#666;font-size:14px}.login-form[data-v-44ab5777],.form-group[data-v-44ab5777]{margin-bottom:20px}.form-group label[data-v-44ab5777]{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-group input[data-v-44ab5777]{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;transition:border-color .3s}.form-group input[data-v-44ab5777]:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 2px #667eea33}.password-input[data-v-44ab5777]{position:relative}.password-toggle[data-v-44ab5777]{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:18px}.remember-group[data-v-44ab5777]{display:flex;align-items:center;gap:8px}.remember-group input[type=checkbox][data-v-44ab5777]{width:auto}.error-message[data-v-44ab5777]{color:#ff4d4f;font-size:12px;margin-top:4px}.login-button[data-v-44ab5777]{width:100%;padding:14px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:opacity .3s}.login-button[data-v-44ab5777]:hover:not(:disabled){opacity:.9}.login-button[data-v-44ab5777]:disabled{background:#ccc;cursor:not-allowed}.login-footer[data-v-44ab5777]{text-align:center;margin-top:20px;font-size:12px;color:#999}.login-footer p[data-v-44ab5777]{margin:4px 0}@media (max-width: 480px){.login-card[data-v-44ab5777]{padding:20px}.login-header h2[data-v-44ab5777]{font-size:20px}.form-group input[data-v-44ab5777]{padding:10px}.login-button[data-v-44ab5777]{padding:12px}}.nurse-home[data-v-eb1f5ddf]{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.nurse-header[data-v-eb1f5ddf]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.header-left h1[data-v-eb1f5ddf]{font-size:20px;font-weight:600;margin:0}.header-right[data-v-eb1f5ddf]{display:flex;gap:16px}.notification-btn[data-v-eb1f5ddf],.user-btn[data-v-eb1f5ddf]{background:#fff3;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:background .3s}.notification-btn[data-v-eb1f5ddf]:hover,.user-btn[data-v-eb1f5ddf]:hover{background:#ffffff4d}.unread-badge[data-v-eb1f5ddf]{position:absolute;top:-4px;right:-4px;background:#ff4d4f;color:#fff;border-radius:50%;width:18px;height:18px;font-size:12px;display:flex;align-items:center;justify-content:center}.nurse-content[data-v-eb1f5ddf]{flex:1;padding:20px;overflow-y:auto}.feature-cards[data-v-eb1f5ddf]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.feature-card[data-v-eb1f5ddf]{background:#fff;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:transform .3s,box-shadow .3s}.feature-card[data-v-eb1f5ddf]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.card-icon[data-v-eb1f5ddf]{font-size:32px;margin-bottom:12px;padding:12px;border-radius:50%;display:inline-block}.card-icon.emergency[data-v-eb1f5ddf]{background:#fff1f0;color:#ff4d4f}.card-icon.care[data-v-eb1f5ddf]{background:#f0f5ff;color:#1890ff}.card-icon.shift[data-v-eb1f5ddf]{background:#f6ffed;color:#52c41a}.card-icon.elderly[data-v-eb1f5ddf]{background:#fffbe6;color:#faad14}.feature-card h3[data-v-eb1f5ddf]{margin:0 0 8px;font-size:16px;font-weight:600;color:#333}.feature-card p[data-v-eb1f5ddf]{margin:0;font-size:14px;color:#666}.realtime-info[data-v-eb1f5ddf]{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.realtime-info h2[data-v-eb1f5ddf]{margin:0 0 20px;font-size:18px;font-weight:600;color:#333}.info-section[data-v-eb1f5ddf]{margin-bottom:20px}.info-section[data-v-eb1f5ddf]:last-child{margin-bottom:0}.info-section h3[data-v-eb1f5ddf]{margin:0 0 12px;font-size:14px;font-weight:500;color:#666}.on-duty[data-v-eb1f5ddf]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f5f5f5;border-radius:8px}.staff-info[data-v-eb1f5ddf]{flex:1}.staff-name[data-v-eb1f5ddf]{display:block;font-weight:600;color:#333;margin-bottom:4px}.staff-department[data-v-eb1f5ddf]{font-size:12px;color:#666}.status-btn[data-v-eb1f5ddf]{padding:6px 16px;border:1px solid #1890ff;border-radius:16px;background:#fff;color:#1890ff;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s}.status-btn.active[data-v-eb1f5ddf]{background:#1890ff;color:#fff}.stats-grid[data-v-eb1f5ddf]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-item[data-v-eb1f5ddf]{background:#f5f5f5;border-radius:8px;padding:16px;text-align:center}.stat-value[data-v-eb1f5ddf]{font-size:24px;font-weight:700;color:#1890ff;margin-bottom:4px}.stat-label[data-v-eb1f5ddf]{font-size:12px;color:#666}.quick-actions[data-v-eb1f5ddf]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.quick-actions h2[data-v-eb1f5ddf]{margin:0 0 20px;font-size:18px;font-weight:600;color:#333}.action-buttons[data-v-eb1f5ddf]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.action-btn[data-v-eb1f5ddf]{display:flex;align-items:center;gap:12px;padding:16px;background:#f5f5f5;border:none;border-radius:8px;cursor:pointer;transition:all .3s;text-align:left}.action-btn[data-v-eb1f5ddf]:hover{background:#e8e8e8;transform:translateY(-1px)}.btn-icon[data-v-eb1f5ddf]{font-size:20px;width:28px;text-align:center}.btn-text[data-v-eb1f5ddf]{flex:1;font-size:14px;font-weight:500;color:#333}.nurse-nav[data-v-eb1f5ddf]{background:#fff;border-top:1px solid #e8e8e8;display:flex;justify-content:space-around;padding:12px 0;box-shadow:0 -2px 10px #0000000d}.nav-item[data-v-eb1f5ddf]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;cursor:pointer;color:#999;transition:color .3s}.nav-item.active[data-v-eb1f5ddf]{color:#1890ff;font-weight:500}.nav-icon[data-v-eb1f5ddf]{font-size:20px}.nav-text[data-v-eb1f5ddf]{font-size:12px}@media (max-width: 480px){.nurse-content[data-v-eb1f5ddf]{padding:16px}.feature-cards[data-v-eb1f5ddf]{gap:12px}.feature-card[data-v-eb1f5ddf],.realtime-info[data-v-eb1f5ddf],.quick-actions[data-v-eb1f5ddf]{padding:16px}.action-btn[data-v-eb1f5ddf]{padding:12px}}.nurse-nav-bar[data-v-a2e76aaf]{position:fixed;bottom:0;left:0;right:0;background:#fff;display:flex;justify-content:space-around;padding:8px 0;box-shadow:0 -2px 10px #0000000d;z-index:100}.nav-item[data-v-a2e76aaf]{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;padding:5px 15px;transition:all .3s}.nav-icon[data-v-a2e76aaf]{font-size:22px;position:relative}.badge[data-v-a2e76aaf]{position:absolute;top:-5px;right:-8px;background:#ff4d4f;color:#fff;font-size:10px;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center}.nav-text[data-v-a2e76aaf]{font-size:11px;color:#999;transition:all .3s}.nav-item.active .nav-text[data-v-a2e76aaf]{color:#1890ff;font-weight:500}.nav-item.active .nav-icon[data-v-a2e76aaf]{transform:scale(1.1)}.nurse-alarms[data-v-19d4f64f]{min-height:100vh;background:#f5f5f5;padding-bottom:80px}.header[data-v-19d4f64f]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;padding:20px;text-align:center}.header h2[data-v-19d4f64f]{margin:0;font-size:20px}.alarm-stats[data-v-19d4f64f]{display:flex;gap:15px;padding:15px;margin-top:-30px}.stat-card[data-v-19d4f64f]{flex:1;background:#fff;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #0000001a}.stat-card.pending[data-v-19d4f64f]{border-left:4px solid #ff4d4f}.stat-card.today[data-v-19d4f64f]{border-left:4px solid #1890ff}.stat-number[data-v-19d4f64f]{font-size:28px;font-weight:700;color:#333}.stat-label[data-v-19d4f64f]{font-size:14px;color:#666;margin-top:5px}.filter-tabs[data-v-19d4f64f]{display:flex;gap:10px;padding:0 15px;margin-bottom:15px}.tab[data-v-19d4f64f]{flex:1;text-align:center;padding:10px;background:#fff;border-radius:20px;font-size:14px;color:#666;cursor:pointer;transition:all .3s}.tab.active[data-v-19d4f64f]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.alarm-list[data-v-19d4f64f]{padding:0 15px}.alarm-card[data-v-19d4f64f]{background:#fff;border-radius:12px;padding:15px;margin-bottom:10px;box-shadow:0 2px 8px #0000000d;cursor:pointer;transition:all .3s}.alarm-card.urgent[data-v-19d4f64f]{border-left:4px solid #ff4d4f}.alarm-header[data-v-19d4f64f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.alarm-type[data-v-19d4f64f]{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.type-sos[data-v-19d4f64f]{background:#fff1f0;color:#ff4d4f}.type-fence[data-v-19d4f64f]{background:#e6f7ff;color:#1890ff}.type-fall[data-v-19d4f64f]{background:#fff7e6;color:#fa8c16}.alarm-time[data-v-19d4f64f]{font-size:12px;color:#999}.alarm-content[data-v-19d4f64f]{margin-bottom:10px}.elderly-info[data-v-19d4f64f]{display:flex;gap:10px;margin-bottom:5px}.elderly-name[data-v-19d4f64f]{font-weight:500;color:#333}.elderly-location[data-v-19d4f64f]{font-size:12px;color:#666;background:#f0f0f0;padding:2px 8px;border-radius:10px}.alarm-desc[data-v-19d4f64f]{font-size:14px;color:#666}.alarm-footer[data-v-19d4f64f]{display:flex;justify-content:space-between;align-items:center}.alarm-status[data-v-19d4f64f]{font-size:12px;color:#52c41a}.alarm-status.pending[data-v-19d4f64f]{color:#ff4d4f;font-weight:500}.handle-btn[data-v-19d4f64f]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;border:none;padding:6px 15px;border-radius:15px;font-size:12px;cursor:pointer}.modal-overlay[data-v-19d4f64f]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-19d4f64f]{background:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden}.modal-content h3[data-v-19d4f64f]{margin:0;padding:20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;font-size:18px}.modal-body[data-v-19d4f64f]{padding:20px}.alarm-detail[data-v-19d4f64f]{background:#f5f5f5;padding:15px;border-radius:8px;margin-bottom:15px}.alarm-detail p[data-v-19d4f64f]{margin:8px 0;font-size:14px}.form-group label[data-v-19d4f64f]{display:block;margin-bottom:8px;font-size:14px;color:#333}.form-group textarea[data-v-19d4f64f]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;resize:none}.modal-footer[data-v-19d4f64f]{display:flex;gap:10px;padding:0 20px 20px}.modal-footer button[data-v-19d4f64f]{flex:1;padding:12px;border-radius:8px;font-size:14px;cursor:pointer;border:none}.btn-cancel[data-v-19d4f64f]{background:#f0f0f0;color:#666}.btn-confirm[data-v-19d4f64f]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.nurse-records[data-v-81c3cdbf]{min-height:100vh;background:#f5f5f5;padding-bottom:80px}.header[data-v-81c3cdbf]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center}.header h2[data-v-81c3cdbf]{margin:0;font-size:20px}.add-btn[data-v-81c3cdbf]{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 15px;border-radius:20px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:5px}.add-btn span[data-v-81c3cdbf]{font-size:18px}.stats-cards[data-v-81c3cdbf]{display:flex;gap:15px;padding:15px;margin-top:-20px}.stat-card[data-v-81c3cdbf]{flex:1;background:#fff;border-radius:12px;padding:15px;display:flex;align-items:center;gap:10px;box-shadow:0 2px 8px #0000001a}.stat-icon[data-v-81c3cdbf]{font-size:30px}.stat-number[data-v-81c3cdbf]{font-size:24px;font-weight:700;color:#333}.stat-label[data-v-81c3cdbf]{font-size:12px;color:#666}.filter-section[data-v-81c3cdbf]{padding:0 15px;margin-bottom:15px}.filter-tabs[data-v-81c3cdbf]{display:flex;gap:8px;overflow-x:auto;padding-bottom:5px}.filter-tab[data-v-81c3cdbf]{flex-shrink:0;padding:8px 16px;background:#fff;border-radius:16px;font-size:13px;color:#666;cursor:pointer;white-space:nowrap;transition:all .3s}.filter-tab.active[data-v-81c3cdbf]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.records-list[data-v-81c3cdbf]{padding:0 15px}.record-card[data-v-81c3cdbf]{background:#fff;border-radius:12px;padding:15px;margin-bottom:10px;box-shadow:0 2px 8px #0000000d}.record-header[data-v-81c3cdbf]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.record-type[data-v-81c3cdbf]{padding:4px 12px;border-radius:12px;font-size:12px;color:#fff}.record-time[data-v-81c3cdbf]{font-size:12px;color:#999}.record-body[data-v-81c3cdbf]{margin-bottom:10px}.elderly-name[data-v-81c3cdbf]{font-weight:500;color:#333;font-size:15px}.record-content[data-v-81c3cdbf]{font-size:14px;color:#666;margin-top:8px;line-height:1.5}.record-remark[data-v-81c3cdbf]{font-size:12px;color:#999;margin-top:8px;padding-top:8px;border-top:1px dashed #eee}.record-footer[data-v-81c3cdbf]{font-size:12px;color:#999}.modal-overlay[data-v-81c3cdbf]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-81c3cdbf]{background:#fff;border-radius:16px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto}.modal-content h3[data-v-81c3cdbf]{margin:0;padding:20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;font-size:18px}.modal-body[data-v-81c3cdbf]{padding:20px}.form-group[data-v-81c3cdbf]{margin-bottom:15px}.form-group label[data-v-81c3cdbf]{display:block;margin-bottom:8px;font-size:14px;color:#333}.required[data-v-81c3cdbf]{color:#ff4d4f}.form-select[data-v-81c3cdbf],.form-input[data-v-81c3cdbf],.form-group textarea[data-v-81c3cdbf]{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;background:#fff}.form-group textarea[data-v-81c3cdbf]{resize:none}.type-options[data-v-81c3cdbf]{display:flex;flex-wrap:wrap;gap:8px}.type-option[data-v-81c3cdbf]{padding:8px 16px;border-radius:16px;font-size:13px;cursor:pointer;border:1px solid;transition:all .3s}.modal-footer[data-v-81c3cdbf]{display:flex;gap:10px;padding:0 20px 20px}.modal-footer button[data-v-81c3cdbf]{flex:1;padding:12px;border-radius:8px;font-size:14px;cursor:pointer;border:none}.btn-cancel[data-v-81c3cdbf]{background:#f0f0f0;color:#666}.btn-confirm[data-v-81c3cdbf]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.btn-confirm[data-v-81c3cdbf]:disabled{background:#ccc;cursor:not-allowed}.nurse-handover[data-v-8fc2bf99]{min-height:100vh;background:#f5f5f5;padding-bottom:80px}.header[data-v-8fc2bf99]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;padding:20px;text-align:center}.header h2[data-v-8fc2bf99]{margin:0;font-size:20px}.status-cards[data-v-8fc2bf99]{padding:15px;margin-top:-30px}.status-card[data-v-8fc2bf99]{background:#fff;border-radius:16px;padding:30px;text-align:center;box-shadow:0 4px 12px #0000001a;border:2px solid transparent;transition:all .3s}.status-card.active[data-v-8fc2bf99]{border-color:#52c41a;background:linear-gradient(135deg,#f6ffed,#fff)}.status-icon[data-v-8fc2bf99]{font-size:48px;margin-bottom:10px}.status-text[data-v-8fc2bf99]{font-size:18px;font-weight:500;color:#333;margin-bottom:15px}.duty-btn[data-v-8fc2bf99]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;border:none;padding:12px 40px;border-radius:25px;font-size:16px;cursor:pointer}.shift-info[data-v-8fc2bf99]{background:#fff;margin:0 15px 15px;padding:15px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.shift-info h3[data-v-8fc2bf99]{margin:0 0 15px;font-size:16px;color:#333}.info-item[data-v-8fc2bf99]{display:flex;justify-content:space-between;margin-bottom:10px;font-size:14px}.info-item .label[data-v-8fc2bf99]{color:#666}.info-item .value[data-v-8fc2bf99]{color:#333;font-weight:500}.pending-section[data-v-8fc2bf99]{background:#fff;margin:0 15px 15px;padding:15px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.section-header[data-v-8fc2bf99]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header h3[data-v-8fc2bf99]{margin:0;font-size:16px;color:#333}.add-btn[data-v-8fc2bf99]{background:#f0f0f0;border:none;padding:6px 15px;border-radius:15px;font-size:13px;color:#1890ff;cursor:pointer}.pending-list[data-v-8fc2bf99]{max-height:200px;overflow-y:auto}.pending-item[data-v-8fc2bf99]{display:flex;align-items:center;padding:12px;background:#f8f9fa;border-radius:8px;margin-bottom:8px;font-size:14px}.item-number[data-v-8fc2bf99]{color:#1890ff;font-weight:500;margin-right:8px}.item-content[data-v-8fc2bf99]{flex:1;color:#333}.item-delete[data-v-8fc2bf99]{color:#ff4d4f;font-size:20px;cursor:pointer;padding:0 5px}.empty-tip[data-v-8fc2bf99]{text-align:center;color:#999;padding:30px;font-size:14px}.handover-history[data-v-8fc2bf99]{background:#fff;margin:0 15px;padding:15px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.handover-history h3[data-v-8fc2bf99]{margin:0 0 15px;font-size:16px;color:#333}.history-card[data-v-8fc2bf99]{padding:15px;background:#f8f9fa;border-radius:8px;margin-bottom:10px}.history-header[data-v-8fc2bf99]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.handover-type[data-v-8fc2bf99]{padding:4px 12px;border-radius:12px;font-size:12px}.handover-type.in[data-v-8fc2bf99]{background:#e6f7ff;color:#1890ff}.handover-type.out[data-v-8fc2bf99]{background:#fff7e6;color:#fa8c16}.handover-time[data-v-8fc2bf99]{font-size:12px;color:#999}.staff-info[data-v-8fc2bf99]{font-size:14px;color:#666;margin-bottom:5px}.handover-content[data-v-8fc2bf99]{font-size:13px;color:#999}.modal-overlay[data-v-8fc2bf99]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-8fc2bf99]{background:#fff;border-radius:16px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto}.modal-content.small[data-v-8fc2bf99]{max-width:350px}.modal-content h3[data-v-8fc2bf99]{margin:0;padding:20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;font-size:18px}.modal-body[data-v-8fc2bf99]{padding:20px}.form-group[data-v-8fc2bf99]{margin-bottom:15px}.form-group label[data-v-8fc2bf99]{display:block;margin-bottom:8px;font-size:14px;color:#333}.required[data-v-8fc2bf99]{color:#ff4d4f}.form-select[data-v-8fc2bf99],.form-group textarea[data-v-8fc2bf99]{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px}.form-group textarea[data-v-8fc2bf99]{resize:none}.pending-summary[data-v-8fc2bf99]{background:#f8f9fa;padding:12px;border-radius:8px;max-height:100px;overflow-y:auto}.summary-item[data-v-8fc2bf99]{font-size:13px;color:#666;margin-bottom:5px}.no-pending[data-v-8fc2bf99]{font-size:13px;color:#999;text-align:center}.signature-pad[data-v-8fc2bf99]{position:relative;border:2px dashed #ddd;border-radius:8px;height:150px;background:#fafafa}.signature-pad canvas[data-v-8fc2bf99]{width:100%;height:100%;cursor:crosshair}.signature-tip[data-v-8fc2bf99]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#999;font-size:14px;pointer-events:none}.clear-btn[data-v-8fc2bf99]{margin-top:8px;background:#f0f0f0;border:none;padding:8px 20px;border-radius:15px;font-size:13px;color:#666;cursor:pointer}.start-duty-info[data-v-8fc2bf99]{text-align:center;padding:30px}.info-icon[data-v-8fc2bf99]{font-size:48px;color:#52c41a;margin-bottom:15px}.start-duty-info p[data-v-8fc2bf99]{font-size:16px;color:#333;margin:0}.sub-text[data-v-8fc2bf99]{font-size:14px;color:#999;margin-top:10px}.modal-footer[data-v-8fc2bf99]{display:flex;gap:10px;padding:0 20px 20px}.modal-footer button[data-v-8fc2bf99]{flex:1;padding:12px;border-radius:8px;font-size:14px;cursor:pointer;border:none}.btn-cancel[data-v-8fc2bf99]{background:#f0f0f0;color:#666}.btn-confirm[data-v-8fc2bf99]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.btn-confirm[data-v-8fc2bf99]:disabled{background:#ccc;cursor:not-allowed}.nurse-profile[data-v-75b2d12b]{min-height:100vh;background:#f5f5f5;padding-bottom:80px}.header-bg[data-v-75b2d12b]{background:linear-gradient(135deg,#1890ff,#40a9ff);padding:40px 20px 60px;color:#fff}.user-info[data-v-75b2d12b]{display:flex;align-items:center;gap:15px}.avatar[data-v-75b2d12b]{width:70px;height:70px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;border:3px solid rgba(255,255,255,.3)}.user-detail h3[data-v-75b2d12b]{margin:0 0 5px;font-size:20px}.user-detail p[data-v-75b2d12b]{margin:0;font-size:14px;opacity:.9}.status-card[data-v-75b2d12b]{background:#fff;margin:-30px 15px 15px;padding:20px;border-radius:12px;display:flex;box-shadow:0 4px 12px #0000001a}.status-item[data-v-75b2d12b]{flex:1;text-align:center}.status-divider[data-v-75b2d12b]{width:1px;background:#eee}.status-label[data-v-75b2d12b]{font-size:13px;color:#999;margin-bottom:8px}.status-value[data-v-75b2d12b]{font-size:18px;font-weight:500;color:#666}.status-value.on[data-v-75b2d12b]{color:#52c41a}.menu-section[data-v-75b2d12b]{padding:0 15px}.menu-group[data-v-75b2d12b]{background:#fff;border-radius:12px;margin-bottom:15px;overflow:hidden}.menu-title[data-v-75b2d12b]{padding:15px;font-size:14px;color:#999;background:#fafafa}.menu-list[data-v-75b2d12b]{padding:0 15px}.menu-item[data-v-75b2d12b]{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid #f0f0f0;cursor:pointer}.menu-item[data-v-75b2d12b]:last-child{border-bottom:none}.menu-icon[data-v-75b2d12b]{font-size:20px;margin-right:12px}.menu-text[data-v-75b2d12b]{flex:1;font-size:15px;color:#333}.menu-arrow[data-v-75b2d12b]{font-size:20px;color:#ccc}.menu-toggle input[type=checkbox][data-v-75b2d12b]{width:44px;height:24px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ccc;border-radius:12px;position:relative;cursor:pointer;transition:all .3s}.menu-toggle input[type=checkbox][data-v-75b2d12b]:checked{background:#1890ff}.menu-toggle input[type=checkbox][data-v-75b2d12b]:after{content:"";position:absolute;width:20px;height:20px;background:#fff;border-radius:50%;top:2px;left:2px;transition:all .3s}.menu-toggle input[type=checkbox][data-v-75b2d12b]:checked:after{left:22px}.logout-section[data-v-75b2d12b]{padding:20px 15px}.logout-btn[data-v-75b2d12b]{width:100%;padding:15px;background:#fff;border:1px solid #ff4d4f;color:#ff4d4f;border-radius:8px;font-size:16px;cursor:pointer}.modal-overlay[data-v-75b2d12b]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-75b2d12b]{background:#fff;border-radius:16px;width:100%;max-width:400px}.modal-content h3[data-v-75b2d12b]{margin:0;padding:20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;font-size:18px}.modal-body[data-v-75b2d12b]{padding:20px}.form-group[data-v-75b2d12b]{margin-bottom:15px}.form-group label[data-v-75b2d12b]{display:block;margin-bottom:8px;font-size:14px;color:#333}.form-input[data-v-75b2d12b]{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px}.form-input[data-v-75b2d12b]:disabled{background:#f5f5f5;color:#999}.modal-footer[data-v-75b2d12b]{display:flex;gap:10px;padding:0 20px 20px}.modal-footer button[data-v-75b2d12b]{flex:1;padding:12px;border-radius:8px;font-size:14px;cursor:pointer;border:none}.btn-cancel[data-v-75b2d12b]{background:#f0f0f0;color:#666}.btn-confirm[data-v-75b2d12b]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.btn-danger[data-v-75b2d12b]{background:linear-gradient(135deg,#ff4d4f,#ff7875)!important}.modal-content.small[data-v-75b2d12b]{max-width:320px;text-align:center}.modal-icon[data-v-75b2d12b]{font-size:48px;margin:20px 0 10px}.modal-message[data-v-75b2d12b]{color:#666;font-size:14px;margin:0 0 20px;padding:0 20px}.modal-content.small h3[data-v-75b2d12b]{background:none;color:#333;padding:0 20px 10px}.nurse-elderly[data-v-f477e447]{min-height:100vh;background:#f5f5f5;padding-bottom:80px}.header[data-v-f477e447]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff;padding:20px;text-align:center}.header h2[data-v-f477e447]{margin:0;font-size:20px}.search-bar[data-v-f477e447]{position:relative;padding:15px;margin-top:-10px}.search-bar input[data-v-f477e447]{width:100%;padding:12px 40px 12px 15px;border:none;border-radius:25px;font-size:14px;background:#fff;box-shadow:0 2px 8px #0000001a}.search-icon[data-v-f477e447]{position:absolute;right:25px;top:50%;transform:translateY(-50%);font-size:18px}.elderly-list[data-v-f477e447]{padding:0 15px}.elderly-card[data-v-f477e447]{display:flex;align-items:center;background:#fff;border-radius:12px;padding:15px;margin-bottom:10px;box-shadow:0 2px 8px #0000000d;cursor:pointer;transition:all .3s}.elderly-card[data-v-f477e447]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.elderly-avatar[data-v-f477e447]{width:50px;height:50px;background:linear-gradient(135deg,#1890ff,#40a9ff);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:500;margin-right:15px}.elderly-info[data-v-f477e447]{flex:1}.info-header[data-v-f477e447]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.elderly-name[data-v-f477e447]{font-size:16px;font-weight:500;color:#333}.elderly-room[data-v-f477e447]{font-size:12px;color:#1890ff;background:#f0f5ff;padding:2px 8px;border-radius:10px}.info-tags[data-v-f477e447]{display:flex;gap:8px;margin-bottom:8px}.tag[data-v-f477e447]{font-size:12px;padding:2px 8px;border-radius:10px}.tag.age[data-v-f477e447]{background:#f0f0f0;color:#666}.tag.gender[data-v-f477e447]{background:#e6f7ff;color:#1890ff}.tag.status[data-v-f477e447]{color:#fff}.tag.status.normal[data-v-f477e447]{background:#52c41a}.tag.status.warning[data-v-f477e447]{background:#faad14}.tag.status.alert[data-v-f477e447]{background:#ff4d4f}.info-location[data-v-f477e447]{font-size:12px;color:#999}.elderly-actions[data-v-f477e447]{display:flex;gap:8px}.action-btn[data-v-f477e447]{width:36px;height:36px;border:none;border-radius:50%;font-size:16px;cursor:pointer;transition:all .3s}.action-btn.call[data-v-f477e447]{background:#f6ffed}.action-btn.locate[data-v-f477e447]{background:#e6f7ff}.modal-overlay[data-v-f477e447]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-f477e447]{background:#fff;border-radius:16px;width:100%;max-width:400px;max-height:80vh;overflow-y:auto}.modal-header[data-v-f477e447]{display:flex;justify-content:space-between;align-items:center;padding:20px;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.modal-header h3[data-v-f477e447]{margin:0;font-size:18px}.close-btn[data-v-f477e447]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer}.modal-body[data-v-f477e447]{padding:20px}.detail-section[data-v-f477e447]{margin-bottom:20px}.detail-section h4[data-v-f477e447]{margin:0 0 12px;font-size:16px;color:#333;border-left:3px solid #1890ff;padding-left:10px}.detail-item[data-v-f477e447]{display:flex;margin-bottom:10px;font-size:14px}.detail-item .label[data-v-f477e447]{color:#666;width:100px}.detail-item .value[data-v-f477e447]{color:#333;flex:1}.modal-footer[data-v-f477e447]{display:flex;gap:10px;padding:0 20px 20px}.modal-footer button[data-v-f477e447]{flex:1;padding:12px;border-radius:8px;font-size:14px;cursor:pointer;border:none}.btn-primary[data-v-f477e447]{background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.btn-secondary[data-v-f477e447]{background:#f0f0f0;color:#666}
