/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ===== App Root ===== */

.app-root[b-kt8ozboyql] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 0;
}

/* ===== Header ===== */

.main-header[b-kt8ozboyql] {
    height: 68px;
    z-index: 20;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
    flex-shrink: 0;
    position: relative;
}

.header-logo[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    text-decoration: none;
    flex-shrink: 0;
}

.header-logo-img[b-kt8ozboyql] {
    height: 60px;
    width: auto;
    image-rendering: optimizeQuality;
    -webkit-font-smoothing: antialiased;
    shape-rendering: geometricPrecision;
}

.header-title[b-kt8ozboyql] {
    font-size: 0.875rem;
    color: var(--muted-foreground);
    white-space: nowrap;
}

.header-spacer[b-kt8ozboyql] {
    flex: 1;
}

.header-user[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    padding: 0.375rem 0.5rem;
    border-radius: var(--radius);
    position: relative;
    user-select: none;
}

.header-user:hover[b-kt8ozboyql] {
    background-color: var(--muted);
}

.header-user-name[b-kt8ozboyql] {
    font-size: 0.875rem;
    font-weight: var(--font-weight-medium);
}

.dropdown-overlay[b-kt8ozboyql] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 49;
}

.header-dropdown[b-kt8ozboyql] {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 0.375rem;
    padding: 0.375rem 0;
    background-color: var(--popover);
    color: var(--popover-foreground);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    min-width: 240px;
    z-index: 50;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14);
}

.header-dropdown-item[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
    color: var(--foreground);
    text-decoration: none;
    transition: background-color 0.15s ease;
}

.header-dropdown-item:hover[b-kt8ozboyql] {
    background-color: var(--muted);
    text-decoration: none;
}

.header-dropdown-separator[b-kt8ozboyql] {
    height: 1px;
    background-color: var(--border);
    margin: 0.25rem 0;
}

.header-dropdown-item-danger[b-kt8ozboyql] {
    color: var(--destructive);
}

.header-dropdown-item-danger:hover[b-kt8ozboyql] {
    background-color: #fee2e2;
    color: var(--destructive);
}

/* ===== Layout with sidebar ===== */

[b-kt8ozboyql] .layout {
    display: flex;
    flex: 1 1 0;
    min-height: 0;
    overflow: hidden;
}

[b-kt8ozboyql] .sidebar {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 2px 0 10px rgba(0, 0, 0, 0.14);
}

.sidebar-header[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    background-color: #ffffff;
    border-bottom: 1px solid var(--sidebar-border);
    height: 48px;
    min-height: 48px;
    max-height: 48px;
    flex-shrink: 0;
    box-sizing: border-box;
    overflow: hidden;
}

.sidebar-header-collapsed[b-kt8ozboyql] {
    justify-content: center;
    padding: 1rem 0.5rem;
}

.sidebar-header-collapsed .sidebar-header-label[b-kt8ozboyql] {
    display: none;
}

.sidebar-header-label[b-kt8ozboyql] {
    font-size: 0.875rem;
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
}

.sidebar-toggle-btn[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: none;
    color: var(--muted-foreground);
    cursor: pointer;
    border-radius: var(--radius);
    transition: background-color 0.15s ease;
    flex-shrink: 0;
}

.sidebar-toggle-btn:hover[b-kt8ozboyql] {
    background-color: var(--muted);
    color: var(--foreground);
}

.sidebar-nav[b-kt8ozboyql] {
    flex: 1;
    overflow-y: auto;
    /* Kein waagerechter Rollbalken, wenn ein Eintrag breiter ist als die (eingeklappte) Sidebar. */
    overflow-x: hidden;
}

/* ===== Sidebar App Info ===== */

.sidebar-app-info[b-kt8ozboyql] {
    padding: 1rem 1.5rem;
    background-color: var(--card);
    border-top: 1px solid var(--border);
    font-size: 0.6875rem;
    color: var(--muted-foreground);
    line-height: 1.6;
    flex-shrink: 0;
    overflow: hidden;
}

.sidebar-text[b-kt8ozboyql] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: opacity 0.1s ease;
}

.sidebar-version[b-kt8ozboyql] {
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
}

/* ===== Sidebar Resize Handle ===== */

.sidebar-resize-handle[b-kt8ozboyql] {
    position: absolute;
    top: 0;
    right: 0;
    width: 4px;
    height: 100%;
    cursor: col-resize;
    z-index: 15;
    transition: background-color 0.15s ease;
}

.sidebar-resize-handle:hover[b-kt8ozboyql] {
    background-color: rgba(12, 93, 166, 0.5);
}

/* ===== Main Content ===== */

.main-content[b-kt8ozboyql] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    min-height: 0;
}

[b-kt8ozboyql] .action-bar {
    z-index: 5;
    flex-shrink: 0;
}

.action-bar-spacer[b-kt8ozboyql] {
    flex: 1;
}

[b-kt8ozboyql] .ablage-title {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    justify-content: center;
    align-items: flex-start;
    min-width: 0;
    min-height: 2.5rem;
    flex: 0 1 auto;
    overflow: hidden;
}

[b-kt8ozboyql] .ablage-title-name {
    font-size: 1.125rem;
    font-weight: var(--font-weight-medium);
    margin: 0;
    padding: 0;
    line-height: 1.2;
    border: none;
    outline: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-kt8ozboyql] .ablage-title-pfad {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.6875rem;
    color: var(--muted-foreground);
    line-height: 1;
    height: 0.6875rem;
    min-width: 0;
}

[b-kt8ozboyql] .ablage-title-pfad-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: monospace;
}

[b-kt8ozboyql] .ablage-pfad-copy {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--muted-foreground);
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    flex-shrink: 0;
    height: 0.6875rem;
    min-height: 0;
    overflow: visible;
    line-height: 0;
    transition: color 0.15s ease;
}

[b-kt8ozboyql] .ablage-pfad-copy:hover {
    color: var(--primary);
}

[b-kt8ozboyql] .ablage-pfad-copy svg {
    width: 13px;
    height: 13px;
    overflow: visible;
}

[b-kt8ozboyql] .content-area {
    flex: 1;
    overflow-y: auto;
    padding: 2rem;
    position: relative;
}

/* ---- Jahr-Umschalter (Modul-Kontext) ---- */
.header-jahr[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: 1.5rem;
    padding-left: 1.5rem;
    border-left: 1px solid var(--border);
    color: var(--muted-foreground);
}

.header-jahr-label[b-kt8ozboyql] {
    font-size: 0.875rem;
}

.header-jahr-select[b-kt8ozboyql] {
    width: auto;
    min-width: 84px;
}

.header-jahr-btn[b-kt8ozboyql] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid var(--border);
    background: var(--card);
    color: var(--foreground);
    cursor: pointer;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.header-jahr-btn:hover:not(:disabled)[b-kt8ozboyql] {
    background: var(--secondary);
    color: var(--primary);
}

.header-jahr-btn:disabled[b-kt8ozboyql] {
    opacity: 0.4;
    cursor: default;
}

/* Eingeklappt: Der Fuss (Name, Version, Copyright) passt nicht in 64px - ausblenden statt abschneiden. */
.sidebar-collapsed .sidebar-app-info[b-kt8ozboyql] {
    display: none;
}

/* Kennzeichen statt Firmenlogo (privates Werkzeug, Muster DS.FitnessHub) */
.brand-mark[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: var(--primary);
    color: var(--primary-foreground);
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.02em;
}

/* Abmelden ist ein Formular (POST); der Knopf sieht aus wie die anderen Menuepunkte. */
.header-dropdown-form[b-kt8ozboyql] {
    margin: 0;
}

.header-dropdown-form .header-dropdown-item[b-kt8ozboyql] {
    width: 100%;
    border: none;
    background: none;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
/* Periode ohne Wirkung auf dieser Seite: Platz bleibt, damit Reiter und Benutzermenü beim Seitenwechsel nicht springen */
.header-jahr-aus[b-kt8ozboyql] {
    visibility: hidden;
}

/* ===== Responsiv (Paket 11, Muster Zugkasse) ===== */

/* Laptop: das Wort „Jahr“/„Periode“ und der App-Name neben dem Kennzeichen fallen weg, der Abstand wird enger
   (bei 1366 px mit Monat und Jahr waren es sonst 18 px zu viel) */
@media (max-width: 1440px) {
    .header-jahr-label[b-kt8ozboyql],
    .header-title[b-kt8ozboyql] {
        display: none;
    }

    .header-jahr[b-kt8ozboyql] {
        margin-left: 1rem;
        padding-left: 1rem;
    }
}

/* Schmaler: der App-Name neben dem Kennzeichen geht, die Reiter werden zu Icons (ModuleTabs.razor.css) */
@media (max-width: 1280px) {
    .header-title[b-kt8ozboyql] {
        display: none;
    }
}

/* Tablet: Benutzername weg, Bedienelemente bleiben; die Seitenleiste ist hier eine Icon-Leiste (immoSidebar) */
@media (max-width: 1100px) {
    .header-user-name[b-kt8ozboyql] {
        display: none;
    }

    .header-jahr[b-kt8ozboyql] {
        margin-left: 0.75rem;
        padding-left: 0.75rem;
    }

    [b-kt8ozboyql] .content-area {
        padding: 1.25rem;
    }
}

/* ===== Mobil: unter 700 px Menü-Knopf und Off-Canvas statt Reitern und Seitenleiste ===== */
.header-menue[b-kt8ozboyql] {
    display: none;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 40px;
    height: 40px;
    margin-right: 0.25rem;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--foreground);
    cursor: pointer;
}

.mobil-overlay[b-kt8ozboyql] {
    position: fixed;
    inset: 0;
    z-index: 900;
    background: rgba(0, 0, 0, 0.35);
}

.mobil-menue[b-kt8ozboyql] {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 901;
    display: flex;
    flex-direction: column;
    width: min(18rem, 85vw);
    overflow-y: auto;
    background: var(--sidebar);
    color: var(--sidebar-foreground);
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.3);
    animation: mobil-ein-b-kt8ozboyql 0.18s ease-out;
}

@keyframes mobil-ein-b-kt8ozboyql {
    from { transform: translateX(-100%); }
    to { transform: translateX(0); }
}

.mobil-kopf[b-kt8ozboyql] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem 0.5rem;
    border-left: 4px solid var(--primary);
}

.mobil-titel[b-kt8ozboyql] {
    font-weight: 500;
    font-size: 1rem;
}

.mobil-zu[b-kt8ozboyql] {
    border: none;
    background: transparent;
    color: inherit;
    cursor: pointer;
    padding: 0.25rem;
}

.mobil-abschnitt[b-kt8ozboyql] {
    padding: 1rem 1rem 0.375rem;
    font-size: 0.6875rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    opacity: 0.6;
}

.mobil-trenner[b-kt8ozboyql] {
    margin: 0.75rem 1rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.mobil-menue[b-kt8ozboyql]  .mobil-eintrag {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 44px;
    padding: 0 1rem;
    color: inherit;
    text-decoration: none;
}

.mobil-menue[b-kt8ozboyql]  .mobil-eintrag.active {
    background: rgba(255, 255, 255, 0.08);
    box-shadow: inset 3px 0 0 var(--primary);
}

@media (max-width: 700px) {
    .header-menue[b-kt8ozboyql] {
        display: inline-flex;
    }

    .main-header[b-kt8ozboyql]  .module-tabs,
    .sidebar[b-kt8ozboyql] {
        display: none !important;
    }

    .header-jahr[b-kt8ozboyql] {
        margin-left: auto;
        padding-left: 0;
        border-left: none;
    }

    /* Ohne Wirkung braucht die Periode auf dem Handy keinen Platz */
    .header-jahr-aus[b-kt8ozboyql] {
        display: none;
    }

    .header-jahr-btn[b-kt8ozboyql],
    .header-jahr[b-kt8ozboyql]  svg {
        display: none;
    }

    .main-header[b-kt8ozboyql] {
        padding: 0 0.5rem;
        gap: 0.5rem;
    }

    .brand-mark[b-kt8ozboyql] {
        width: 36px;
        height: 36px;
    }

    .header-jahr-select[b-kt8ozboyql] {
        min-width: 0;
    }

    .header-user[b-kt8ozboyql] {
        padding: 0.375rem 0.25rem;
        margin-left: auto;
    }

    [b-kt8ozboyql] .content-area {
        padding: 0.75rem;
    }
}
/* /Components/Layout/ModuleTabs.razor.rz.scp.css */
.module-tabs[b-uzneitr9z1] {
    display: flex;
    align-self: stretch;
    align-items: stretch;
    margin-left: 1.75rem;
    gap: 0.15rem;
}

/* NavLink rendert das <a> in EIGENEM CSS-Scope -> via ::deep hineinstylen. */
.module-tabs[b-uzneitr9z1]  .module-tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0 1.1rem;
    color: var(--muted-foreground);
    text-decoration: none;
    font-size: 0.9rem;
    white-space: nowrap;
    transition: color 0.15s ease, background-color 0.15s ease;
}

/* Animierter Unterstrich: waechst beim Aktivieren aus der Mitte. */
.module-tabs[b-uzneitr9z1]  .module-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: var(--primary);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.2s ease;
}

.module-tabs[b-uzneitr9z1]  .module-tab:hover {
    color: var(--foreground);
    background: var(--secondary);
}

.module-tabs[b-uzneitr9z1]  .module-tab.active {
    color: var(--primary);
    background: color-mix(in srgb, var(--primary) 8%, transparent);
}

.module-tabs[b-uzneitr9z1]  .module-tab.active::after {
    transform: scaleX(1);
}

/* Laptop: Reiter etwas enger */
@media (max-width: 1440px) {
    .module-tabs[b-uzneitr9z1]  .module-tab {
        padding: 0 0.9rem;
    }
}

