/* _content/LOD/Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout.razor.css */

.page[b-9tw490fc4x] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow: hidden;
}

.top-navigation-bar[b-9tw490fc4x] { /* Der RadzenHeader (id="main-navbar") */
    height: 56px;
    background-color: var(--rz-header-background-color, #4a47a3);
    color: var(--rz-header-color, white);
    position: sticky;
    top: 0;
    z-index: 1050;
    padding: 0 1rem;
    display: flex;
    align-items: center;
    /* Die transition und transform Eigenschaften wurden entfernt. */
}

/* Das .rz-body Element, das von <RadzenBody> gerendert wird */
.rz-body[b-9tw490fc4x] {
    flex: 1;
    display: flex;
    flex-direction: column;
    /* Die transition und transform Eigenschaften wurden entfernt. */
    overflow: hidden;
}

main[b-9tw490fc4x] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

article.content[b-9tw490fc4x] {
    padding: 1.5rem;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin: 1rem;
    flex-grow: 1;
    background-color: #fff;
}


/* ----------- STYLES FÜR DAS GLOBALE MOBILE POPUP-MENÜ ----------- */
/* Diese bleiben unverändert */

body > .rz-tooltip-content.rz-navigation-menu[b-9tw490fc4x],
body > div > .rz-tooltip-content.rz-navigation-menu[b-9tw490fc4x],
.rz-menu-popup > .rz-navigation-menu[b-9tw490fc4x],
.rz-menu.rz-profile-menu > .rz-navigation-menu[b-9tw490fc4x] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background-color: white !important;
    border: 1px solid #ced4da !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    border-radius: 0.25rem !important;
    padding: 0.5rem 0 !important;
    min-width: 240px !important;
    z-index: 1055 !important;
    margin-top: 0 !important;
}

    body > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item[b-9tw490fc4x],
    body > div > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item[b-9tw490fc4x],
    .rz-menu-popup > .rz-navigation-menu .rz-navigation-item[b-9tw490fc4x],
    .rz-menu.rz-profile-menu > .rz-navigation-menu .rz-navigation-item[b-9tw490fc4x] {
        display: block !important;
        width: 100% !important;
    }

    body > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-link[b-9tw490fc4x],
    body > div > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-link[b-9tw490fc4x],
    .rz-menu-popup > .rz-navigation-menu .rz-navigation-item-link[b-9tw490fc4x],
    .rz-menu.rz-profile-menu > .rz-navigation-menu .rz-navigation-item-link[b-9tw490fc4x] {
        color: #212529 !important;
        padding: 0.65rem 1.25rem !important;
        display: flex !important;
        align-items: center !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }

    body > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-icon[b-9tw490fc4x],
    body > div > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-icon[b-9tw490fc4x],
    .rz-menu-popup > .rz-navigation-menu .rz-navigation-item-icon[b-9tw490fc4x],
    .rz-menu.rz-profile-menu > .rz-navigation-menu .rz-navigation-item-icon[b-9tw490fc4x] {
        color: #495057 !important;
        margin-right: 0.75rem !important;
    }

    body > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-link:hover[b-9tw490fc4x],
    body > div > .rz-tooltip-content.rz-navigation-menu .rz-navigation-item-link:hover[b-9tw490fc4x],
    .rz-menu-popup > .rz-navigation-menu .rz-navigation-item-link:hover[b-9tw490fc4x],
    .rz-menu.rz-profile-menu > .rz-navigation-menu .rz-navigation-item-link:hover[b-9tw490fc4x] {
        background-color: #e9ecef !important;
    }


#blazor-error-ui[b-9tw490fc4x] {
    background: #fff3cd;
    color: #856404;
    bottom: 0;
    box-shadow: 0 -1px 5px rgba(0,0,0,0.1);
    display: none;
    left: 0;
    padding: 0.8rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 10000;
    border-top: 1px solid #ffeeba;
}

    #blazor-error-ui .dismiss[b-9tw490fc4x] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
        font-size: 1.2rem;
        color: #856404;
    }
/* _content/LOD/Components/Layout/TopRadzenNavMenu.razor.rz.scp.css */
/* TopRadzenNavMenu.razor.css */

:host > .rz-stack[b-06sx1ghd1x] {
    width: 100%;
    height: 100%;
}

/* Die .logo-area und .brand-text Regeln können entfernt werden, da das Logo entfernt wurde */

.main-navigation-menu[b-06sx1ghd1x] { /* Das RadzenMenu selbst */
    display: flex; /* Wichtig für RadzenMenu Internals */
    /* flex-grow: 1; ENTFERNT - Die übergeordnete RadzenStack kümmert sich um die Platzverteilung */
    /* justify-content: center; ENTFERNT - Menü-Items auf Desktop sind nun linksbündig im Menü-Block */
    background-color: transparent !important;
}

    /* Horizontale Menü-Items (Desktop) - sind jetzt linksbündig in ihrem Container */
    .main-navigation-menu .rz-menuitem-link[b-06sx1ghd1x],
    .main-navigation-menu .rz-menuitem-icon[b-06sx1ghd1x] {
        color: var(--rz-header-color, white) !important;
    }

        .main-navigation-menu .rz-menuitem-link:hover[b-06sx1ghd1x] {
            background-color: rgba(255,255,255,0.1) !important;
        }

.login-logout-section[b-06sx1ghd1x] {
    flex-shrink: 0;
}

/* Mobile Anpassungen */
@media (max-width: 768px) {
    /* .logo-area display:none ist nicht mehr nötig, da das Element im HTML entfernt wurde */

    .main-navigation-menu[b-06sx1ghd1x] {
        /* justify-content: flex-start; Ist Standard für Flex-Items, wenn nicht anders angegeben.
           Das Hamburger/X-Icon wird also links in seinem eigenen kleinen Bereich sein. */
    }

        /* Hamburger Icon und Schließen Icon (X) für das Popup-Panel */
        .main-navigation-menu .rz-menu-toggle-button[b-06sx1ghd1x], /* Das ist das Hamburger-Icon */
        .main-navigation-menu .rz-menu-close-icon[b-06sx1ghd1x] { /* Das ist das X-Icon im Popup */
            color: var(--rz-header-color, white) !important;
            background: transparent !important;
            border: none !important;
            font-size: 1.6rem !important;
            padding: 0.25rem 0.5rem !important; /* Stellt sicher, dass das Icon nicht gequetscht wird */
        }
}
/* _content/LOD/Components/Pages/Account/Login.razor.rz.scp.css */
.login-container[b-jcjor5cnql] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - 4rem);
    padding: 2rem 1rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.login-card[b-jcjor5cnql] {
    width: 100%;
    max-width: 420px;
    background-color: #ffffff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    overflow: hidden;
    animation: fadeIn-b-jcjor5cnql 0.6s ease-out;
}

