
/* RBAC Lock v4 — forcé :disabled + .rbac-locked (style rupture stock) */
button:disabled,
input:disabled,
select:disabled,
textarea:disabled,
a[aria-disabled="true"],
.rbac-locked,
button.rbac-locked,
a.rbac-locked,
input.rbac-locked,
.select.rbac-locked,
.btn.rbac-locked,
.btn-primary.rbac-locked,
.btn-primary:disabled,
.btn-danger:disabled,
.btn-edit.rbac-locked,
.btn-delete.rbac-locked,
.btn-delete:disabled,
.btn-batch:disabled,
.btn-batch.rbac-locked,
.btn-toggle-visibility.rbac-locked,
.wa-btn:disabled,
.wa-btn.rbac-locked,
.btn-batch-show:disabled,
.btn-batch-hide:disabled {
  opacity: 0.45 !important;
  filter: grayscale(0.7) !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  box-shadow: none !important;
  transform: none !important;
  user-select: none !important;
}
button:disabled,
.btn-primary:disabled,
.btn-primary.rbac-locked,
.btn-batch-show:disabled,
.btn-batch-hide:disabled,
button.rbac-locked.btn-primary {
  background: #94a3b8 !important;
  background-image: none !important;
  border-color: #94a3b8 !important;
  color: #f1f5f9 !important;
}
button:disabled:hover,
.rbac-locked:hover,
.btn-primary:disabled:hover {
  opacity: 0.45 !important;
  filter: grayscale(0.7) !important;
  transform: none !important;
  box-shadow: none !important;
}
[data-rbac-locked="1"] {
  pointer-events: none !important;
  cursor: not-allowed !important;
}
.rbac-lock-badge { margin-left: 6px; font-size: 0.85rem; }