/* Schmales Fenster: Reiter nur als Icon (Name im Tooltip und für Screenreader), damit Kennzeichen und Periode Platz behalten */
@media (max-width: 1280px) {
    .module-tabs[b-uzneitr9z1] {
        margin-left: 1rem;
    }

    .module-tabs[b-uzneitr9z1]  .module-tab {
        padding: 0 0.85rem;
    }

    .module-tabs[b-uzneitr9z1]  .module-tab-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nav-menu[b-falrvlly0c] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    padding: 0.5rem 0;
    min-height: 100%;
}

/* Bereichs-Nav (§3.18): schiebt Exit-Link ans untere Ende */
.nav-bottom[b-falrvlly0c] {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

[b-falrvlly0c] .nav-link-exit {
    color: var(--sidebar-foreground);
    opacity: 0.75;
}

[b-falrvlly0c] .nav-link-exit:hover {
    opacity: 1;
}

/* Icon darf nicht schrumpfen */
[b-falrvlly0c] .nav-icon {
    flex-shrink: 0;
}

/* Text wird per overflow hidden abgeschnitten wenn Sidebar schrumpft.
   ::deep, damit auch NavLinks in Unterkomponenten (NavSubMenu, NavTreeNode)
   erfasst werden. */
[b-falrvlly0c] .nav-link-text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    opacity: 1;
    transition: opacity 0.15s ease;
}

/* Collapsed: Text unsichtbar, Icons zentriert */
.nav-collapsed[b-falrvlly0c]  .nav-link-text {
    opacity: 0;
    width: 0;
    overflow: hidden;
}

.nav-collapsed[b-falrvlly0c]  .nav-link {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
    gap: 0;
}

/* Separator between Ablagen and admin links */
.nav-separator[b-falrvlly0c] {
    height: 1px;
    background-color: var(--sidebar-border);
    margin: 0.5rem 1rem;
}

/* ===== Nav-SubMenu (flache Untermenue-Gruppe) ===== */

[b-falrvlly0c] .nav-submenu {
    display: flex;
    flex-direction: column;
}

/* Toggle-only Header (ohne Href) - ganze Zeile klappt auf/zu */
[b-falrvlly0c] .nav-submenu-header {
    cursor: pointer;
    user-select: none;
}

/* Split-Header (mit Href): Link links + Chevron-Button rechts in einer Zeile */
[b-falrvlly0c] .nav-submenu-header-row {
    display: flex;
    align-items: stretch;
}

[b-falrvlly0c] .nav-submenu-header-link {
    flex: 1;
    min-width: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

[b-falrvlly0c] .nav-submenu-toggle {
    background: none;
    border: none;
    color: var(--sidebar-foreground);
    cursor: pointer;
    padding: 0 0.75rem;
    display: flex;
    align-items: center;
    border-radius: 0 var(--radius) var(--radius) 0;
    transition: background-color 0.15s ease;
    flex-shrink: 0;
}

[b-falrvlly0c] .nav-submenu-toggle:hover {
    background-color: var(--sidebar-accent);
    color: var(--sidebar-accent-foreground);
}

[b-falrvlly0c] .nav-submenu-chevron {
    margin-left: auto;
    transition: transform 0.15s ease;
    flex-shrink: 0;
}

[b-falrvlly0c] .nav-submenu-chevron-open {
    transform: rotate(90deg);
}

/* Aufgeklappter Kinder-Block - dunklerer Hintergrund unterstreicht die Gruppe */
[b-falrvlly0c] .nav-submenu-children {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    padding: 0.25rem 0;
    background-color: var(--sidebar-submenu);
    border-top: 1px solid var(--sidebar-border);
    border-bottom: 1px solid var(--sidebar-border);
}

/* Kinder eingerueckt - Abstand passt zur Icon-Breite im Header */
[b-falrvlly0c] .nav-submenu-children .nav-link {
    padding-left: 2.75rem;
    border-radius: 0;
}

/* Collapsed Sidebar: Kinder, Chevron, Toggle-Button ausblenden; Header bleibt als Icon */
.nav-collapsed[b-falrvlly0c]  .nav-submenu-children,
.nav-collapsed[b-falrvlly0c]  .nav-submenu-chevron,
.nav-collapsed[b-falrvlly0c]  .nav-submenu-toggle {
    display: none;
}

.nav-collapsed[b-falrvlly0c]  .nav-submenu-header-link {
    border-radius: var(--radius);
}


.nav-section-label[b-falrvlly0c] {
    padding: 0.5rem 1rem 0.35rem;
    font-size: 0.72rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--sidebar-foreground, #b0b0b0);
    opacity: 0.7;
}

/* Bereichsueberschrift: bei schmaler Sidebar mit Auslassungspunkten kuerzen statt hart abschneiden ... */
.nav-section-label[b-falrvlly0c] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ... und eingeklappt ganz ausblenden - dort ist nur Platz fuer Icons. Eine feine Linie haelt den Abstand. */
.nav-collapsed .nav-section-label[b-falrvlly0c] {
    height: 0;
    margin: 0.25rem 0.75rem 0.5rem;
    padding: 0;
    border-top: 1px solid var(--sidebar-border);
    font-size: 0;
}
/* /Components/Pages/AbmeldenBestaetigen.razor.rz.scp.css */
/* Wie die Anmeldung (Login.razor.css), Text mittig unter dem Titel */
.ab-karte[b-siakpm21mn] {
    text-align: center;
}

.ab-text[b-siakpm21mn] {
    margin: 0 0 1.5rem;
    color: var(--muted-foreground);
}

.ab-zurueck[b-siakpm21mn] {
    margin-top: 0.5rem;
}
/* /Components/Pages/Abschluss/Auswertungen.razor.rz.scp.css */
.au-kennzahlen[b-t03q95bpc4] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.au-tabelle[b-t03q95bpc4] {
    font-variant-numeric: tabular-nums;
}

.au-leer[b-t03q95bpc4] {
    padding: 2rem 1rem;
}
/* /Components/Pages/Abschluss/Objektpakete.razor.rz.scp.css */
.op-objekte[b-po685v70ya] {
    display: flex;
    gap: 0.75rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.op-objekt[b-po685v70ya] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.3rem;
    min-width: 10rem;
    padding: 0.75rem 1rem;
    background: var(--card, #fff);
    border: 1px solid var(--border);
    border-top: 3px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    color: inherit;
}

.op-objekt.op-aktiv[b-po685v70ya] {
    border-top-color: var(--primary);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.op-kuerzel[b-po685v70ya] {
    font-size: 1.15rem;
    font-weight: var(--font-weight-medium);
}

.op-klein[b-po685v70ya] {
    font-size: 0.75rem;
}

.op-kennzahlen[b-po685v70ya] {
    display: grid;
    /* Sechs Kacheln: eine Reihe auf breiten Schirmen, sonst 3+3 bzw. 2+2+2 (nie 5+1) */
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.op-leiste[b-po685v70ya] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
}

.op-stand[b-po685v70ya],
.op-aktionen[b-po685v70ya] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.op-hinweis[b-po685v70ya] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    margin: -0.5rem 0 1rem;
    border-radius: 6px;
    background: #fef9c3;
    color: #854d0e;
    font-size: 0.875rem;
}

.op-raster[b-po685v70ya] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr);
    gap: 1rem;
    align-items: start;
}

.op-seite[b-po685v70ya] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.op-tabelle[b-po685v70ya] {
    font-variant-numeric: tabular-nums;
}

tr.op-gruppe > td[b-po685v70ya] {
    background: var(--muted);
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

td.op-name[b-po685v70ya] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.op-schluessel[b-po685v70ya] {
    font-family: ui-monospace, monospace;
    font-size: 0.7rem;
    margin-left: 0.35rem;
}

tr.op-offen > td[b-po685v70ya] {
    background: color-mix(in srgb, var(--muted) 60%, transparent);
}

tr.op-herleitung > td[b-po685v70ya] {
    padding: 0.4rem 1rem 0.75rem 2.25rem;
    font-size: 0.85rem;
    background: color-mix(in srgb, var(--muted) 60%, transparent);
}

tr.op-herleitung ul[b-po685v70ya] {
    margin: 0 0 0.4rem;
    padding-left: 1rem;
}

.op-beleg[b-po685v70ya] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-right: 0.75rem;
}

tr.op-ergebnis > td[b-po685v70ya] {
    font-weight: 700;
    border-top: 2px solid var(--border);
}

tr.op-trenner > td[b-po685v70ya] {
    border-top: 1px solid var(--border);
}

tr.op-summe > td[b-po685v70ya] {
    font-weight: 600;
}

.op-leer-aktion[b-po685v70ya] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.5rem;
}

.op-fehler[b-po685v70ya] {
    background: #fee2e2;
    color: #991b1b;
}

.op-check[b-po685v70ya] {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 0;
    margin-bottom: 1rem;
}

.op-check-kopf[b-po685v70ya] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.25rem 1rem 0.5rem;
}

.op-check-titel[b-po685v70ya] {
    font-weight: 600;
}

.op-check-punkt[b-po685v70ya] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    border-top: 1px solid var(--border);
}

.op-check-text[b-po685v70ya] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.15rem 0.5rem;
    font-size: 0.875rem;
}

.op-erledigt .op-check-text strong[b-po685v70ya] {
    font-weight: 500;
    color: var(--muted-foreground);
}

.op-ok[b-po685v70ya] { color: #166534; }
.op-fehlt[b-po685v70ya] { color: #b45309; }
.op-opt[b-po685v70ya] { color: var(--muted-foreground); }

.op-ok-hinweis[b-po685v70ya] {
    background: #dcfce7;
    color: #166534;
}

.op-vorjahr[b-po685v70ya] {
    position: relative;
}

.op-vorjahr-knopf[b-po685v70ya] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
}

.op-vj-form[b-po685v70ya] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.op-vj-form label[b-po685v70ya] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

/* Tablet und Handy: Kennzahlen und Spalten brechen um, statt die Seite zu verbreitern */
@media (max-width: 1600px) {
    .op-kennzahlen[b-po685v70ya] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .op-kennzahlen[b-po685v70ya] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .op-raster[b-po685v70ya] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Positionen: auf dem Tablet fallen Vorjahr und Belege als Spalten weg (der Belegzähler steht unter dem Namen), auf dem
   Handy steht der Schlüssel klein unter der Bezeichnung; Betrag und Status bleiben immer sichtbar (Rundgang 11b) */
.op-belege-klein[b-po685v70ya] { display: none; font-size: 0.75rem; }

@media (max-width: 1100px) {
    .op-tabelle .op-vj[b-po685v70ya],
    .op-tabelle .op-belege[b-po685v70ya] { display: none; }
    .op-belege-klein[b-po685v70ya] { display: block; }
}

@media (max-width: 600px) {
    .op-tabelle .op-name[b-po685v70ya] { white-space: normal; }
    .op-tabelle .op-schluessel[b-po685v70ya] { display: block; font-size: 0.7rem; overflow-wrap: anywhere; }
}
/* /Components/Pages/BenutzerEinstellung.razor.rz.scp.css */
.bn-hinweis[b-gmexhn767u] {
    margin: 0 0 1rem;
    max-width: 60rem;
    font-size: 0.9rem;
}

.bn-name[b-gmexhn767u] {
    font-weight: 600;
}

.bn-form[b-gmexhn767u] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1rem;
}

.bn-form label[b-gmexhn767u] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.78rem;
    color: var(--muted-foreground);
}

.bn-form label.bn-check[b-gmexhn767u] {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    align-self: end;
    padding-bottom: 0.55rem;
    font-size: 0.875rem;
    color: var(--foreground);
}

.bn-fehler[b-gmexhn767u] {
    margin: 0.5rem 0 0;
    color: var(--destructive);
}
/* /Components/Pages/Dokumente/AblageBaum.razor.rz.scp.css */
.ab-ansicht[b-ft140kpfx4] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.ab-baum[b-ft140kpfx4] {
    flex: 0 0 18rem;
    padding: 0.5rem 0;
    max-height: calc(100vh - 12rem);
    overflow-y: auto;
}

.ab-objekt + .ab-objekt[b-ft140kpfx4] {
    border-top: 1px solid var(--border);
}

.ab-objekt-kopf[b-ft140kpfx4],
.ab-kategorie[b-ft140kpfx4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.4rem 0.75rem;
    border: none;
    background: none;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.ab-kategorie[b-ft140kpfx4] {
    padding-left: 2.25rem;
    font-size: 0.875rem;
}

.ab-objekt-kopf:hover[b-ft140kpfx4],
.ab-kategorie:hover[b-ft140kpfx4] {
    background: var(--muted);
}

.ab-aktiv[b-ft140kpfx4] {
    background: color-mix(in srgb, var(--primary) 10%, transparent);
    color: var(--primary);
}

.ab-leer[b-ft140kpfx4] {
    color: var(--muted-foreground);
}

.ab-zahl[b-ft140kpfx4] {
    margin-left: auto;
    color: var(--muted-foreground);
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
}

.ab-liste[b-ft140kpfx4] {
    flex: 1;
    min-width: 0;
}

.ab-hinweis[b-ft140kpfx4] {
    margin: 0;
    padding: 2rem 1rem;
    text-align: center;
}
/* /Components/Pages/Dokumente/Altbestand.razor.rz.scp.css */
.ab-quellen[b-got5imp1sy] {
    padding: 1rem;
    margin-bottom: 1rem;
}

.ab-kopf[b-got5imp1sy] {
    margin-bottom: 0.5rem;
}

.ab-quelle[b-got5imp1sy] {
    display: grid;
    grid-template-columns: auto 6rem minmax(0, 1fr);
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 0.35rem;
}

.ab-aktionen[b-got5imp1sy] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-top: 0.5rem;
}

.ab-check[b-got5imp1sy] {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    font-size: 0.85rem;
}

