/* AccessProfile: keep the native Kendo tree and its permission hierarchy intact. */
.accessprofile-page { min-width: 0; }
.accessprofile-back { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 10px; }
.accessprofile-page .card { margin-bottom: 20px; }
.accessprofile-page .card-body { padding: 24px; }
.accessprofile-section-title { margin: 0 0 8px; font-size: 16px; font-weight: 600; }
.accessprofile-description { margin: 0; color: var(--mkp-muted-foreground); line-height: 1.5; }
.accessprofile-identity > .card-body { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(280px, 1.5fr); gap: 24px; align-items: start; }
.accessprofile-name { max-width: 560px; }
.accessprofile-name .field-validation-error { display: block; margin-top: 6px; }
.accessprofile-permissions .card-footer { padding: 16px 24px; background: var(--mkp-surface); }
.accessprofile-tree { margin-top: 24px; }
.accessprofile-toolbar { display: flex; gap: 16px; margin-bottom: 20px; }
.accessprofile-search { width: 360px; max-width: 100%; }
.accessprofile-list #Grid { background: var(--mkp-surface); }
.accessprofile-list #Grid > .k-grid-toolbar { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 12px 24px; padding: 16px; background: var(--mkp-surface); }
.accessprofile-list #Grid .accessprofile-search { display: block; margin-inline-end: auto; padding: 0; }
.accessprofile-list #Grid .k-toolbar-item:has(.accessprofile-search-slot) { flex: 1 1 360px; min-width: 0; }
.accessprofile-list .accessprofile-search-slot { width: 100%; min-width: 0; }
.accessprofile-list .k-grid-toolbar .form-label { margin-bottom: 6px; }
.accessprofile-list #Grid :is(.k-grid-header-table, .k-grid-table) > colgroup > col:not([style*="width"]) { width: auto; }
.accessprofile-list #Grid th[data-field="Id"] .k-column-title { flex: 1; text-align: center; }
.accessprofile-list #Grid td:first-child { overflow-wrap: anywhere; }
.accessprofile-empty { padding: 32px 16px; text-align: center; }
.accessprofile-empty strong { display: block; margin-bottom: 6px; font-weight: 600; }
.accessprofile-empty p { margin: 0; color: var(--mkp-muted-foreground); }
@media (max-width: 991.98px) {
    .accessprofile-identity > .card-body { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 575.98px) {
    .accessprofile-page .card-body { padding: 16px; }
    .accessprofile-permissions .card-footer { padding: 16px; }
    .accessprofile-search { width: 100%; }
}