@keyframes fadeIn-b-jcjor5cnql {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.login-header[b-jcjor5cnql] {
    background: linear-gradient(120deg, #1a1a2e 0%, #0f3460 100%);
    padding: 2rem 1.5rem;
    text-align: center;
    border-radius: 12px 12px 0 0;
    position: relative;
}

.logo-container[b-jcjor5cnql] {
    background-color: rgba(255, 255, 255, 0.15);
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.login-logo[b-jcjor5cnql] {
    max-height: 4rem;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.login-title[b-jcjor5cnql] {
    color: #ffffff;
    font-size: 1.75rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.login-subtitle[b-jcjor5cnql] {
    color: rgba(255, 255, 255, 0.85);
    font-size: 1rem;
    margin-bottom: 0;
}

.login-form[b-jcjor5cnql] {
    padding: 2rem 1.5rem 1rem;
}

.form-floating > label[b-jcjor5cnql] {
    color: #6c757d;
}

.form-control[b-jcjor5cnql] {
    border: 1px solid #dee2e6;
    padding: 0.75rem 1rem;
    height: calc(3.5rem + 2px);
    font-size: 1rem;
    border-radius: 8px;
    transition: all 0.2s ease;
}

    .form-control:focus[b-jcjor5cnql] {
        border-color: #0f3460;
        box-shadow: 0 0 0 0.25rem rgba(15, 52, 96, 0.15);
    }

.btn-login[b-jcjor5cnql] {
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 8px;
    background: linear-gradient(90deg, #e94560 0%, #cf1c3d 100%);
    border: none;
    box-shadow: 0 4px 12px rgba(233, 69, 96, 0.3);
    transition: all 0.3s ease;
}

    .btn-login:hover[b-jcjor5cnql] {
        background: linear-gradient(90deg, #cf1c3d 0%, #b01735 100%);
        box-shadow: 0 6px 16px rgba(233, 69, 96, 0.4);
        transform: translateY(-2px);
    }

    .btn-login:active[b-jcjor5cnql] {
        transform: translateY(0);
    }

.alert[b-jcjor5cnql] {
    border-radius: 8px;
    font-size: 0.9rem;
}

.alert-danger[b-jcjor5cnql] {
    background-color: rgba(220, 53, 69, 0.1);
    border-color: rgba(220, 53, 69, 0.2);
    color: #dc3545;
}

.login-footer[b-jcjor5cnql] {
    padding: 1rem 1.5rem 1.5rem;
    text-align: center;
    border-top: 1px solid #f1f1f1;
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .login-card[b-jcjor5cnql] {
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    }

    .login-header[b-jcjor5cnql] {
        padding: 1.5rem 1rem;
    }

    .logo-container[b-jcjor5cnql] {
        width: 80px;
        height: 80px;
        margin-bottom: 1rem;
    }

    .login-logo[b-jcjor5cnql] {
        max-height: 3.5rem;
    }

    .login-title[b-jcjor5cnql] {
        font-size: 1.5rem;
    }

    .login-form[b-jcjor5cnql] {
        padding: 1.5rem 1rem 0.75rem;
    }
}
/* _content/LOD/Components/Pages/Add-invoice.razor.rz.scp.css */
/* Add-invoice.razor.css */

/* Grid-Container für Vorschau + Formular */
.add-invoice-container[b-5qhe8u9mlh] {
    display: grid;
    grid-template-columns: 1fr; /* eine Spalte standardmäßig */
    gap: 1rem; /* Abstand zwischen den Items */
    margin-bottom: 1rem;
}

/* Ab Tablet/Medium (>=768px) nebeneinander */
@media (min-width: 992px) {
    .add-invoice-container[b-5qhe8u9mlh] {
        grid-template-columns: 2fr 1fr; /* Vorschau schmaler als Formular */
    }
}

/*.add-invoice-preview-wrapper {
    display: (previewUrl == null ? "none" : "block");
}*/

/* Vorschau-Bereich */
.add-invoice-preview[b-5qhe8u9mlh] {
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
    padding: 0.5rem;
    background: white;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

    /* Reset-Button im Preview-Bereich */
    .add-invoice-preview .btn-link[b-5qhe8u9mlh] {
        font-size: 0.875rem;
    }

/* Formular-Grundlayout */
.add-invoice-form[b-5qhe8u9mlh] {
    background: white;
    padding: 1rem;
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
    box-shadow: var(--shadow-sm);
}

    /* Gemeinsamer Abstand unten bei allen mb-3 */
    .add-invoice-form .mb-3[b-5qhe8u9mlh] {
        margin-bottom: 1rem;
    }

/* Valid/Invalid Styles via Bootstrap classes */
.is-valid[b-5qhe8u9mlh] {
    border-color: var(--success) !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.is-invalid[b-5qhe8u9mlh] {
    border-color: var(--danger) !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* Button-Container im Formular */
.add-invoice-form .d-flex[b-5qhe8u9mlh] {
    margin-top: 1rem;
}

/* Modal-Overrides */
.modal.show .modal-dialog[b-5qhe8u9mlh] {
    max-width: 400px;
}
/* _content/LOD/Components/Pages/Aktivity.razor.rz.scp.css */
/* Stile spezifisch für Aktivity.razor */

/* Anpassung für den Header */
.page-header h3[b-evaq1gug8s] {
    margin-bottom: 0;
    font-size: 1.5rem;
    color: var(--primary-dark);
    display: flex;
    align-items: center;
}

    .page-header h3 i[b-evaq1gug8s] {
        margin-right: 0.5rem;
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

/* Stile für die Filterleiste (identisch zu anderen Seiten) */
.filter-controls[b-evaq1gug8s] {
    display: flex;
    flex-wrap: wrap; /* Umbruch auf kleinen Screens */
    align-items: center;
    /* justify-content: space-between; */ /* Nicht nötig, da keine Buttons rechts */
    gap: 0.5rem; /* Abstand zwischen Elementen */
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa; /* Heller Hintergrund */
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-evaq1gug8s] { /* Container für Filter-Elemente */
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

/* Stile für die Tabelle */
.table-responsive-mobile[b-evaq1gug8s] {
    overflow-x: auto; /* Horizontales Scrollen auf allen Screens */
    -webkit-overflow-scrolling: touch; /* Besseres Scrollen auf iOS */
}

/* Media Query für kleinere Bildschirme */
@media (max-width: 991.98px) { /* Breiterer Breakpoint für mehr Filter */
    .filter-controls[b-evaq1gug8s] {
        flex-direction: column; /* Filter untereinander */
        align-items: stretch; /* Volle Breite für Filter */
    }

        .filter-controls > div:first-child[b-evaq1gug8s] {
            width: 100%;
        }

            .filter-controls > div:first-child > *[b-evaq1gug8s] { /* Alle Filterelemente */
                flex-grow: 1;
                min-width: 150px;
                margin-bottom: 0.5rem;
            }

                .filter-controls > div:first-child > *:last-child[b-evaq1gug8s] {
                    margin-bottom: 0;
                }
}

@media (max-width: 767.98px) {
    /* Optional: Spalten ausblenden auf sehr kleinen Screens */
    /* .table th:nth-child(5), /* Unternehmen */
    /* .table td:nth-child(5),
    .table th:nth-child(6), /* Lieferant */
    /* .table td:nth-child(6) {
        display: none;
    } */
}


/* Hervorhebung für Mahnungen (falls relevant) */
.table-warning[b-evaq1gug8s] {
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f7ecb5;
    /* ... (Restliche Warning-Styles wie in anderen CSS-Dateien) ... */
    color: #664d03;
    border-color: #f7ecb5;
}

tr.table-warning:hover > *[b-evaq1gug8s] {
    --bs-table-hover-bg: #f7ecb5;
}


/* Style für Tabellen-Header */
.table thead.table-light th[b-evaq1gug8s] {
    font-size: 0.85rem;
    font-weight: 600;
}
/* _content/LOD/Components/Pages/AllInvoices.razor.rz.scp.css */
/* AllInvoices.razor.css */

/* Stile spezifisch für AllInvoices.razor */

/* Anpassung für den Header-Badge */
.page-header h4 .badge[b-09o2blyius] {
    margin-left: 0.75rem;
    background-color: var(--danger); /* Passend zum Thema "Offen" */
    padding: 0.35em 0.65em;
    border-radius: 1rem;
    font-size: 0.9rem; /* Etwas größer */
    vertical-align: middle;
}

/* Stile für die Filterleiste */
.filter-controls[b-09o2blyius] {
    display: flex;
    flex-wrap: wrap; /* Umbruch auf kleinen Screens */
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem; /* Abstand zwischen Elementen */
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa; /* Heller Hintergrund */
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-09o2blyius] { /* Container für Selects/Input */
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

/* Stile für die Tabellen */
.table-responsive-mobile[b-09o2blyius] {
    overflow-x: auto; /* Wichtig für horizontales Scrollen auf Mobile */
    -webkit-overflow-scrolling: touch; /* Besseres Scrollen auf iOS */
    /* Wenn du eine generelle maximale Höhe für die Tabellen-Container möchtest,
       kannst du hier max-height und overflow-y: auto; hinzufügen.
       Beispiel:
       max-height: 600px;
       overflow-y: auto;
       Ansonsten ist für das reine horizontale Scrollen keine max-height notwendig.
    */
}

/* Stil für klickbare Zeilen */
.table-hover tbody tr.clickable-row:hover[b-09o2blyius] {
    background-color: rgba(0, 0, 0, 0.075); /* Standard Bootstrap Hover, anpassbar */
    cursor: pointer;
}


/* Media Query für kleinere Bildschirme (z.B. unter 768px) */
@media (max-width: 767.98px) { /* Bootstrap md breakpoint */
    .filter-controls[b-09o2blyius] {
        flex-direction: column; /* Filter untereinander */
        align-items: stretch; /* Volle Breite für Filter */
    }

        .filter-controls > div:first-child[b-09o2blyius] {
            width: 100%;
        }

            .filter-controls > div:first-child > *[b-09o2blyius] { /* Alle Filterelemente */
                flex-grow: 1; /* Versuchen, den Platz zu füllen */
                min-width: 150px; /* Mindestbreite für Touch */
                margin-bottom: 0.5rem; /* Abstand nach unten bei Umbruch */
            }

                .filter-controls > div:first-child > *:last-child[b-09o2blyius] {
                    margin-bottom: 0; /* Kein Abstand beim letzten Element */
                }


        .filter-controls > div:last-child[b-09o2blyius] { /* Container für Buttons */
            width: 100%;
            margin-top: 0.5rem;
            text-align: right; /* Buttons rechtsbündig */
        }

    .table th:last-child[b-09o2blyius], .table td:last-child[b-09o2blyius] {
        min-width: auto; /* Mindestbreite für Aktionen auf Mobile ggf. anpassen, Kebab braucht weniger Platz */
    }

        .table td:last-child .d-flex[b-09o2blyius] {
            justify-content: flex-end; /* Buttons/Kebab rechtsbündig in der Zelle */
        }

    /* Kebab-Button spezifische Anpassungen falls nötig */
    .dropdown .btn-light.bi-three-dots-vertical[b-09o2blyius] {
        padding: 0.25rem 0.5rem; /* Kleinere Padding für den Kebab-Button */
    }
}


/* Hervorhebung für Mahnungen */
.table-warning[b-09o2blyius] {
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f7ecb5;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #f7ecb5;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #f7ecb5;
    --bs-table-hover-color: #000;
    color: #664d03;
    border-color: #f7ecb5;
}

tr.table-warning.clickable-row:hover > *[b-09o2blyius] {
    background-color: #f5e7b0 !important; /* Wichtig, um Bootstrap zu überschreiben */
}


/* Stile für section-divider (falls in dieser Komponente verwendet) */
.section-divider[b-09o2blyius] {
    margin-top: 2rem;
    margin-bottom: 1rem;
    padding-top: 1rem;
    /*border-top: 1px solid var(--neutral-border);*/
}

    .section-divider h5[b-09o2blyius] {
        display: flex;
        align-items: center;
        color: var(--primary-dark);
    }

        .section-divider h5 i[b-09o2blyius] {
            margin-right: 0.5rem;
            font-size: 1.2rem;
        }

/* Stile für Tabellen-Footer */
tfoot tr[b-09o2blyius] {
    background-color: var(--neutral-bg);
    font-weight: bold;
}

/* Badge Stile */
.badge.bg-success-subtle[b-09o2blyius] {
    background-color: rgba(25, 135, 84, 0.1) !important;
}

.badge.text-success[b-09o2blyius] {
    color: #198754 !important;
}

.badge.bg-secondary-subtle[b-09o2blyius] {
    background-color: rgba(108, 117, 125, 0.1) !important;
}

.badge.text-secondary[b-09o2blyius] {
    color: #6c757d !important;
}

/* Style für Checkbox Switch in Tabellen */
td .form-check-input[b-09o2blyius] {
    cursor: pointer;
}

/* Dropdown Item Icons ausrichten */
.dropdown-item i[b-09o2blyius] {
    min-width: 1.5em; /* Platz für Icon sicherstellen */
}
/* _content/LOD/Components/Pages/Bestellung.razor.rz.scp.css */
/* --- CSS für Bestellung.razor (Bestellung.razor.css) --- */
/* --- HINWEIS: CSS-Variablen (--primary-dark etc.) müssen global definiert sein! --- */

@font-face {
    font-family: 'Open Sans';
    src: url('/fonts/Open_Sans/OpenSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

.cursor-pointer[b-wjxsgx66jc] {
    cursor: pointer;
}

.non-clickable[b-wjxsgx66jc] {
    cursor: default;
}

/* --- Page Container etc. (wirken auf Elemente in Bestellung.razor) --- */
.page-container[b-wjxsgx66jc] {
    background-color: var(--neutral-bg); /* Nimmt globale Variable */
    padding: 1.5rem;
    border-radius: 8px;
}

.page-header[b-wjxsgx66jc] {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--neutral-border);
}

    .page-header h4[b-wjxsgx66jc] {
        margin-bottom: 0;
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

    .page-header i[b-wjxsgx66jc] {
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

.order-count[b-wjxsgx66jc] {
    font-size: 1.2rem;
    color: var(--accent);
}

.control-panel[b-wjxsgx66jc] {
    background-color: white;
    padding: 1rem;
    border-radius: var(--card-radius);
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--neutral-border);
}

/* --- Custom Select (mit ::deep für innere Elemente der InputSelect Komponente) --- */
.custom-select[b-wjxsgx66jc] {
    position: relative;
}
    /* Style für das innere <select>-Element */
    .custom-select[b-wjxsgx66jc]  .form-select {
        appearance: none;
        padding-left: 2.8rem; /* Mehr Platz für Icon */
        padding-right: 2rem;
        height: 2.375rem;
        font-size: 0.875rem;
        border-radius: 6px;
        background-image: none;
        border-color: var(--neutral-border);
        transition: var(--transition);
    }

        .custom-select[b-wjxsgx66jc]  .form-select:focus {
            border-color: var(--primary-dark);
            box-shadow: 0 0 0 0.2rem rgba(15, 52, 96, 0.25);
        }
    /* Icon innerhalb des custom-select divs */
    .custom-select .select-icon[b-wjxsgx66jc] {
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        color: #495057;
        font-size: 0.9rem;
        pointer-events: none;
    }
    /* Pfeil-Icon (Pseudo-Element braucht kein ::deep) */
    .custom-select[b-wjxsgx66jc]::after {
        content: "\F282"; /* Bootstrap Icon Code für Pfeil nach unten */
        font-family: "bootstrap-icons";
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        color: #495057;
        pointer-events: none;
    }

/* --- Custom Button (wirkt auf <button> in Bestellung.razor) --- */
.custom-btn[b-wjxsgx66jc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 2.375rem;
    padding: 0.375rem 1rem;
    border-radius: 6px;
    border: none;
    font-weight: 500;
    transition: 0.2s ease;
    color: white;
    box-shadow: var(--shadow-sm);
}

    .custom-btn:hover[b-wjxsgx66jc] {
        transform: translateY(-1px);
        box-shadow: var(--shadow-md);
    }

.add-btn[b-wjxsgx66jc] {
    background: linear-gradient(45deg, var(--primary-dark), var(--primary-darker));
}

    .add-btn:hover[b-wjxsgx66jc] {
        background: linear-gradient(45deg, var(--primary-darker), var(--primary-dark));
    }

/* --- Empty State (wirkt auf div in Bestellung.razor) --- */
.empty-state[b-wjxsgx66jc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    background-color: white;
    border-radius: 8px;
    box-shadow: var(--shadow-sm);
    border: 1px dashed #dee2e6;
    padding: 2rem;
    text-align: center;
}

    .empty-state i[b-wjxsgx66jc] {
        font-size: 3rem;
        color: #ced4da;
        margin-bottom: 1rem;
    }

    .empty-state p[b-wjxsgx66jc] {
        color: #6c757d;
        font-size: 1.1rem;
    }

/* --- Order Card Styles (wirken auf Elemente in Bestellung.razor) --- */
.order-metadata[b-wjxsgx66jc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.order-user-info[b-wjxsgx66jc] {
    font-size: 0.75rem;
    color: #6c757d;
}

.delete-btn[b-wjxsgx66jc] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--danger);
    background-color: transparent;
    color: var(--danger);
    transition: 0.2s ease;
    padding: 0;
    font-size: 0.8rem;
}

    .delete-btn:hover[b-wjxsgx66jc] {
        background-color: var(--danger);
        color: white;
    }

.order-card[b-wjxsgx66jc] {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: 0.2s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 2px solid transparent;
}

    .order-card:hover[b-wjxsgx66jc] {
        box-shadow: var(--shadow-md);
        transform: translateY(-2px);
    }

    .order-card.clickable[b-wjxsgx66jc] {
        cursor: pointer;
    }

.order-card-header[b-wjxsgx66jc] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    font-weight: 500;
    color: white;
    background: linear-gradient(45deg, #6c757d, #495057);
}
    /* Default Header */
    .order-card-header.bg-danger[b-wjxsgx66jc] {
        background: linear-gradient(45deg, #dc3545, #c82333);
    }

    .order-card-header.bg-orange[b-wjxsgx66jc] {
        background: linear-gradient(45deg, #fd7e14, #e65100);
    }

    .order-card-header.bg-yellow[b-wjxsgx66jc] {
        background: linear-gradient(45deg, #ffc107, #f9a825);
        color: #212529;
    }

    .order-card-header.bg-success[b-wjxsgx66jc] {
        background: linear-gradient(45deg, #28a745, #1e7e34);
    }

.order-title[b-wjxsgx66jc] {
    display: flex;
    align-items: center;
    margin-bottom: 0.25rem;
    font-size: 1rem;
}

.order-date[b-wjxsgx66jc] {
    display: flex;
    align-items: center;
    font-size: 0.8rem;
    opacity: 0.9;
}

.order-card-body[b-wjxsgx66jc] {
    padding: 1rem;
    background-color: white;
    flex-grow: 1;
}

.article-item[b-wjxsgx66jc] {
    display: flex;
    align-items: center;
    padding: 0.4rem 0;
    border-bottom: 1px solid #f1f1f1;
    font-size: 0.9rem;
}

    .article-item:last-child[b-wjxsgx66jc] {
        border-bottom: none;
    }

.article-icon[b-wjxsgx66jc] {
    width: 25px;
    text-align: center;
}

.order-card-footer[b-wjxsgx66jc] {
    background-color: #f8f9fa;
    padding: 0.75rem 1rem;
    border-top: 1px solid #dee2e6;
}

.status-check-item[b-wjxsgx66jc] {
    margin-bottom: 0.5rem;
}

    .status-check-item:last-child[b-wjxsgx66jc] {
        margin-bottom: 0;
    }

.status-label[b-wjxsgx66jc] {
    display: inline-flex;
    align-items: center;
    color: #6c757d;
    font-size: 0.8rem;
}

    .status-label.created[b-wjxsgx66jc] {
        color: var(--custom-orange);
    }

    .status-label.paid[b-wjxsgx66jc] {
        color: #c69500;
    }
    /* Dunkleres Gelb für Text */
    .status-label.delivered[b-wjxsgx66jc] {
        color: var(--success);
    }

    .status-label i[b-wjxsgx66jc] {
        font-size: 1rem;
        margin-right: 0.3rem;
    }

.border-danger[b-wjxsgx66jc] {
    border-color: #dc3545 !important;
}

.border-orange[b-wjxsgx66jc] {
    border-color: #fd7e14 !important;
}

.border-yellow[b-wjxsgx66jc] {
    border-color: #ffc107 !important;
}

.border-success[b-wjxsgx66jc] {
    border-color: #28a745 !important;
}

/* --- Styles für RoleCheckbox (mit ::deep, wirken auf Elemente *innerhalb* der Komponente) --- */
/* Diese zielen auf die Elemente ab, die von der RoleCheckbox-Komponente gerendert werden */
.status-check-item[b-wjxsgx66jc]  .form-check.no-input .form-check-label {
    margin-left: 0;
    width: 100%;
}

.status-check-item[b-wjxsgx66jc]  .form-check.with-input .form-check-label {
    margin-left: 0rem; /* Standard Bootstrap Abstand */
}

.status-check-item[b-wjxsgx66jc]  .form-check-input {
    width: 1.1em; /* Etwas größer machen */
    height: 1.1em;
    margin-top: 0.15em; /* Vertikal zentrieren */
    cursor: pointer;
    border-color: var(--neutral-border);
}

    .status-check-item[b-wjxsgx66jc]  .form-check-input:checked {
        background-color: var(--primary-dark);
        border-color: var(--primary-dark);
    }

    .status-check-item[b-wjxsgx66jc]  .form-check-input:disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

.status-check-item[b-wjxsgx66jc]  .form-check-label {
    cursor: pointer;
    font-size: 0.85rem; /* Kleinere Schrift für Labels */
    padding-left: 0rem; /* Abstand zum Input */
}
/* _content/LOD/Components/Pages/Bestellungx.razor.rz.scp.css */
/* Main variables (assuming these are defined globally in app.css or similar) */
/* :root { ... } */

/* Page container */
/* Wird hier nicht direkt verwendet, aber schadet nicht */
.page-container[b-23tdd1y2y7] {
    background-color: var(--neutral-bg);
    padding: 1.5rem;
    border-radius: 12px;
    min-height: calc(100vh - 70px);
}

/* Page header */
/* Wird hier nicht direkt verwendet */
.page-header[b-23tdd1y2y7] {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--neutral-border);
}

    .page-header h3[b-23tdd1y2y7] {
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

    .page-header i[b-23tdd1y2y7] {
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

/* Order form container */
.order-form-container[b-23tdd1y2y7] {
    background-color: white;
    border-radius: var(--card-radius);
    box-shadow: var(--shadow-sm);
    padding: 1.5rem;
    border: 1px solid var(--neutral-border);
    max-width: 900px; /* Maximale Breite für Formular */
    margin: 1rem auto; /* Zentrieren und Abstand */
}

.order-form[b-23tdd1y2y7] {
    max-width: 800px;
    margin: 0 auto;
}

/* Floating labels */
.form-floating > .form-control[b-23tdd1y2y7],
.form-floating > .form-select[b-23tdd1y2y7] {
    height: 58px; /* Standard Bootstrap Höhe */
    padding: 1rem 0.75rem;
    border-color: var(--neutral-border);
    border-radius: var(--card-radius);
    transition: var(--transition);
}

    .form-floating > .form-control:focus[b-23tdd1y2y7],
    .form-floating > .form-select:focus[b-23tdd1y2y7] {
        border-color: var(--primary-dark);
        box-shadow: 0 0 0 0.2rem rgba(15, 52, 96, 0.25);
    }

.form-floating > label[b-23tdd1y2y7] {
    padding: 1rem 0.75rem;
    color: #6c757d;
}
/* Style für Label, wenn Input fokussiert oder nicht leer ist */
.form-floating > .form-control:focus ~ label[b-23tdd1y2y7],
.form-floating > .form-select:focus ~ label[b-23tdd1y2y7],
.form-floating > .form-control:not(:placeholder-shown):not(:empty) ~ label[b-23tdd1y2y7], /* :not(:empty) für InputDate */
.form-floating > .form-select:valid ~ label[b-23tdd1y2y7] { /* :valid für InputSelect mit ausgewähltem Wert */
    color: var(--primary-dark);
    opacity: 0.8;
    transform: scale(0.85) translateY(-0.75rem) translateX(0.15rem);
}


/* Section header */
.section-header[b-23tdd1y2y7] {
    display: flex;
    align-items: center;
    margin: 1.5rem 0 1rem;
}

    .section-header h5[b-23tdd1y2y7] {
        font-size: 1.1rem;
        margin: 0;
        color: var(--primary-dark);
    }

    .section-header i[b-23tdd1y2y7] {
        color: var(--primary-dark);
        font-size: 1.2rem;
    }

/* Order items */
.order-items-container[b-23tdd1y2y7] {
    background-color: rgba(0, 0, 0, 0.02);
    border-radius: var(--card-radius);
    padding: 1rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--neutral-border);
}

.order-item-row[b-23tdd1y2y7] {
    display: flex;
    margin-bottom: 1rem;
    gap: 0.75rem;
    align-items: flex-start; /* Anpassen für Floating Labels */
}

    .order-item-row:last-child[b-23tdd1y2y7] {
        margin-bottom: 0;
    }
/* Kein Abstand nach letzter Zeile */

.quantity-col[b-23tdd1y2y7] {
    width: 120px;
    flex-shrink: 0;
}

.article-col[b-23tdd1y2y7] {
    flex-grow: 1;
}

.action-col[b-23tdd1y2y7] {
    display: flex;
    align-items: center;
    padding-top: 0.75rem; /* Anpassen für Floating Labels */
    height: 58px; /* Gleiche Höhe wie Inputs */
}

/* Buttons */
.btn-add-item[b-23tdd1y2y7],
.btn-submit[b-23tdd1y2y7], /* btn-submit wird nicht direkt verwendet, aber Stil ist da */
.btn-remove[b-23tdd1y2y7] { /* btn-remove wird nicht direkt verwendet */
    border: none;
    border-radius: var(--card-radius);
    transition: var(--transition);
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-add-item[b-23tdd1y2y7] {
    background: linear-gradient(45deg, var(--primary-dark), var(--primary-darker));
    color: white;
    padding: 0.5rem 1rem;
    margin-top: 0.5rem;
    width: 100%;
    height: 42px;
    box-shadow: var(--shadow-sm);
}

    .btn-add-item:hover[b-23tdd1y2y7] {
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }

/* Custom Button Style (wird für Submit verwendet) */
.custom-btn[b-23tdd1y2y7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px; /* Konsistente Höhe */
    padding: 0.375rem 1rem;
    border-radius: var(--card-radius);
    border: none;
    font-weight: 500;
    transition: var(--transition);
    color: white;
    box-shadow: var(--shadow-sm);
}

    .custom-btn:hover[b-23tdd1y2y7] {
        transform: translateY(-1px);
        box-shadow: var(--shadow-md);
    }

.add-btn[b-23tdd1y2y7] {
    background: linear-gradient(45deg, var(--success), #1e7e34);
}
    /* Grün für Speichern */
    .add-btn:hover[b-23tdd1y2y7] {
        background: linear-gradient(45deg, #1e7e34, var(--success));
    }


/* --- NEU: Media Query für kleine Bildschirme (z.B. unter 768px) --- */
@media (max-width: 767.98px) {
    .order-item-row[b-23tdd1y2y7] {
        flex-direction: column; /* Elemente untereinander anordnen */
        gap: 0.5rem; /* Vertikaler Abstand */
        align-items: stretch; /* Elemente auf volle Breite strecken */
    }

    .quantity-col[b-23tdd1y2y7],
    .article-col[b-23tdd1y2y7] {
        width: 100%; /* Volle Breite für Dropdowns */
        flex-shrink: 1;
    }

    .action-col[b-23tdd1y2y7] {
        width: auto; /* Breite automatisch anpassen */
        height: auto; /* Höhe automatisch anpassen */
        padding-top: 0; /* Padding zurücksetzen */
        align-self: flex-end; /* Button nach rechts schieben */
        margin-top: -0.5rem; /* Kleiner negativer Rand, um näher an Artikel zu rücken */
    }

    /* Optional: Schriftgröße in Dropdowns anpassen, falls nötig */
    .form-floating > .form-select[b-23tdd1y2y7] {
        font-size: 1rem; /* Ggf. Standardgröße für bessere Lesbarkeit */
    }
}
/* --- ENDE Media Query --- */
/* _content/LOD/Components/Pages/ClosedInvoices.razor.rz.scp.css */
/* Stile spezifisch für ClosedInvoices.razor */

.page-header h5 .badge[b-hturmfv9ko] {
    margin-left: 0.75rem;
    background-color: var(--success);
    padding: 0.35em 0.65em;
    border-radius: 1rem;
    font-size: 0.9rem;
    vertical-align: middle;
}

.filter-controls[b-hturmfv9ko] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-hturmfv9ko] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

    .filter-controls .form-group[b-hturmfv9ko] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
    }

.table-responsive-mobile[b-hturmfv9ko] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-hover tbody tr.clickable-row:hover[b-hturmfv9ko] {
    background-color: rgba(0, 0, 0, 0.075);
    cursor: pointer;
}

@media (max-width: 767.98px) {
    .filter-controls[b-hturmfv9ko] {
        flex-direction: column;
        align-items: stretch;
    }

        .filter-controls > div:first-child[b-hturmfv9ko] {
            width: 100%;
        }

            .filter-controls > div:first-child > .form-group[b-hturmfv9ko] {
                width: 100%;
                margin-bottom: 0.5rem;
                justify-content: space-between;
            }

                .filter-controls > div:first-child > .form-group > .form-select-sm[b-hturmfv9ko],
                .filter-controls > div:first-child > .form-group > .form-control-sm[b-hturmfv9ko] {
                    flex-grow: 1;
                }

        .filter-controls > div:last-child[b-hturmfv9ko] { /* Container für Buttons */
            width: 100%;
            margin-top: 0.5rem;
            text-align: right;
        }

    .table th:last-child[b-hturmfv9ko], .table td:last-child[b-hturmfv9ko] { /* Aktionen Spalte */
        min-width: auto; /* Kebab braucht weniger Platz */
    }

        .table td:last-child .d-flex[b-hturmfv9ko] {
            justify-content: flex-end;
        }

    .dropdown .btn-light.bi-three-dots-vertical[b-hturmfv9ko] {
        padding: 0.25rem 0.5rem;
    }
}

.table-warning[b-hturmfv9ko] { /* Mahnungen */
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f7ecb5;
    --bs-table-active-bg: #f7ecb5;
    --bs-table-hover-bg: #f7ecb5; /* Behalte Mahnungsfarbe bei Hover, wenn nicht klickbar */
    color: #664d03;
    border-color: #f7ecb5;
}

tr.table-warning.clickable-row:hover > *[b-hturmfv9ko] {
    background-color: #f5e7b0 !important; /* Etwas dunkler als table-warning, aber nicht Standard-Hover */
}


tfoot tr[b-hturmfv9ko] {
    background-color: var(--neutral-bg);
    font-weight: bold;
}

.badge.bg-success-subtle[b-hturmfv9ko] {
    background-color: rgba(25, 135, 84, 0.1) !important;
}

.badge.text-success[b-hturmfv9ko] {
    color: #198754 !important;
}

.badge.bg-secondary-subtle[b-hturmfv9ko] {
    background-color: rgba(108, 117, 125, 0.1) !important;
}

.badge.text-secondary[b-hturmfv9ko] {
    color: #6c757d !important;
}

td .form-check-input[b-hturmfv9ko] {
    cursor: pointer;
}

.dropdown-item i[b-hturmfv9ko] {
    min-width: 1.5em; /* Platz für Icon sicherstellen */
}
/* _content/LOD/Components/Pages/Dokumente.razor.rz.scp.css */
/* Stile spezifisch für Dokumente.razor */

/* Anpassung für den Header */
.page-header h3[b-pvj19naik0] {
    margin-bottom: 0;
    font-size: 1.5rem;
    color: var(--primary-dark);
    display: flex;
    align-items: center;
}

    .page-header h3 i[b-pvj19naik0] {
        margin-right: 0.5rem;
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

/* Style für Upload-Button (Label) */
.upload-button-label[b-pvj19naik0] {
    display: inline-flex; /* Damit Icon und Text nebeneinander passen */
    align-items: center;
    margin-bottom: 1rem; /* Abstand zur Tabelle/Meldung */
}

    .upload-button-label i[b-pvj19naik0] {
        margin-right: 0.5rem;
    }


/* Stile für die Tabelle */
.table-responsive-mobile[b-pvj19naik0] {
    overflow-x: auto; /* Horizontales Scrollen auf allen Screens */
    -webkit-overflow-scrolling: touch; /* Besseres Scrollen auf iOS */
    border: 1px solid var(--neutral-border); /* Rahmen um Tabelle */
    border-radius: var(--card-radius); /* Abgerundete Ecken */
    box-shadow: var(--shadow-sm);
    background-color: white; /* Weißer Hintergrund für Tabelle */
}

.table[b-pvj19naik0] {
    margin-bottom: 0; /* Kein Rand unter Tabelle im Container */
}

    /* Style für Tabellen-Header */
    .table thead.table-light th[b-pvj19naik0] {
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap; /* Verhindert Umbruch im Header */
    }

    /* Style für Tabellenzeilen */
    .table tbody td[b-pvj19naik0] {
        font-size: 0.9rem;
        vertical-align: middle;
    }
        /* Style für Download/Delete Buttons */
        .table tbody td .btn[b-pvj19naik0] {
            font-size: 0.8rem; /* Kleinere Buttons */
            padding: 0.2rem 0.5rem;
            margin-right: 0.25rem; /* Kleiner Abstand */
            display: inline-flex;
            align-items: center;
        }

            .table tbody td .btn i[b-pvj19naik0] {
                margin-right: 0.3rem;
            }

        .table tbody td .btn-danger[b-pvj19naik0] {
            /* Optional: Style anpassen */
        }

        .table tbody td .btn-success[b-pvj19naik0] {
            /* Optional: Style anpassen */
        }


/* Media Query für kleinere Bildschirme */
@media (max-width: 767.98px) {
    /* Beschreibung ausblenden */
    .table th:nth-child(2)[b-pvj19naik0],
    .table td:nth-child(2)[b-pvj19naik0] {
        display: none;
    }

    /* Optional: Aktionen-Spalte anpassen */
    .table th:last-child[b-pvj19naik0], .table td:last-child[b-pvj19naik0] {
        min-width: 120px; /* Etwas mehr Platz für Buttons */
    }

    .table td:last-child[b-pvj19naik0] {
        text-align: right; /* Buttons rechtsbündig */
    }

    /* data-label für mobile Tabellenansicht (optional) */
    /* Siehe AllInvoices.razor.css für ein Beispiel, falls gewünscht */
}

/* Modal Styling (Standard Bootstrap, aber hier zur Sicherheit) */
.modal.show[b-pvj19naik0] {
    background-color: rgba(0,0,0,0.5); /* Dunkler Hintergrund */
}

.modal-dialog[b-pvj19naik0] {
    margin-top: 5rem; /* Abstand von oben */
}
/* _content/LOD/Components/Pages/Home.razor.rz.scp.css */
/* Home.razor.css */

/* Dashboard Container */
.dashboard-container[b-qn5umgbuzc] {
    margin: 0;
    padding: 0 0.5rem;
}

@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins/Poppins-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('/fonts/Open_Sans/OpenSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

.willkommen-text[b-qn5umgbuzc] {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: #212529; /* Bootstrap text-dark */
    margin-right: 0.25rem;
}

.lord-brand[b-qn5umgbuzc] {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    letter-spacing: -0.5px;
    color: rgb(220, 53, 69); /* Bootstrap danger */
    white-space: nowrap;
}

.slogan-text[b-qn5umgbuzc] {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 1.05rem;
    color: #6c757d; /* text-muted */
    margin-top: 2px;
}


.logo-section[b-qn5umgbuzc] {
    padding: 16px 0;
}

.logo-icon[b-qn5umgbuzc] {
    width: 64px;
    height: auto;
}

.logo-text h1[b-qn5umgbuzc] {
    font-family: 'Poppins', sans-serif;
    font-size: 1.75rem;
    color: rgb(220, 53, 69); /* rot */
    font-weight: 600;
    margin-bottom: 0;
}

.logo-text p[b-qn5umgbuzc] {
    font-family: 'Open Sans', sans-serif;
    font-size: 0.95rem;
    color: #333;
    margin-top: 2px;
}


/* Welcome */
/*.welcome-section {
    margin-bottom: 1.5rem;
    padding: 0.5rem 0;
}

.logo-icon {
    font-size: 2rem;
    margin-right: 1rem;
    color: var(--bs-primary);*/ /* Standard Bootstrap Primary, anpassen falls eigene Variable */
/*}

.welcome-heading {
    margin: 0;
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--bs-dark);*/ /* Standard Bootstrap Dark, anpassen falls eigene Variable */
/*}

.welcome-text {
    font-size: 1.1rem;
    margin-top: 0.25rem;
    color: #6c757d;*/ /* Bootstrap text-muted */
/*}*/

/* Login Prompt */
.login-prompt-card[b-qn5umgbuzc] {
    margin: 2rem 0;
}

    .login-prompt-card .card[b-qn5umgbuzc] {
        border: none;
        /* Standard Bootstrap Variablen für Radius und Schatten, falls nicht global anders definiert */
        border-radius: var(--bs-card-border-radius, 0.25rem);
        box-shadow: var(--bs-box-shadow-sm, 0 .125rem .25rem rgba(0,0,0,.075));
    }

    .login-prompt-card .card-body i[b-qn5umgbuzc] {
        color: var(--bs-warning); /* Standard Bootstrap Warning */
    }

    .login-prompt-card .card-body h3[b-qn5umgbuzc] {
        color: var(--bs-dark);
    }

/* User Welcome */
.user-welcome .card[b-qn5umgbuzc] {
    border-left: 4px solid var(--bs-dark);
    border-radius: var(--bs-card-border-radius, 0.25rem);
    border: 1px solid var(--bs-card-border-color, rgba(0,0,0,.125));
}

.user-welcome .card-body i[b-qn5umgbuzc] {
    color: var(--bs-success); /* Standard Bootstrap Success */
}

.user-welcome .card-body h4[b-qn5umgbuzc] {
    color: var(--bs-dark);
}

/* Stats Section */
.stats-section[b-qn5umgbuzc] {
    margin-bottom: 1.5rem;
}

    .stats-section .card[b-qn5umgbuzc] {
        border: none;
        border-radius: var(--bs-card-border-radius, 0.25rem);
        overflow: hidden;
    }

    .stats-section .card-header[b-qn5umgbuzc] {
        padding: 0.7rem 1rem;
        background-color: #f8f9fa; /* Bootstrap bg-light */
        border-bottom: 1px solid var(--bs-card-border-color, rgba(0,0,0,.125));
    }

        .stats-section .card-header h5[b-qn5umgbuzc] {
            display: flex;
            align-items: center;
        }

        .stats-section .card-header i[b-qn5umgbuzc] {
            margin-right: 0.5rem;
        }

        .stats-section .card-header span[b-qn5umgbuzc] {
            font-size: 1rem;
        }

/* Table */
.table[b-qn5umgbuzc] {
    margin-bottom: 0 !important;
}

    .table th[b-qn5umgbuzc] {
        font-weight: 600;
        font-size: 0.85rem;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        background-color: #f8f9fa; /* Bootstrap table-light / bg-light */
        border-bottom-width: 1px;
    }

    .table td[b-qn5umgbuzc] {
        vertical-align: middle;
    }

/* Styling für die Firmenadresse */
.company-address[b-qn5umgbuzc] {
    font-size: 0.85em;
    color: #6c757d;
    margin-top: 0.15rem;
    line-height: 1.2;
}

/* Zelle mit Firma und Adresse */
.company-info-cell[b-qn5umgbuzc] {
    line-height: 1.3;
}

/* Styling für den Info-Button in der Tabelle */
.company-info-button[b-qn5umgbuzc] {
    line-height: 1;
    color: var(--bs-primary);
    text-decoration: none;
    background: none; /* Sicherstellen, dass kein Button-Hintergrund da ist */
    border: none; /* Sicherstellen, dass kein Button-Rand da ist */
    padding: 0; /* Minimales Padding */
}

    .company-info-button:hover[b-qn5umgbuzc],
    .company-info-button:focus[b-qn5umgbuzc] {
        color: var(--bs-link-hover-color, #0a58ca); /* Standard Bootstrap Link Hover */
        text-decoration: none;
        outline: none; /* Kein Fokus-Rand für den Icon-Button */
        box-shadow: none; /* Kein Schatten für den Icon-Button */
    }

    .company-info-button i[b-qn5umgbuzc] {
        font-size: 1.1rem;
        vertical-align: middle;
    }


/* Button Actions (für Rechnungs-Buttons) */
.btn-action[b-qn5umgbuzc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.2rem 0.8rem;
    font-weight: 500;
    transition: all 0.2s ease;
    border-radius: 6px;
    font-size: 0.9rem;
    min-width: 100px;
}

    .btn-action:hover[b-qn5umgbuzc] {
        transform: translateY(-2px);
        box-shadow: var(--bs-box-shadow-sm, 0 .125rem .25rem rgba(0,0,0,.075));
    }

.btn-outline-danger.btn-action:hover[b-qn5umgbuzc] {
    background-color: var(--bs-danger);
    color: #fff;
}

.btn-outline-success.btn-action:hover[b-qn5umgbuzc] {
    background-color: var(--bs-success);
    color: #fff;
}

.counter[b-qn5umgbuzc], .counter-total[b-qn5umgbuzc] {
    font-size: 1rem;
    font-weight: 600;
}

.counter-total[b-qn5umgbuzc] {
    cursor: default;
    padding: 0.2rem 0.8rem;
    height: auto;
    display: block;
}

/* Quick Actions */
.quick-actions[b-qn5umgbuzc] {
    margin-top: 2rem;
}

.action-card[b-qn5umgbuzc] {
    transition: all 0.3s ease;
    border: none;
    border-radius: var(--bs-card-border-radius, 0.25rem);
    height: 100%;
}

    .action-card:hover[b-qn5umgbuzc] {
        transform: translateY(-3px);
        box-shadow: var(--bs-box-shadow, 0 .5rem 1rem rgba(0,0,0,.15)) !important;
    }

    .action-card h6[b-qn5umgbuzc] {
        color: var(--bs-dark);
        font-weight: 600;
        margin-bottom: 0.75rem;
        font-size: 1rem;
    }

    .action-card .btn[b-qn5umgbuzc] {
        border-radius: 30px;
        padding: 0.25rem 1rem;
        font-weight: 500;
        font-size: 0.875rem;
    }

/* Styling für das Modal (Bootstrap-basiert) */
.modal-backdrop.show[b-qn5umgbuzc] { /* Sicherstellen, dass der Backdrop sichtbar ist, wenn .show aktiv ist */
    opacity: 0.5;
}

.modal-backdrop[b-qn5umgbuzc] {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050; /* Bootstrap Standard für Backdrop (war 1040, aber Modal ist 1055) */
    width: 100vw;
    height: 100vh;
    background-color: #000;
    /* opacity: 0; wird durch .show gesetzt */
    /* transition: opacity 0.15s linear; */ /* Für Fade-Effekt, wenn Bootstrap JS nicht verwendet wird */
}

.modal.d-block[b-qn5umgbuzc] {
    display: block;
}

.modal[b-qn5umgbuzc] {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1055; /* Höher als Backdrop */
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
}

.modal-dialog[b-qn5umgbuzc] {
    position: relative; /* Wichtig für Positionierung im Modal */
    width: auto;
    margin: 0.5rem; /* Bootstrap Standard Margin */
    pointer-events: none; /* Klicks gehen durch, wenn nicht auf .modal-content */
}

@media (min-width: 576px) { /* Standard Bootstrap Breakpoint sm */
    .modal-dialog[b-qn5umgbuzc] {
        max-width: 500px;
        margin: 1.75rem auto;
    }

    .modal-dialog-scrollable[b-qn5umgbuzc] {
        height: calc(100% - 3.5rem);
    }

    .modal-dialog-centered[b-qn5umgbuzc] {
        display: flex;
        align-items: center;
        min-height: calc(100% - 3.5rem);
    }
}

@media (min-width: 992px) { /* Standard Bootstrap Breakpoint lg für modal-lg */
    .modal-lg[b-qn5umgbuzc],
    .modal-xl[b-qn5umgbuzc] {
        max-width: 800px;
    }
}

@media (min-width: 1200px) { /* Standard Bootstrap Breakpoint xl für modal-xl */
    .modal-xl[b-qn5umgbuzc] {
        max-width: 1140px;
    }
}


.modal-dialog-scrollable .modal-content[b-qn5umgbuzc] {
    max-height: calc(100vh - 3.5rem);
    overflow: hidden;
}

.modal-dialog-scrollable .modal-body[b-qn5umgbuzc] {
    overflow-y: auto;
}

.modal-content[b-qn5umgbuzc] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    color: var(--bs-modal-color, inherit);
    pointer-events: auto;
    background-color: var(--bs-modal-bg, #fff);
    background-clip: padding-box;
    border: var(--bs-modal-border-width, 1px) solid var(--bs-modal-border-color, rgba(0,0,0,.2));
    border-radius: var(--bs-modal-border-radius, 0.3rem);
    outline: 0;
}

.modal-header[b-qn5umgbuzc] {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: var(--bs-modal-header-padding, 1rem 1rem);
    border-bottom: var(--bs-modal-header-border-width, 1px) solid var(--bs-modal-header-border-color, #dee2e6);
    border-top-left-radius: var(--bs-modal-inner-border-radius, calc(0.3rem - 1px));
    border-top-right-radius: var(--bs-modal-inner-border-radius, calc(0.3rem - 1px));
}

.modal-title[b-qn5umgbuzc] {
    margin-bottom: 0;
    line-height: var(--bs-modal-title-line-height, 1.5);
}

.btn-close[b-qn5umgbuzc] {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: .25em .25em;
    color: #000;
    background: transparent var(--bs-btn-close-bg, none) center/1em auto no-repeat;
    border: 0;
    border-radius: .25rem;
    opacity: .5;
}

    .btn-close:hover[b-qn5umgbuzc] {
        color: #000;
        text-decoration: none;
        opacity: .75;
    }

    .btn-close:focus[b-qn5umgbuzc] {
        outline: 0;
        box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); /* Fokus-Indikator */
        opacity: 1;
    }


.modal-body[b-qn5umgbuzc] {
    position: relative;
    flex: 1 1 auto;
    padding: var(--bs-modal-padding, 1rem);
}

    .modal-body dl.row dt[b-qn5umgbuzc] {
        font-weight: 600;
    }

    .modal-body dl.row dd[b-qn5umgbuzc] {
        margin-bottom: 0.5rem;
    }


.modal-footer[b-qn5umgbuzc] {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: center;
    justify-content: flex-end;
    padding: var(--bs-modal-footer-padding, 0.75rem);
    border-top: var(--bs-modal-footer-border-width, 1px) solid var(--bs-modal-footer-border-color, #dee2e6);
    border-bottom-right-radius: var(--bs-modal-inner-border-radius, calc(0.3rem - 1px));
    border-bottom-left-radius: var(--bs-modal-inner-border-radius, calc(0.3rem - 1px));
}

    .modal-footer > *[b-qn5umgbuzc] {
        margin: 0.25rem;
    }


/* Mobile Styles */
@media (max-width: 767.98px) {
    .welcome-heading[b-qn5umgbuzc] {
        font-size: 1.5rem;
    }

    .welcome-text[b-qn5umgbuzc] {
        font-size: 1rem;
    }

    .action-card[b-qn5umgbuzc] {
        margin-bottom: 1rem;
    }

    .stats-section .btn-action i[b-qn5umgbuzc] {
        display: none !important;
    }

    .stats-section .btn-action[b-qn5umgbuzc] {
        width: 4rem !important;
        min-width: 4rem !important;
        padding: 0.2rem 0.6rem !important;
        justify-content: center;
    }

    .stats-section .card-header span[b-qn5umgbuzc] {
        font-size: 0.7rem;
    }

    .table th[b-qn5umgbuzc] {
        font-size: 0.7rem;
    }

    .stats-section table td.company-info-cell[b-qn5umgbuzc] {
        max-width: 120px; /* Oder eine andere passende Breite */
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 0.85rem;
    }

    .company-info-button i[b-qn5umgbuzc] {
        font-size: 1rem; /* Info-Icon etwas kleiner auf Mobilgeräten */
    }

    .stats-section .card-header h5[b-qn5umgbuzc] {
        font-size: 0.9rem;
    }

    .dashboard-container[b-qn5umgbuzc] {
        margin: 0;
        padding: 0;
    }

    .company-address[b-qn5umgbuzc] {
        display: none; /* Adresse auf Mobilgeräten in der Tabelle ausblenden */
    }

    /* Modal Anpassungen für Mobilgeräte */
    .modal-dialog[b-qn5umgbuzc] {
        margin: 0.5rem; /* Kleinerer Rand für das Modal */
        /* max-width: none; /* Erlaubt dem Modal, breiter zu werden, wenn nötig */
    }

    .modal-content[b-qn5umgbuzc] {
        font-size: 0.9rem;
    }

    .modal-title[b-qn5umgbuzc] {
        font-size: 1.1rem;
    }

    .modal-body dl.row dt[b-qn5umgbuzc],
    .modal-body dl.row dd[b-qn5umgbuzc] {
        font-size: 0.85rem; /* Kleinere Schrift im Modal-Body */
    }





}
/* _content/LOD/Components/Pages/InvoiceMonthly.razor.rz.scp.css */
/* Stile spezifisch für InvoiceList.razor (Monatsansicht) */

.page-header h4 .badge[b-7ptdsjbnp4] {
    margin-left: 0.5rem;
    padding: 0.35em 0.65em;
    border-radius: 1rem;
    font-size: 0.85rem;
    vertical-align: middle;
}

    .page-header h4 .badge.bg-danger[b-7ptdsjbnp4] {
        background-color: var(--danger);
    }

    .page-header h4 .badge.bg-success[b-7ptdsjbnp4] {
        background-color: var(--success);
    }

.filter-controls[b-7ptdsjbnp4] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-7ptdsjbnp4] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

    .filter-controls .form-group[b-7ptdsjbnp4] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
    }

.table-responsive-mobile[b-7ptdsjbnp4] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-hover tbody tr.clickable-row:hover[b-7ptdsjbnp4] {
    background-color: rgba(0, 0, 0, 0.075);
    cursor: pointer;
}

@media (max-width: 767.98px) {
    .filter-controls[b-7ptdsjbnp4] {
        flex-direction: column;
        align-items: stretch;
    }

        .filter-controls > div:first-child[b-7ptdsjbnp4] {
            width: 100%;
        }

            .filter-controls > div:first-child > .form-group[b-7ptdsjbnp4] {
                width: 100%;
                margin-bottom: 0.5rem;
                justify-content: space-between;
            }

                .filter-controls > div:first-child > .form-group > .form-select-sm[b-7ptdsjbnp4],
                .filter-controls > div:first-child > .form-group > .form-control-sm[b-7ptdsjbnp4] {
                    flex-grow: 1;
                }

        .filter-controls > div:last-child[b-7ptdsjbnp4] {
            width: 100%;
            margin-top: 0.5rem;
            text-align: right;
        }

    .table th:last-child[b-7ptdsjbnp4], .table td:last-child[b-7ptdsjbnp4] {
        min-width: auto;
    }

        .table td:last-child .d-flex[b-7ptdsjbnp4] {
            justify-content: flex-end;
        }

    .dropdown .btn-light.bi-three-dots-vertical[b-7ptdsjbnp4] {
        padding: 0.25rem 0.5rem;
    }
}

.table-warning[b-7ptdsjbnp4] {
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f7ecb5;
    --bs-table-active-bg: #f7ecb5;
    --bs-table-hover-bg: #f7ecb5;
    color: #664d03;
    border-color: #f7ecb5;
}

tr.table-warning.clickable-row:hover > *[b-7ptdsjbnp4] {
    background-color: #f5e7b0 !important;
}

.section-divider[b-7ptdsjbnp4] { /* Falls in dieser Komponente genutzt */
    margin-top: 2rem;
    margin-bottom: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--neutral-border);
}

    .section-divider h5[b-7ptdsjbnp4] {
        display: flex;
        align-items: center;
        color: var(--primary-dark);
    }

        .section-divider h5 i[b-7ptdsjbnp4] {
            margin-right: 0.5rem;
            font-size: 1.2rem;
        }

tfoot tr[b-7ptdsjbnp4] {
    background-color: var(--neutral-bg);
    font-weight: bold;
}

.badge.bg-success-subtle[b-7ptdsjbnp4] {
    background-color: rgba(25, 135, 84, 0.1) !important;
}

.badge.text-success[b-7ptdsjbnp4] {
    color: #198754 !important;
}

.badge.bg-secondary-subtle[b-7ptdsjbnp4] {
    background-color: rgba(108, 117, 125, 0.1) !important;
}

.badge.text-secondary[b-7ptdsjbnp4] {
    color: #6c757d !important;
}

td .form-check-input[b-7ptdsjbnp4] {
    cursor: pointer;
}

.dropdown-item i[b-7ptdsjbnp4] {
    min-width: 1.5em;
}
/* _content/LOD/Components/Pages/LoginLogs.razor.rz.scp.css */
/* Stile spezifisch für LoginLogs.razor */

/* Anpassung für den Header */
.page-header h3[b-cj7zrcf1o1] {
    margin-bottom: 0;
    font-size: 1.5rem;
    color: var(--primary-dark);
    display: flex;
    align-items: center;
}

    .page-header h3 i[b-cj7zrcf1o1] {
        margin-right: 0.5rem;
        font-size: 1.5rem;
        color: var(--primary-dark);
    }

/* Stile für die Filterleiste (hier nur Datum) */
.filter-controls[b-cj7zrcf1o1] {
    display: flex;
    flex-wrap: wrap; /* Umbruch auf kleinen Screens */
    align-items: center;
    /* justify-content: space-between; */
    gap: 0.5rem; /* Abstand zwischen Elementen */
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa; /* Heller Hintergrund */
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls .form-group[b-cj7zrcf1o1] {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

/* Stile für die Tabelle */
.table-responsive-mobile[b-cj7zrcf1o1] {
    overflow-x: auto; /* Horizontales Scrollen auf allen Screens */
    -webkit-overflow-scrolling: touch; /* Besseres Scrollen auf iOS */
    border: 1px solid var(--neutral-border); /* Rahmen um Tabelle */
    border-radius: var(--card-radius); /* Abgerundete Ecken */
    box-shadow: var(--shadow-sm);
    background-color: white; /* Weißer Hintergrund für Tabelle */
}

.table[b-cj7zrcf1o1] {
    margin-bottom: 0; /* Kein Rand unter Tabelle im Container */
}

/* Media Query für kleinere Bildschirme */
@media (max-width: 767.98px) {
    .filter-controls[b-cj7zrcf1o1] {
        flex-direction: column; /* Filter untereinander */
        align-items: stretch; /* Volle Breite für Filter */
    }

        .filter-controls .form-group[b-cj7zrcf1o1] {
            width: 100%;
            justify-content: space-between; /* Label links, Input rechts */
        }

        .filter-controls input[type="date"][b-cj7zrcf1o1] {
            flex-grow: 1; /* Input soll verfügbaren Platz nehmen */
        }

    /* Optional: Spalten ausblenden */
    .table th:nth-child(3)[b-cj7zrcf1o1], /* IP */
    .table td:nth-child(3)[b-cj7zrcf1o1],
    .table th:nth-child(4)[b-cj7zrcf1o1], /* Device */
    .table td:nth-child(4)[b-cj7zrcf1o1] {
        /* display: none; */
    }
}

/* Style für Tabellen-Header */
.table thead.table-light th[b-cj7zrcf1o1] {
    font-size: 0.85rem;
    font-weight: 600;
    white-space: nowrap; /* Verhindert Umbruch im Header */
}

/* Style für Tabellenzeilen */
.table tbody td[b-cj7zrcf1o1] {
    font-size: 0.9rem;
    vertical-align: middle;
}
/* _content/LOD/Components/Pages/OpenInvoices.razor.rz.scp.css */
/* Stile spezifisch für OpenInvoices.razor */

.page-header h4 .badge[b-6v2mlihbl0] { /* h4 hier */
    margin-left: 0.75rem;
    background-color: var(--danger); /* Offen */
    padding: 0.35em 0.65em;
    border-radius: 1rem;
    font-size: 0.9rem;
    vertical-align: middle;
}

.filter-controls[b-6v2mlihbl0] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-6v2mlihbl0] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

    .filter-controls .form-group[b-6v2mlihbl0] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
    }

.table-responsive-mobile[b-6v2mlihbl0] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-hover tbody tr.clickable-row:hover[b-6v2mlihbl0] {
    background-color: rgba(0, 0, 0, 0.075);
    cursor: pointer;
}

@media (max-width: 767.98px) {
    .filter-controls[b-6v2mlihbl0] {
        flex-direction: column;
        align-items: stretch;
    }

        .filter-controls > div:first-child[b-6v2mlihbl0] {
            width: 100%;
        }

            .filter-controls > div:first-child > .form-group[b-6v2mlihbl0] {
                width: 100%;
                margin-bottom: 0.5rem;
                justify-content: space-between;
            }

                .filter-controls > div:first-child > .form-group > .form-select-sm[b-6v2mlihbl0],
                .filter-controls > div:first-child > .form-group > .form-control-sm[b-6v2mlihbl0] {
                    flex-grow: 1;
                }

        .filter-controls > div:last-child[b-6v2mlihbl0] {
            width: 100%;
            margin-top: 0.5rem;
            text-align: right;
        }

    .table th:last-child[b-6v2mlihbl0], .table td:last-child[b-6v2mlihbl0] {
        min-width: auto;
    }

        .table td:last-child .d-flex[b-6v2mlihbl0] {
            justify-content: flex-end;
        }

    .dropdown .btn-light.bi-three-dots-vertical[b-6v2mlihbl0] {
        padding: 0.25rem 0.5rem;
    }
}

.table-warning[b-6v2mlihbl0] {
    --bs-table-bg: #fff3cd;
    --bs-table-striped-bg: #f7ecb5;
    --bs-table-active-bg: #f7ecb5;
    --bs-table-hover-bg: #f7ecb5;
    color: #664d03;
    border-color: #f7ecb5;
}

tr.table-warning.clickable-row:hover > *[b-6v2mlihbl0] {
    background-color: #f5e7b0 !important;
}

tfoot tr[b-6v2mlihbl0] {
    background-color: var(--neutral-bg);
    font-weight: bold;
}

td .form-check-input[b-6v2mlihbl0] {
    cursor: pointer;
}

.dropdown-item i[b-6v2mlihbl0] {
    min-width: 1.5em;
}
/* _content/LOD/Components/Pages/Statistic.razor.rz.scp.css */
/* Stile spezifisch für Statistic.razor */
/* :host, wenn dies eine .razor.css Datei ist und Variablen hier gelten sollen */
:host[b-axuojs58fv] {
    --card-padding-base: 1rem;
    --filter-card-content-padding: 0.75rem var(--card-padding-base);
    --chart-title-margin-bottom: 1rem;
    --chart-min-height: 250px;
    --filter-items-gap: 0.5rem;
    /* Weitere Variablen hier ... */
}

/* Filterleiste */
.filter-card[b-axuojs58fv] {
    width: 100%; /* Bleibt gut */
}

    .filter-card .rz-card-content[b-axuojs58fv] {
        padding: var(--filter-card-content-padding);
    }

    .filter-card .rz-stack[b-axuojs58fv] { /* Direkteres Styling der Radzen-Komponente */
        align-items: center;
        gap: var(--filter-items-gap);
    }

/* Chart-Karten */
.chart-card[b-axuojs58fv] {
    display: flex;
    flex-direction: column;
    height: 100%; /* Überprüfe, ob der Parent eine Höhe hat, oder ob align-items: stretch auf Parent-Flexcontainer besser ist */
}

    .chart-card .rz-card-content[b-axuojs58fv] {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        padding: var(--card-padding-base);
    }

        /* Direkter Kind-Div der rz-card-content, oft der Wrapper des Inhalts */
        .chart-card .rz-card-content > .rz-column[b-axuojs58fv] { /* Annahme: RadzenColumn fügt Klasse .rz-column hinzu */
            display: flex;
            flex-direction: column;
            flex-grow: 1;
        }

    .chart-card h4[b-axuojs58fv], /* Weniger Spezifität, wenn es nur diese H4/H6 in der Chart-Karte gibt */
    .chart-card h6[b-axuojs58fv] {
        text-align: center;
        margin-bottom: var(--chart-title-margin-bottom);
        color: var(--rz-primary-text);
    }

    .chart-card[b-axuojs58fv]  .rz-chart-container { /* Beispiel: Annahme Radzen hat .rz-chart-container */
        flex-grow: 1;
        min-height: var(--chart-min-height);
    }
/* Falls .rz-chart, .rz-piechart etc. direkt gestylt werden müssen: */
/*
        .chart-card .rz-chart,
        .chart-card .rz-piechart,
        .chart-card .rz-columnchart {
            flex-grow: 1;
            min-height: var(--chart-min-height);
        }
        */


/* Responsive: mittlere Bildschirme */
@media (max-width: 767.98px) { /* Standard Bootstrap sm breakpoint */
    .chart-card h4[b-axuojs58fv] {
        font-size: 1.2rem; /* Oder Variable */
    }

    .chart-card h6[b-axuojs58fv] {
        font-size: 1rem; /* Oder Variable */
    }

    .chart-card[b-axuojs58fv]  .rz-legend {
        justify-content: center; /* Ohne !important versuchen */
    }

    .chart-card[b-axuojs58fv]  .rz-axis-label {
        font-size: 10px; /* Oder Variable */
    }

    .chart-card[b-axuojs58fv]  .rz-legend-item-text {
        font-size: 11px; /* Oder Variable */
    }
}

/* Responsive: kleine Bildschirme */
@media (max-width: 575.98px) { /* Standard Bootstrap xs breakpoint */
    .filter-card .rz-stack[b-axuojs58fv] {
        flex-direction: column;
        align-items: stretch;
    }

        /* Versuche, spezifischer zu sein oder Radzen's Struktur zu nutzen, um !important zu vermeiden */
        .filter-card .rz-stack[b-axuojs58fv]  .rz-dropdown {
            width: 100%;
            max-width: none; /* Oft ausreichend */
        }
        /* Alternative, falls das Dropdown direkt in rz-stack ist und keine weiteren Wrapper hat */
        /*
        .filter-card .rz-stack > .rz-dropdown-container .rz-dropdown {
             width: 100%;
             max-width: none;
        }
        */


        .filter-card .rz-stack .rz-label[b-axuojs58fv] {
            margin-bottom: 0.25rem;
            text-align: left;
        }
}
/* _content/LOD/Components/Pages/TimeTracking.razor.rz.scp.css */
/* Styling für die neuen Zusammenfassungs-Karten */
.summary-card[b-85602hzn18] {
    border-radius: 0.375rem;
    border: 1px solid #dee2e6;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    display: flex;
    flex-direction: column;
}

    .summary-card:hover[b-85602hzn18] {
        transform: translateY(-4px);
        box-shadow: 0 0.4rem 0.8rem rgba(0, 0, 0, 0.12);
    }

    .summary-card .card-header[b-85602hzn18] {
        background-color: #f8f9fa;
        font-weight: 600;
        padding: 0.5rem 1rem;
        border-bottom: 1px solid #dee2e6;
    }

        .summary-card .card-header .bi[b-85602hzn18] {
            margin-right: 0.5rem;
            color: #6c757d;
        }

    .summary-card .card-body[b-85602hzn18] {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        padding: 1rem;
        flex-grow: 1;
    }

.summary-item[b-85602hzn18] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

    .summary-item .bi[b-85602hzn18] {
        font-size: 1.5rem;
        flex-shrink: 0;
        width: 28px;
        text-align: center;
    }

    .summary-item div[b-85602hzn18] {
        display: flex;
        flex-direction: column;
    }

    .summary-item .value[b-85602hzn18] {
        font-size: 1rem;
        font-weight: 600;
        line-height: 1.2;
    }

    .summary-item .label[b-85602hzn18] {
        font-size: 0.75rem;
        color: #6c757d;
    }

/* Titel für die Tabellen */
.table-title[b-85602hzn18] {
    border-bottom: 2px solid #0d6efd;
    padding-bottom: 0.5rem;
    display: inline-block;
}

/* Tabellen-Styling */
.table td[b-85602hzn18], .table th[b-85602hzn18] {
    vertical-align: middle;
}

/* *** Diese Regel sorgt für den grauen Hintergrund an Wochenenden *** */
tr.weekend-row td[b-85602hzn18] {
    background-color: #f8f9fa !important;
}

/* *** Diese Regel wurde entfernt, um die Wochentage nicht mehr kursiv/grau zu machen *** */
/*
.table tbody td:nth-child(2) {
    font-style: italic;
    color: #6c757d;
}
*/

.sticky-header[b-85602hzn18] {
    position: sticky;
    top: 0;
    z-index: 10;
}

/* Filter-Styling */
.filter-controls .form-group[b-85602hzn18] {
    display: inline-block;
    margin-right: 1rem;
    margin-bottom: 0.5rem;
}
/* _content/LOD/Components/Pages/Uebersicht.razor.rz.scp.css */
/* Stile spezifisch für Uebersicht.razor */

/* Anpassung für den Header-Badge */
.page-header h4 .badge[b-0hip4cc3qw] {
    margin-left: 0.5rem;
    padding: 0.35em 0.65em;
    border-radius: 1rem;
    font-size: 0.9rem;
    vertical-align: middle;
}

    .page-header h4 .badge.bg-danger[b-0hip4cc3qw] {
        background-color: var(--danger);
    }

    .page-header h4 .badge.bg-primary[b-0hip4cc3qw] {
        background-color: var(--bs-primary);
    }
/* Bootstrap Primary für Gesamtbetrag */


/* Stile für die Filterleiste (ähnlich wie AllInvoices) */
.filter-controls[b-0hip4cc3qw] {
    display: flex;
    flex-wrap: wrap; /* Umbruch auf kleinen Screens */
    align-items: center;
    /* justify-content: space-between; */ /* Entfernt, da nur Filter links */
    gap: 0.5rem; /* Abstand zwischen Elementen */
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: #f8f9fa; /* Heller Hintergrund */
    border: 1px solid var(--neutral-border);
    border-radius: var(--card-radius);
}

    .filter-controls > div:first-child[b-0hip4cc3qw] { /* Container für Filter-Elemente */
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.5rem;
    }

/* Stile für die Tabelle (im RenderFragment) */
/* Die Klasse .table-responsive wird im RenderFragment verwendet */
.table-responsive[b-0hip4cc3qw] {
    overflow-x: auto; /* Horizontales Scrollen */
    -webkit-overflow-scrolling: touch;
}

/* Media Query für kleinere Bildschirme */
@media (max-width: 767.98px) {
    .filter-controls[b-0hip4cc3qw] {
        flex-direction: column; /* Filter untereinander */
        align-items: stretch; /* Volle Breite für Filter */
    }

        .filter-controls > div:first-child[b-0hip4cc3qw] {
            width: 100%;
        }

            .filter-controls > div:first-child > *[b-0hip4cc3qw] { /* Alle Filterelemente */
                flex-grow: 1;
                min-width: 150px;
                margin-bottom: 0.5rem;
            }

                .filter-controls > div:first-child > *:last-child[b-0hip4cc3qw] {
                    margin-bottom: 0;
                }

    /* Tabelle auf Mobile: Optional data-label anzeigen */
    /* Siehe AllInvoices.razor.css für ein Beispiel, falls gewünscht */
}

/* Hervorhebung für Gruppenüberschrift */
h5.mt-4[b-0hip4cc3qw] {
    color: var(--primary-darker);
    border-bottom: 2px solid var(--primary-dark);
    padding-bottom: 0.3rem;
    display: inline-block; /* Verhindert, dass Border über ganze Breite geht */
}

/* Card-Styling für Tabellen */
.card.mb-3[b-0hip4cc3qw] {
    border: 1px solid var(--neutral-border) !important; /* Überschreibe border-0 */
}

/* Spezifische Styles für Tabellen-Footer in dieser Ansicht */
.table tfoot tr[b-0hip4cc3qw] {
    background-color: #e9ecef; /* Etwas dunklerer Footer */
}
/* _content/LOD/Components/Tools/InvoicesButtons.razor.rz.scp.css */
/* InvoicesButtons.razor.css */

/* Container für die Buttons */
.invoice-button-group[b-83jpy3cq5j] {
    display: flex;
    flex-wrap: wrap; /* Erlaube Umbruch */
    gap: 0.5rem; /* Abstand zwischen Buttons */
    justify-content: flex-end; /* Standardmäßig rechtsbündig */
}

    /* Style für einzelne Buttons (konsistent mit anderen Buttons) */
    .invoice-button-group .btn[b-83jpy3cq5j] {
        display: inline-flex;
        align-items: center;
        font-size: 0.875rem; /* Etwas kleinere Schrift */
        /* padding: 0.3rem 0.6rem; */ /* Kleinere Buttons, falls gewünscht */
    }

        .invoice-button-group .btn i[b-83jpy3cq5j] { /* Bootstrap Icons */
            margin-right: 0.35rem; /* Abstand Icon zu Text */
        }

        /* Text nur auf größeren Screens anzeigen (Bootstrap Klassen werden im Markup verwendet) */
        .invoice-button-group .btn .button-text[b-83jpy3cq5j] {
            /* Keine extra Regel nötig, wird durch d-none d-sm-inline gesteuert */
        }


/* Optional: Media Query für sehr kleine Screens, falls Buttons zu breit sind */
@media (max-width: 575.98px) {
    .invoice-button-group[b-83jpy3cq5j] {
        /* Buttons könnten volle Breite einnehmen oder zentriert werden */
        /* justify-content: center; */
    }

        .invoice-button-group .btn[b-83jpy3cq5j] {
            /* Ggf. volle Breite oder mehr Abstand */
            /* width: 100%; */
            /* margin-bottom: 0.5rem; */
        }
}