.ab-meldung[b-got5imp1sy] {
    margin-top: 0.5rem;
    color: var(--color-danger, #b42318);
}

.ab-kennzahlen[b-got5imp1sy] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.ab-reiter[b-got5imp1sy] {
    display: flex;
    gap: 0.25rem;
    margin: 1rem 0 0.5rem;
    border-bottom: 1px solid var(--color-border, #d0d7de);
}

.ab-reiter button[b-got5imp1sy] {
    border: 0;
    background: none;
    padding: 0.4rem 0.75rem;
    cursor: pointer;
    border-bottom: 2px solid transparent;
}

.ab-reiter .ab-an[b-got5imp1sy] {
    border-bottom-color: var(--color-primary, #0C5DA6);
    font-weight: 600;
}

.ab-liste[b-got5imp1sy] {
    max-height: 32rem;
    overflow: auto;
}

.ab-pfad[b-got5imp1sy] {
    font-size: 0.8rem;
    word-break: break-all;
}

.ab-k[b-got5imp1sy] {
    font-size: 0.8rem;
}

.ab-lauf[b-got5imp1sy] {
    padding: 1rem;
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* KI-Abweichung: Vorschlag hervorgehoben wie im Eingang, nie still übernommen */
.ab-vorschlag[b-got5imp1sy] {
    background: #fffbea;
    box-shadow: inset 3px 0 0 #d97706;
    white-space: pre-line;
}
/* /Components/Pages/Dokumente/DokumentSeite.razor.rz.scp.css */
.ds-form[b-btpnkpo2di] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.ds-form label[b-btpnkpo2di] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.ds-voll[b-btpnkpo2di] {
    grid-column: 1 / -1;
}

.ds-hinweis[b-btpnkpo2di] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    color: #854d0e;
    background: #fef9c3;
}

.ds-leer[b-btpnkpo2di] {
    margin: 0;
    padding: 1rem;
}

.ds-datei[b-btpnkpo2di] {
    padding: 0.75rem 1rem;
}

.ds-werte[b-btpnkpo2di] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.25rem 1rem;
    margin: 0;
    font-size: 0.875rem;
}

.ds-werte dt[b-btpnkpo2di] {
    color: var(--muted-foreground);
}

.ds-werte dd[b-btpnkpo2di] {
    margin: 0;
    word-break: break-all;
}

.ds-klein[b-btpnkpo2di] {
    font-size: 0.75rem;
}

.ds-fehler[b-btpnkpo2di] {
    color: var(--destructive);
}
/* /Components/Pages/Dokumente/DokumentTabelle.razor.rz.scp.css */
.dt-datum[b-vscpd3y2nl] { width: 7.5rem; }
.dt-art[b-vscpd3y2nl] { width: 12rem; }
.dt-objekt[b-vscpd3y2nl] { width: 7rem; }
.dt-groesse[b-vscpd3y2nl] { width: 6rem; }
.dt-aktion[b-vscpd3y2nl] { width: 3rem; }

.dt-pfad[b-vscpd3y2nl] {
    font-size: 0.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 36rem;
}

.dt-leer[b-vscpd3y2nl] {
    padding: 2rem 1rem;
    text-align: center;
}

tr.dt-aktiv > td[b-vscpd3y2nl] {
    background-color: var(--muted);
}
/* /Components/Pages/Dokumente/Eingang.razor.rz.scp.css */
.eg-raster[b-grnw3d5aom] {
    display: grid;
    grid-template-columns: 22rem 26rem minmax(0, 1fr);
    gap: 0.75rem;
    align-items: stretch;
    height: calc(100vh - 15rem);
    min-height: 32rem;
}

.eg-liste[b-grnw3d5aom],
.eg-formular[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 0.75rem;
    overflow: auto;
}

.eg-pdf[b-grnw3d5aom] {
    overflow: hidden;
    display: flex;
}

.eg-drop[b-grnw3d5aom] {
    min-height: 4rem;
    font-size: 0.82rem;
}

.eg-meldung[b-grnw3d5aom] {
    font-size: 0.82rem;
    color: var(--muted-foreground);
}

.eg-eintraege[b-grnw3d5aom] {
    list-style: none;
    margin: 0;
    padding: 0;
    outline: none;
}

.eg-eintraege:focus-visible[b-grnw3d5aom] {
    outline: 2px solid var(--primary);
}

.eg-eintrag[b-grnw3d5aom] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.55rem 0.5rem;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}

.eg-eintrag.aktiv[b-grnw3d5aom] {
    background: var(--accent);
    box-shadow: inset 3px 0 0 var(--primary);
}

.eg-eintrag-text[b-grnw3d5aom] {
    min-width: 0;
}

.eg-titel[b-grnw3d5aom] {
    font-weight: 500;
    font-size: 0.875rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eg-zeile[b-grnw3d5aom] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.78rem;
    margin-top: 0.15rem;
}

.eg-nichts[b-grnw3d5aom],
.eg-leer[b-grnw3d5aom] {
    padding: 1rem 0.5rem;
}

.eg-kopf[b-grnw3d5aom] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.eg-datei[b-grnw3d5aom] {
    font-size: 0.78rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eg-hinweis[b-grnw3d5aom] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    color: var(--muted-foreground);
}

.eg-warn[b-grnw3d5aom] {
    color: #9a6700;
}

.eg-abgelehnt[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.6rem 0.9rem;
}

.eg-abgelehnt-liste[b-grnw3d5aom] {
    margin: 0;
    padding-left: 1.4rem;
    font-size: 0.8rem;
}

.eg-abgelehnt-datei[b-grnw3d5aom] {
    overflow-wrap: anywhere;
}

.eg-felder[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.eg-feld[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.25rem 0.4rem;
    border-radius: var(--radius, 6px);
}

.eg-vorschlag[b-grnw3d5aom] {
    background: #fffbea;
    box-shadow: inset 3px 0 0 #d97706;
}

.eg-feldname[b-grnw3d5aom] {
    font-size: 0.78rem;
    color: var(--muted-foreground);
}

.eg-herkunft[b-grnw3d5aom] {
    margin-left: 0.35rem;
    padding: 0 0.35rem;
    border-radius: 9999px;
    background: #fef3c7;
    color: #854d0e;
    font-size: 0.7rem;
}

.eg-profil[b-grnw3d5aom] {
    font-size: 0.82rem;
}

.eg-profil dl[b-grnw3d5aom] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.15rem 0.6rem;
    margin: 0.4rem 0 0;
}

.eg-profil dt[b-grnw3d5aom] {
    color: var(--muted-foreground);
}

.eg-profil dd[b-grnw3d5aom] {
    margin: 0;
}

.eg-duplikate[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.eg-duplikat[b-grnw3d5aom] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    border: none;
    background: none;
    padding: 0.2rem 0;
    font: inherit;
    font-size: 0.8rem;
    text-align: left;
    cursor: pointer;
}

.eg-aktionen[b-grnw3d5aom] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: auto;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border);
}

.eg-loeschen[b-grnw3d5aom] {
    margin-left: auto;
}

.eg-filter[b-grnw3d5aom] {
    align-self: flex-start;
}

.eg-start[b-grnw3d5aom] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem;
}

.eg-gross[b-grnw3d5aom] {
    min-height: 14rem;
}

.eg-wege[b-grnw3d5aom] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.eg-wege > div[b-grnw3d5aom] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.eg-wege > div > span[b-grnw3d5aom] {
    font-weight: 500;
}

.eg-pl-form[b-grnw3d5aom] {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 0.75rem;
    align-items: end;
    margin-bottom: 0.75rem;
}

/* Laptop/Tablet: Liste und Vorschlag teilen sich die Breite, das PDF steht darunter (vorher drei feste Spalten = Überlauf) */
@media (max-width: 1440px) {
    .eg-raster[b-grnw3d5aom] {
        grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
        height: auto;
    }

    .eg-raster > .eg-pdf[b-grnw3d5aom] {
        grid-column: 1 / -1;
        height: 70vh;
    }
}

/* Handy: alles untereinander */
@media (max-width: 760px) {
    .eg-raster[b-grnw3d5aom] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Pages/Dokumente/Erzeugt.razor.rz.scp.css */
.mg-kopf-erzeugt[b-lajyo26cuf] {
    margin-bottom: 1rem;
}
/* /Components/Pages/Dokumente/Papierkorb.razor.rz.scp.css */
.pk-art[b-3cjy22vy0g] { width: 12rem; }
.pk-seit[b-3cjy22vy0g] { width: 16rem; }
.pk-aktion[b-3cjy22vy0g] { width: 18rem; }

.pk-pfad[b-3cjy22vy0g] {
    font-size: 0.75rem;
}

.pk-leer[b-3cjy22vy0g] {
    padding: 2rem 1rem;
    text-align: center;
}

.pk-fehler[b-3cjy22vy0g] {
    color: var(--destructive);
}
/* /Components/Pages/Dokumente/Suche.razor.rz.scp.css */
.su-datum[b-wpdj2e3dci] { width: 9rem; }
.su-objekt[b-wpdj2e3dci] { width: 8rem; }
.su-art[b-wpdj2e3dci] { width: 12rem; }
.su-herkunft[b-wpdj2e3dci] { width: 10rem; }
.su-aktion[b-wpdj2e3dci] { width: 3rem; }

.su-pfad[b-wpdj2e3dci] {
    font-size: 0.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 40rem;
}

.su-leer[b-wpdj2e3dci] {
    padding: 2rem 1rem;
    text-align: center;
}

tr.su-aktiv > td[b-wpdj2e3dci] {
    background-color: var(--muted);
}
/* /Components/Pages/Einstellungen/CsvProfile.razor.rz.scp.css */
.cp-leer[b-jp7m3w2skn] { padding: 2rem 1rem; }
/* /Components/Pages/Einstellungen/DruckvorlageEditor.razor.rz.scp.css */
/* Splitscreen fuellt den Inhaltsbereich (Kopf 68px, Aktionsleiste, Innenabstand). */
.de[b-zkhkc1zq9g] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    height: calc(100vh - 68px - 4rem - 64px);
    min-height: 34rem;
}

.de-leiste[b-zkhkc1zq9g] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.de-titel[b-zkhkc1zq9g] {
    font-weight: 600;
    font-size: 1.0625rem;
}

.de-luecke[b-zkhkc1zq9g] {
    flex: 1;
}

.de-leiste .btn.aktiv[b-zkhkc1zq9g] {
    border-color: var(--primary);
    color: var(--primary);
}

.de-panel[b-zkhkc1zq9g] {
    flex-shrink: 0;
    max-height: 38vh;
    overflow-y: auto;
    padding: 0.75rem 1rem;
}

.de-hilfe[b-zkhkc1zq9g] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.de-block-titel[b-zkhkc1zq9g] {
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.de-split[b-zkhkc1zq9g] {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.75rem;
}

.de-quelle[b-zkhkc1zq9g],
.de-vorschau[b-zkhkc1zq9g] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 0.5rem 0.75rem 0.75rem;
}

.de-reiter[b-zkhkc1zq9g] {
    display: flex;
    gap: 0.25rem;
    border-bottom: 1px solid var(--border);
    margin-bottom: 0.5rem;
    flex-shrink: 0;
}

.de-reiter-knopf[b-zkhkc1zq9g] {
    padding: 0.4rem 0.85rem;
    border: none;
    border-bottom: 2px solid transparent;
    background: none;
    font: inherit;
    font-size: 0.875rem;
    cursor: pointer;
    color: var(--muted-foreground);
}

.de-reiter-knopf.aktiv[b-zkhkc1zq9g] {
    border-bottom-color: var(--primary);
    color: var(--foreground);
    font-weight: 600;
}

.de-text[b-zkhkc1zq9g] {
    flex: 1;
    min-height: 0;
    width: 100%;
    resize: none;
    font-family: Consolas, "Cascadia Mono", "Courier New", monospace;
    font-size: 0.8125rem;
    line-height: 1.45;
    white-space: pre;
    tab-size: 2;
}

.de-versteckt[b-zkhkc1zq9g] {
    display: none;
}

.de-aktionen[b-zkhkc1zq9g] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 0.5rem;
    flex-shrink: 0;
}

.de-notiz[b-zkhkc1zq9g] {
    flex: 1 1 14rem;
}

.de-fehler[b-zkhkc1zq9g] {
    margin: 0.4rem 0 0;
    color: var(--destructive);
    font-size: 0.8125rem;
    white-space: pre-wrap;
}

.de-vorschau-kopf[b-zkhkc1zq9g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
    margin-bottom: 0.5rem;
}

.de-beispiel[b-zkhkc1zq9g] {
    max-width: 26rem;
}

.de-vorschau-fehler[b-zkhkc1zq9g] {
    margin: 0 0 0.5rem;
    max-height: 6rem;
    overflow-y: auto;
    flex-shrink: 0;
}

.de-pdf[b-zkhkc1zq9g] {
    flex: 1;
    min-height: 0;
}

.de-jahr[b-zkhkc1zq9g] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.de-jahr .form-input[b-zkhkc1zq9g] {
    width: 7rem;
}

.de-klein[b-zkhkc1zq9g] {
    margin: 0;
    font-size: 0.75rem;
}

.de-liste[b-zkhkc1zq9g] {
    margin: 0;
    font-size: 0.75rem;
}

.de-liste dt[b-zkhkc1zq9g] {
    margin-top: 0.4rem;
}

.de-liste dd[b-zkhkc1zq9g] {
    margin: 0.1rem 0 0;
    color: var(--muted-foreground);
}

.de-liste code[b-zkhkc1zq9g],
.de-klein code[b-zkhkc1zq9g] {
    padding: 0 0.25rem;
    border-radius: 3px;
    background: var(--muted);
}

.de-versionen[b-zkhkc1zq9g] {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
}

.de-versionen li[b-zkhkc1zq9g] {
    display: flex;
    gap: 0.5rem;
    align-items: baseline;
    flex-wrap: wrap;
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--border);
}

.de-versionen li:last-child[b-zkhkc1zq9g] {
    border-bottom: none;
}

@media (max-width: 900px) {
    .de[b-zkhkc1zq9g] {
        height: auto;
    }

    .de-split[b-zkhkc1zq9g],
    .de-hilfe[b-zkhkc1zq9g] {
        grid-template-columns: minmax(0, 1fr);
    }

    .de-text[b-zkhkc1zq9g] {
        min-height: 50vh;
    }

    .de-pdf[b-zkhkc1zq9g] {
        height: 70vh;
    }
}

