.login-overlay[data-v-262a0c99]{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:9999}.login-modal[data-v-262a0c99]{background:#fff;padding:30px 40px;border-radius:8px;width:360px;box-shadow:0 4px 20px #0000004d}.login-modal h2[data-v-262a0c99]{margin:0 0 25px;text-align:center;color:#333}.form-group[data-v-262a0c99]{margin-bottom:20px}.form-group label[data-v-262a0c99]{display:block;margin-bottom:8px;font-weight:700;color:#555}.form-group input[data-v-262a0c99]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.form-group input[data-v-262a0c99]:focus{outline:none;border-color:#42b883}.form-group input[data-v-262a0c99]:disabled{background:#f5f5f5}.error-msg[data-v-262a0c99]{color:#cf222e;font-size:14px;margin-bottom:15px;text-align:center}.login-btn[data-v-262a0c99]{width:100%;padding:12px;background:#42b883;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s}.login-btn[data-v-262a0c99]:hover:not(:disabled){background:#369970}.login-btn[data-v-262a0c99]:disabled{background:#ccc;cursor:not-allowed}.modal-overlay[data-v-39d9ae9b]{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-39d9ae9b]{background:#fff;padding:20px;border-radius:8px;width:400px;box-shadow:0 2px 10px #0000001a}.form-group[data-v-39d9ae9b]{margin-bottom:15px}.form-group label[data-v-39d9ae9b]{display:block;margin-bottom:5px;font-weight:700}.form-group input[data-v-39d9ae9b],.form-group textarea[data-v-39d9ae9b]{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.modal-actions[data-v-39d9ae9b]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}button[data-v-39d9ae9b]{padding:8px 16px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.primary[data-v-39d9ae9b]{background:#42b883;color:#fff;border:none}.toolbar[data-v-4f77b5ca]{margin-bottom:20px;display:flex;gap:10px;align-items:center}.message-tip[data-v-4f77b5ca]{font-size:12px;margin-left:auto;padding:4px 10px;border-radius:4px;max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-tip.error[data-v-4f77b5ca]{color:#cf222e;background:#ffeef0}.message-tip.success[data-v-4f77b5ca]{color:#2da44e;background:#e6ffed}.data-table[data-v-4f77b5ca]{width:100%;border-collapse:collapse;margin-bottom:20px}.data-table th[data-v-4f77b5ca],.data-table td[data-v-4f77b5ca]{border:1px solid #ddd;padding:12px;text-align:left}.data-table th[data-v-4f77b5ca]{background-color:#f8f9fa}.status-badge[data-v-4f77b5ca]{padding:4px 8px;border-radius:4px;font-size:12px}.status-badge.active[data-v-4f77b5ca]{background-color:#e6ffed;color:#2da44e}.status-badge.offline[data-v-4f77b5ca]{background-color:#ffeef0;color:#cf222e}.actions[data-v-4f77b5ca]{display:flex;gap:5px}button[data-v-4f77b5ca]{padding:6px 12px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.primary[data-v-4f77b5ca]{background:#42b883;color:#fff;border:none}button.danger[data-v-4f77b5ca]{background:#cf222e;color:#fff;border:none}.pagination[data-v-4f77b5ca]{display:flex;justify-content:center;align-items:center;gap:15px}.no-data[data-v-4f77b5ca]{text-align:center;color:#999}.loading-overlay[data-v-4f77b5ca]{position:fixed;inset:0;background:#ffffffb3;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.spinner[data-v-4f77b5ca]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #42b883;border-radius:50%;animation:spin-4f77b5ca 1s linear infinite;margin-bottom:15px}.loading-text[data-v-4f77b5ca]{color:#333;font-weight:700}@keyframes spin-4f77b5ca{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay[data-v-bd8cc441]{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-bd8cc441]{background:#fff;padding:20px;border-radius:8px;width:450px;box-shadow:0 2px 10px #0000001a;max-height:90vh;overflow-y:auto}.form-group[data-v-bd8cc441]{margin-bottom:15px}.form-group label[data-v-bd8cc441]{display:block;margin-bottom:5px;font-weight:700}.form-group input[data-v-bd8cc441],.form-group select[data-v-bd8cc441]{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.modal-actions[data-v-bd8cc441]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}button[data-v-bd8cc441]{padding:8px 16px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.primary[data-v-bd8cc441]{background:#42b883;color:#fff;border:none}.hint[data-v-bd8cc441]{display:block;margin-top:4px;color:#666;font-size:12px}.toolbar[data-v-c75a075e]{margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.filters[data-v-c75a075e]{display:flex;gap:10px}.data-table[data-v-c75a075e]{width:100%;border-collapse:collapse;margin-bottom:20px}.data-table th[data-v-c75a075e],.data-table td[data-v-c75a075e]{border:1px solid #ddd;padding:12px;text-align:left}.data-table th[data-v-c75a075e]{background-color:#f8f9fa}.status-badge[data-v-c75a075e]{padding:4px 8px;border-radius:4px;font-size:12px}.status-badge.active[data-v-c75a075e]{background-color:#e6ffed;color:#2da44e}.status-badge.configuring[data-v-c75a075e]{background-color:#fff8c5;color:#9a6700}.actions[data-v-c75a075e]{display:flex;gap:5px}button[data-v-c75a075e]{padding:6px 12px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.primary[data-v-c75a075e]{background:#42b883;color:#fff;border:none}button.danger[data-v-c75a075e]{background:#cf222e;color:#fff;border:none}button.danger[data-v-c75a075e]:disabled{background:#ccc;cursor:not-allowed;opacity:.6}select[data-v-c75a075e]{padding:6px;border:1px solid #ddd;border-radius:4px}.pagination[data-v-c75a075e]{display:flex;justify-content:center;align-items:center;gap:15px}.no-data[data-v-c75a075e]{text-align:center;color:#999}.sortable[data-v-c75a075e]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.sortable[data-v-c75a075e]:hover{background-color:#e9ecef}.sort-icon[data-v-c75a075e]{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;width:18px;height:18px;font-size:10px;color:#999;background:#f0f0f0;border-radius:3px;transition:all .2s}.sortable:hover .sort-icon[data-v-c75a075e]{background:#e0e0e0;color:#666}.sort-icon.active[data-v-c75a075e]{background:#42b883;color:#fff}.modal-overlay[data-v-2fd48633]{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-2fd48633]{background:#fff;padding:20px;border-radius:8px;width:600px;box-shadow:0 2px 10px #0000001a;max-height:90vh;display:flex;flex-direction:column}.modal-body[data-v-2fd48633]{overflow-y:auto;flex:1}.form-row[data-v-2fd48633]{display:flex;gap:15px}.form-row .form-group[data-v-2fd48633]{flex:1}.form-group[data-v-2fd48633]{margin-bottom:15px}.form-group label[data-v-2fd48633]{display:block;margin-bottom:5px;font-weight:700}.form-group input[data-v-2fd48633],.form-group select[data-v-2fd48633]{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.auth-section[data-v-2fd48633]{margin-top:20px;border-top:1px solid #eee;padding-top:10px}.section-header[data-v-2fd48633]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.auth-table[data-v-2fd48633]{width:100%;border-collapse:collapse}.auth-table th[data-v-2fd48633],.auth-table td[data-v-2fd48633]{border:1px solid #eee;padding:8px;text-align:left}.auth-table input[data-v-2fd48633]{width:100%;padding:4px;border:1px solid #ddd;border-radius:2px;box-sizing:border-box}.modal-actions[data-v-2fd48633]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:10px;border-top:1px solid #eee}button[data-v-2fd48633]{padding:8px 16px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.small[data-v-2fd48633]{padding:4px 8px;font-size:12px}button.primary[data-v-2fd48633]{background:#42b883;color:#fff;border:none}button.danger[data-v-2fd48633]{background:#cf222e;color:#fff;border:none}.no-data[data-v-2fd48633]{text-align:center;color:#999}.action-buttons[data-v-2fd48633]{display:flex;gap:5px}.toolbar[data-v-2543665e]{margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.filters[data-v-2543665e]{display:flex;gap:10px}.data-table[data-v-2543665e]{width:100%;border-collapse:collapse;margin-bottom:20px}.data-table th[data-v-2543665e],.data-table td[data-v-2543665e]{border:1px solid #ddd;padding:12px;text-align:left}.data-table th[data-v-2543665e]{background-color:#f8f9fa}.actions[data-v-2543665e]{display:flex;gap:5px}button[data-v-2543665e]{padding:6px 12px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}button.primary[data-v-2543665e]{background:#42b883;color:#fff;border:none}button.danger[data-v-2543665e]{background:#cf222e;color:#fff;border:none}button[data-v-2543665e]:disabled{opacity:.5;cursor:not-allowed}select[data-v-2543665e]{padding:6px;border:1px solid #ddd;border-radius:4px;min-width:150px}.pagination[data-v-2543665e]{display:flex;justify-content:center;align-items:center;gap:15px}.no-data[data-v-2543665e],.hint[data-v-2543665e]{text-align:center;color:#999;padding:20px}.hint[data-v-2543665e]{background:#f9f9f9;border-radius:4px}.modal-overlay[data-v-2543665e]{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-2543665e]{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-height:80vh;overflow-y:auto}.key-modal[data-v-2543665e]{width:500px}.key-modal h3[data-v-2543665e]{margin-top:0;margin-bottom:15px}.key-list[data-v-2543665e]{margin-bottom:15px}.loading[data-v-2543665e]{text-align:center;padding:20px;color:#666}.modal-actions[data-v-2543665e]{display:flex;justify-content:flex-end;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #eee}.url-link[data-v-2543665e]{color:#42b883;text-decoration:none}.url-link[data-v-2543665e]:hover{text-decoration:underline}.frp-manager[data-v-4eaf6bcf]{max-width:1200px;margin:0 auto;padding:20px}.header[data-v-4eaf6bcf]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:20px}nav button[data-v-4eaf6bcf]{margin-left:10px;padding:8px 16px;cursor:pointer;background:#f0f0f0;border:none;border-radius:4px}nav button.active[data-v-4eaf6bcf]{background:#42b883;color:#fff}
