/* ═══ ACCESS SCREEN (shared RL02/RL03) ═══ */
.rl-access{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 120px)}
.rl-access-card{background:var(--g-surface);border:1px solid var(--g-border);border-radius:10px;padding:32px;width:420px;box-shadow:var(--shadow)}
.rl-access-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--g-text-muted);margin-bottom:4px}
.rl-access-title{font-size:18px;font-weight:600;color:var(--g-text);margin-bottom:4px}
.rl-access-sub{font-size:12px;color:var(--g-text-muted);margin-bottom:24px;line-height:1.5}
.rl-access-field{margin-bottom:16px}
.rl-access-actions{display:flex;gap:8px}
.rl-access-btn{flex:1;padding:10px;font-family:inherit;font-size:13px;font-weight:500;border-radius:6px;cursor:pointer;border:none;transition:all .15s}
.rl-access-btn-go{background:var(--g-consult);color:var(--accent-contrast)}
.rl-access-btn-go:hover{background:var(--g-create)}
.rl-access-btn-go:disabled{opacity:.5;cursor:not-allowed}
.rl-access-btn-cancel{background:var(--g-surface-sec);color:var(--g-text-muted);border:1px solid var(--g-border)}
.rl-access-btn-cancel:hover{color:var(--g-text)}
.rl-access-hint{margin-top:16px;font-size:11px;color:var(--g-text-muted)}

/* Role context bar */
.rl-ctx{display:flex;align-items:center;justify-content:space-between;background:var(--g-surface);border:1px solid var(--g-border);border-radius:8px;padding:12px 16px;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.rl-ctx-left{display:flex;align-items:center;gap:16px}
.rl-ctx-code{font-size:16px;font-weight:600;color:var(--g-text)}
.rl-ctx-name{font-size:13px;color:var(--g-text-muted)}
.rl-ctx-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rl-type-badge{padding:4px 10px;border-radius:14px;font-size:10px;font-weight:600;letter-spacing:.4px}
.rl-type-system{background:var(--g-err-bg);color:var(--g-err)}
.rl-type-tenant{background:var(--g-warn-bg);color:var(--g-warn)}
.rl-type-user{background:var(--g-info-bg);color:var(--g-text-sec)}
.rl-status-active{padding:4px 10px;border-radius:14px;font-size:10px;font-weight:500;background:var(--g-ok-bg);color:var(--g-ok)}
.rl-status-inactive{padding:4px 10px;border-radius:14px;font-size:10px;font-weight:500;background:var(--g-err-bg);color:var(--g-err)}
.rl-ctx-meta{font-size:10px;color:var(--g-text-muted)}

/* Type change warning */
.rl-type-warn{padding:10px 14px;border-radius:6px;background:var(--g-warn-bg);border:1px solid var(--g-warn-border);color:var(--g-warn);font-size:12px;margin-bottom:12px;display:flex;align-items:flex-start;gap:8px;line-height:1.5}

/* RL03 Overview cards */
.rl-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.rl-overview-card{background:var(--g-surface);border:1px solid var(--g-border);border-radius:8px;padding:14px 16px}
.rl-overview-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--g-text-muted);margin-bottom:4px}
.rl-overview-value{font-size:22px;font-weight:600;color:var(--g-text)}
.rl-overview-sub{font-size:11px;color:var(--g-text-muted);margin-top:2px}

/* RL03 read-only indicators */
.rl-chk-on{color:var(--g-ok);font-weight:600;font-size:14px}
.rl-chk-off{color:var(--g-border);font-size:14px}
.rl-chip-ro{display:inline-flex;align-items:center;padding:4px 10px;border-radius:14px;font-size:11px;font-weight:500;background:var(--g-surface-sec);color:var(--g-text-sec);border:1px solid var(--g-border);margin:2px}
.rl-no-data{font-size:11px;color:var(--g-text-muted);font-style:italic}

/* Actions bar */
.rl-action-bar{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid var(--g-border)}
.rl-action-left{display:flex;gap:8px;align-items:center}
.rl-action-right{display:flex;gap:8px}
.rl-btn-toggle{padding:8px 14px;font-family:inherit;font-size:11px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s}
.rl-btn-activate{background:var(--g-ok-bg);color:var(--g-ok);border:1px solid var(--g-ok-border)}
.rl-btn-activate:hover{background:var(--g-ok);color:var(--accent-contrast)}
.rl-btn-deactivate{background:var(--g-err-bg);color:var(--g-err);border:1px solid var(--g-err-border)}
.rl-btn-deactivate:hover{background:var(--g-err);color:var(--accent-contrast)}
.rl-btn-goto-edit{padding:8px 18px;font-family:inherit;font-size:12px;font-weight:500;background:var(--g-consult);color:var(--accent-contrast);border:none;border-radius:6px;cursor:pointer}
.rl-btn-goto-edit:hover{background:var(--g-create)}
.rl-mode-label{font-size:12px;color:var(--g-text-muted)}