/* Leerzustand der Vorschau: Vorlage ohne passende Daten (z. B. NK Wohnung ohne erfasste Kosten) */
.de-leer[b-zkhkc1zq9g] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem;
    text-align: center;
    border: 1px dashed var(--border);
    background: var(--muted, #f8f9fa);
}
/* /Components/Pages/Einstellungen/Kategorien.razor.rz.scp.css */
.ka-klein[b-daynddlqy7] { font-size: 0.75rem; }
/* /Components/Pages/Einstellungen/Regeln.razor.rz.scp.css */
.re-bed[b-gsw98nrzp6] { font-size: 0.8125rem; }
.re-leer[b-gsw98nrzp6] { padding: 2rem 1rem; }
/* /Components/Pages/Einstellungen/SchnittstellenEinstellung.razor.rz.scp.css */
.si-raster[b-kmq70n722y] {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    gap: 0.75rem;
    align-items: start;
}

.si-karte[b-kmq70n722y] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.si-protokoll[b-kmq70n722y] {
    margin-top: 0.75rem;
}

.si-titel[b-kmq70n722y] {
    font-weight: 600;
}

.si-konf[b-kmq70n722y] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.4rem 0.75rem;
    margin: 0;
    font-size: 0.85rem;
}

.si-konf dt[b-kmq70n722y] {
    color: var(--muted-foreground);
}

.si-konf dd[b-kmq70n722y] {
    margin: 0;
    overflow-wrap: anywhere;
}

.si-klartext[b-kmq70n722y] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: var(--muted);
    overflow-wrap: anywhere;
}
/* /Components/Pages/Einstellungen/SicherungEinstellung.razor.rz.scp.css */
/* Kennzahlen (Paket 17b U1): eine Reihe am Desktop, 2 x 2 am Tablet, einspaltig am Handy */
.sg-kennzahlen[b-hz510xurhi] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

@media (max-width: 1100px) {
    .sg-kennzahlen[b-hz510xurhi] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .sg-kennzahlen[b-hz510xurhi] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* unverschlüsselte Altdateien im Sicherungsordner (U2) */
.sg-altdateien[b-hz510xurhi] {
    margin-bottom: 0.75rem;
    border-left: 4px solid #ca8a04;
    background-color: #fefce8;
}

.sg-altliste[b-hz510xurhi] {
    margin: 0;
    padding-left: 1.2rem;
}

.sg-altliste code[b-hz510xurhi],
.sg-pfad[b-hz510xurhi] {
    overflow-wrap: anywhere;
}

.sg-hinweis[b-hz510xurhi] {
    font-size: 0.8rem;
    color: var(--muted-foreground);
}

.sg-grund[b-hz510xurhi] {
    font-size: 0.85rem;
    color: var(--muted-foreground);
    align-self: center;
}

.sg-raster[b-hz510xurhi] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
}

.sg-karte[b-hz510xurhi] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.sg-titel[b-hz510xurhi] {
    font-weight: 600;
}

.sg-ergebnis[b-hz510xurhi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* lange Dateinamen brechen um statt aus der Karte zu laufen */
.sg-ergebnis > span:last-child[b-hz510xurhi] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.sg-tabelle[b-hz510xurhi] {
    overflow-x: auto;
}

.sg-tabelle td code[b-hz510xurhi] {
    overflow-wrap: anywhere;
}

.sg-tabelle td:not(:first-child)[b-hz510xurhi] {
    white-space: nowrap;
}

.sg-protokoll[b-hz510xurhi] {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.sg-fehler code[b-hz510xurhi] {
    color: var(--destructive);
}

/* Schlüssel der Sicherung (Paket 13 A) */
.sg-schluessel[b-hz510xurhi] {
    margin-bottom: 0.75rem;
}

.sg-warnung[b-hz510xurhi] {
    display: flex;
    gap: 0.5rem;
    margin: 0;
    padding: 0.6rem 0.8rem;
    background-color: #fef9c3;
    color: #854d0e;
}

.sg-form[b-hz510xurhi] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
}

.sg-form label[b-hz510xurhi] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    font-size: 0.78rem;
    color: var(--muted-foreground);
}

.sg-form .sg-check[b-hz510xurhi] {
    grid-column: 1 / -1;
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--foreground);
}

/* Aktiver Schlüssel und Schlüsselwechsel (Paket 13c, Krypto-Review K2) */
.sg-aktiv[b-hz510xurhi] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.sg-kennung[b-hz510xurhi] {
    font-size: 0.95rem;
    font-weight: 600;
    word-break: break-all;
}

.sg-schluesselwechsel[b-hz510xurhi] {
    margin-bottom: 0.75rem;
    border-left: 4px solid #ca8a04;
    background-color: #fefce8;
}

.sg-schluesselwechsel .sg-titel[b-hz510xurhi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #854d0e;
}

.sg-schluesselwechsel p[b-hz510xurhi] {
    margin: 0;
}

.sg-kennungen[b-hz510xurhi] {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 0.25rem 1rem;
    margin: 0;
}

.sg-kennungen dt[b-hz510xurhi] {
    color: var(--muted-foreground);
    font-size: 0.78rem;
}

.sg-kennungen dd[b-hz510xurhi] {
    margin: 0;
    word-break: break-all;
}

.sg-knoepfe[b-hz510xurhi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.sg-schluesselwechsel .btn[b-hz510xurhi],
.sg-knoepfe .btn[b-hz510xurhi] {
    align-self: flex-start;
}

@media (max-width: 900px) {
    .sg-raster[b-hz510xurhi],
    .sg-form[b-hz510xurhi] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Pages/Erstbefuellung.razor.rz.scp.css */
.eb-pfad[b-x5ipd5gsvd] {
    font-size: 0.8125rem;
    word-break: break-all;
}

.eb-kennzahlen[b-x5ipd5gsvd] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: 1rem;
}

.eb-fehler[b-x5ipd5gsvd] {
    color: var(--destructive);
}
/* /Components/Pages/Finanzen/Importe.razor.rz.scp.css */
.im-raster[b-jp6q96zcyt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

.im-ziel[b-jp6q96zcyt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    padding: 1.5rem;
    border: 2px dashed var(--border);
    color: var(--muted-foreground);
}

.im-waehlen[b-jp6q96zcyt] {
    position: relative;
    cursor: pointer;
}

.im-waehlen[b-jp6q96zcyt]  .im-versteckt {
    display: none;
}

.im-konto[b-jp6q96zcyt] {
    max-width: 18rem;
}

.im-historie[b-jp6q96zcyt] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 0.75rem;
}

.im-historie label[b-jp6q96zcyt] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.im-kennzahlen[b-jp6q96zcyt] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.im-fehler[b-jp6q96zcyt],
.im-hinweis[b-jp6q96zcyt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    margin-bottom: 0.75rem;
}

.im-fehler[b-jp6q96zcyt] {
    color: var(--destructive);
}

.im-tabelle[b-jp6q96zcyt] {
    font-size: 0.875rem;
}

.im-zweck[b-jp6q96zcyt] {
    max-width: 36rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

tr.im-doppelt > td[b-jp6q96zcyt] {
    color: var(--muted-foreground);
}

.im-mehr[b-jp6q96zcyt] {
    margin: 0.5rem;
}

.im-leer[b-jp6q96zcyt] {
    padding: 2rem 1rem;
}

.im-fehlertext[b-jp6q96zcyt] {
    color: var(--destructive);
}
/* /Components/Pages/Finanzen/Konten.razor.rz.scp.css */
.ko-kennzahlen[b-c2iu9fg3os] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.ko-aktion[b-c2iu9fg3os] { width: 3rem; }

.ko-klein[b-c2iu9fg3os] {
    font-size: 0.75rem;
}

.ko-iban[b-c2iu9fg3os] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

tr.ko-aktiv > td[b-c2iu9fg3os],
tr.ko-auszuege > td[b-c2iu9fg3os] {
    background: var(--muted);
}

.ko-befund[b-c2iu9fg3os] {
    margin-bottom: 0.4rem;
    font-size: 0.875rem;
}

.ko-leer[b-c2iu9fg3os] {
    padding: 2rem 1rem;
}
.ko-pdf-import[b-c2iu9fg3os] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.25rem 0 0.75rem;
}

.ko-pdf-import .form-input[b-c2iu9fg3os] {
    max-width: 40rem;
}

.ko-pdf[b-c2iu9fg3os] {
    border: 0;
    cursor: pointer;
}
/* /Components/Pages/Finanzen/Monatsabschluss.razor.rz.scp.css */
.ma-kopf[b-rvpmtqrwaq] { display: flex; align-items: center; gap: 1.5rem; padding: 1rem 1.25rem; margin-bottom: 1rem; }
.ma-titel[b-rvpmtqrwaq] { font-size: 1.25rem; font-weight: var(--font-weight-medium); }
.ma-gross[b-rvpmtqrwaq] { font-size: 0.875rem; }
.ma-fortschritt[b-rvpmtqrwaq] { margin-left: auto; display: flex; flex-direction: column; gap: 0.3rem; min-width: 14rem; font-size: 0.875rem; }
.ma-balken[b-rvpmtqrwaq] { height: 6px; background: var(--muted); }
.ma-balken span[b-rvpmtqrwaq] { display: block; height: 100%; background: #15803d; }
.ma-pruefung[b-rvpmtqrwaq] { display: flex; gap: 0.75rem; padding: 0.75rem 1rem; margin-bottom: 0.5rem; }
.ma-haken input[b-rvpmtqrwaq] { width: 1.1rem; height: 1.1rem; margin-top: 0.15rem; }
.ma-inhalt[b-rvpmtqrwaq] { flex: 1; }
.ma-zeile[b-rvpmtqrwaq] { display: flex; align-items: center; gap: 0.75rem; justify-content: space-between; }
.ma-name[b-rvpmtqrwaq] { font-weight: var(--font-weight-medium); color: inherit; }
.ma-details[b-rvpmtqrwaq] { margin: 0.4rem 0 0; padding-left: 1.2rem; font-size: 0.8125rem; }
.ma-notiz[b-rvpmtqrwaq] { margin-top: 0.3rem; font-size: 0.8125rem; font-style: italic; }
.ma-aktionen[b-rvpmtqrwaq] { display: flex; gap: 0.5rem; margin: 1rem 0; }
.ma-zeit[b-rvpmtqrwaq] { width: 9rem; white-space: nowrap; }
.ma-fehler[b-rvpmtqrwaq] { color: var(--destructive); }

/* Handy: Fortschritt unter den Monat statt daneben */
@media (max-width: 760px) {
    .ma-kopf[b-rvpmtqrwaq] { flex-wrap: wrap; }
    .ma-fortschritt[b-rvpmtqrwaq] { margin-left: 0; min-width: 0; width: 100%; }
}
/* /Components/Pages/Finanzen/Toepfe.razor.rz.scp.css */
.tp-kennzahlen[b-uqret2gxlr] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; margin-bottom: 1rem; }
.tp-satz[b-uqret2gxlr] { font-size: 0.8125rem; }
.tp-leer[b-uqret2gxlr] { padding: 2.5rem 1rem; }
/* /Components/Pages/Finanzen/Umsaetze.razor.rz.scp.css */
.us-kennzahlen[b-emj7xoek2u] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; margin-bottom: 1rem; }
.us-datum[b-emj7xoek2u] { width: 7.5rem; }
.us-konto[b-emj7xoek2u] { width: 12rem; }
.us-betrag[b-emj7xoek2u] { width: 9rem; }
.us-stand[b-emj7xoek2u] { width: 11rem; }
/* Zweck höchstens zwei Zeilen; er bricht um, statt die Tabelle zu verbreitern (vorher nowrap bis 44rem = Überlauf) */
.us-zweck[b-emj7xoek2u] { font-size: 0.75rem; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow-wrap: anywhere; }
/* Datum und Auszug-Symbol bleiben in einer Zeile; das Symbol hat Tooltip und Namen für Screenreader */
.us-datum-zelle[b-emj7xoek2u] { white-space: nowrap; }
.us-konto-klein[b-emj7xoek2u] { display: none; font-size: 0.75rem; }

/* Tablet: das Konto wandert unter Gegenseite und Zweck, die Spalte fällt weg (zwischen 768 und 1440 px rollt nichts) */
@media (max-width: 1100px) {
    .us-konto[b-emj7xoek2u] { display: none; }
    .us-konto-klein[b-emj7xoek2u] { display: block; }
    .us-stand[b-emj7xoek2u] { width: 8rem; }
    .us-kennzahlen[b-emj7xoek2u] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.us-leer[b-emj7xoek2u] { padding: 2rem 1rem; }

/* Handy (unter 600 px): jede Zeile eine Karte. Gegenseite links, Betrag rechts oben (immer sichtbar), darunter Zweck und
   Konto, unten Datum mit Auszug-Symbol und Stand (Rundgang 11b) */
@media (max-width: 600px) {
    .us-tabelle thead[b-emj7xoek2u] { display: none; }

    .us-tabelle tbody tr[b-emj7xoek2u] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas: "gegen betrag" "datum stand";
        gap: 0.25rem 0.75rem;
        padding: 0.6rem 0.75rem;
        border-bottom: 1px solid var(--border);
    }

    .us-tabelle tbody td[b-emj7xoek2u] { padding: 0; border: none; }
    .us-tabelle tbody td:nth-child(1)[b-emj7xoek2u] { grid-area: datum; }
    .us-tabelle tbody td:nth-child(2)[b-emj7xoek2u] { grid-area: gegen; min-width: 0; }
    .us-tabelle tbody td:nth-child(3)[b-emj7xoek2u] { display: none; }
    .us-tabelle tbody td:nth-child(4)[b-emj7xoek2u] { grid-area: betrag; white-space: nowrap; font-weight: 500; }
    .us-tabelle tbody td:nth-child(5)[b-emj7xoek2u] { grid-area: stand; justify-self: end; }
    .us-tabelle tbody tr:only-child td[b-emj7xoek2u] { grid-column: 1 / -1; }
}
/* /Components/Pages/Finanzen/Zuordnen.razor.rz.scp.css */
/* Fortschritt je Monat */
.zu-monate[b-98xanb0060] {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 0.4rem;
    margin-bottom: 1rem;
}

