| /* settings/perms.css β wave 33 (owner item 11, W33-T34/T38). | |
| * | |
| * β CONTRACT C4: `index.css` is lane B's. Everything the permission editor's | |
| * per-database DISCLOSURE needs is new, so it lives here and is imported by | |
| * `PermsEditor.tsx` β the established practice (`query.css`, `navExtras.css`, | |
| * `SwipeView.css`). Nothing in this file redefines an `index.css` rule; it only | |
| * styles classes that did not exist before this wave. | |
| * | |
| * WHY A DISCLOSURE AT ALL. Owner, 2026-08-14: *"the database should not show all | |
| * immediately the detail (for filter or hide fields), the user should have the | |
| * ability to see ALL databases"*. Those two clauses pull against each other β | |
| * more databases, less detail per database β and an accordion is what satisfies | |
| * both. Before wave 33 the list was a fixed TWO and every panel rendered inline; | |
| * it is now every database the tenant has. | |
| */ | |
| /* The trailing controls of a module head, grouped as ONE flex child so the | |
| `space-between` rule in `index.css` still sees exactly two children. */ | |
| .set-perm-headend { | |
| display: flex; | |
| align-items: center; | |
| gap: 10px; | |
| flex: none; | |
| } | |
| /* Smaller than a primary action and quieter than `Copy toβ¦`: this button reveals | |
| detail, it does not commit anything. It borrows `.set-secondary`'s border, | |
| surface and focus ring rather than restating them β a second definition of the | |
| button chrome is a second place for the focus ring to go missing. */ | |
| .set-perm-disclose { | |
| font-size: var(--lp-fs-2xs); | |
| padding: 3px 9px; | |
| white-space: nowrap; | |
| } | |
| /* The open state reads as pressed, so a scrolled-away head still says which | |
| database owns the panels below it. */ | |
| .set-perm-disclose[aria-expanded="true"] { | |
| border-color: var(--lp-blue-deep); | |
| color: var(--lp-blue-deep); | |
| } | |
| @media (max-width: 640px) { | |
| /* The head wraps before the label truncates: a database name is the one thing | |
| in this row that cannot be guessed from context. */ | |
| .set-perm-headend { flex-wrap: wrap; justify-content: flex-end; } | |
| } | |