.m-tabbar[data-v-5489017a]{background:#fff;border-top:1px solid var(--border-color,#e4e7ed);bottom:0;box-shadow:0 -2px 10px #0000000f;display:none;left:0;position:fixed;right:0;z-index:130}@media (max-width:768px){.m-tabbar[data-v-5489017a]{display:flex;padding-bottom:var(--safe-bottom)}}.m-tab[data-v-5489017a]{align-items:center;background:none;border:none;color:var(--text-secondary,#606266);cursor:pointer;display:flex;flex:1;flex-direction:column;font-family:inherit;gap:2px;justify-content:center;min-height:56px;padding:6px 0 4px;position:relative;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:color .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.m-tab--active[data-v-5489017a],.m-tab[data-v-5489017a]:hover{color:var(--color-green,#2d7d46)}.m-tab--active .m-tab-text[data-v-5489017a]{font-weight:600}.m-tab-text[data-v-5489017a]{font-size:11px;line-height:1}.m-tab-icon[data-v-5489017a]{display:inline-flex;position:relative}.m-badge[data-v-5489017a]{background:var(--color-danger,#f56c6c);border-radius:9px;box-sizing:border-box;color:#fff;font-size:11px;font-weight:600;height:18px;line-height:18px;min-width:18px;padding:0 5px;position:absolute;right:-14px;text-align:center;top:-6px}.m-more-drawer[data-v-66e1a389]{top:0;right:0;bottom:0;left:0;position:fixed;z-index:140}.m-more-mask[data-v-66e1a389]{animation:m-mask-in-66e1a389 .2s ease-out;background:#00000073;top:0;right:0;bottom:0;left:0;position:absolute}.m-more-panel[data-v-66e1a389]{bottom:0;left:0;max-height:86vh;overflow-y:auto;position:absolute;right:0;-webkit-overflow-scrolling:touch;animation:m-sheet-in-66e1a389 .26s ease-out;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -6px 24px #0000001f;padding:18px 16px calc(18px + var(--safe-bottom))}.m-more-close[data-v-66e1a389]{background:var(--bg-page,#f5f7fa);border:none;border-radius:50%;color:var(--text-secondary,#606266);cursor:pointer;height:44px;justify-content:center;position:absolute;right:8px;top:8px;width:44px}.m-more-close[data-v-66e1a389],.m-person[data-v-66e1a389]{align-items:center;display:flex}.m-person[data-v-66e1a389]{border-bottom:1px solid #f0f2f4;gap:12px;margin-bottom:14px;padding:10px 4px 16px}.m-avatar[data-v-66e1a389]{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.m-person-info[data-v-66e1a389]{flex:1;min-width:0}.m-person-name[data-v-66e1a389]{color:var(--text-primary,#303133);font-size:16px;font-weight:600;margin-bottom:4px}.m-person-meta[data-v-66e1a389]{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.m-person-tenant[data-v-66e1a389]{color:var(--text-muted,#909399);font-size:12px}.m-person-logout[data-v-66e1a389]{flex-shrink:0;min-height:44px}.m-more-title[data-v-66e1a389]{color:var(--text-muted,#909399);font-size:13px;margin-bottom:10px}.m-more-grid[data-v-66e1a389]{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.m-more-item[data-v-66e1a389]{align-items:center;background:var(--bg-page,#f5f7fa);border-radius:12px;color:var(--text-secondary,#606266);display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:72px;text-decoration:none;transition:all .15s;-webkit-tap-highlight-color:transparent}.m-more-item[data-v-66e1a389]:active{background:#2d7d461f}.m-more-item--active[data-v-66e1a389]{background:#2d7d461a;color:var(--color-green,#2d7d46)}.m-more-label[data-v-66e1a389]{font-size:12px;line-height:1}.m-more-empty[data-v-66e1a389]{color:var(--text-muted,#909399);font-size:13px;padding:24px 0;text-align:center}@keyframes m-mask-in-66e1a389{0%{opacity:0}to{opacity:1}}@keyframes m-sheet-in-66e1a389{0%{opacity:.5;transform:translateY(60px)}to{opacity:1;transform:none}}.iot-layout[data-v-6da82e93]{background:var(--bg-page);display:flex;flex-direction:column;min-height:100vh}.iot-header[data-v-6da82e93]{background:var(--color-deep-teal);box-shadow:0 2px 8px #00000026;color:#fff;padding:0 24px;position:sticky;top:0;z-index:100}.header-content[data-v-6da82e93]{gap:32px;height:60px;margin:0 auto;max-width:1400px;width:100%}.header-brand[data-v-6da82e93],.header-content[data-v-6da82e93]{align-items:center;display:flex}.header-brand[data-v-6da82e93]{flex-shrink:0;gap:10px}.header-brand h1[data-v-6da82e93]{font-size:18px;font-weight:600;margin:0;white-space:nowrap}.header-nav[data-v-6da82e93]{display:flex;flex:1;gap:4px}.nav-link[data-v-6da82e93]{align-items:center;border-radius:6px;color:#ffffffbf;display:flex;font-size:14px;gap:6px;padding:8px 16px;text-decoration:none;transition:all .2s}.nav-link[data-v-6da82e93]:hover{background:#ffffff1a;color:#fff}.nav-link--active[data-v-6da82e93]{background:#ffffff2e;color:#fff}.header-status[data-v-6da82e93]{align-items:center;display:flex;flex-shrink:0;gap:10px}.tenant-tag[data-v-6da82e93]{align-items:center;background:#ffffff1f;border-color:transparent;color:#fff;display:inline-flex;gap:4px}.role-tag[data-v-6da82e93]{border:none}.logout-btn[data-v-6da82e93]{color:#fffc!important;margin-left:4px}.logout-btn[data-v-6da82e93]:hover{color:#fff!important}.iot-main[data-v-6da82e93]{flex:1;margin:0 auto;max-width:1400px;padding:24px;width:100%}.iot-footer[data-v-6da82e93]{background:#1b4d3e;color:#ffffffb3;margin-top:auto}.footer-inner[data-v-6da82e93]{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:32px 24px}.footer-brand h3[data-v-6da82e93]{color:#fff;font-size:16px;font-weight:700;margin:0 0 4px}.footer-brand p[data-v-6da82e93]{color:#ffffff73;font-size:12px;margin:0}.footer-links[data-v-6da82e93]{display:flex;gap:20px}.footer-links a[data-v-6da82e93]{color:#ffffff8c;font-size:13px;text-decoration:none;transition:color .2s}.footer-links a[data-v-6da82e93]:hover{color:#e8a838}.footer-copy[data-v-6da82e93]{color:#ffffff59;font-size:12px}.platform-mobile-actions[data-v-6da82e93]{align-items:center;display:none;flex-shrink:0;gap:10px;margin-left:auto}.platform-mobile-link[data-v-6da82e93]{align-items:center;background:#ffffff29;border-radius:20px;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;text-decoration:none;transition:background .2s}.platform-mobile-link[data-v-6da82e93]:hover{background:#ffffff42}.platform-mobile-logout[data-v-6da82e93]{color:#ffffffd9!important;font-size:13px}@media (max-width:768px){.iot-header[data-v-6da82e93]{padding:0 12px}.header-content[data-v-6da82e93]{gap:8px;height:52px}.header-brand[data-v-6da82e93]{gap:6px}.header-brand h1[data-v-6da82e93]{font-size:15px}.header-nav[data-v-6da82e93],.header-status[data-v-6da82e93]{display:none}.platform-mobile-actions[data-v-6da82e93]{display:flex}.iot-main[data-v-6da82e93]{padding:12px 12px calc(84px + var(--safe-bottom))}.iot-footer[data-v-6da82e93]{display:none}}@media (min-width:769px) and (max-width:1200px){.iot-header[data-v-6da82e93]{padding:0 16px}.header-content[data-v-6da82e93]{gap:16px}.header-nav[data-v-6da82e93]{overflow-x:auto;-webkit-overflow-scrolling:touch}.header-nav[data-v-6da82e93]::-webkit-scrollbar{display:none}.nav-link[data-v-6da82e93]{padding:8px 10px;white-space:nowrap}.tenant-tag[data-v-6da82e93] span{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