.zu-monat[b-98xanb0060] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.4rem 0.5rem;
    border: 1px solid var(--border);
    background: var(--card);
    font: inherit;
    font-size: 0.8125rem;
    text-align: left;
    cursor: pointer;
}

.zu-monat:hover[b-98xanb0060] {
    border-color: var(--primary);
}

.zu-monat-aktiv[b-98xanb0060] {
    border-color: var(--primary);
    box-shadow: inset 0 -3px 0 var(--primary);
}

.zu-monat-name[b-98xanb0060] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.zu-monat[b-98xanb0060]  .zu-schloss {
    color: #15803d;
}

.zu-balken[b-98xanb0060] {
    height: 4px;
    background: var(--muted);
}

.zu-fuellung[b-98xanb0060] {
    display: block;
    height: 100%;
    background: var(--primary);
}

.zu-fuellung.zu-voll[b-98xanb0060] {
    background: #15803d;
}

.zu-zahl[b-98xanb0060] {
    color: var(--muted-foreground);
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
}

/* Drei Spalten */
.zu-ansicht[b-98xanb0060] {
    display: grid;
    grid-template-columns: minmax(20rem, 26rem) minmax(0, 1fr) minmax(16rem, 22rem);
    gap: 1rem;
    align-items: start;
}

.zu-liste[b-98xanb0060] {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 16rem);
}

.zu-filter[b-98xanb0060] {
    padding: 0.6rem;
    border-bottom: 1px solid var(--border);
}

.zu-chips[b-98xanb0060] {
    display: flex;
    gap: 0.35rem;
    margin-top: 0.5rem;
}

.zu-chip[b-98xanb0060] {
    padding: 0.15rem 0.6rem;
    border: 1px solid var(--border);
    border-radius: 9999px;
    background: none;
    font: inherit;
    font-size: 0.8125rem;
    cursor: pointer;
}

.zu-chip-an[b-98xanb0060] {
    border-color: var(--primary);
    background: color-mix(in srgb, var(--primary) 10%, transparent);
    color: var(--primary);
}

.zu-chip-zahl[b-98xanb0060] {
    color: var(--muted-foreground);
    font-variant-numeric: tabular-nums;
}

.zu-zeilen[b-98xanb0060] {
    overflow-y: auto;
    outline: none;
}

.zu-zeile[b-98xanb0060] {
    display: grid;
    grid-template-columns: 3.2rem minmax(0, 1fr) auto;
    gap: 0.1rem 0.5rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    border-left: 3px solid transparent;
    border-bottom: 1px solid var(--border);
    background: none;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.zu-zeile:hover[b-98xanb0060] {
    background: var(--muted);
}

.zu-aktiv[b-98xanb0060] {
    background: color-mix(in srgb, var(--primary) 8%, transparent);
    border-left-color: var(--primary);
}

.zu-datum[b-98xanb0060] {
    color: var(--muted-foreground);
    font-variant-numeric: tabular-nums;
}

.zu-name[b-98xanb0060] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zu-betrag[b-98xanb0060] {
    text-align: right;
    font-weight: var(--font-weight-medium);
}

.zu-zweck[b-98xanb0060] {
    grid-column: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--muted-foreground);
    font-size: 0.75rem;
}

.zu-stand[b-98xanb0060] {
    grid-column: 3;
    justify-self: end;
}

/* Mitte */
.zu-mitte[b-98xanb0060] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

.zu-kopf[b-98xanb0060] {
    padding: 1rem;
}

.zu-kopf-oben[b-98xanb0060] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.zu-gross[b-98xanb0060] {
    font-size: 1.5rem;
    font-weight: var(--font-weight-medium);
}

.zu-gegen[b-98xanb0060] {
    margin-top: 0.25rem;
    font-size: 1.05rem;
}

.zu-text[b-98xanb0060] {
    color: var(--muted-foreground);
    margin: 0.25rem 0 0.5rem;
    overflow-wrap: anywhere;
}

.zu-werte[b-98xanb0060] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.15rem 1rem;
    margin: 0;
    font-size: 0.8125rem;
}

.zu-werte dt[b-98xanb0060] {
    color: var(--muted-foreground);
}

.zu-werte dd[b-98xanb0060] {
    margin: 0;
    overflow-wrap: anywhere;
}

.zu-vorschlag[b-98xanb0060] {
    padding: 0.75rem 1rem;
    border-left: 3px solid var(--primary);
}

.zu-mehrdeutig[b-98xanb0060] {
    border-left-color: #ca8a04;
}

.zu-vorschlag-kopf[b-98xanb0060] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.zu-uebernehmen[b-98xanb0060] {
    margin-left: auto;
}

.zu-uebernehmen kbd[b-98xanb0060] {
    font-size: 0.7rem;
    opacity: 0.8;
}

.zu-gruende[b-98xanb0060] {
    margin-top: 0.35rem;
    color: var(--muted-foreground);
    font-size: 0.8125rem;
}

.zu-vorschlag-zeilen[b-98xanb0060] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1rem;
    margin-top: 0.4rem;
    font-size: 0.875rem;
}

.zu-kandidat[b-98xanb0060] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.1rem 0.5rem;
    width: 100%;
    margin-top: 0.4rem;
    padding: 0.4rem 0.6rem;
    border: 1px solid var(--border);
    background: none;
    font: inherit;
    font-size: 0.875rem;
    text-align: left;
    cursor: pointer;
}

.zu-kandidat:hover[b-98xanb0060] {
    border-color: var(--primary);
}

.zu-kandidat .muted[b-98xanb0060] {
    grid-column: 1 / -1;
    font-size: 0.75rem;
}

.zu-rest[b-98xanb0060] {
    font-variant-numeric: tabular-nums;
    color: #15803d;
}

.zu-rest-offen[b-98xanb0060] {
    color: #b45309;
}

.zu-split[b-98xanb0060] {
    display: grid;
    grid-template-columns: 8rem minmax(9rem, 1.3fr) 5rem minmax(7rem, 1fr) minmax(7rem, 1fr) 5rem 2rem;
    gap: 0.4rem;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border);
}

.zu-vst[b-98xanb0060] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
}

.zu-notiz[b-98xanb0060] {
    grid-column: 1 / -1;
}

.zu-jahr[b-98xanb0060] {
    width: 5rem;
}

.zu-aktionen[b-98xanb0060] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.zu-luecke[b-98xanb0060] {
    flex: 1;
}

.zu-grund[b-98xanb0060] {
    max-width: 14rem;
}

.zu-fehler[b-98xanb0060] {
    color: var(--destructive);
}

.zu-leer[b-98xanb0060] {
    padding: 2.5rem 1rem;
}

.zu-leer-klein[b-98xanb0060] {
    padding: 1rem;
}

/* Tablet: Liste und Mitte nebeneinander, die Vorschläge darunter über die volle Breite */
@media (max-width: 1100px) {
    .zu-ansicht[b-98xanb0060] {
        grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
    }

    .zu-ansicht > :nth-child(3)[b-98xanb0060] {
        grid-column: 1 / -1;
    }
}

/* Handy: alles untereinander, Kopfwerte einspaltig, Splitzeilen in zwei Spalten */
@media (max-width: 760px) {
    .zu-ansicht[b-98xanb0060] {
        grid-template-columns: minmax(0, 1fr);
    }

    .zu-kopf-oben[b-98xanb0060] {
        flex-wrap: wrap;
    }

    .zu-werte[b-98xanb0060] {
        grid-template-columns: minmax(0, 1fr);
    }

    .zu-split[b-98xanb0060] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}

/* Knöpfe rutschen in eine zweite Zeile statt über den Rand */
.zu-vorschlag-kopf[b-98xanb0060],
.zu-aktionen[b-98xanb0060] {
    flex-wrap: wrap;
}
/* /Components/Pages/Login.razor.rz.scp.css */
.login-hint[b-s1hnbqhwsm] {
    margin-top: 1rem;
    padding: 0.75rem;
    background-color: var(--muted);
    border-left: 3px solid var(--primary);
    font-size: 0.8125rem;
    color: var(--foreground);
}

.login-hint strong[b-s1hnbqhwsm] {
    color: var(--primary);
}

/* Kennzeichen statt Firmenlogo (privates Werkzeug, Muster DS.FitnessHub) */
.login-logo-box[b-s1hnbqhwsm] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    background-color: var(--primary);
    color: var(--primary-foreground);
}

.login-logo-text[b-s1hnbqhwsm] {
    font-size: 2rem;
    font-weight: var(--font-weight-medium);
    letter-spacing: 0.02em;
}

/* Ladezustand beim Absenden (js/form-submit-spinner.js, STANDARDS 3.20) */
.login-btn-spinner[b-s1hnbqhwsm] {
    display: none;
}

.login-btn.is-loading[b-s1hnbqhwsm] {
    pointer-events: none;
    opacity: 0.85;
}

.login-btn.is-loading .login-btn-spinner[b-s1hnbqhwsm] {
    display: inline-block;
}
/* /Components/Pages/PasswortAendern.razor.rz.scp.css */
.pw-karte[b-mzsc6pk9k9] {
    max-width: 32rem;
    padding: 1.25rem;
}

.pw-form[b-mzsc6pk9k9] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1rem;
}

.pw-form label[b-mzsc6pk9k9] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.78rem;
    color: var(--muted-foreground);
}

.pw-fehler[b-mzsc6pk9k9] {
    margin: 0.75rem 0 0;
    color: var(--destructive);
}

.pw-ok[b-mzsc6pk9k9] {
    margin: 0.75rem 0 0;
    color: var(--success, var(--foreground));
}

.pw-aktionen[b-mzsc6pk9k9] {
    margin-top: 1rem;
}
/* /Components/Pages/Uebersicht.razor.rz.scp.css */
.ue-kennzahlen[b-a3r6d9avi9] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.ue-objekte[b-a3r6d9avi9] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr));
    gap: 0.75rem;
}

.ue-objekt[b-a3r6d9avi9] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1rem;
    color: inherit;
    text-decoration: none;
    border-top: 3px solid var(--primary);
}

.ue-objekt:hover[b-a3r6d9avi9] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.ue-kopf[b-a3r6d9avi9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ue-kuerzel[b-a3r6d9avi9] {
    font-size: 1.25rem;
    font-weight: var(--font-weight-medium);
}

.ue-name[b-a3r6d9avi9] {
    color: var(--muted-foreground);
    margin-bottom: 0.25rem;
}

.ue-zeile[b-a3r6d9avi9] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.875rem;
}

.ue-leer[b-a3r6d9avi9] {
    padding: 2.5rem 1rem;
}
.ue-aufgaben[b-a3r6d9avi9] {
    display: flex;
    flex-direction: column;
    padding: 0.25rem 0;
    margin-bottom: 1.5rem;
}

.ue-aufgabe[b-a3r6d9avi9] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 1rem;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--border);
}

.ue-aufgabe:last-child[b-a3r6d9avi9] {
    border-bottom: none;
}

.ue-aufgabe:hover[b-a3r6d9avi9] {
    background: var(--muted);
}

.ue-text[b-a3r6d9avi9] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    font-size: 0.875rem;
}

.ue-symbol[b-a3r6d9avi9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: var(--muted);
}

