/* /Layout/MainLayout.razor.rz.scp.css */

/* Layout-Stile liegen in der globalen app.css, da sie von mehreren */
/* Layouts (MainLayout, EinfachesLayout) gemeinsam genutzt werden.    */
/* /Layout/ModulLayout.razor.rz.scp.css */
/* Modul-Layout-Stile liegen in der globalen app.css. */
/* /Pages/Anmelden.razor.rz.scp.css */
/* Anmeldeseite: die weiße Karte mittig auf der hellen Fläche. */

.anmelde-flaeche[b-cwugda1x2i] {
    display: flex;
    justify-content: center;
    padding-top: 4rem;
}

.anmelde-karte[b-cwugda1x2i] {
    width: 100%;
    max-width: 440px;
    padding: 2.5rem;
    box-sizing: border-box;
}

.anmelde-titel[b-cwugda1x2i] {
    margin: 0 0 0.75rem 0;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
}

.anmelde-text[b-cwugda1x2i] {
    margin: 0 0 1.75rem 0;
    text-align: center;
    font-size: 0.95rem;
    color: var(--allit-text-leise);
}

.anmelde-feldgruppe[b-cwugda1x2i] {
    margin-bottom: 1.25rem;
}

.anmelde-knopf[b-cwugda1x2i] {
    margin-top: 0.5rem;
}

.anmelde-fehler[b-cwugda1x2i] {
    margin-bottom: 1rem;
    padding: 0.7rem 0.9rem;
    background-color: var(--allit-rot-hell);
    color: var(--allit-rot-dunkel);
    border-radius: var(--allit-radius-klein);
    font-size: 0.9rem;
}
/* /Pages/Home.razor.rz.scp.css */
/* Modulübersicht - die erste Seite nach der Anmeldung. */

/* --- Willkommens-Banner: eigene weiße Box über den Kacheln --- */
.modul-banner[b-qhvvi0j3kt] {
    padding: 2.5rem 2rem;
    margin: 0 auto 1.75rem auto;
    text-align: center;
    max-width: 1120px;
}

.modul-banner-titel[b-qhvvi0j3kt] {
    margin: 0 0 0.35rem 0;
    font-size: 2rem;
    font-weight: 700;
}

.modul-banner-text[b-qhvvi0j3kt] {
    margin: 0;
    color: var(--allit-text-leise);
}

/* --- Verwaltungs-Leiste: bewusst horizontal, hebt sich von den quadratischen
   Modulkacheln ab und markiert so die übergeordnete Betreiber-Ebene. --- */
.verwaltung-leiste[b-qhvvi0j3kt] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.1rem 1.4rem;
    margin: 0 auto 1.75rem auto;
    max-width: 1120px;
    cursor: pointer;
    border-left: 4px solid var(--allit-rot);
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.verwaltung-leiste:hover[b-qhvvi0j3kt] {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(31, 36, 48, 0.16);
}

.verwaltung-leiste-icon[b-qhvvi0j3kt] {
    flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    background-color: var(--allit-rot-hell);
    border-radius: var(--allit-radius-klein);
    font-size: 1.5rem;
    line-height: 1;
}

.verwaltung-leiste-text[b-qhvvi0j3kt] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.verwaltung-leiste-titel[b-qhvvi0j3kt] {
    font-size: 1.15rem;
    font-weight: 700;
}

.verwaltung-leiste-beschreibung[b-qhvvi0j3kt] {
    font-size: 0.9rem;
    color: var(--allit-text-leise);
}

.verwaltung-leiste-pfeil[b-qhvvi0j3kt] {
    flex-shrink: 0;
    color: var(--allit-rot);
    font-size: 1.35rem;
    font-weight: 700;
    transition: transform 0.12s ease;
}

.verwaltung-leiste:hover .verwaltung-leiste-pfeil[b-qhvvi0j3kt] {
    transform: translateX(3px);
}

/* --- Kachelraster --- */
.modul-raster[b-qhvvi0j3kt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
    max-width: 1120px;
    margin: 0 auto;
}

