.page[data-v-4ecfa398]{max-width:1280px;margin:0 auto;padding:12px 16px 20px;display:flex;flex-direction:column;gap:10px;min-height:100%}.title[data-v-4ecfa398]{font-size:16px;color:#ddd;font-weight:600}.title-row[data-v-4ecfa398]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.user-actions[data-v-4ecfa398]{display:flex;gap:8px;align-items:center}.user-badge[data-v-4ecfa398]{color:var(--text-dim);font-size:13px;display:flex;gap:6px;align-items:center}.role-tag[data-v-4ecfa398]{font-size:11px;padding:1px 6px;border-radius:8px;color:#fbbf24;background:#fbbf241f}.btn-sm[data-v-4ecfa398]{padding:4px 10px;font-size:12px}.modal-wide[data-v-4ecfa398]{width:720px;max-width:92vw}.user-create[data-v-4ecfa398]{display:flex;gap:8px;flex-wrap:wrap}.u-input[data-v-4ecfa398]{width:180px;padding:6px 8px}.u-select[data-v-4ecfa398]{width:110px}.user-table-wrap[data-v-4ecfa398]{max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:6px}.user-table[data-v-4ecfa398]{width:100%;border-collapse:collapse;font-size:13px}.user-table th[data-v-4ecfa398],.user-table td[data-v-4ecfa398]{padding:6px 8px;border-bottom:1px solid var(--border);text-align:center;white-space:nowrap}.user-table th[data-v-4ecfa398]{background:var(--panel-2);color:var(--text-dim);position:sticky;top:0}.user-table td.ops[data-v-4ecfa398]{display:flex;gap:8px;justify-content:center}.link-btn[data-v-4ecfa398]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;padding:2px 4px}.link-btn.danger[data-v-4ecfa398]{color:#ff6b6b}.link-btn[data-v-4ecfa398]:disabled{opacity:.4;cursor:not-allowed}.st-on[data-v-4ecfa398]{color:#4ade80}.st-off[data-v-4ecfa398]{color:var(--text-dim)}.hint-text[data-v-4ecfa398]{color:var(--text-dim);font-size:12px}.login-wrap[data-v-4ecfa398]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card[data-v-4ecfa398]{width:360px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:32px 28px;display:flex;flex-direction:column;gap:14px}.login-title[data-v-4ecfa398]{font-size:17px;text-align:center;color:#e8e8e8}.login-sub[data-v-4ecfa398]{text-align:center;color:var(--text-dim);font-size:13px;margin-top:-8px}.login-field[data-v-4ecfa398]{display:flex;flex-direction:column;gap:5px}.login-field span[data-v-4ecfa398]{color:var(--text-dim);font-size:12px}.login-field input[data-v-4ecfa398]{padding:9px 10px;font-size:14px}.login-error[data-v-4ecfa398]{color:#ff6b6b;font-size:12px;margin:0}.login-btn[data-v-4ecfa398]{margin-top:4px;padding:10px;font-size:14px}.modal-mask[data-v-4ecfa398]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:50}.modal-card[data-v-4ecfa398]{width:340px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:22px;display:flex;flex-direction:column;gap:12px}.modal-title[data-v-4ecfa398]{font-size:15px;color:#e8e8e8}.modal-btns[data-v-4ecfa398]{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.config-panel[data-v-4ecfa398]{border:1px solid var(--border);border-radius:8px;background:var(--panel);padding:10px 14px 14px}.config-panel legend[data-v-4ecfa398]{color:var(--text-dim);padding:0 6px}.config-grid[data-v-4ecfa398]{display:grid;grid-template-columns:max-content 1fr;gap:8px 10px;align-items:center}.config-grid>label[data-v-4ecfa398]{text-align:right;color:var(--text-dim);white-space:nowrap}input[data-v-4ecfa398],select[data-v-4ecfa398]{background:var(--panel-2);border:1px solid var(--border);border-radius:5px;color:var(--text);padding:5px 8px;font-size:13px;outline:none;width:100%}input[data-v-4ecfa398]:focus,select[data-v-4ecfa398]:focus{border-color:var(--accent)}input[data-v-4ecfa398]:disabled,select[data-v-4ecfa398]:disabled{opacity:.45}.w160[data-v-4ecfa398]{width:160px}.w140[data-v-4ecfa398]{width:140px}.w120[data-v-4ecfa398]{width:120px}.radio-row[data-v-4ecfa398]{display:flex;gap:18px;align-items:center}.radio[data-v-4ecfa398]{display:flex;gap:5px;align-items:center;color:var(--text);cursor:pointer;white-space:nowrap}.radio input[data-v-4ecfa398]{width:auto;cursor:pointer}.vol-row[data-v-4ecfa398]{display:flex;gap:12px;align-items:center}.btn-row[data-v-4ecfa398]{display:flex;gap:10px;justify-content:center;align-items:center}.btn[data-v-4ecfa398]{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 16px;font-size:13px;cursor:pointer}.btn[data-v-4ecfa398]:hover:not(:disabled){border-color:var(--accent)}.btn[data-v-4ecfa398]:disabled{opacity:.45;cursor:not-allowed}.btn-primary[data-v-4ecfa398]{background:#1d4ed8;border-color:#1d4ed8}.btn-danger[data-v-4ecfa398]{background:#7f1d1d;border-color:#7f1d1d}.status-badge[data-v-4ecfa398]{font-size:12px;padding:4px 10px;border-radius:12px}.status-badge.on[data-v-4ecfa398]{color:#4ade80;background:#4ade801f}.status-badge.off[data-v-4ecfa398]{color:var(--text-dim);background:#ffffff0f}.table-wrap[data-v-4ecfa398]{border:1px solid var(--border);border-radius:8px;overflow:auto;flex:1;min-height:260px;background:var(--panel)}table[data-v-4ecfa398]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-4ecfa398],td[data-v-4ecfa398]{padding:6px 10px;text-align:center;border-bottom:1px solid var(--border);white-space:nowrap}th[data-v-4ecfa398]{background:var(--panel-2);color:var(--text-dim);position:sticky;top:0}tbody tr[data-v-4ecfa398]{cursor:pointer;color:var(--text)}tbody tr[data-v-4ecfa398]:hover:not(.alert){background:#ffffff0d}tr.alert[data-v-4ecfa398],tr.alert td[data-v-4ecfa398]{background:var(--alert-bg)!important;color:var(--alert-fg)!important;font-weight:600}td.up[data-v-4ecfa398]{color:var(--up)}td.down[data-v-4ecfa398]{color:var(--down)}td.empty[data-v-4ecfa398]{color:var(--text-dim);padding:40px 0}.log-panel[data-v-4ecfa398]{border:1px solid var(--border);border-radius:8px;background:#161719;overflow:hidden}.log-head[data-v-4ecfa398]{padding:6px 10px;color:var(--text-dim);background:var(--panel-2);font-size:12px}.log-body[data-v-4ecfa398]{height:170px;overflow-y:auto;padding:6px 10px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.7}.log-line[data-v-4ecfa398]{white-space:pre-wrap;word-break:break-all;color:#cfd2d6}.lv-error[data-v-4ecfa398]{color:#ff6b6b}.lv-warn[data-v-4ecfa398]{color:#fbbf24}.toast[data-v-4ecfa398]{position:fixed;top:18px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:8px 18px;border-radius:6px;box-shadow:0 4px 14px #0006;z-index:99}:root{--bg: #1e1f22;--panel: #2b2d31;--panel-2: #232427;--border: #3f4147;--text: #e8e8e8;--text-dim: #9a9ca1;--accent: #3b82f6;--up: #00bb00;--down: #ff2222;--alert-bg: #006400;--alert-fg: #ffff00}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif;font-size:14px}