.ue-dringend[b-a3r6d9avi9] { color: var(--destructive); background: #fee2e2; }
.ue-offen[b-a3r6d9avi9] { color: #854d0e; background: #fef9c3; }
.ue-bereit[b-a3r6d9avi9] { color: #166534; background: #dcfce7; }

.ue-alles[b-a3r6d9avi9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.ue-kpis[b-a3r6d9avi9] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding-top: 0.6rem;
    border-top: 1px solid var(--border);
}

.ue-kpis > div[b-a3r6d9avi9] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.ue-kpi-wert[b-a3r6d9avi9] {
    font-weight: var(--font-weight-medium);
    font-variant-numeric: tabular-nums;
    font-size: 0.9rem;
}

.ue-kpi-label[b-a3r6d9avi9] {
    font-size: 0.7rem;
    color: var(--muted-foreground);
}

/* Sechs Kennzahlen: eine Reihe auf breiten Schirmen, sonst 3+3 bzw. 2+2+2 (nie 5+1, Rundgang 11b) */
@media (max-width: 1600px) {
    .ue-kennzahlen[b-a3r6d9avi9] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
    .ue-kennzahlen[b-a3r6d9avi9] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* „Als Nächstes“ auf dem Handy: Symbol und Text oben, Badge und Knopf darunter; Titel höchstens zwei Zeilen */
@media (max-width: 600px) {
    .ue-aufgabe[b-a3r6d9avi9] {
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-areas: "symbol text" ". aktion";
        row-gap: 0.4rem;
    }

    .ue-aufgabe > .ue-symbol[b-a3r6d9avi9] { grid-area: symbol; align-self: start; }
    .ue-aufgabe > .ue-text[b-a3r6d9avi9] { grid-area: text; }
    .ue-aufgabe > .ue-aktion[b-a3r6d9avi9] { grid-area: aktion; display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; }

    .ue-text strong[b-a3r6d9avi9] {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }
}

.ue-aktion[b-a3r6d9avi9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
/* /Components/Pages/Verwaltung/BeteiligteListe.razor.rz.scp.css */
.bl-badge[b-5tqyo5mulb] {
    margin-right: 0.25rem;
    text-decoration: none;
}

.bl-leer[b-5tqyo5mulb] {
    padding: 2rem 1rem;
}
/* /Components/Pages/Verwaltung/Kostenbelege.razor.rz.scp.css */
.kb-kennzahlen[b-4usaerndhs] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.kb-raster[b-4usaerndhs] {
    display: grid;
    grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.kb-liste[b-4usaerndhs] {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 0;
}

.kb-listenkopf[b-4usaerndhs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.25rem 0.75rem 0.5rem;
}

.kb-titel[b-4usaerndhs] {
    font-weight: 600;
}

.kb-gruppe[b-4usaerndhs] {
    padding: 0.4rem 0.75rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--muted-foreground);
    background: var(--muted);
}

.kb-eintrag[b-4usaerndhs] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.55rem 0.75rem;
    text-align: left;
    background: none;
    border: none;
    border-left: 3px solid transparent;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    color: inherit;
}

.kb-eintrag:hover[b-4usaerndhs] {
    background: var(--muted);
}

.kb-eintrag.kb-aktiv[b-4usaerndhs] {
    border-left-color: var(--primary);
    background: var(--muted);
}

.kb-name[b-4usaerndhs] {
    font-weight: 500;
}

.kb-zeile[b-4usaerndhs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
}

.kb-ohne[b-4usaerndhs] {
    align-self: flex-start;
}

.kb-leer[b-4usaerndhs] {
    padding: 2rem 1rem;
}

.kb-kopf[b-4usaerndhs] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.kb-kopf > div[b-4usaerndhs] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    font-size: 0.875rem;
}

.kb-notiz[b-4usaerndhs] {
    margin: 0.75rem 0 0;
    font-size: 0.85rem;
}

/* Handy: Liste über dem Beleg */
@media (max-width: 760px) {
    .kb-raster[b-4usaerndhs] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Pages/Verwaltung/KostenpositionenTabelle.razor.rz.scp.css */
.kp-leer[b-zjbcur17e8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

tr.kp-gruppe > td[b-zjbcur17e8] {
    background: var(--muted);
    font-weight: 600;
    font-size: 0.8rem;
}

td.kp-name[b-zjbcur17e8] {
    padding-left: 1.25rem;
}

.kp-hinweis[b-zjbcur17e8] {
    margin-left: 0.5rem;
    font-weight: normal;
}

td.kp-paket[b-zjbcur17e8] {
    font-family: ui-monospace, monospace;
    font-size: 0.75rem;
    color: var(--muted-foreground);
}

tr.kp-summe > td[b-zjbcur17e8] {
    font-weight: 600;
    border-top: 1px solid var(--border);
}

.kp-ust[b-zjbcur17e8] {
    display: flex;
    gap: 0.4rem;
    align-items: center;
}

.kp-check[b-zjbcur17e8] {
    flex-direction: row !important;
    align-items: center;
    gap: 0.4rem;
    align-self: end;
}
/* /Components/Pages/Verwaltung/MieterListe.razor.rz.scp.css */
.ml-aktion[b-8zk96d84e7] { width: 3rem; }

.ml-klein[b-8zk96d84e7] {
    font-size: 0.8125rem;
}

.ml-iban[b-8zk96d84e7] {
    font-variant-numeric: tabular-nums;
}

.ml-badge[b-8zk96d84e7] {
    margin-right: 0.25rem;
    text-decoration: none;
}

tr.ml-aktiv > td[b-8zk96d84e7] {
    background: var(--muted);
}

.ml-leer[b-8zk96d84e7] {
    padding: 2rem 1rem;
}
/* /Components/Pages/Verwaltung/Mietverhaeltnisse.razor.rz.scp.css */
.mv-ansicht[b-7259zk2hg5] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.mv-liste[b-7259zk2hg5] {
    flex: 0 0 26rem;
    max-height: calc(100vh - 12rem);
    overflow-y: auto;
    padding: 0.25rem 0;
    outline: none;
}

.mv-gruppe[b-7259zk2hg5] {
    padding: 0.75rem 1rem 0.25rem;
    font-size: 0.75rem;
    color: var(--muted-foreground);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.mv-zeile[b-7259zk2hg5] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.15rem 0.5rem;
    width: 100%;
    padding: 0.5rem 1rem;
    border: none;
    border-left: 3px solid transparent;
    background: none;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.mv-zeile:hover[b-7259zk2hg5] {
    background: var(--muted);
}

.mv-aktiv[b-7259zk2hg5] {
    background: color-mix(in srgb, var(--primary) 8%, transparent);
    border-left-color: var(--primary);
}

.mv-titel[b-7259zk2hg5] {
    overflow-wrap: anywhere;
}

.mv-unter[b-7259zk2hg5] {
    grid-column: 1 / -1;
    font-size: 0.75rem;
    color: var(--muted-foreground);
}

.mv-detail[b-7259zk2hg5] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.mv-leer[b-7259zk2hg5] {
    padding: 3rem 1rem;
}

/* Tablet: die Liste wird schmaler; Handy: Liste über dem Vertrag, beide volle Breite */
@media (max-width: 1100px) {
    .mv-liste[b-7259zk2hg5] {
        flex-basis: 20rem;
    }
}

@media (max-width: 760px) {
    .mv-ansicht[b-7259zk2hg5] {
        flex-direction: column;
        align-items: stretch;
    }

    .mv-liste[b-7259zk2hg5] {
        flex: none;
        max-height: 40vh;
    }

    .mv-detail[b-7259zk2hg5] {
        min-width: 0;
        width: 100%;
    }
}
/* /Components/Pages/Verwaltung/Nk/NkAbrechnungen.razor.rz.scp.css */
.nk-objekte[b-584qguekbm] {
    display: flex;
    gap: 0.75rem;
    align-items: stretch;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.nk-objekt[b-584qguekbm] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
    min-width: 9rem;
    padding: 0.6rem 1rem;
    background: var(--card, #fff);
    border: 1px solid var(--border);
    border-top: 3px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    color: inherit;
}

.nk-objekt.nk-aktiv[b-584qguekbm] {
    border-top-color: var(--primary);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.nk-kuerzel[b-584qguekbm] {
    font-size: 1.1rem;
    font-weight: var(--font-weight-medium);
}

.nk-klein[b-584qguekbm] {
    font-size: 0.75rem;
}

.nk-art[b-584qguekbm] {
    margin-left: auto;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    align-self: center;
}

.nk-kennzahlen[b-584qguekbm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.nk-hinweise[b-584qguekbm] {
    margin: 0 0 1rem;
    padding: 0.6rem 1rem 0.6rem 2rem;
    background: #fef9c3;
    color: #854d0e;
    border-radius: 6px;
    font-size: 0.875rem;
}

.nk-reiter[b-584qguekbm] {
    display: flex;
    gap: 0.25rem;
    border-bottom: 1px solid var(--border);
    margin-bottom: 1rem;
}

.nk-tab[b-584qguekbm] {
    padding: 0.5rem 1rem;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    color: var(--muted-foreground);
    font-weight: 500;
}

.nk-tab.nk-tab-aktiv[b-584qguekbm] {
    color: inherit;
    border-bottom-color: var(--primary);
}

/* Handy: die Objektkacheln als eigene Reihe, „anteilig nach“ darunter */
@media (max-width: 760px) {
    .nk-art[b-584qguekbm] {
        margin-left: 0;
        flex-basis: 100%;
        flex-direction: row;
        align-items: center;
        gap: 0.5rem;
    }
}
/* /Components/Pages/Verwaltung/Nk/NkKostenListe.razor.rz.scp.css */


/* Gestapelt statt gerollt (Rundgang 11b): der Schlüssel steht auf dem Tablet unter der Position, auf dem Handy fallen
   Netto, USt und Quelle weg; Brutto bleibt immer sichtbar */
.nk-k-klein[b-snx36ufitc] { display: none; font-size: 0.75rem; }

@media (max-width: 1100px) {
    .nk-k-schl[b-snx36ufitc] { display: none; }
    .nk-k-klein[b-snx36ufitc] { display: block; }
}

@media (max-width: 760px) {
    .nk-k-neben[b-snx36ufitc],
    .nk-k-quelle[b-snx36ufitc] { display: none; }
}
/* /Components/Pages/Verwaltung/ObjektListe.razor.rz.scp.css */
.ol-kuerzel[b-4l3tmp40uw] { width: 6rem; }

.ol-klein[b-4l3tmp40uw] {
    font-size: 0.75rem;
}

.ol-leer[b-4l3tmp40uw] {
    padding: 2rem 1rem;
    text-align: center;
}
/* /Components/Pages/Verwaltung/ObjektReiter/AfaTabelle.razor.rz.scp.css */
.at-klein[b-ck06zhjf7i] {
    font-size: 0.75rem;
}

tr.at-aktiv > td[b-ck06zhjf7i] {
    background: var(--muted);
}

.at-reihe[b-ck06zhjf7i] {
    font-variant-numeric: tabular-nums;
}
.at-leer[b-ck06zhjf7i] {
    padding: 1.5rem 1rem;
}

/* AfA-Reihe: alle Betragsspalten gleich breit und rechtsbuendig, "Erklaerung" als Ergebnis abgesetzt */
.at-reihe[b-ck06zhjf7i] {
    table-layout: fixed;
}

.at-reihe th[b-ck06zhjf7i],
.at-reihe td[b-ck06zhjf7i] {
    text-align: right;
}

.at-reihe .at-jahr[b-ck06zhjf7i] {
    width: 5rem;
    text-align: left;
}

.at-reihe .at-erklaerung[b-ck06zhjf7i] {
    border-left: 2px solid var(--border);
    font-weight: var(--font-weight-medium);
    color: var(--primary);
}
/* /Components/Pages/Verwaltung/ObjektReiter/DarlehenJahrTabelle.razor.rz.scp.css */
.dj-bank[b-0j67fks6rr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.75rem;
    background: var(--muted);
    font-size: 0.875rem;
}
/* /Components/Pages/Verwaltung/ObjektReiter/Einheiten.razor.rz.scp.css */
.eh-kennzahlen[b-0fd50o3w6p] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.eh-leer[b-0fd50o3w6p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.eh-leiste[b-0fd50o3w6p] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.eh-schalter[b-0fd50o3w6p] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.85rem;
    color: var(--muted-foreground);
}

.eh-raster[b-0fd50o3w6p] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
    gap: 1rem;
    align-items: start;
}

tr.eh-summe > td[b-0fd50o3w6p] {
    font-weight: 600;
    border-top: 1px solid var(--border);
}
/* /Components/Pages/Verwaltung/ObjektReiter/Finanzierung.razor.rz.scp.css */
.fi-klein[b-nng1q8smqa] {
    font-size: 0.75rem;
}

tr.fi-aktiv > td[b-nng1q8smqa] {
    background: var(--muted);
}
/* /Components/Pages/Verwaltung/ObjektReiter/Steckbrief.razor.rz.scp.css */
.sb-raster[b-7m3aqqsra3] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.sb-form[b-7m3aqqsra3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.sb-form label[b-7m3aqqsra3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.sb-voll[b-7m3aqqsra3] {
    grid-column: 1 / -1;
}

.sb-fehler[b-7m3aqqsra3] {
    color: var(--destructive);
}
.sb-kennzahlen[b-7m3aqqsra3] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}
/* /Components/Pages/Verwaltung/ObjektReiter/TeilflaechenTabelle.razor.rz.scp.css */
.tf-klein[b-gz1mcslca8] {
    font-size: 0.75rem;
}

.tf-leer[b-gz1mcslca8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

tr.tf-gruppe > td[b-gz1mcslca8] {
    background: var(--muted);
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

td.tf-name[b-gz1mcslca8] {
    padding-left: 1.25rem;
}

tr.tf-alt > td[b-gz1mcslca8] {
    color: var(--muted-foreground);
    text-decoration: line-through;
}

.tf-mieter + .tf-mieter[b-gz1mcslca8]::before {
    content: ", ";
}
/* /Components/Pages/Verwaltung/ObjektReiter/Versicherungen.razor.rz.scp.css */
.vs-kopf[b-sowyxo1836] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}
/* /Components/Pages/Verwaltung/ObjektReiter/ZaehlerstandTabelle.razor.rz.scp.css */
.zs-leer[b-3aisp6seyk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
/* /Components/Pages/Verwaltung/ObjektReiter/ZaehlerTabelle.razor.rz.scp.css */
.zt-klein[b-fvs6s8e1rb] {
    font-size: 0.75rem;
}

.zt-leer[b-fvs6s8e1rb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.zt-unter[b-fvs6s8e1rb] {
    padding-left: 1.25rem;
    position: relative;
}

.zt-unter[b-fvs6s8e1rb]::before {
    content: "\2514";
    position: absolute;
    left: 0.25rem;
    color: var(--muted-foreground);
}

tr.zt-aktiv > td[b-fvs6s8e1rb] {
    background: var(--muted);
}
/* /Components/Pages/Verwaltung/ObjektSeite.razor.rz.scp.css */
.os-inhalt[b-lij6d3pynj] {
    margin-top: 1rem;
}
/* /Components/Pages/Verwaltung/SollIst.razor.rz.scp.css */
.si-kennzahlen[b-vec6ysg1fk] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.si-tabelle[b-vec6ysg1fk] {
    font-variant-numeric: tabular-nums;
}

.si-gruppe > td[b-vec6ysg1fk] {
    background: var(--muted);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--muted-foreground);
}

.si-tabelle td.si-leerzelle[b-vec6ysg1fk] {
    background-image: repeating-linear-gradient(45deg, transparent 0, transparent 5px, var(--border) 5px, var(--border) 6px);
}

.si-summe[b-vec6ysg1fk],
.si-gesamt > td[b-vec6ysg1fk] {
    font-weight: var(--font-weight-medium);
}

.si-jahr[b-vec6ysg1fk] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.si-jahr-text[b-vec6ysg1fk] {
    min-width: 3.5rem;
    text-align: center;
    font-variant-numeric: tabular-nums;
}

.si-leer[b-vec6ysg1fk] {
    padding: 2rem 1rem;
}
.si-tabelle td.si-passt[b-vec6ysg1fk] {
    color: #166534;
}

.si-tabelle td.si-weniger[b-vec6ysg1fk] {
    color: var(--destructive);
    background: #fee2e2;
    font-weight: var(--font-weight-medium);
}

.si-tabelle td.si-mehr[b-vec6ysg1fk] {
    color: #854d0e;
    background: #fef9c3;
}

.si-tabelle td.si-soll[b-vec6ysg1fk] {
    color: var(--muted-foreground);
    font-style: italic;
}

.si-hinweis[b-vec6ysg1fk] {
    text-align: right;
}

.si-legende[b-vec6ysg1fk] {
    display: flex;
    gap: 1.25rem;
    padding: 0.6rem 1rem;
    font-size: 0.75rem;
    color: var(--muted-foreground);
    border-top: 1px solid var(--border);
}

.si-legende > span[b-vec6ysg1fk] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.si-punkt[b-vec6ysg1fk] {
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 2px;
    border: 1px solid var(--border);
}

.si-punkt.si-passt[b-vec6ysg1fk] { background: #dcfce7; }
.si-punkt.si-weniger[b-vec6ysg1fk] { background: #fee2e2; }
.si-punkt.si-mehr[b-vec6ysg1fk] { background: #fef9c3; }
.si-punkt.si-soll[b-vec6ysg1fk] { background: transparent; }
/* /Components/Pages/Verwaltung/Vermietung/BestandteilTabelle.razor.rz.scp.css */
/* Der Detailbereich ist auch am Desktop schmal: 2 x 2 nach seiner Breite statt nach dem Fenster (Nachtrag 11b) */
.bt-rahmen[b-cryn400tb4] {
    container-type: inline-size;
}

.bt-kennzahlen[b-cryn400tb4] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

tr.bt-alt > td[b-cryn400tb4] {
    color: var(--muted-foreground);
}

.bt-leer[b-cryn400tb4] {
    padding: 1.5rem 1rem;
}

@container (max-width: 44rem) {
    .bt-kennzahlen[b-cryn400tb4] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/Pages/Verwaltung/Vermietung/KorrespondenzBereich.razor.rz.scp.css */
.ko-upload[b-r7ompjusds] {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.ko-upload[b-r7ompjusds]  input[type=file] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.ko-meldungen[b-r7ompjusds] {
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.75rem;
    border-radius: 0.375rem;
    background: var(--color-bg-subtle, #f6f8fa);
    font-size: 0.85rem;
}

.ko-zeitleiste[b-r7ompjusds] {
    display: flex;
    flex-direction: column;
}

.ko-eintrag[b-r7ompjusds] {
    display: grid;
    grid-template-columns: 6rem 1rem minmax(0, 1fr) auto;
    gap: 0.75rem;
    padding: 0.6rem 0;
    border-bottom: 1px solid var(--color-border, #eaeef2);
}

.ko-datum[b-r7ompjusds] {
    font-variant-numeric: tabular-nums;
}

.ko-punkt[b-r7ompjusds] {
    width: 0.65rem;
    height: 0.65rem;
    margin-top: 0.35rem;
    border-radius: 9999px;
    background: #8c959f;
}

.ko-ein[b-r7ompjusds] {
    background: var(--color-primary, #0C5DA6);
}

.ko-aus[b-r7ompjusds] {
    background: #1a7f37;
}

.ko-betreff[b-r7ompjusds] {
    font-weight: 600;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
}

.ko-auszug[b-r7ompjusds] {
    margin: 0.2rem 0;
    font-size: 0.85rem;
}

.ko-k[b-r7ompjusds] {
    font-size: 0.8rem;
}

.ko-link[b-r7ompjusds] {
    border: 0;
    background: none;
    padding: 0;
    color: var(--color-primary, #0C5DA6);
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.ko-leer[b-r7ompjusds] {
    padding: 1rem;
}

.ko-form[b-r7ompjusds] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.ko-form label[b-r7ompjusds] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.ko-voll[b-r7ompjusds] {
    grid-column: 1 / -1;
}
/* /Components/Pages/Verwaltung/Vermietung/MieterkontoBereich.razor.rz.scp.css */
.mk-klein[b-9107ofdj5o] {
    width: auto;
    height: 2rem;
    padding: 0 0.5rem;
}

.mk-fenster[b-9107ofdj5o] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8rem;
    color: var(--color-text-muted, #57606a);
}

.mk-fenster input[b-9107ofdj5o] {
    width: 3.5rem;
    height: 2rem;
    padding: 0 0.35rem;
}

/* wie die Mietbestandteile: 2 x 2 nach der Breite des Bereichs (Nachtrag 11b) */
.mk-rahmen[b-9107ofdj5o] {
    container-type: inline-size;
}

.mk-kennzahlen[b-9107ofdj5o] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.mk-befund[b-9107ofdj5o] {
    padding: 0.4rem 0.75rem;
    margin-bottom: 0.5rem;
    border-radius: 0.375rem;
    background: #fef9c3;
    font-size: 0.85rem;
}

.mk-reiter[b-9107ofdj5o] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    border-bottom: 1px solid var(--color-border, #d0d7de);
    margin-bottom: 0.5rem;
}

.mk-reiter button[b-9107ofdj5o] {
    border: 0;
    background: none;
    padding: 0.4rem 0.75rem;
    cursor: pointer;
    border-bottom: 2px solid transparent;
}

.mk-reiter .mk-an[b-9107ofdj5o] {
    border-bottom-color: var(--color-primary, #0C5DA6);
    font-weight: 600;
}

.mk-alle[b-9107ofdj5o] {
    margin-left: auto;
    font-size: 0.8rem;
}

.mk-tabelle td[b-9107ofdj5o] {
    vertical-align: top;
}

.mk-k[b-9107ofdj5o] {
    font-size: 0.8rem;
}

.mk-abweichend td:first-child[b-9107ofdj5o] {
    box-shadow: inset 3px 0 0 #eab308;
}

.mk-offen td[b-9107ofdj5o] {
    background: #fef2f2;
}

.mk-alt td[b-9107ofdj5o] {
    color: var(--color-text-muted, #57606a);
    text-decoration: line-through;
}

.mk-link[b-9107ofdj5o] {
    border: 0;
    background: none;
    padding: 0;
    color: var(--color-primary, #0C5DA6);
    cursor: pointer;
    text-decoration: underline;
}

.mk-form[b-9107ofdj5o] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.mk-form label[b-9107ofdj5o] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.mk-voll[b-9107ofdj5o] {
    grid-column: 1 / -1;
}

.mk-belege[b-9107ofdj5o] {
    margin-top: 0.75rem;
}

.mk-fehler[b-9107ofdj5o] {
    color: var(--color-danger, #b42318);
    margin-top: 0.5rem;
}

.mk-ok[b-9107ofdj5o] {
    color: var(--color-success, #1a7f37);
    margin-top: 0.5rem;
}

@container (max-width: 44rem) {
    .mk-kennzahlen[b-9107ofdj5o] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/Pages/Verwaltung/Vermietung/MietverhaeltnisFormular.razor.rz.scp.css */
.mf-form[b-rjcxw3mzkp] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.mf-form label[b-rjcxw3mzkp] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.mf-form .mf-check[b-rjcxw3mzkp] {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    padding-top: 1.25rem;
}

.mf-voll[b-rjcxw3mzkp] {
    grid-column: 1 / -1;
}

.mf-chips[b-rjcxw3mzkp] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.25rem;
}

.mf-form .mf-chip[b-rjcxw3mzkp] {
    flex-direction: row;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.6rem;
    border: 1px solid var(--border);
    border-radius: 9999px;
    font-size: 0.875rem;
    cursor: pointer;
}

.mf-chip input[b-rjcxw3mzkp] {
    display: none;
}

.mf-form .mf-an[b-rjcxw3mzkp] {
    border-color: var(--primary);
    background: color-mix(in srgb, var(--primary) 10%, transparent);
    color: var(--primary);
}

.mf-fehler[b-rjcxw3mzkp] {
    color: var(--destructive);
}
.mf-ab[b-rjcxw3mzkp] {
    margin-left: 0.35rem;
    font-size: 0.7rem;
    color: var(--muted-foreground);
}

.mf-weg[b-rjcxw3mzkp] {
    border: 0;
    background: none;
    padding: 0 0 0 0.25rem;
    cursor: pointer;
    color: inherit;
}

.mf-suche[b-rjcxw3mzkp] {
    width: 16rem;
    height: 1.9rem;
}

/* Handy (unter 600 px): einspaltig; Objekt und Datum in voller Breite, lange Beschriftungen (USt-Option) brechen sauber um */
@media (max-width: 600px) {
    .mf-form[b-rjcxw3mzkp] {
        grid-template-columns: minmax(0, 1fr);
    }

    .mf-form > *[b-rjcxw3mzkp] {
        min-width: 0;
    }

    .mf-form :where(input, select, textarea)[b-rjcxw3mzkp] {
        width: 100%;
        min-width: 0;
    }

    .mf-form .mf-check[b-rjcxw3mzkp] {
        align-items: flex-start;
        padding-top: 0;
    }

    .mf-form .mf-check span[b-rjcxw3mzkp] {
        overflow-wrap: anywhere;
    }
}
/* /Components/Pages/Verwaltung/Vermietung/VertraegeBereich.razor.rz.scp.css */
.vb-art[b-vd9zonb3a2] {
    width: auto;
    min-width: 12rem;
    height: 2rem;
    padding: 0 0.5rem;
}

.vb-hinweis[b-vd9zonb3a2] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.5rem;
    border-radius: 0.375rem;
    background: var(--color-bg-subtle, #f6f8fa);
}

.vb-hinweis span:first-child[b-vd9zonb3a2] {
    flex: 1;
}

.vb-aenderung[b-vd9zonb3a2] {
    background: #fef9c3;
}

.vb-version[b-vd9zonb3a2] {
    color: var(--color-text-muted, #57606a);
    font-size: 0.8rem;
}

.vb-form[b-vd9zonb3a2] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.vb-form label[b-vd9zonb3a2] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.vb-form .vb-check[b-vd9zonb3a2] {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    grid-column: span 2;
}

.vb-voll[b-vd9zonb3a2] {
    grid-column: 1 / -1;
}

.vb-halb[b-vd9zonb3a2] {
    grid-column: span 2;
}

.vb-zeilen td[b-vd9zonb3a2] {
    padding: 0.2rem 0.25rem;
}

.vb-schmal[b-vd9zonb3a2] {
    width: 5rem;
}

.vb-klein[b-vd9zonb3a2] {
    font-size: 0.8rem;
    color: var(--color-text-muted, #57606a);
    margin-top: 0.75rem;
}

.vb-fehler[b-vd9zonb3a2] {
    color: var(--color-danger, #b42318);
    margin-top: 0.5rem;
}
/* /Components/Shared/AblegenDialog.razor.rz.scp.css */
.ad-form[b-s0yfuvjyrx] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.ad-form label[b-s0yfuvjyrx],
.ad-voll[b-s0yfuvjyrx] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.875rem;
}

.ad-voll[b-s0yfuvjyrx] {
    grid-column: 1 / -1;
}

.ad-vorschau[b-s0yfuvjyrx] {
    margin-top: 1rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border);
}

.ad-werte[b-s0yfuvjyrx] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.25rem 1rem;
    margin: 0.5rem 0;
    font-size: 0.875rem;
}

.ad-werte dt[b-s0yfuvjyrx] {
    color: var(--muted-foreground);
}

.ad-werte dd[b-s0yfuvjyrx] {
    margin: 0;
    word-break: break-all;
}

.ad-warnung[b-s0yfuvjyrx] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
    color: #854d0e;
    font-size: 0.875rem;
}

.ad-fehler[b-s0yfuvjyrx] {
    color: var(--destructive);
    font-size: 0.875rem;
}
/* /Components/Shared/AenderungsVorschau.razor.rz.scp.css */
.av[b-815p4tvra7] {
    margin-top: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--muted);
    font-size: 0.875rem;
}

.av ul[b-815p4tvra7] {
    margin: 0.25rem 0 0 0;
    padding-left: 1.25rem;
}

.av-titel[b-815p4tvra7] {
    color: var(--muted-foreground);
}

.av-neu[b-815p4tvra7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.av-leer[b-815p4tvra7] {
    color: var(--muted-foreground);
}

.av-feld[b-815p4tvra7] {
    color: var(--muted-foreground);
}

.av-alt[b-815p4tvra7] {
    text-decoration: line-through;
    color: var(--muted-foreground);
}

.av-neu-wert[b-815p4tvra7] {
    font-weight: var(--font-weight-medium);
}
/* /Components/Shared/BelegeBereich.razor.rz.scp.css */
.bb[b-755ujnsavy] {
    margin-top: 1rem;
}

.bb-leer[b-755ujnsavy] {
    margin: 0;
    padding: 0.75rem 0;
}

.bb-datum[b-755ujnsavy] {
    width: 7rem;
    white-space: nowrap;
}

.bb-klein[b-755ujnsavy] {
    font-size: 0.75rem;
}

tr.bb-aktiv > td[b-755ujnsavy] {
    background: var(--muted);
}

.bb-treffer[b-755ujnsavy] {
    margin-top: 0.75rem;
}
/* /Components/Shared/BetragInput.razor.rz.scp.css */
.betrag-input[b-9uec49k4y4] {
    width: 100%;
    min-width: 7rem;
    vertical-align: middle;
}

.betrag-input > .form-input[b-9uec49k4y4] {
    font-variant-numeric: tabular-nums;
}

.betrag-klein[b-9uec49k4y4] {
    height: 2rem;
}

.betrag-klein > .form-input[b-9uec49k4y4] {
    padding: 0 0.5rem;
    font-size: 0.8125rem;
}

.betrag-klein > .unit[b-9uec49k4y4] {
    padding: 0 0.4rem;
    font-size: 0.75rem;
}
/* /Components/Shared/Card.razor.rz.scp.css */
.fc-card[b-d412236icq] {
    display: flex;
    flex-direction: column;
}

.fc-card-header[b-d412236icq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--border);
    font-weight: var(--font-weight-medium);
    /* Knöpfe rechts rutschen in eine zweite Zeile, statt aus der Karte zu laufen */
    flex-wrap: wrap;
    row-gap: 0.5rem;
}

.fc-card-header-spacer[b-d412236icq] {
    flex: 1;
}

.fc-card-body[b-d412236icq] {
    padding: 1.25rem;
}
/* /Components/Shared/DokumentAnzeigeHost.razor.rz.scp.css */
/* Schmales Fenster: Dialog ueber der Seite. */
.dok-seite-hintergrund[b-z46xtrm900] {
    position: fixed;
    inset: 0;
    z-index: 1001;
    background: rgba(0, 0, 0, 0.4);
}

.dok-seite[b-z46xtrm900] {
    position: fixed;
    inset: 3rem 2rem;
    z-index: 1002;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: var(--card, #fff);
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.dok-seite-kopf[b-z46xtrm900] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--border, #e5e7eb);
    flex-shrink: 0;
}

.dok-seite-titel[b-z46xtrm900] {
    flex: 1;
    min-width: 0;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dok-seite-inhalt[b-z46xtrm900] {
    flex: 1 1 0;
    min-height: 0;
}

.dok-seite-fuss[b-z46xtrm900] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 1rem;
    border-top: 1px solid var(--border, #e5e7eb);
    flex-shrink: 0;
}

.dok-seite-pfadzeile[b-z46xtrm900] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.dok-seite-pfad[b-z46xtrm900] {
    flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.8125rem;
}

/* Griff zum Ziehen der Breite (js/dok-seite.js) - nur als Seitenleiste. */
.dok-seite-griff[b-z46xtrm900] {
    display: none;
}

/* Breites Fenster: Seitenleiste rechts neben dem Inhalt (Breite --dok-seite-breite, Schwelle wie in app.css).
   Liegt ueber dem Hintergrund eines offenen Dialogs, damit Beleg und Dialog nebeneinander bedienbar sind. */
@media (min-width: 1600px) {
    .dok-seite-hintergrund[b-z46xtrm900] {
        display: none;
    }

    .dok-seite[b-z46xtrm900] {
        position: relative;
        inset: auto;
        flex: 0 0 var(--dok-seite-breite);
        width: var(--dok-seite-breite);
        border-radius: 0;
        border-left: 1px solid var(--border, #e5e7eb);
        box-shadow: -2px 0 10px rgba(0, 0, 0, 0.14);
    }

    .dok-seite-griff[b-z46xtrm900] {
        display: block;
        position: absolute;
        top: 0;
        left: -2px;
        width: 6px;
        height: 100%;
        cursor: col-resize;
        z-index: 1;
        transition: background-color 0.15s ease;
    }

    .dok-seite-griff:hover[b-z46xtrm900] {
        background-color: rgba(12, 93, 166, 0.5);
    }
}
/* /Components/Shared/FormularModal.razor.rz.scp.css */
.fm-form[b-sse5puko9q] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.fm-form[b-sse5puko9q]  label {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.fm-form[b-sse5puko9q]  .voll {
    grid-column: 1 / -1;
}

.fm-form[b-sse5puko9q]  .check {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
}

.fm-fehler[b-sse5puko9q] {
    color: var(--destructive);
}

.fm-frage[b-sse5puko9q] {
    align-self: center;
    color: var(--destructive);
}

.fm-luecke[b-sse5puko9q] {
    flex: 1;
}
/* /Components/Shared/Ladegeruest.razor.rz.scp.css */
.lg[b-z3o3k3pflg] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    pointer-events: none;
}

.lg-karte[b-z3o3k3pflg] {
    padding: 1rem 1.25rem;
}

.lg-text[b-z3o3k3pflg] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.875rem;
}

/* Platzhalter gedaempft; die Ladezeile bleibt voll lesbar. */
.lg-kacheln[b-z3o3k3pflg],
.lg-zeilen[b-z3o3k3pflg],
.lg-tabelle[b-z3o3k3pflg],
.lg-sektion-kopf[b-z3o3k3pflg],
.lg-sektion-zeilen[b-z3o3k3pflg] {
    opacity: 0.6;
}

.lg-kacheln[b-z3o3k3pflg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 1rem;
}

.lg-kachel[b-z3o3k3pflg] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 8px;
}

.lg-zeilen[b-z3o3k3pflg] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.lg-tabelle[b-z3o3k3pflg] {
    display: grid;
    gap: 0.85rem 1.25rem;
    align-items: center;
}

.lg-tabelle .lg-kopf[b-z3o3k3pflg] {
    width: 50%;
    height: 0.6rem;
    margin-bottom: 0.2rem;
}

.lg-tabelle .lg-num[b-z3o3k3pflg] {
    justify-self: end;
}

/* Form "karten": Karten wie die der Seite, Titelzeile mit Symbol, darunter Bezeichnung links und Betrag rechts. */
.lg-sektion[b-z3o3k3pflg] {
    padding: 0;
}

.lg-sektion-kopf[b-z3o3k3pflg] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border);
}

.lg-sektion-kopf .lg-symbol[b-z3o3k3pflg] {
    width: 1rem;
    height: 1rem;
    border-radius: 4px;
}

.lg-sektion-zeilen[b-z3o3k3pflg] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 9rem);
    gap: 0.85rem 2rem;
    align-items: center;
    padding: 1rem 1.25rem 1.25rem;
}

.lg-sektion-zeilen .lg-num[b-z3o3k3pflg] {
    justify-self: end;
}
/* /Components/Shared/Modal.razor.rz.scp.css */
.modal-backdrop[b-mo8nnsn56j] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 4rem 1.5rem 1.5rem;
    background: rgba(0, 0, 0, 0.4);
    overflow-y: auto;
}

.modal-panel[b-mo8nnsn56j] {
    width: 100%;
    max-width: 560px;
    background: var(--card, #fff);
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 6rem);
}

.modal-wide[b-mo8nnsn56j] {
    max-width: 820px;
}

.modal-xl[b-mo8nnsn56j] {
    max-width: min(1500px, calc(100vw - 4rem));
    height: calc(100vh - 6rem);
}

.modal-xl .modal-body[b-mo8nnsn56j] {
    flex: 1;
    min-height: 0;
}

.modal-header[b-mo8nnsn56j] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid var(--border, #e5e7eb);
}

.modal-title[b-mo8nnsn56j] {
    font-weight: 600;
    flex: 1;
}

.modal-close[b-mo8nnsn56j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem;
    background: none;
    border: none;
    border-radius: 6px;
    color: var(--muted-foreground, #6b7280);
    cursor: pointer;
}

.modal-close:hover[b-mo8nnsn56j] {
    background: color-mix(in srgb, var(--muted-foreground, #6b7280) 12%, transparent);
    color: inherit;
}

.modal-body[b-mo8nnsn56j] {
    padding: 1.25rem;
    overflow-y: auto;
}

.modal-footer[b-mo8nnsn56j] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 0.85rem 1.25rem;
    border-top: 1px solid var(--border, #e5e7eb);
}
/* /Components/Shared/ModulGeplant.razor.rz.scp.css */
.mg-kopf[b-hlwalo1ox5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}
/* /Components/Shared/PdfViewer.razor.rz.scp.css */
.pdf-viewer[b-xapokwf9bo] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    background-color: var(--background);
    border: 1px solid var(--border);
}

.pdf-toolbar[b-xapokwf9bo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--border);
    background-color: var(--card);
    flex-shrink: 0;
}

.pdf-page-info[b-xapokwf9bo] {
    font-size: 0.75rem;
    color: var(--muted-foreground);
    white-space: nowrap;
}

.pdf-toolbar-spacer[b-xapokwf9bo] {
    flex: 1;
}

.pdf-container[b-xapokwf9bo] {
    flex: 1 1 0;
    min-height: 0;
    overflow: auto;
    padding: 0.75rem;
    background-color: #808080;
    scrollbar-gutter: stable;
}

/* Space+Drag Pan-Modus */
.pdf-container.pan-ready[b-xapokwf9bo],
.pdf-container.pan-ready *[b-xapokwf9bo] {
    cursor: grab;
    user-select: none;
}

.pdf-container.pan-active[b-xapokwf9bo],
.pdf-container.pan-active *[b-xapokwf9bo] {
    cursor: grabbing !important;
    user-select: none;
}

.pdf-placeholder[b-xapokwf9bo] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    height: 100%;
    color: var(--muted-foreground);
    font-size: 0.875rem;
}

[b-xapokwf9bo] .pdf-loading,
[b-xapokwf9bo] .pdf-error {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    color: #ffffff;
    font-size: 0.875rem;
}

[b-xapokwf9bo] .pdf-error {
    color: var(--destructive);
    background-color: var(--card);
    border-radius: var(--radius);
    margin: 1rem;
}

[b-xapokwf9bo] .pdf-page-wrapper {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    background-color: #ffffff;
    overflow: hidden;
    margin: 0 auto 0.5rem;
}

[b-xapokwf9bo] .pdf-page-wrapper canvas {
    display: block;
}

/* PDF.js textLayer - Positionierung und Selektion */
[b-xapokwf9bo] .textLayer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    opacity: 0.25;
    line-height: 1.0;
}

[b-xapokwf9bo] .textLayer span,
[b-xapokwf9bo] .textLayer br {
    color: transparent;
    position: absolute;
    white-space: pre;
    transform-origin: 0% 0%;
    cursor: text;
}

[b-xapokwf9bo] .textLayer ::selection {
    background: rgba(12, 93, 166, 0.6);
}
/* /Components/Shared/StatCard.razor.rz.scp.css */
.stat-card[b-pz9su28vxh] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: var(--card);
    border: 1px solid var(--border);
    text-decoration: none;
    color: var(--foreground);
    transition: background-color 0.12s ease, border-color 0.12s ease;
}

a.stat-card:hover[b-pz9su28vxh] {
    background: var(--secondary);
    border-color: var(--primary);
}

.stat-card-top[b-pz9su28vxh] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--muted-foreground);
    font-size: 0.85rem;
}

.stat-card-value[b-pz9su28vxh] {
    /* Zahl und Einheit bleiben zusammen und werden nie gekürzt; in schmalen Kacheln wird die Schrift kleiner statt
       umzubrechen (wie die Steuer-App, Nachtrag 11b) */
    font-size: clamp(0.95rem, 13cqi, 1.6rem);
    font-weight: var(--font-weight-medium);
    line-height: 1.1;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.stat-card[b-pz9su28vxh] {
    min-width: 0;
    container-type: inline-size;   /* Bezug für die Schriftgröße des Betrags (cqi) */
}

/* Beschriftungen brechen nur an Wortgrenzen um, nie mitten im Wort („Soll 10/2026 netto“, Nachtrag 11b) */
.stat-card-label[b-pz9su28vxh] {
    min-width: 0;
    overflow-wrap: normal;
    word-break: normal;
}

.stat-card-hint[b-pz9su28vxh] {
    font-size: 0.78rem;
    color: var(--muted-foreground);
}

.stat-ok .stat-card-value[b-pz9su28vxh] {
    color: #166534;
}

.stat-warn .stat-card-value[b-pz9su28vxh] {
    color: #854d0e;
}

.stat-bad .stat-card-value[b-pz9su28vxh] {
    color: #991b1b;
}

/* Handy: weniger Innenabstand, damit Beträge in der halben Breite Platz haben */
@media (max-width: 600px) {
    .stat-card[b-pz9su28vxh] {
        padding: 0.75rem 0.85rem;
    }
}
/* /Components/Shared/TabellenGeruest.razor.rz.scp.css */
.tg-text td[b-huxmzc8bi4] {
    padding-top: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 0;
}

.tg-lade[b-huxmzc8bi4] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.875rem;
}

/* Platzhalterzeilen gedaempft, ohne Hover und Klick; Hoehe wie eine echte Zeile. */
.tg-zeile[b-huxmzc8bi4] {
    opacity: 0.6;
    pointer-events: none;
}

.tg-zeile td[b-huxmzc8bi4] {
    height: 2.6rem;
    vertical-align: middle;
}

.tg-zeile .skel[b-huxmzc8bi4] {
    display: block;
    max-width: 100%;
}
/* /Components/Shared/Tile.razor.rz.scp.css */
.tile[b-n5m9ua8b54] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: var(--card);
    border: 1px solid var(--border);
    text-decoration: none;
    color: var(--foreground);
    transition: background-color 0.12s ease, border-color 0.12s ease;
}

a.tile:hover[b-n5m9ua8b54] {
    background: var(--secondary);
    border-color: var(--primary);
}

.tile-disabled[b-n5m9ua8b54] {
    opacity: 0.85;
}

.tile-head[b-n5m9ua8b54] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    font-weight: var(--font-weight-medium);
}

.tile-title[b-n5m9ua8b54] {
    flex: 0 1 auto;
    white-space: nowrap;
}

.tile-badge[b-n5m9ua8b54] {
    margin-left: auto;
}

.tile-desc[b-n5m9ua8b54] {
    font-size: 0.82rem;
    color: var(--muted-foreground);
    line-height: 1.45;
}
/* /Components/Shared/UngespeichertWaechter.razor.rz.scp.css */
/* Rückfrage über allem, auch über offenen Dialogen (Modal z-index 1000). */
.uw-backdrop[b-16e0ydtari] {
    position: fixed;
    inset: 0;
    z-index: 1100;
    display: grid;
    place-items: center;
    background: rgba(35, 31, 32, 0.35);
}

.uw-panel[b-16e0ydtari] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.75rem 1rem;
    width: min(28rem, calc(100vw - 2rem));
    padding: 1.25rem 1.5rem;
    background: var(--card, #fff);
    border-top: 3px solid var(--destructive);
    border-radius: var(--radius);
    box-shadow: 0 16px 40px rgba(35, 31, 32, 0.25);
}

.uw-icon[b-16e0ydtari] {
    color: var(--destructive);
    padding-top: 0.125rem;
}

.uw-titel[b-16e0ydtari] {
    font-size: 1rem;
    font-weight: var(--font-weight-medium);
}

.uw-text[b-16e0ydtari] {
    margin-top: 0.25rem;
    color: var(--muted-foreground);
    font-size: 0.875rem;
}

.uw-knoepfe[b-16e0ydtari] {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}