.modul-karte[b-qhvvi0j3kt] {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Das aktive Modul ist anklickbar - Cursor und ein Anheben beim Überfahren. */
.modul-karte-aktiv[b-qhvvi0j3kt] {
    cursor: pointer;
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.modul-karte-aktiv:hover[b-qhvvi0j3kt] {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(31, 36, 48, 0.16);
}

/* Geplante Module sind sichtbar, aber gedämpft und nicht anklickbar. */
.modul-karte-geplant[b-qhvvi0j3kt] {
    opacity: 0.62;
}

.modul-karte-kopf[b-qhvvi0j3kt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.modul-symbol[b-qhvvi0j3kt] {
    font-size: 1.9rem;
    line-height: 1;
}

.modul-name[b-qhvvi0j3kt] {
    font-size: 1.2rem;
    font-weight: 700;
}

.modul-beschreibung[b-qhvvi0j3kt] {
    font-size: 0.9rem;
    color: var(--allit-text-leise);
}

/* Nummern-Kasten unten in der Kachel (wie im W6-Mockup).
   margin-top:auto schiebt ihn an den unteren Rand, damit alle Kacheln
   trotz unterschiedlich langer Beschreibung gleich aussehen. */
.modul-nummer[b-qhvvi0j3kt] {
    margin-top: auto;
    align-self: flex-start;
    padding: 0.35rem 0.9rem;
    background-color: var(--allit-hintergrund);
    border: 1px solid var(--allit-rahmen);
    border-radius: var(--allit-radius-klein);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--allit-text-leise);
}

/* Statusmarke oben rechts in der Kachel. */
.modul-marke[b-qhvvi0j3kt] {
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.modul-marke-aktiv[b-qhvvi0j3kt] {
    background-color: var(--allit-rot-hell);
    color: var(--allit-rot-dunkel);
}

.modul-marke-geplant[b-qhvvi0j3kt] {
    background-color: var(--allit-rahmen);
    color: var(--allit-text-leise);
}
/* /Pages/Mandanten.razor.rz.scp.css */
/* Listen-Stile liegen in der globalen app.css (von mehreren Seiten genutzt). */
/* /Pages/Verwaltung.razor.rz.scp.css */
/* Einstiegsseite des Verwaltungsbereichs. Zeilen-Optik passend zur
   Verwaltungs-Leiste auf der Startseite - bewusst anders als die Modulkacheln. */

.verw-kopf[b-qq7zt1if4c] {
    margin-bottom: 1.5rem;
}

.verw-titel[b-qq7zt1if4c] {
    margin: 0 0 0.2rem 0;
    font-size: 1.6rem;
    font-weight: 700;
}

.verw-text[b-qq7zt1if4c] {
    margin: 0;
    color: var(--allit-text-leise);
}

.verw-optionen[b-qq7zt1if4c] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 640px;
}

.verw-zeile[b-qq7zt1if4c] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.1rem 1.4rem;
    cursor: pointer;
    border-left: 4px solid var(--allit-rot);
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.verw-zeile:hover[b-qq7zt1if4c] {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(31, 36, 48, 0.16);
}

.verw-zeile-icon[b-qq7zt1if4c] {
    flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    background-color: var(--allit-rot-hell);
    border-radius: var(--allit-radius-klein);
    font-size: 1.5rem;
    line-height: 1;
}

.verw-zeile-text[b-qq7zt1if4c] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.verw-zeile-titel[b-qq7zt1if4c] {
    font-size: 1.15rem;
    font-weight: 700;
}

.verw-zeile-beschreibung[b-qq7zt1if4c] {
    font-size: 0.9rem;
    color: var(--allit-text-leise);
}

.verw-zeile-pfeil[b-qq7zt1if4c] {
    flex-shrink: 0;
    color: var(--allit-rot);
    font-size: 1.35rem;
    font-weight: 700;
    transition: transform 0.12s ease;
}

.verw-zeile:hover .verw-zeile-pfeil[b-qq7zt1if4c] {
    transform: translateX(3px);
}
