/*
 * Merdigit AI — a genuinely small utility layer. Not a utility framework: only classes that replace a pattern
 * repeated, verbatim, as inline style="" across several unrelated files (see PART 8). If you need a one-off layout
 * tweak used in exactly one place, an inline style is still the right tool - keep using it there.
 */

/* Visually hidden but present for assistive tech (e.g. the assertive live region next to the toast region). */
.sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* The "avatar/name + role" and "icon + label" pairing repeated in every sidebar footer and status row. */
.u-flex        { display: flex; align-items: center; }
.u-flex-col    { display: flex; flex-direction: column; }
.u-flex-wrap   { display: flex; align-items: center; flex-wrap: wrap; }
.u-flex-between{ display: flex; align-items: center; justify-content: space-between; }
.u-gap-1 { gap: var(--space-1); }
.u-gap-2 { gap: var(--space-2); }
.u-gap-3 { gap: var(--space-3); }
.u-gap-4 { gap: var(--space-4); }

/* Single-line truncation with ellipsis - repeated on tenant names, customer names, file names, ... */
.u-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
