.pm-page{background:radial-gradient(circle at 88% 2%,rgba(196,181,253,.18),transparent 30%)}
.pm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:16px 0 22px}.pm-kicker{font-size:11px;font-weight:900;letter-spacing:.13em;color:var(--accent-purple);margin-bottom:8px}.pm-head .btn{display:flex;align-items:center;gap:7px}.pm-head .btn svg{width:16px}
.pm-tabs{display:flex;gap:7px;overflow:auto;padding:6px;background:rgba(255,255,255,.58);border:1px solid var(--border-light);border-radius:16px;backdrop-filter:blur(16px);margin-bottom:18px}.pm-tabs button{padding:10px 14px;border-radius:11px;color:var(--text-muted);font-weight:700;white-space:nowrap}.pm-tabs button.active{background:#fff;color:var(--text-main);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.pm-content{min-height:420px}.pm-loading,.pm-empty{padding:60px;text-align:center;color:var(--text-muted)}.pm-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.pm-stat{background:rgba(255,255,255,.8);border:1px solid var(--border-light);border-radius:20px;padding:18px;box-shadow:0 14px 34px rgba(15,23,42,.04)}.pm-stat small{display:block;color:var(--text-muted);font-weight:700}.pm-stat strong{display:block;font-size:28px;margin-top:8px}.pm-stat i{font-style:normal;color:var(--accent-purple);font-size:11px}
.pm-panel{background:rgba(255,255,255,.82);border:1px solid var(--border-light);border-radius:22px;box-shadow:0 18px 44px rgba(15,23,42,.05);overflow:hidden}.pm-panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--border-light)}.pm-panel-head h2{font-size:16px;margin:0}.pm-tools{display:flex;gap:8px}.pm-tools input,.pm-tools select{border:1px solid var(--border-light);background:#fff;border-radius:10px;padding:9px 11px;min-width:150px}
.pm-table{width:100%;border-collapse:collapse}.pm-table th,.pm-table td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--border-light);font-size:13px}.pm-table th{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.pm-table tr:last-child td{border-bottom:0}.pm-person{display:flex;align-items:center;gap:10px}.pm-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--pastel-blue);color:var(--accent-blue);font-weight:800}.pm-person span{display:grid}.pm-person small{color:var(--text-muted)}.pm-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:var(--pastel-purple);color:var(--accent-purple);font-size:11px;font-weight:800}.pm-badge.disabled,.pm-badge.archived{background:#fee2e2;color:#b91c1c}.pm-row-actions{display:flex;gap:6px}.pm-row-actions button{padding:6px 8px;border-radius:8px;background:#f8fafc;color:var(--text-muted)}
.pm-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pm-group{background:rgba(255,255,255,.84);border:1px solid var(--border-light);border-radius:20px;padding:18px}.pm-group h3{margin:0 0 8px}.pm-group p{color:var(--text-muted);min-height:42px;line-height:1.6}.pm-group-meta{display:flex;justify-content:space-between;color:var(--text-muted);font-size:12px}
.pm-role-grid{display:grid;grid-template-columns:180px repeat(4,minmax(120px,1fr));overflow:auto}.pm-role-grid>div{padding:12px;border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.pm-role-grid .head{font-weight:800;background:#fafafa}.pm-switch{width:40px;height:23px;border-radius:999px;background:#d1d5db;position:relative}.pm-switch:after{content:'';position:absolute;width:17px;height:17px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.15s}.pm-switch.on{background:#7c3aed}.pm-switch.on:after{left:20px}.pm-switch.locked{opacity:.45;cursor:not-allowed}
.pm-audit-detail{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.pm-settings{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.pm-settings label,.pm-form-grid label{display:grid;gap:7px;color:var(--text-muted);font-size:12px;font-weight:700}.pm-settings input,.pm-settings select,.pm-form-grid input,.pm-form-grid select,.pm-form-grid textarea{border:1px solid var(--border-light);border-radius:11px;padding:11px 12px;background:#fff;font:inherit;color:var(--text-main)}
.pm-dialog{width:min(680px,calc(100vw - 28px));border:0;border-radius:24px;padding:0;box-shadow:0 30px 90px rgba(15,23,42,.28)}.pm-dialog::backdrop{background:rgba(15,23,42,.36);backdrop-filter:blur(4px)}.pm-dialog form{padding:24px}.pm-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.pm-dialog-head small{color:var(--accent-purple);font-weight:900}.pm-dialog-head h2{margin:5px 0 0}.pm-icon-btn svg{width:20px}.pm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.pm-form-grid .full{grid-column:1/-1}.pm-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.pm-toast{position:fixed;right:24px;bottom:24px;background:#0f172a;color:#fff;padding:12px 16px;border-radius:12px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.pm-toast.show{opacity:1;transform:none}
@media(max-width:1000px){.pm-stat-grid{grid-template-columns:repeat(2,1fr)}.pm-group-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.pm-head{flex-direction:column}.pm-stat-grid,.pm-group-grid,.pm-settings,.pm-form-grid{grid-template-columns:1fr}.pm-form-grid .full{grid-column:1}.pm-panel{overflow:auto}}

/* Final V2 public-management interaction layer. */
.pm-head-actions{display:flex;gap:8px}.pm-badge.suspended,.pm-badge.archived{background:#fee2e2;color:#b91c1c}.pm-badge.pending_activation{background:#fff7ed;color:#c2410c}.pm-table tbody tr[data-user-id]{cursor:pointer;transition:.15s}.pm-table tbody tr[data-user-id]:hover{background:rgba(124,58,237,.035)}
.pm-role-grid{grid-template-columns:210px repeat(3,minmax(140px,1fr))}.pm-dialog-compact{width:min(560px,calc(100vw - 28px))}.pm-dialog-body{padding:24px}.pm-dialog-head p,.pm-muted{margin:7px 0 0;color:var(--text-muted);font-size:12px;line-height:1.6}.pm-required-only input{font-size:17px;padding:15px}.pm-required-only span{font-size:11px;color:var(--accent-purple);font-weight:600}.pm-optional{border:1px solid var(--border-light);border-radius:14px;padding:12px}.pm-optional summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--text-muted)}.pm-optional-grid{margin-top:14px}.pm-success-icon{width:54px;height:54px;border-radius:18px;background:#dcfce7;color:#16a34a;display:grid;place-items:center}.pm-success-icon svg{width:26px}.pm-copy-field{display:grid;gap:8px;margin-top:20px;color:var(--text-muted);font-size:12px;font-weight:700}.pm-copy-field>div{display:flex;gap:8px}.pm-copy-field input{flex:1;min-width:0;border:1px solid var(--border-light);border-radius:11px;padding:11px;background:#f8fafc}.pm-security-note{display:flex;gap:8px;align-items:flex-start;padding:12px;border-radius:13px;background:#f5f3ff;color:#6d28d9;font-size:12px;line-height:1.6}.pm-security-note svg{width:17px;flex:none}.pm-toast{z-index:100}
.pm-drawer-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.28);backdrop-filter:blur(2px);z-index:70}.pm-drawer{position:fixed;right:0;top:0;bottom:0;width:min(480px,94vw);background:#fff;z-index:71;box-shadow:-24px 0 70px rgba(15,23,42,.18);transform:translateX(105%);transition:transform .22s ease;overflow:auto}.pm-drawer.open{transform:none}.pm-drawer-head{padding:22px;border-bottom:1px solid var(--border-light);display:flex;align-items:flex-start;justify-content:space-between;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);z-index:2}.pm-drawer-person{display:flex;gap:12px;align-items:center}.pm-drawer-person .pm-avatar{width:48px;height:48px;border-radius:15px;font-size:18px}.pm-drawer-body{padding:20px}.pm-detail-section{padding:16px 0;border-bottom:1px solid var(--border-light)}.pm-detail-section:last-child{border-bottom:0}.pm-detail-section h3{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 12px}.pm-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pm-detail-item small{display:block;color:var(--text-muted);margin-bottom:4px}.pm-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.pm-detail-actions .danger{color:#b91c1c;background:#fff1f2;border-color:#fecdd3}.pm-ability-list{display:flex;flex-wrap:wrap;gap:6px}.pm-ability-list span{padding:5px 8px;border-radius:999px;background:#f5f3ff;color:#6d28d9;font-size:11px}.pm-timeline{display:grid;gap:10px}.pm-timeline article{padding-left:14px;border-left:2px solid #ddd6fe}.pm-timeline small{color:var(--text-muted)}
.pm-import-input{display:grid;gap:8px;color:var(--text-muted);font-size:12px;font-weight:700}.pm-import-input textarea{border:1px solid var(--border-light);border-radius:13px;padding:12px;resize:vertical}.pm-import-preview{max-height:240px;overflow:auto;margin-top:14px}.pm-import-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:9px;border-bottom:1px solid var(--border-light);font-size:12px}.pm-import-row .bad{color:#b91c1c}.pm-filter-count{color:var(--text-muted);font-size:12px;margin-left:6px}
@media(max-width:680px){.pm-head-actions{width:100%;flex-wrap:wrap}.pm-detail-grid{grid-template-columns:1fr}.pm-copy-field>div{flex-direction:column}}
