:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}@media(prefers-color-scheme:dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;padding:12px;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media(hover:hover){a:hover{background-color:#00bd7e33}}@media(min-width:1024px){body{display:flex;place-items:center}}.login-form[data-v-89efc55d]{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:20px}.login-type-tabs[data-v-89efc55d]{display:flex;gap:0;margin-bottom:16px;border-radius:4px;overflow:hidden;border:1px solid #ddd}.tab-btn[data-v-89efc55d]{flex:1;padding:10px 16px;border:none;background:#fff;cursor:pointer;font-size:14px;color:#666;transition:all .2s}.tab-btn[data-v-89efc55d]:hover{background:#f0f0f0}.tab-btn.active[data-v-89efc55d]{background:#667eea;color:#fff}.form-group[data-v-89efc55d]{display:flex;gap:8px;align-items:center;margin-bottom:12px}.form-input[data-v-89efc55d]{flex:1;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-input[data-v-89efc55d]:disabled{background-color:#f9f9f9;cursor:not-allowed}.btn[data-v-89efc55d]{padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;white-space:nowrap}.btn[data-v-89efc55d]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-89efc55d]{background:#409eff;color:#fff}.btn-success[data-v-89efc55d]{background:#28a745;color:#fff}.btn-secondary[data-v-89efc55d]{background:#6c757d;color:#fff}.captcha-container[data-v-89efc55d]{display:flex;align-items:center}.captcha-img[data-v-89efc55d]{height:40px;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:opacity .2s}.captcha-img[data-v-89efc55d]:hover{opacity:.8}.contact-info[data-v-89efc55d]{text-align:center;margin-top:12px}.contact-link[data-v-89efc55d]{color:#007bff;cursor:pointer;font-size:14px}.contact-link[data-v-89efc55d]:hover{text-decoration:underline}.door-control[data-v-ceae6386]{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:20px}.control-actions[data-v-ceae6386]{display:flex;gap:8px;margin-bottom:12px;justify-content:space-between}.lock-list[data-v-ceae6386]{background:#fff;padding:16px;border-radius:4px}.lock-list h4[data-v-ceae6386]{margin-top:0;margin-bottom:12px;color:#333}.lock-item[data-v-ceae6386]{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #eee;margin-bottom:8px;border-radius:4px}.lock-info[data-v-ceae6386]{flex:1}.lock-info strong[data-v-ceae6386]{color:#333}.lock-info small[data-v-ceae6386]{color:#666;font-size:12px}.no-locks[data-v-ceae6386],.no-phone[data-v-ceae6386]{color:#666;text-align:center;padding:20px}.btn[data-v-ceae6386]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn[data-v-ceae6386]:disabled{opacity:.6;cursor:not-allowed}.btn-info[data-v-ceae6386]{background-color:#fff;color:#606266}.btn-warning[data-v-ceae6386]{background:#ffc107;color:#212529}.token-manager[data-v-726db348]{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:20px}.token-list[data-v-726db348]{display:flex;flex-direction:column;gap:8px}.token-item[data-v-726db348]{display:flex;justify-content:space-between;align-items:center;padding:8px;background:#fff;border-radius:4px;border:1px solid #eee}.token-info[data-v-726db348]{flex:1}.token-info strong[data-v-726db348]{color:#333}.token-info small[data-v-726db348]{color:#666;font-size:12px}.no-tokens[data-v-726db348]{color:#666;text-align:center;padding:20px}.btn[data-v-726db348]{padding:4px 8px;border:none;border-radius:4px;cursor:pointer;font-size:12px}.btn[data-v-726db348]:disabled{opacity:.6;cursor:not-allowed}.btn-danger[data-v-726db348]{background:#dc3545;color:#fff}.modal-overlay[data-v-726db348]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-726db348]{background:#fff;padding:20px;border-radius:8px;max-width:300px;text-align:center}.modal-content h4[data-v-726db348]{margin:0 0 10px;color:#333}.modal-content p[data-v-726db348]{margin:0 0 20px;color:#666}.modal-buttons[data-v-726db348]{display:flex;gap:10px;justify-content:center}.btn-secondary[data-v-726db348]{background:#6c757d;color:#fff}.modal-overlay[data-v-16db200a]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-16db200a]{background:#fff;padding:24px;border-radius:12px;width:90%;max-width:400px;position:relative;box-shadow:0 4px 12px #00000026;text-align:center}.close-btn[data-v-16db200a]{position:absolute;top:8px;right:8px;background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:4px 12px}.close-btn[data-v-16db200a]:hover{color:#666}.password-door[data-v-16db200a]{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:20px}.loading-device[data-v-16db200a]{color:#999;text-align:center;padding:20px}.device-select[data-v-16db200a]{margin-bottom:16px}.device-select .text-info[data-v-16db200a]{margin-top:4px;display:block;margin-bottom:8px;color:#999}.device-dropdown[data-v-16db200a]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff}.device-dropdown[data-v-16db200a]:focus{outline:none;border-color:#667eea}.action-buttons[data-v-16db200a]{margin-bottom:16px}.password-display[data-v-16db200a]{background:#fff;padding:20px;border-radius:8px;text-align:center}.password-box[data-v-16db200a]{margin-bottom:16px}.password-label[data-v-16db200a]{font-size:14px;color:#666;margin-bottom:12px}.password-value[data-v-16db200a]{display:flex;justify-content:center;gap:8px;margin-bottom:12px}.password-digit[data-v-16db200a]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:50px;font-size:24px;font-weight:700;color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215);border:2px solid #667eea;border-radius:8px}.password-expire[data-v-16db200a]{font-size:12px;color:#999}.copy-actions[data-v-16db200a]{display:flex;gap:8px;justify-content:center}.no-password[data-v-16db200a],.no-phone[data-v-16db200a]{color:#666;text-align:center;padding:20px}.btn[data-v-16db200a]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn[data-v-16db200a]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-16db200a]{background:#409eff;color:#fff}.btn-success[data-v-16db200a]{background:#28a745;color:#fff}.btn-info[data-v-16db200a]{background:#17a2b8;color:#fff}.log-viewer[data-v-64d01fb3]{background:#f5f5f5;padding:20px;border-radius:8px}.log-controls[data-v-64d01fb3]{margin-bottom:12px}.log-content[data-v-64d01fb3]{background:#111;color:#0f0;padding:12px;min-height:200px;white-space:pre-wrap;border-radius:4px;overflow:auto;max-height:400px;font-family:Courier New,monospace;font-size:12px;line-height:1.4}.btn[data-v-64d01fb3]{padding:4px 8px;border:none;border-radius:4px;cursor:pointer;font-size:12px}.btn-secondary[data-v-64d01fb3]{background:#6c757d;color:#fff}.operation-logs[data-v-e5be241f]{background:#fff;border-radius:8px;padding:20px;margin-top:20px;box-shadow:0 2px 8px #0000001a}.logs-header[data-v-e5be241f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.logs-header h3[data-v-e5be241f]{margin:0;color:#333;font-size:18px}.loading[data-v-e5be241f],.empty-state[data-v-e5be241f]{text-align:center;padding:40px;color:#999}.logs-list[data-v-e5be241f]{max-height:400px;overflow-y:auto}.log-item[data-v-e5be241f]{border:1px solid #eee;border-radius:6px;padding:15px;margin-bottom:10px;background:#f9f9f9}.log-header[data-v-e5be241f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.operation-type[data-v-e5be241f]{font-weight:700;color:#333;font-size:14px}.log-time[data-v-e5be241f]{color:#999;font-size:12px}.log-details[data-v-e5be241f]{font-size:13px;color:#666}.log-desc[data-v-e5be241f],.device-info[data-v-e5be241f],.log-result[data-v-e5be241f],.error-message[data-v-e5be241f],.ip-info[data-v-e5be241f]{margin:5px 0}.response-data[data-v-e5be241f]{margin:8px 0}.response-data details[data-v-e5be241f]{border:1px solid #ddd;border-radius:4px;background:#f5f5f5}.response-data summary[data-v-e5be241f]{padding:8px 12px;cursor:pointer;font-weight:500;color:#555;background:#eee;outline:none}.response-data summary[data-v-e5be241f]:hover{background:#e5e5e5}.response-data pre[data-v-e5be241f]{margin:0;padding:12px;background:#fafafa;border-top:1px solid #ddd;font-size:12px;line-height:1.4;color:#333;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.log-result.success[data-v-e5be241f]{color:#52c41a}.log-result.failed[data-v-e5be241f]{color:#ff4d4f}.error-message[data-v-e5be241f]{color:#ff4d4f;background:#fff1f0;padding:5px 8px;border-radius:4px;border-left:3px solid #ff4d4f}.load-more[data-v-e5be241f]{text-align:center;margin-top:20px}.btn[data-v-e5be241f]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s}.btn-primary[data-v-e5be241f]{background:#1890ff;color:#fff}.btn-primary[data-v-e5be241f]:hover:not(:disabled){background:#40a9ff}.btn-secondary[data-v-e5be241f]{background:#f0f0f0;color:#333}.btn-secondary[data-v-e5be241f]:hover:not(:disabled){background:#e0e0e0}.btn[data-v-e5be241f]:disabled{opacity:.6;cursor:not-allowed}.app[data-v-d1b4759e]{max-width:800px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#333;padding-bottom:40px}.app-header[data-v-d1b4759e]{text-align:center;margin:20px 0;padding:0 16px}.app-header h1[data-v-d1b4759e]{margin:0;color:#2c3e50;font-size:24px;font-weight:600}.header-content[data-v-d1b4759e]{display:flex;justify-content:space-between;align-items:center;max-width:800px;margin:0 auto}.refresh-btn[data-v-d1b4759e]{background-color:#fff;border:1px solid #dcdfe6;padding:6px 16px;border-radius:4px;font-size:14px;color:#606266;cursor:pointer;transition:all .2s;font-weight:500}.refresh-btn[data-v-d1b4759e]:hover{background:#e4e7ed;color:#409eff;border-color:#c6e2ff}.refresh-btn[data-v-d1b4759e]:active{background:#dcdfe6}.refresh-btn[data-v-d1b4759e]:disabled{opacity:.6;cursor:not-allowed}.app-main[data-v-d1b4759e]{display:flex;flex-direction:column;gap:16px;padding:0 16px}.section-container[data-v-d1b4759e]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;transition:all .3s ease;border:1px solid #f0f0f0}.section-container[data-v-d1b4759e]:hover{box-shadow:0 4px 12px #00000014}.section-header[data-v-d1b4759e]{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:#f8f9fa;border-bottom:1px solid #eee;-webkit-user-select:none;user-select:none}.section-header h3[data-v-d1b4759e]{margin:0;font-size:16px;font-weight:600;color:#2c3e50;display:flex;align-items:center;gap:8px}.toggle-icon[data-v-d1b4759e]{color:#999;font-size:12px;transition:transform .3s ease}.section-header[data-v-d1b4759e]:active{background:#f0f0f0}.v-enter-active[data-v-d1b4759e],.v-leave-active[data-v-d1b4759e]{transition:opacity .3s ease,max-height .3s ease;max-height:500px}.v-enter-from[data-v-d1b4759e],.v-leave-to[data-v-d1b4759e]{opacity:0;max-height:0}[data-v-d1b4759e] .login-form{margin-bottom:0!important;background:transparent!important;padding-top:16px!important;padding-bottom:16px!important;box-shadow:none!important}[data-v-d1b4759e] .login-form h3{display:none}
