/* Admin-Bereich: baut auf werkstatt.css und den reDim-Rollenvariablen auf */
.admin__seite { display: grid; gap: var(--rd-space-5); }
.admin__hinweis { display: grid; gap: var(--rd-space-3); justify-items: start; max-width: 560px; }
.admin__hinweis-titel { font-family: var(--rd-font-headline); font-size: 1.5rem; color: var(--rd-text-stark); }
.admin__inhalt { display: grid; gap: var(--rd-space-5); }

/* Reiter */
.reiter { display: flex; gap: 2px; border-bottom: 1px solid var(--rd-linie); overflow-x: auto; scrollbar-width: none; }
.reiter__knopf { min-height: 44px; padding: 10px 18px; border: 0; border-bottom: 3px solid transparent; margin-bottom: -1px;
                 background: transparent; color: var(--rd-text-schwach); font-family: var(--rd-font-headline); font-weight: 700;
                 font-size: var(--rd-fs-small); white-space: nowrap; cursor: pointer; }
.reiter__knopf:hover { color: var(--rd-text-stark); }
.reiter__knopf[aria-selected="true"] { color: var(--rd-text-stark); border-bottom-color: var(--rd-orange); }
.tafel { display: grid; gap: var(--rd-space-4); }
.tafel__kopf { display: flex; justify-content: space-between; align-items: center; gap: var(--rd-space-3); flex-wrap: wrap; }
.tafel__text { color: var(--rd-text-schwach); font-size: var(--rd-fs-small); max-width: 70ch; }

/* Benutzer */
#benutzer-tabelle tr[data-id] { cursor: pointer; }
.admin-karte { display: grid; gap: 2px; padding: var(--rd-space-3); border: 1px solid var(--rd-linie); border-radius: var(--rd-radius-md);
               background: var(--rd-bg); cursor: pointer; }
.admin-karte__name { color: var(--rd-text-stark); }
.admin-karte__login, .admin-karte__rolle { font-size: var(--rd-fs-caption); color: var(--rd-text-schwach); }
.admin-marke--aktiv::before { background: var(--rd-success); }
.admin-marke--buero::before, .admin-marke--aus::before { background: var(--rd-text-schwach); }
.admin-marke--einrichtung::before { background: var(--rd-warning); }
.admin-marke--gesperrt::before, .admin-marke--geloescht::before { background: var(--rd-error); }
.feld-raster { display: grid; gap: var(--rd-space-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.einmalpasswort { display: grid; gap: var(--rd-space-2); padding: var(--rd-space-3); border-radius: var(--rd-radius-md);
                  border-left: 4px solid var(--rd-orange); background: var(--rd-bg-alt); }
.einmalpasswort code { font-size: 1.125rem; color: var(--rd-text-stark); letter-spacing: .04em; user-select: all; }

/* Rollen */
.rollen { display: grid; gap: var(--rd-space-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr)); }
.rolle { display: grid; gap: var(--rd-space-3); align-content: start; }
.rolle__kopf { display: grid; gap: 4px; }
.rolle__name { font-family: var(--rd-font-headline); font-weight: 700; }
.rolle__info { font-size: var(--rd-fs-caption); color: var(--rd-text-schwach); }
.rolle__rechte { list-style: none; padding: 0; margin: 0; display: grid; gap: 2px; }
.rolle__recht { display: flex; gap: var(--rd-space-2); align-items: flex-start; min-height: 40px; padding: 6px 4px; cursor: pointer;
                border-radius: var(--rd-radius-sm); }
.rolle__recht:hover { background: var(--rd-bg-alt); }
.rolle__recht input { margin-top: 3px; width: 18px; height: 18px; accent-color: var(--rd-orange); flex: none; }
.rolle__recht span { display: grid; }
.rolle__recht strong { font-weight: 400; font-size: var(--rd-fs-small); color: var(--rd-text-stark); }
.rolle__recht small { font-size: 11px; color: var(--rd-text-schwach); font-family: ui-monospace, monospace; }

/* System */
.system-form { display: grid; gap: var(--rd-space-4); }
#system-gruppen { display: grid; gap: var(--rd-space-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr)); }
.system-gruppe { display: grid; gap: var(--rd-space-4); align-content: start; border: 1px solid var(--rd-linie); }
.system-gruppe__titel { font-family: var(--rd-font-headline); font-weight: 700; font-size: 1.0625rem; color: var(--rd-text-stark); padding: 0 6px; }
.einstellung { display: grid; gap: 4px; }
