.login-wrapper[data-v-70cd01ff]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:radial-gradient(circle at top,#1e293b,#0a0e17)}.login-card[data-v-70cd01ff]{width:100%;max-width:440px;background:#182234f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:max-width .3s ease}.login-card.setup-mode[data-v-70cd01ff]{max-width:520px}.login-brand[data-v-70cd01ff]{text-align:center;margin-bottom:20px}.brand-icon[data-v-70cd01ff]{font-size:38px;margin-bottom:6px}.login-brand h2[data-v-70cd01ff]{font-size:20px;font-weight:700;letter-spacing:.5px}.subtitle[data-v-70cd01ff]{color:var(--text-secondary);font-size:13px;margin-top:4px}.error-banner[data-v-70cd01ff]{background:#ef444426;border:1px solid var(--accent-red);color:#fca5a5;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:20px}.login-form[data-v-70cd01ff]{display:flex;flex-direction:column;gap:16px}.form-group label[data-v-70cd01ff]{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.hint[data-v-70cd01ff]{display:block;font-size:11px;color:var(--text-muted);margin-top:4px}.full-btn[data-v-70cd01ff]{width:100%;padding:14px;margin-top:8px}.mt-2[data-v-70cd01ff]{margin-top:8px}.mt-4[data-v-70cd01ff]{margin-top:16px}.mfa-info[data-v-70cd01ff]{text-align:center;margin-bottom:16px}.mfa-icon[data-v-70cd01ff]{font-size:32px;margin-bottom:6px}.mfa-input[data-v-70cd01ff]{font-family:JetBrains Mono,monospace;font-size:20px;letter-spacing:4px;text-align:center}.setup-badge-box[data-v-70cd01ff]{text-align:center;margin-bottom:16px}.setup-badge-box h3[data-v-70cd01ff]{font-size:16px;margin-top:8px;font-weight:600}.small-desc[data-v-70cd01ff]{font-size:12px;color:var(--text-secondary);margin-top:4px;line-height:1.4}.qr-container[data-v-70cd01ff]{display:flex;justify-content:center;margin:16px 0}.qr-image[data-v-70cd01ff]{width:190px;height:190px;border-radius:8px;padding:6px;background:#fff;box-shadow:0 4px 12px #00000080}.secret-box[data-v-70cd01ff]{background:var(--bg-input);border:1px solid var(--border-color);padding:10px 14px;border-radius:8px;margin-bottom:16px}.secret-label[data-v-70cd01ff]{display:block;font-size:11px;color:var(--text-muted);margin-bottom:4px}.secret-row[data-v-70cd01ff]{display:flex;justify-content:space-between;align-items:center}.secret-text[data-v-70cd01ff]{font-family:JetBrains Mono,monospace;color:var(--accent-cyan);font-size:13px;letter-spacing:1px}.copy-btn[data-v-70cd01ff]{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);font-size:11px;padding:4px 10px;border-radius:4px}.recovery-section[data-v-70cd01ff]{background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:8px;padding:12px;margin-bottom:16px}.recovery-header[data-v-70cd01ff]{font-size:11px;font-weight:600;color:var(--accent-amber);margin-bottom:8px}.recovery-grid[data-v-70cd01ff]{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.rc-item[data-v-70cd01ff]{font-family:JetBrains Mono,monospace;font-size:11px;background:var(--bg-input);padding:4px 8px;border-radius:4px;color:var(--text-primary);text-align:center}.login-footer[data-v-70cd01ff]{text-align:center;margin-top:24px;font-size:12px;color:var(--text-muted)}.launcher-page[data-v-7e9e5110]{min-height:100vh;background-color:var(--bg-primary)}.brand-shield[data-v-7e9e5110]{font-size:24px}.user-nav[data-v-7e9e5110]{display:flex;align-items:center;gap:16px;font-size:13px}.admin-link[data-v-7e9e5110]{color:var(--accent-cyan);font-weight:600;padding:6px 12px;border-radius:6px;background:#06b6d41a;border:1px solid rgba(6,182,212,.2)}.user-name[data-v-7e9e5110]{color:var(--text-secondary)}.logout-btn[data-v-7e9e5110]{padding:6px 14px;font-size:13px}.launcher-container[data-v-7e9e5110]{max-width:1200px;margin:0 auto;padding:32px 24px}.localhost-alert-banner[data-v-7e9e5110]{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);padding:16px 20px;margin-bottom:24px;border-radius:10px}.alert-content[data-v-7e9e5110]{display:flex;align-items:flex-start;gap:14px}.alert-icon[data-v-7e9e5110]{font-size:24px}.alert-content strong[data-v-7e9e5110]{color:#fbbf24;font-size:14px}.alert-content p[data-v-7e9e5110]{color:var(--text-secondary);font-size:13px;margin-top:4px;line-height:1.4}.alert-content code[data-v-7e9e5110]{background:#0000004d;padding:2px 6px;border-radius:4px;color:#fbbf24}.alert-actions[data-v-7e9e5110]{display:flex;gap:10px;flex-shrink:0}.btn-sm[data-v-7e9e5110]{padding:6px 12px;font-size:12px}.welcome-box[data-v-7e9e5110]{margin-bottom:32px}.welcome-header[data-v-7e9e5110]{display:flex;justify-content:space-between;align-items:center}.launcher-admin-actions[data-v-7e9e5110]{display:flex;gap:10px}.welcome-box h1[data-v-7e9e5110]{font-size:28px;font-weight:700;margin-bottom:8px}.welcome-box p[data-v-7e9e5110]{color:var(--text-secondary);font-size:15px}.platforms-grid[data-v-7e9e5110]{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px}.platform-card[data-v-7e9e5110]{display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s,border-color .2s;position:relative}.platform-card[data-v-7e9e5110]:hover:not(.disabled-card){transform:translateY(-4px);border-color:var(--accent-blue)}.disabled-card[data-v-7e9e5110]{opacity:.55;filter:grayscale(.2)}.card-header[data-v-7e9e5110]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header-badges[data-v-7e9e5110]{display:flex;align-items:center;gap:8px}.quick-edit-btn[data-v-7e9e5110]{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:var(--text-secondary);border-radius:6px;padding:4px 8px;font-size:13px;cursor:pointer;transition:all .2s}.quick-edit-btn[data-v-7e9e5110]:hover{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.platform-icon[data-v-7e9e5110]{font-size:32px}.platform-card h3[data-v-7e9e5110]{font-size:18px;font-weight:600;margin-bottom:8px}.platform-card .desc[data-v-7e9e5110]{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-bottom:16px;flex-grow:1}.platform-target-box[data-v-7e9e5110]{background:#0003;border-radius:6px;padding:8px 10px;margin-bottom:16px;display:flex;flex-direction:column;gap:3px}.target-label[data-v-7e9e5110]{font-size:11px;color:var(--text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.target-url[data-v-7e9e5110]{font-size:12px;font-family:monospace;color:var(--accent-cyan);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.target-url.warning-url[data-v-7e9e5110]{color:#f59e0b}.localhost-pill[data-v-7e9e5110]{background:#f59e0b33;border:1px solid rgba(245,158,11,.5);color:#fbbf24;font-size:10px;padding:1px 6px;border-radius:4px}.launch-btn[data-v-7e9e5110]{width:100%}.disabled-btn[data-v-7e9e5110]{cursor:not-allowed;opacity:.6}.modal-overlay[data-v-7e9e5110]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-box[data-v-7e9e5110]{width:100%;max-width:520px;padding:24px;border-radius:12px}.modal-box h3[data-v-7e9e5110]{font-size:18px;font-weight:700;margin-bottom:6px}.modal-subtitle[data-v-7e9e5110]{color:var(--text-secondary);font-size:13px;margin-bottom:20px}.modal-form[data-v-7e9e5110]{display:flex;flex-direction:column;gap:12px}.form-label[data-v-7e9e5110]{font-size:12px;font-weight:600;color:var(--text-secondary);margin-top:4px}.hint-text[data-v-7e9e5110]{font-size:11px;color:var(--text-muted);margin-top:-6px}.modal-actions[data-v-7e9e5110]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.field-header[data-v-7e9e5110]{display:flex;justify-content:space-between;align-items:center}.btn-link-action[data-v-7e9e5110]{background:transparent;border:none;color:var(--accent-cyan);font-size:11px;cursor:pointer;text-decoration:underline;padding:0}.btn-link-action[data-v-7e9e5110]:hover{color:#fff}.warning-callout[data-v-7e9e5110]{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:8px 12px;border-radius:6px;font-size:12px;line-height:1.4;margin-top:4px}.toast-success[data-v-7e9e5110]{background:#10b98133;border:1px solid var(--accent-green);color:#6ee7b7;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:12px}.admin-page[data-v-f7afa490]{min-height:100vh;background-color:var(--bg-primary)}.master-badge[data-v-f7afa490]{margin-left:10px;font-size:11px}.nav-links[data-v-f7afa490]{display:flex;align-items:center;gap:12px}.nav-tab-btn[data-v-f7afa490]{background:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:600;padding:6px 14px;border-radius:6px;cursor:pointer;transition:all .2s}.nav-tab-btn.active[data-v-f7afa490],.nav-tab-btn[data-v-f7afa490]:hover{color:var(--text-primary);background:var(--bg-card);box-shadow:0 1px 3px #0003}.nav-item[data-v-f7afa490]{color:var(--text-secondary);font-size:13px;font-weight:500;padding:6px 12px;border-radius:6px;transition:all .2s}.nav-item.active[data-v-f7afa490],.nav-item[data-v-f7afa490]:hover{color:var(--text-primary);background:var(--bg-card)}.admin-container[data-v-f7afa490]{max-width:1560px;margin:0 auto;padding:24px 24px 48px}.header-section[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.header-section h2[data-v-f7afa490]{font-size:22px;font-weight:700;letter-spacing:-.4px}.subtitle[data-v-f7afa490]{color:var(--text-secondary);font-size:13px;margin-top:4px}.action-buttons[data-v-f7afa490]{display:flex;align-items:center;gap:12px}.toast-banner[data-v-f7afa490]{background:#10b98126;border:1px solid var(--accent-green);color:#6ee7b7;padding:12px 18px;border-radius:10px;font-size:13px;font-weight:500;margin-bottom:20px;box-shadow:0 4px 16px #10b9811a}.stats-overview-grid[data-v-f7afa490]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px}.stat-card[data-v-f7afa490]{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 16px #00000040;transition:transform .2s,border-color .2s}.stat-card[data-v-f7afa490]:hover{transform:translateY(-2px);border-color:#3b82f666}.stat-icon-wrapper[data-v-f7afa490]{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.stat-icon-wrapper.blue[data-v-f7afa490]{background:#3b82f626;border:1px solid rgba(59,130,246,.3)}.stat-icon-wrapper.amber[data-v-f7afa490]{background:#f59e0b26;border:1px solid rgba(245,158,11,.3)}.stat-icon-wrapper.green[data-v-f7afa490]{background:#10b98126;border:1px solid rgba(16,185,129,.3)}.stat-icon-wrapper.purple[data-v-f7afa490]{background:#a855f726;border:1px solid rgba(168,85,247,.3)}.stat-content[data-v-f7afa490]{display:flex;flex-direction:column}.stat-label[data-v-f7afa490]{font-size:12px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-f7afa490]{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1.2;margin-top:2px}.stat-subline[data-v-f7afa490]{display:flex;align-items:baseline;gap:6px}.stat-subtext[data-v-f7afa490]{font-size:12px;color:var(--text-muted)}.users-toolbar-card[data-v-f7afa490]{padding:14px 18px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.toolbar-left[data-v-f7afa490]{display:flex;align-items:center;gap:12px;flex:1;flex-wrap:wrap}.search-box-wrapper[data-v-f7afa490]{position:relative;display:flex;align-items:center;min-width:260px}.search-box-wrapper .search-icon[data-v-f7afa490]{position:absolute;left:12px;font-size:14px;opacity:.6;pointer-events:none}.search-box-wrapper .search-input[data-v-f7afa490]{padding:8px 32px 8px 36px;height:38px;font-size:13px;background:var(--bg-primary)}.clear-search-btn[data-v-f7afa490]{position:absolute;right:10px;background:transparent;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;padding:2px 6px;border-radius:4px}.clear-search-btn[data-v-f7afa490]:hover{color:var(--text-primary);background:#ffffff1a}.filter-group[data-v-f7afa490]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tenant-select-filter[data-v-f7afa490],.role-select-filter[data-v-f7afa490]{height:38px;padding:8px 12px;font-size:13px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer}.tenant-select-filter[data-v-f7afa490]{min-width:200px}.role-select-filter[data-v-f7afa490]{min-width:150px}.toolbar-right[data-v-f7afa490]{display:flex;align-items:center;gap:12px}.view-mode-toggle[data-v-f7afa490]{display:inline-flex;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:3px;gap:2px}.view-mode-btn[data-v-f7afa490]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s}.view-mode-btn[data-v-f7afa490]:hover{color:var(--text-primary)}.view-mode-btn.active[data-v-f7afa490]{background:var(--bg-card);color:var(--accent-cyan);box-shadow:0 1px 4px #0000004d}.create-user-btn[data-v-f7afa490]{height:38px;padding:0 16px;font-size:13px;gap:6px}.table-card[data-v-f7afa490]{border-radius:12px;overflow:hidden;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 8px 24px #00000059}.modern-table[data-v-f7afa490]{width:100%;border-collapse:separate;border-spacing:0}.modern-table th[data-v-f7afa490]{background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:14px 18px;border-bottom:1px solid var(--border-color);white-space:nowrap}.modern-table td[data-v-f7afa490]{padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;vertical-align:middle}.modern-table tbody tr:hover td[data-v-f7afa490]{background:#ffffff05}.suspended-row td[data-v-f7afa490]{opacity:.6}.user-profile-cell[data-v-f7afa490]{display:flex;align-items:center;gap:12px}.user-avatar[data-v-f7afa490]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff;box-shadow:0 2px 8px #0000004d;flex-shrink:0;letter-spacing:.5px}.user-details[data-v-f7afa490]{display:flex;flex-direction:column;gap:2px;min-width:0}.user-fullname[data-v-f7afa490]{font-weight:600;font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-subline[data-v-f7afa490]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.user-username[data-v-f7afa490]{color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-size:11px}.bullet[data-v-f7afa490]{opacity:.4;font-size:10px}.user-email[data-v-f7afa490]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.role-pill[data-v-f7afa490]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.role-pill-master[data-v-f7afa490]{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.4);box-shadow:0 0 10px #f59e0b26}.role-pill-super[data-v-f7afa490]{background:#06b6d426;color:#38bdf8;border:1px solid rgba(6,182,212,.4);box-shadow:0 0 10px #06b6d426}.role-pill-tsuper[data-v-f7afa490]{background:#a855f726;color:#c084fc;border:1px solid rgba(168,85,247,.4)}.role-pill-regular[data-v-f7afa490]{background:#94a3b81a;color:#94a3b8;border:1px solid rgba(148,163,184,.2)}.tenant-badges-cell[data-v-f7afa490]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.tenant-tag[data-v-f7afa490]{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px;border-radius:6px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);font-family:JetBrains Mono,monospace}.tenant-tag.global-tag[data-v-f7afa490]{background:#f59e0b26;border-color:#f59e0b66;color:#fbbf24}.tenant-tag.tsuper-tag[data-v-f7afa490]{border-color:#a855f766;color:#d8b4fe}.tenant-tag.default-tag[data-v-f7afa490]{color:var(--text-muted)}.tag-icon[data-v-f7afa490]{font-size:10px}.origin-tag[data-v-f7afa490]{font-size:11px;padding:3px 8px;border-radius:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);font-weight:500;white-space:nowrap}.platforms-summary-cell[data-v-f7afa490]{max-width:480px}.super-access-badge[data-v-f7afa490]{background:linear-gradient(135deg,#06b6d426,#3b82f626);border:1px solid rgba(6,182,212,.4);color:#38bdf8;font-weight:600;font-size:12px;padding:4px 12px;border-radius:20px;display:inline-flex;align-items:center;gap:6px;box-shadow:0 0 12px #06b6d41a}.super-access-badge .pulse-icon[data-v-f7afa490]{animation:pulse-f7afa490 2s infinite}@keyframes pulse-f7afa490{0%{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.8}to{transform:scale(1);opacity:1}}.user-platforms-list[data-v-f7afa490]{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.platform-access-chip[data-v-f7afa490]{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 7px;border-radius:6px;transition:all .2s}.platform-access-chip.chip-regular[data-v-f7afa490]{background:#06b6d414;border:1px solid rgba(6,182,212,.25);color:#38bdf8}.platform-access-chip.chip-super[data-v-f7afa490]{background:#a855f71f;border:1px solid rgba(168,85,247,.35);color:#c084fc}.platform-chip-emoji[data-v-f7afa490]{font-size:11px}.platform-chip-label[data-v-f7afa490]{font-weight:600}.platform-chip-role[data-v-f7afa490]{font-size:9px;text-transform:uppercase;font-weight:700;padding:1px 4px;border-radius:4px}.platform-chip-role.superuser[data-v-f7afa490]{background:#a855f740;color:#f3e8ff}.platform-chip-role.regular[data-v-f7afa490]{background:#06b6d433;color:#e0f2fe}.no-platform-chip[data-v-f7afa490]{font-size:11px;padding:2px 8px;border-radius:6px;background:#64748b1a;border:1px solid rgba(100,116,139,.2);color:#94a3b8}.manage-entitlements-btn[data-v-f7afa490]{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;background:#ffffff0d;border:1px dashed rgba(255,255,255,.25);color:var(--text-secondary);cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:4px}.manage-entitlements-btn[data-v-f7afa490]:hover{background:#3b82f626;border-color:#3b82f666;color:#60a5fa;border-style:solid}.mfa-badge[data-v-f7afa490]{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}.mfa-badge.mfa-active[data-v-f7afa490]{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.35)}.mfa-badge.mfa-pending[data-v-f7afa490]{background:#f59e0b1f;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.status-badge[data-v-f7afa490]{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.status-badge.status-active[data-v-f7afa490]{background:#10b9811a;color:#34d399;border:1px solid rgba(16,185,129,.25)}.status-badge.status-suspended[data-v-f7afa490]{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.3)}.status-dot[data-v-f7afa490]{display:inline-block;width:7px;height:7px;border-radius:50%}.status-dot.green[data-v-f7afa490]{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green)}.status-dot.red[data-v-f7afa490]{background:var(--accent-red);box-shadow:0 0 8px var(--accent-red)}.action-btn-group[data-v-f7afa490]{display:inline-flex;gap:4px}.action-btn-icon[data-v-f7afa490]{width:32px;height:32px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;font-size:13px;cursor:pointer;transition:all .2s}.action-btn-icon[data-v-f7afa490]:hover{background:var(--border-color);transform:translateY(-1px)}.action-btn-icon.revoke[data-v-f7afa490]:hover{background:#ef444433;border-color:#ef444466}.action-btn-icon.suspend[data-v-f7afa490]:hover{background:#ef444433;border-color:#ef444466;color:#f87171}.action-btn-icon.activate[data-v-f7afa490]:hover{background:#10b98133;border-color:#10b98166;color:#34d399}.matrix-info-bar[data-v-f7afa490]{padding:10px 16px;background:#3b82f614;border-bottom:1px solid var(--border-color);font-size:12px;color:var(--text-secondary)}.matrix-scroll-wrapper[data-v-f7afa490]{overflow-x:auto;max-width:100%;scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-card)}.matrix-table[data-v-f7afa490]{width:100%;border-collapse:separate;border-spacing:0;min-width:1100px}.matrix-sticky-user[data-v-f7afa490]{position:sticky;left:0;background:var(--bg-card);z-index:2;box-shadow:2px 0 8px #0006;min-width:180px;padding:12px 14px}thead th.matrix-sticky-user[data-v-f7afa490]{background:var(--bg-secondary);z-index:3}.matrix-sticky-actions[data-v-f7afa490]{position:sticky;right:0;background:var(--bg-card);z-index:2;box-shadow:-2px 0 8px #0006;min-width:150px;padding:12px 14px}thead th.matrix-sticky-actions[data-v-f7afa490]{background:var(--bg-secondary);z-index:3}.user-profile-compact[data-v-f7afa490]{display:flex;align-items:center;gap:10px}.user-avatar-sm[data-v-f7afa490]{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;color:#fff;flex-shrink:0}.compact-user-meta[data-v-f7afa490]{display:flex;flex-direction:column;overflow:hidden}.compact-username[data-v-f7afa490]{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-email[data-v-f7afa490]{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-pill-sm[data-v-f7afa490]{font-size:11px;padding:2px 6px;border-radius:12px;font-weight:600;white-space:nowrap}.matrix-platform-th[data-v-f7afa490]{display:flex;flex-direction:column;align-items:center;gap:2px}.matrix-platform-th .th-emoji[data-v-f7afa490]{font-size:14px}.matrix-platform-th .th-name[data-v-f7afa490]{font-size:11px;font-weight:600}.matrix-cell[data-v-f7afa490]{padding:8px 6px}.matrix-super-badge[data-v-f7afa490]{font-size:11px;font-weight:700;color:#38bdf8;background:#38bdf81f;padding:3px 6px;border-radius:6px;border:1px solid rgba(56,189,248,.3);display:inline-block;white-space:nowrap}.matrix-select[data-v-f7afa490]{font-size:11px;font-weight:600;padding:4px 6px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);outline:none;cursor:pointer;transition:all .2s;max-width:105px}.matrix-select[data-v-f7afa490]:hover{border-color:var(--accent-blue)}.matrix-select.role-none[data-v-f7afa490]{color:#64748b;border-color:#64748b40;background:#0f172a66}.matrix-select.role-regular[data-v-f7afa490]{color:#38bdf8;border-color:#38bdf866;background:#38bdf814}.matrix-select.role-superuser[data-v-f7afa490]{color:#c084fc;border-color:#c084fc80;background:#c084fc1f}.modal-box.entitlements-modal[data-v-f7afa490]{max-width:680px}.modal-header-with-avatar[data-v-f7afa490]{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border-color)}.modal-user-avatar[data-v-f7afa490]{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #0000004d}.global-admin-notice[data-v-f7afa490]{background:#06b6d41a;border:1px solid rgba(6,182,212,.35);border-radius:10px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.global-admin-notice .notice-icon[data-v-f7afa490]{font-size:20px}.global-admin-notice strong[data-v-f7afa490]{color:#38bdf8;font-size:13px;display:block;margin-bottom:4px}.global-admin-notice p[data-v-f7afa490]{color:var(--text-secondary);font-size:12px;line-height:1.5;margin:0}.batch-entitlements-bar[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#00000040;border-radius:8px;border:1px solid var(--border-color);margin-bottom:12px;flex-wrap:wrap;gap:8px}.batch-title[data-v-f7afa490]{font-size:12px;font-weight:600;color:var(--text-secondary)}.batch-buttons[data-v-f7afa490]{display:flex;gap:6px}.batch-btn[data-v-f7afa490]{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);font-size:11px;font-weight:600;padding:4px 8px;border-radius:5px;cursor:pointer;transition:all .2s}.batch-btn[data-v-f7afa490]:hover{background:var(--border-color)}.batch-btn.danger[data-v-f7afa490]{color:#f87171;border-color:#ef44444d}.batch-btn.danger[data-v-f7afa490]:hover{background:#ef444426}.platforms-entitlement-grid[data-v-f7afa490]{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;padding-right:4px}.platform-entitlement-card[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);transition:all .2s;gap:12px}.platform-entitlement-card.platform-active[data-v-f7afa490]{border-color:#38bdf859;background:#38bdf808}.pec-left[data-v-f7afa490]{display:flex;align-items:center;gap:12px;min-width:0}.pec-emoji[data-v-f7afa490]{font-size:20px;flex-shrink:0}.pec-meta[data-v-f7afa490]{display:flex;flex-direction:column;min-width:0}.pec-title[data-v-f7afa490]{font-size:13px;color:var(--text-primary)}.pec-sub[data-v-f7afa490]{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted)}.pec-sub code[data-v-f7afa490]{color:var(--accent-cyan)}.pec-desc[data-v-f7afa490]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.pec-controls[data-v-f7afa490]{display:flex;align-items:center;gap:12px;flex-shrink:0}.toggle-switch-label[data-v-f7afa490]{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-switch-input[data-v-f7afa490]{display:none}.toggle-switch-slider[data-v-f7afa490]{position:relative;width:36px;height:20px;background:#ffffff26;border-radius:20px;transition:background .2s}.toggle-switch-slider[data-v-f7afa490]:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-switch-input:checked+.toggle-switch-slider[data-v-f7afa490]{background:var(--accent-blue)}.toggle-switch-input:checked+.toggle-switch-slider[data-v-f7afa490]:before{transform:translate(16px)}.toggle-label-text[data-v-f7afa490]{font-size:12px;font-weight:500;color:var(--text-secondary);min-width:65px}.role-selector-pill-group[data-v-f7afa490]{display:inline-flex;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:2px;gap:2px}.role-opt-btn[data-v-f7afa490]{border:none;background:transparent;padding:3px 8px;font-size:11px;font-weight:600;color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .2s}.role-opt-btn.active[data-v-f7afa490]{background:var(--accent-blue);color:#fff}.empty-icon[data-v-f7afa490]{font-size:36px;margin-bottom:12px;opacity:.7}.empty-state h4[data-v-f7afa490]{font-size:16px;color:var(--text-primary);margin-bottom:6px}.empty-state p[data-v-f7afa490]{font-size:13px;color:var(--text-muted)}.user-cell[data-v-f7afa490]{display:flex;flex-direction:column}.user-cell small[data-v-f7afa490]{color:var(--text-muted);font-size:12px}.role-text[data-v-f7afa490]{font-size:13px;color:var(--text-secondary)}.text-center[data-v-f7afa490]{text-align:center}.text-right[data-v-f7afa490]{text-align:right}.entitlement-checkbox[data-v-f7afa490]{width:18px;height:18px;accent-color:var(--accent-blue);cursor:pointer}.small-status[data-v-f7afa490]{font-size:12px;color:var(--text-secondary)}.action-btn[data-v-f7afa490]{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);font-size:11px;padding:5px 10px;border-radius:5px;transition:all .2s;cursor:pointer}.action-btn[data-v-f7afa490]:hover{background:var(--border-color)}.action-btn.tenant-manage-btn[data-v-f7afa490]{color:#38bdf8;border-color:#38bdf84d}.action-btn.tenant-manage-btn[data-v-f7afa490]:hover{background:#38bdf826}.action-btn.reset-totp[data-v-f7afa490]{color:var(--accent-cyan);border-color:#06b6d44d}.action-btn.reset-totp[data-v-f7afa490]:hover{background:#06b6d426}.action-btn.reset-pass[data-v-f7afa490]{color:var(--accent-amber);border-color:#f59e0b4d}.action-btn.revoke[data-v-f7afa490]:hover{background:#ef444433}.action-btn.suspend[data-v-f7afa490]{color:var(--accent-red)}.action-btn.activate[data-v-f7afa490]{color:var(--accent-green)}.suspended-row td[data-v-f7afa490]{opacity:.65}.modal-overlay[data-v-f7afa490]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-f7afa490]{width:100%;max-width:460px;background:var(--bg-card)}.modal-box.create-modal[data-v-f7afa490]{max-width:580px}.modal-subtitle[data-v-f7afa490]{font-size:13px;color:var(--text-secondary);margin-top:4px;margin-bottom:20px}.modal-form[data-v-f7afa490]{display:flex;flex-direction:column;gap:14px}.form-row[data-v-f7afa490]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.section-label[data-v-f7afa490]{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:8px}.checkbox-list[data-v-f7afa490]{display:flex;flex-wrap:wrap;gap:10px}.check-item[data-v-f7afa490]{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-primary);cursor:pointer}.modal-actions[data-v-f7afa490]{display:flex;justify-content:flex-end;gap:12px;margin-top:12px}.empty-state[data-v-f7afa490]{text-align:center;padding:40px;color:var(--text-muted)}.role-select[data-v-f7afa490]{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-size:11px;font-weight:600;padding:4px 6px;cursor:pointer;outline:none;transition:all .2s}.role-select[data-v-f7afa490]:hover{border-color:var(--accent-blue)}.role-select.role-none[data-v-f7afa490]{color:#ef4444;border-color:#ef444466}.role-select.role-regular[data-v-f7afa490]{color:#38bdf8;border-color:#38bdf866}.role-select.role-superuser[data-v-f7afa490]{color:#c084fc;border-color:#c084fc80;background:#c084fc1a}.role-badge-super[data-v-f7afa490]{font-size:11px;font-weight:700;color:#38bdf8;background:#38bdf826;padding:3px 8px;border-radius:6px;border:1px solid rgba(56,189,248,.3);display:inline-block}.platform-role-grid[data-v-f7afa490]{display:flex;flex-direction:column;gap:8px}.platform-role-row[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px}.global-tenant-card[data-v-f7afa490]{padding:12px;border-radius:8px;background:#f59e0b14;border:1px solid rgba(245,158,11,.25);display:flex;flex-direction:column;gap:6px}.tenant-platforms-cell[data-v-f7afa490]{display:flex;flex-wrap:wrap;gap:4px}.platform-chip[data-v-f7afa490]{font-size:11px;padding:2px 7px;border-radius:4px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.platform-chip.super-chip[data-v-f7afa490]{background:#f59e0b26;border-color:#f59e0b59;color:#fbbf24;font-weight:600}.gk-badge-purple[data-v-f7afa490]{background:#c084fc26;border-color:#c084fc59;color:#c084fc}.user-tenants-list[data-v-f7afa490]{display:flex;flex-direction:column;gap:8px;max-height:350px;overflow-y:auto;padding-right:4px}.user-tenant-row[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);transition:all .2s}.user-tenant-row.assigned[data-v-f7afa490]{border-color:#38bdf866;background:#38bdf80d}.tenant-check-info[data-v-f7afa490]{display:flex;align-items:center;gap:10px}.tenant-row-label[data-v-f7afa490]{display:flex;align-items:center;gap:8px;cursor:pointer}.tid-code[data-v-f7afa490]{font-size:11px;color:var(--text-secondary)}.small-toggle[data-v-f7afa490]{font-size:12px}.font-lg[data-v-f7afa490]{font-size:22px}.url-link[data-v-f7afa490]{font-family:monospace;font-size:12px;color:var(--accent-cyan);text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:opacity .2s}.url-link[data-v-f7afa490]:hover{text-decoration:underline;opacity:.9}.url-link.localhost-warning[data-v-f7afa490]{color:#f59e0b}.inline-badge[data-v-f7afa490]{font-size:10px;padding:1px 6px;margin-left:4px}.external-icon[data-v-f7afa490]{font-size:11px;opacity:.7}.redirect-uris-cell[data-v-f7afa490]{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toggle-badge[data-v-f7afa490]{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .2s;background:transparent}.toggle-badge.active[data-v-f7afa490]{background:#10b98126;border-color:#10b98166;color:#34d399}.toggle-badge.inactive[data-v-f7afa490]{background:#ef444426;border-color:#ef444466;color:#f87171}.delete-btn[data-v-f7afa490]:hover{background:#ef444433!important;color:#f87171!important;border-color:#ef444466!important}.form-label-sm[data-v-f7afa490]{font-size:11px;font-weight:600;color:var(--text-secondary);margin-top:6px;display:block}.checkbox-label[data-v-f7afa490]{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-primary);cursor:pointer;margin-top:8px}.delete-options-box[data-v-f7afa490]{display:flex;flex-direction:column;gap:12px;margin:16px 0;padding:14px;background:#00000040;border-radius:8px;border:1px solid var(--border-color)}.radio-label[data-v-f7afa490]{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.radio-label input[data-v-f7afa490]{margin-top:3px}.gk-btn-warning[data-v-f7afa490]{background:#d97706;color:#fff;border:none}.gk-btn-warning[data-v-f7afa490]:hover{background:#b45309}.gk-btn-danger[data-v-f7afa490]{background:#dc2626;color:#fff;border:none}.gk-btn-danger[data-v-f7afa490]:hover{background:#b91c1c}.text-danger[data-v-f7afa490]{color:#f87171}.field-header[data-v-f7afa490]{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.btn-link-action[data-v-f7afa490]{background:transparent;border:none;color:var(--accent-cyan);font-size:11px;cursor:pointer;text-decoration:underline;padding:0}.btn-link-action[data-v-f7afa490]:hover{color:#fff}.hint-text[data-v-f7afa490]{font-size:11px;color:var(--text-muted);line-height:1.4;margin-top:-4px}.warning-callout[data-v-f7afa490]{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:8px 12px;border-radius:6px;font-size:12px;line-height:1.4;margin-top:4px}.admin-page[data-v-f5a669eb]{min-height:100vh;background-color:var(--bg-primary)}.nav-links[data-v-f5a669eb]{display:flex;gap:16px}.nav-item[data-v-f5a669eb]{color:var(--text-secondary);font-size:13px;font-weight:500;padding:6px 12px;border-radius:6px;transition:all .2s}.nav-item.active[data-v-f5a669eb],.nav-item[data-v-f5a669eb]:hover{color:var(--text-primary);background:var(--bg-card)}.admin-container[data-v-f5a669eb]{max-width:1400px;margin:0 auto;padding:32px 24px}.header-section[data-v-f5a669eb]{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.header-section h2[data-v-f5a669eb]{font-size:22px;font-weight:700}.subtitle[data-v-f5a669eb]{color:var(--text-secondary);font-size:13px;margin-top:4px}.select-input[data-v-f5a669eb]{width:240px}.mono-text[data-v-f5a669eb]{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary)}.details-cell[data-v-f5a669eb]{max-width:320px;font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hash-code[data-v-f5a669eb]{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--accent-cyan);background:#06b6d41a;padding:2px 6px;border-radius:4px}.empty-state[data-v-f5a669eb]{text-align:center;padding:40px;color:var(--text-muted)}:root{--bg-primary: #0a0e17;--bg-secondary: #121826;--bg-card: #182234;--bg-input: #0f1624;--border-color: #24324d;--border-focus: #3b82f6;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-blue: #3b82f6;--accent-cyan: #06b6d4;--accent-green: #10b981;--accent-red: #ef4444;--accent-amber: #f59e0b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh}code,pre{font-family:JetBrains Mono,monospace}a{color:var(--accent-blue);text-decoration:none}button{cursor:pointer;font-family:inherit}.gk-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;box-shadow:0 8px 24px #0006}.gk-input{width:100%;padding:12px 16px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .2s}.gk-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px #3b82f633}.gk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:8px;font-weight:600;font-size:14px;border:none;transition:all .2s}.gk-btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.gk-btn-primary:hover{background:linear-gradient(135deg,#3b82f6,#2563eb)}.gk-btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.gk-btn-secondary:hover{background:var(--border-color)}.gk-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.gk-badge-success{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.3)}.gk-badge-danger{background:#ef444426;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.gk-badge-info{background:#06b6d426;color:var(--accent-cyan);border:1px solid rgba(6,182,212,.3)}.gk-badge-warning{background:#f59e0b26;color:var(--accent-amber);border:1px solid rgba(245,158,11,.3)}.gk-navbar{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.gk-brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:18px;letter-spacing:-.5px}.gk-table{width:100%;border-collapse:collapse}.gk-table th{text-align:left;padding:12px 16px;background:var(--bg-secondary);color:var(--text-secondary);font-size:13px;border-bottom:1px solid var(--border-color)}.gk-table td{padding:14px 16px;border-bottom:1px solid var(--border-color);font-size:14px}.gk-table tr:hover td{background:#ffffff05}
