﻿/* E2ris V2 – Bereich rechtsregister. Nur Tokens der Components Library, Klassen mit Präfix e2-. */

.e2-rr-gedaempft {
    color: var(--oo-color-text-subtle);
}

/* Schmale, gut lesbare Spalte (neuralgische Fragen) */
.e2-rr-lesespalte {
    max-width: 64rem;
}

.e2-rr-filter__bereich {
    min-width: 14rem;
    max-width: 28rem;
    flex: 1 1 18rem;
}

.e2-rr-tasten kbd {
    font-family: inherit;
    font-size: var(--oo-font-size-xs);
    padding: 0 var(--oo-space-1);
    border: 1px solid var(--oo-color-border);
    border-radius: var(--oo-radius-sm);
    background: var(--oo-color-surface);
}

/* ---------- Baum (Detailfragen, Pflichten) ---------- */
.e2-rr-gruppe {
    margin: var(--oo-space-3) 0 0;
    font-size: var(--oo-font-size-sm);
    font-weight: 600;
    color: var(--oo-color-text-subtle);
}

.e2-rr-knoten {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--oo-space-2);
    width: 100%;
    text-align: left;
}

.e2-rr-knoten__name {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-1);
    min-width: 0;
    overflow-wrap: anywhere;
}

.e2-rr-knoten__zahlen {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-1);
}

.e2-rr-knoten__fortschritt {
    width: 6rem;
}

.e2-rr-bereichgilt {
    margin-bottom: var(--oo-space-2);
}

.e2-rr-normfrage {
    margin: var(--oo-space-1) 0 var(--oo-space-2);
    color: var(--oo-color-text-subtle);
}

/* ---------- Detailfrage ---------- */
.e2-rr-fragen {
    display: flex;
    flex-direction: column;
    border-top: 1px solid var(--oo-color-border);
}

.e2-rr-frage {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--oo-space-2) var(--oo-space-4);
    padding: var(--oo-space-2) var(--oo-space-2);
    border-bottom: 1px solid var(--oo-color-border);
    border-left: 3px solid transparent;
    border-radius: var(--oo-radius-sm);
    outline: none;
}

.e2-rr-frage--offen {
    border-left-color: var(--oo-danger);
}

.e2-rr-frage:focus-visible,
.e2-rr-frage:focus-within {
    background: color-mix(in oklch, var(--oo-primary) 8%, var(--oo-color-surface));
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--oo-primary) 40%, transparent);
}

.e2-rr-frage__text {
    display: flex;
    flex-direction: column;
    gap: var(--oo-space-1);
    flex: 1 1 22rem;
    min-width: 0;
}

.e2-rr-frage__name {
    font-weight: 500;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.e2-rr-frage__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-1) var(--oo-space-2);
    font-size: var(--oo-font-size-sm);
}

.e2-rr-frage__antwort {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-1);
}

.e2-rr-frage__eingabe {
    width: 10rem;
}

/* ---------- Pflichten ---------- */
.e2-rr-normleiste {
    margin-bottom: var(--oo-space-2);
}

.e2-rr-pflichten {
    display: flex;
    flex-direction: column;
    gap: var(--oo-space-2);
}

.e2-rr-pflicht {
    display: flex;
    flex-direction: column;
    gap: var(--oo-space-2);
    padding: var(--oo-space-3);
    border: 1px solid var(--oo-color-border);
    border-radius: var(--oo-radius-md);
    background: var(--oo-color-surface);
}

.e2-rr-pflicht--gewaehlt {
    border-color: var(--oo-primary);
    background: color-mix(in oklch, var(--oo-primary) 6%, var(--oo-color-surface));
}

.e2-rr-pflicht--hervor {
    box-shadow: 0 0 0 2px var(--oo-warning);
}

.e2-rr-pflicht__kopf {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-2);
}

.e2-rr-pflicht__block {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--oo-space-1) var(--oo-space-2);
    flex: 1 1 14rem;
    min-width: 0;
    overflow-wrap: anywhere;
}

.e2-rr-pflicht__text {
    display: flex;
    flex-direction: column;
    gap: var(--oo-space-1);
    max-width: 75ch;
    line-height: 1.5;
}

.e2-rr-pflicht__begruendung {
    display: flex;
    gap: var(--oo-space-2);
    align-items: flex-start;
    padding: var(--oo-space-2);
    border-radius: var(--oo-radius-sm);
    background: var(--oo-color-background);
}

.e2-rr-datei,
.e2-rr-pflicht__dokumente a,
.e2-rr-pflicht__dokumente span {
    display: inline-flex;
    align-items: center;
    gap: var(--oo-space-1);
    margin-right: var(--oo-space-3);
}

.e2-rr-pflicht__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-1) var(--oo-space-3);
    font-size: var(--oo-font-size-sm);
}

.e2-rr-pflicht__meta > span {
    display: inline-flex;
    align-items: center;
    gap: var(--oo-space-1);
}

.e2-rr-pflicht__aktionen {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-2);
}

/* Massenbearbeitung: Leiste bleibt am unteren Rand sichtbar */
.e2-rr-massenleiste {
    position: sticky;
    bottom: var(--oo-space-3);
    z-index: var(--oo-z-dropdown);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--oo-space-2);
    padding: var(--oo-space-3);
    border: 1px solid var(--oo-color-border-strong);
    border-radius: var(--oo-radius-md);
    background: var(--oo-color-surface);
    box-shadow: var(--oo-shadow-lg);
}

/* ---------- Normtext ---------- */
.e2-rr-normtext {
    display: flex;
    flex-direction: column;
    gap: var(--oo-space-3);
    max-width: 70ch;
    line-height: 1.6;
}

.e2-rr-normtext h3 {
    margin: var(--oo-space-3) 0 0;
    font-size: var(--oo-font-size-md);
}

.e2-rr-normtext__langtitel {
    margin: 0;
    font-size: var(--oo-font-size-lg);
}

/* ---------- Normen je Stelle ---------- */
.e2-rr-ebene {
    display: flex;
    flex-direction: column;
}

.e2-rr-ebene--2 {
    padding-left: var(--oo-space-4);
}

.e2-rr-ebene--3 {
    padding-left: var(--oo-space-8);
}

.e2-rr-stelle-neu {
    width: 11rem;
}

.e2-rr-umbruch {
    white-space: normal;
    overflow-wrap: break-word;
    min-width: 8rem;
}

.e2-rr-stellenspalte {
    min-width: 14rem;
    width: 40%;
}

@media (max-width: 47.99rem) {
    .e2-rr-knoten__fortschritt {
        width: 4rem;
    }

    /* Tastenkürzel sind am Handy ohne Tastatur nutzlos */
    .e2-rr-tasten,
    .e2-rr-nur-breit {
        display: none;
    }

    .e2-rr-stellenspalte {
        min-width: 8rem;
        width: 45%;
    }

    .e2-rr-stelle-neu {
        width: 100%;
    }

    .e2-rr-frage__antwort {
        width: 100%;
    }

    .e2-rr-frage__eingabe {
        flex: 1 1 8rem;
    }

    .e2-rr-ebene--2 {
        padding-left: var(--oo-space-2);
    }

    .e2-rr-ebene--3 {
        padding-left: var(--oo-space-4);
    }
}
